Table of Contents
PortLog: dev-libs/apr
version 1.2.9
| R5 | untested |
| BONE | unstable |
| Haiku | untested |
revision 1 (brecht) - [BONE]
On compiling testfmt.c
output_operand_lossage `invalid expression as operand'
This can be avoided by not passing the '-g' option to gcc for this test.
libtool: link: warning: undefined symbols not allowed in i586-pc-beos shared libraries
Failed tests:
testmutexscope: testmutexscope.c:168: test_mech_mode: Assertion `rv == APR_SUCCESS' failed. Abort
testdso : FAILED 4 of 5
testflock : FAILED 2 of 3
0.9.x branch
| R5 | unstable |
| BONE | untested |
| Haiku | unstable |
work-in-progress (andreasf) - [R5, Haiku]
A patch to fix VPATH builds for BeOS/Haiku has been accepted.
test/teststr.c fails to compile on Haiku/gcc2, just like testfmt.c was reported above. Removing -g resolves this.
APR Atomic Test, APR Lock Performance Test pass.
testsock fails:
Initializing.........OK Creating context.......OK This test relies on the process test working. Please run that test first, and only run this test when it completes successfully. Alternatively, you could run server and client by yourself. Creating children to run network tests....... Network test completed. Creating children to run network tests....... Problem spawning new process testsock failed
Not surprising, the process test, started manually, hangs as well:
~/apr/test> ./testall testproc
Partial APR Tests:
Process control:
0.9.x branch, Haiku only
| Haiku | stable |
revision 1 (bonefish) - [Haiku]
Changes (patch)
build/apr_hints.m4:
- Added -lnetwork for Haiku.
- Use POSIX semaphores instead of fcntl() (performs better and is less overhead).
- POSIX semaphores also lock threads.
configure.in:
- No -g on Haiku.
- Use libnetwork, libbsd and bsd headers.
- Reordered decision making for anonymous and name-based shared memory. BeOS areas are first now, so that they are overridden by the other mechanisms (affects Haiku only, BeOS doesn't have the others).
include/apr_portable.h:
- Avoid BeOS-specific definitions. Haiku uses the Unix implementation.
test/{testpipe,testoc,testproc}.c:
- These tests start a child process, a script which lazily builds an executable and runs it. Changed the process creation so that the environment is not cleared, since Haiku's gcc depends on several environment variables to be set to work correctly.
test/testpoll.c:
- The test incorrectly assumes that packets sent to a local socket are delivered synchronously and that the select()/poll() events are thus available immediately. Added 10 ms apr_sleep()s so that the tests has a chance to succeed on Haiku.
Configuring/Building
rm build/config.guess build/config.sub ./buildconf ./configure --prefix=/boot/home/config make
Tests
221 tests run: 218 passed, 1 failed, 2 not implemented. Failed tests in Socket Options: 1) corkable: expected <0> but was <-2147483643> Not Implemented tests in Socket Creation: 1) tcp6_socket: IPv6 not implemented on this platform 2) udp6_socket: IPv6 not implemented on this platform
The Socket Options test fails, since Haiku doesn't implement TCP_NODELAY yet (r25483).