Bug #1251
1.5.0-r1857 fails to compile on FreeBSD 6.2
| Status: | Fixed | Start: | ||
| Priority: | Normal | Due date: | ||
| Assigned to: | - | % Done: | 0% |
|
| Category: | core | |||
| Target version: | 1.5.0 | |||
| Pending: | No |
Resolution: | fixed |
|
Description
The define _XOPEN_SOURCE 500 in network_gthread_aio.c causes this error. It works great
if i remove _XOPEN_SOURCE in network_gthread_aio.c - maybe it should only get defined for Linux.
If someone wants to take a deeper look into sys/cdefs.h and types.h there are only a few
defines and places that are important:
- sys/types.h:49 u_short only gets defined if _ _BSD_VISIBLE is set
- sys/cdefs.h:492 _ _BSD_VISIBLE never gets defined because _POSIX_C_SOURCE is defined
- sys/cdefs.h:478 causes #define _POSIX_C_SOURCE 199506 because _XOPEN_SOURCE is >= 500
if gcc -DHAVE_CONFIG_H -DLIBRARY_DIR="\"/usr/local/lib\"" -I. -I. -I.. -D_REENTRANT -D__EXTENSIONS__ -I/usr/local/include -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES -D_REENTRANT -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -g -O2 -Wall -W -Wshadow -pedantic -std=gnu99 -MT network_posix_aio.o -MD -MP -MF ".deps/network_posix_aio.Tpo" -c -o network_posix_aio.o network_posix_aio.c; then mv -f ".deps/network_posix_aio.Tpo" ".deps/network_posix_aio.Po"; else rm -f ".deps/network_posix_aio.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -DLIBRARY_DIR="\"/usr/local/lib\"" -I. -I. -I.. -D_REENTRANT -D__EXTENSIONS__ -I/usr/local/include -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES -D_REENTRANT -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -g -O2 -Wall -W -Wshadow -pedantic -std=gnu99 -MT network_gthread_aio.o -MD -MP -MF ".deps/network_gthread_aio.Tpo" -c -o network_gthread_aio.o network_gthread_aio.c; then mv -f ".deps/network_gthread_aio.Tpo" ".deps/network_gthread_aio.Po"; else rm -f ".deps/network_gthread_aio.Tpo"; exit 1; fi
In file included from fdevent.h:57,
from base.h:31,
from network_backends.h:11,
from network_gthread_aio.c:19:
/usr/include/sys/event.h:57: error: syntax error before "u_short"
In file included from /usr/include/sys/event.h:122,
from fdevent.h:57,
from base.h:31,
from network_backends.h:11,
from network_gthread_aio.c:19:
/usr/include/sys/_lock.h:38: error: syntax error before "u_int"
In file included from /usr/include/sys/event.h:123,
from fdevent.h:57,
from base.h:31,
from network_backends.h:11,
from network_gthread_aio.c:19:
/usr/include/sys/_mutex.h:40: error: syntax error before "mtx_recurse"
In file included from base.h:32,
from network_backends.h:11,
from network_gthread_aio.c:19:
sys-socket.h:69: error: field `ipv6' has incomplete type
In file included from network_backends.h:11,
from network_gthread_aio.c:19:
base.h:459: error: field `ipv6' has incomplete type
network_gthread_aio.c: In function `network_write_chunkqueue_gthreadaio':
network_gthread_aio.c:259: warning: comparison between signed and unsigned
network_gthread_aio.c:443: warning: comparison between signed and unsigned
*** Error code 1
Stop in /root/lighttpd/lighttpd-1.5.0/src.
*** Error code 1
Stop in /root/lighttpd/lighttpd-1.5.0/src.
*** Error code 1
Stop in /root/lighttpd/lighttpd-1.5.0.
*** Error code 1
Stop in /root/lighttpd/lighttpd-1.5.0.
-- decke