configure: Add basic support for Haiku

For compatibility with BeOS, Haiku's error codes are negative whereas recent
POSIX versions require them to be positive. As spotted by François, some
parts of QEMU code rely on this, so use a mapper library to convert them
to positive ones.

Cc: François Revol <revol@free.fr>
Cc: Ingo Weinhold <ingo_weinhold@gmx.de>

Haiku has network functions in libnetwork.so. It doesn't ship libutil.so.

Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
Andreas Färber 2010-09-20 00:50:43 +02:00 committed by Blue Swirl
parent a82cdd58fd
commit 179cf40000

13
configure vendored
View File

@ -319,6 +319,7 @@ io_thread="no"
mixemu="no" mixemu="no"
kerneldir="" kerneldir=""
aix="no" aix="no"
haiku="no"
blobs="yes" blobs="yes"
pkgversion="" pkgversion=""
check_utests="no" check_utests="no"
@ -336,6 +337,8 @@ elif check_define __OpenBSD__ ; then
targetos='OpenBSD' targetos='OpenBSD'
elif check_define __sun__ ; then elif check_define __sun__ ; then
targetos='SunOS' targetos='SunOS'
elif check_define __HAIKU__ ; then
targetos='Haiku'
else else
targetos=`uname -s` targetos=`uname -s`
fi fi
@ -451,6 +454,11 @@ AIX)
aix="yes" aix="yes"
make="gmake" make="gmake"
;; ;;
Haiku)
haiku="yes"
QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS $QEMU_CFLAGS"
LIBS="-lposix_error_mapper -lnetwork $LIBS"
;;
*) *)
audio_drv_list="oss" audio_drv_list="oss"
audio_possible_drivers="oss alsa sdl esd pa" audio_possible_drivers="oss alsa sdl esd pa"
@ -2030,7 +2038,7 @@ elif compile_prog "" "-lrt" ; then
fi fi
if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \ if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \
"$aix" != "yes" ; then "$aix" != "yes" -a "$haiku" != "yes" ; then
libs_softmmu="-lutil $libs_softmmu" libs_softmmu="-lutil $libs_softmmu"
fi fi
@ -2353,6 +2361,9 @@ if test "$solaris" = "yes" ; then
echo "CONFIG_NEEDS_LIBSUNMATH=y" >> $config_host_mak echo "CONFIG_NEEDS_LIBSUNMATH=y" >> $config_host_mak
fi fi
fi fi
if test "$haiku" = "yes" ; then
echo "CONFIG_HAIKU=y" >> $config_host_mak
fi
if test "$static" = "yes" ; then if test "$static" = "yes" ; then
echo "CONFIG_STATIC=y" >> $config_host_mak echo "CONFIG_STATIC=y" >> $config_host_mak
fi fi