ALUT-2.0: configure.ac
AC_INIT([Haskell ALUT package], [2.0], [sven.panne@aedion.de], [ALUT])
# Safety check: Ensure that we are in the correct source directory.
AC_CONFIG_SRCDIR([include/HsALUT.h.in])
# The first file mentioned below will be generated by autoheader and contains
# defines which are needed during package build time only. The second header
# contains all kinds of stuff which is needed for using this package.
AC_CONFIG_HEADERS([include/HsALUTConfig.h include/HsALUT.h])
# We set this to "yes" later when we have found ALUT libs and headers.
ALUT_BUILD_PACKAGE=no
AC_SUBST([ALUT_BUILD_PACKAGE])
# Shall we build this package at all?
FP_ARG_ALUT
if test x"$enable_alut" = xyes; then
# Check for ALUT include paths and libraries
FP_CHECK_ALUT
if test "$ALUT_LIBS" = no; then
AC_MSG_WARN([no ALUT library found, so this package will not be built])
else
# check for ALUT include files
FP_HEADER_ALUT
if test "$fp_found_alut_header" = no; then
AC_MSG_WARN([no ALUT header found, so this package will not be built])
else
ALUT_BUILD_PACKAGE=yes
# checks for library functions.
fp_save_libs="$LIBS"
LIBS="$ALUT_LIBS $AL_LIBS $LIBS"
FP_FUNC_ALUTINIT_VOID
FP_CHECK_FUNC_ALUT([alutInitWithoutContext], [((int *)0, (char **)0)])
FP_FUNC_ALUTEXIT_VOID
FP_CHECK_FUNC_ALUT([alutGetError], [()])
FP_CHECK_FUNC_ALUT([alutGetErrorString], [(0)])
FP_CHECK_FUNC_ALUT([alutCreateBufferFromFile], [((const char *)0)])
FP_CHECK_FUNC_ALUT([alutCreateBufferFromFileImage], [((const ALvoid *)0, 0)])
FP_CHECK_FUNC_ALUT([alutCreateBufferHelloWorld], [()])
FP_CHECK_FUNC_ALUT([alutCreateBufferWaveform], [(0, 0.0f, 0.0f, 0.0f)])
FP_CHECK_FUNC_ALUT([alutLoadMemoryFromFile], [((const char *)0, (ALenum *)0, (ALsizei *)0, (ALfloat *)0)])
FP_CHECK_FUNC_ALUT([alutLoadMemoryFromFileImage], [((const ALvoid *)0, 0, (ALenum *)0, (ALsizei *)0, (ALfloat *)0)])
FP_CHECK_FUNC_ALUT([alutLoadMemoryHelloWorld], [((ALenum *)0, (ALsizei *)0, (ALfloat *)0)])
FP_CHECK_FUNC_ALUT([alutLoadMemoryWaveform], [(0, 0.0f, 0.0f, 0.0f, (ALenum *)0, (ALsizei *)0, (ALfloat *)0)])
FP_CHECK_FUNC_ALUT([alutGetMIMETypes], [(0)])
FP_CHECK_FUNC_ALUT([alutGetMajorVersion], [()])
FP_CHECK_FUNC_ALUT([alutGetMinorVersion], [()])
FP_CHECK_FUNC_ALUT([alutSleep], [(0.0f)])
LIBS="$fp_save_libs"
# checks for constant values
FP_CHECK_CONSTS([ALUT_API_MAJOR_VERSION ALUT_API_MINOR_VERSION ALUT_WAVEFORM_SINE ALUT_WAVEFORM_SQUARE ALUT_WAVEFORM_SAWTOOTH ALUT_WAVEFORM_WHITENOISE ALUT_WAVEFORM_IMPULSE ALUT_LOADER_BUFFER ALUT_LOADER_MEMORY], [#if HAVE_AL_ALUT_H
#include <AL/alut.h>
#elif HAVE_OPENAL_ALUT_H
#include <OpenAL/alut.h>
#endif
#ifndef ALUT_API_MAJOR_VERSION
#define ALUT_API_MAJOR_VERSION 0
#endif
#ifndef ALUT_API_MINOR_VERSION
#define ALUT_API_MINOR_VERSION 0
#endif
#ifndef ALUT_WAVEFORM_SINE
#define ALUT_WAVEFORM_SINE 0x100
#endif
#ifndef ALUT_WAVEFORM_SQUARE
#define ALUT_WAVEFORM_SQUARE 0x101
#endif
#ifndef ALUT_WAVEFORM_SAWTOOTH
#define ALUT_WAVEFORM_SAWTOOTH 0x102
#endif
#ifndef ALUT_WAVEFORM_WHITENOISE
#define ALUT_WAVEFORM_WHITENOISE 0x103
#endif
#ifndef ALUT_WAVEFORM_IMPULSE
#define ALUT_WAVEFORM_IMPULSE 0x104
#endif
#ifndef ALUT_LOADER_BUFFER
#define ALUT_LOADER_BUFFER 0x300
#endif
#ifndef ALUT_LOADER_MEMORY
#define ALUT_LOADER_MEMORY 0x301
#endif])
# tell our build system about the results
AC_DEFINE_UNQUOTED([ALUT_CFLAGS],
[`echo '' $ALUT_CFLAGS | sed -e 's/-[[^ ]]*/,"&"/g' -e 's/^ *,//'`],
[C flags for ALUT, as a list of string literals.])
AC_DEFINE_UNQUOTED([ALUT_LIBS],
[`echo '' $ALUT_LIBS | sed -e 's/-[[^ ]]*/,"&"/g' -e 's/^ *,//'`],
[Library flags for ALUT, as a list of string literals.])
AC_DEFINE_UNQUOTED([ALUT_FRAMEWORKS],
[`echo '' $ALUT_FRAMEWORKS | sed -e 's/-[[^ ]]*/,"&"/g' -e 's/^ *,//'`],
[Framework flags for ALUT, as a list of string literals.])
fi
fi
fi
if test "$ALUT_BUILD_PACKAGE" = yes; then
BUILD_PACKAGE_BOOL=True
else
BUILD_PACKAGE_BOOL=False
fi
AC_SUBST([BUILD_PACKAGE_BOOL])
case "$host" in
*-mingw32) CALLCONV=stdcall ;;
*) CALLCONV=ccall ;;
esac
AC_SUBST([CALLCONV])
AC_CONFIG_FILES([config.mk ALUT.buildinfo])
AC_OUTPUT