blob: 99d6b7fcb6c88110253545313dcd01b8cc1e4e49 [file] [log] [blame]
dnl Process this file with autoconf to produce a configure script.
AC_INIT(src/framing.c)
AM_INIT_AUTOMAKE(libogg,1.2.0)
AM_MAINTAINER_MODE
dnl Library versioning
LIB_CURRENT=7
LIB_REVISION=0
LIB_AGE=7
AC_SUBST(LIB_CURRENT)
AC_SUBST(LIB_REVISION)
AC_SUBST(LIB_AGE)
AC_PROG_CC
AM_PROG_LIBTOOL
AM_PROG_CC_C_O
dnl config.h
AM_CONFIG_HEADER(config.h)
dnl Set some options based on environment
cflags_save="$CFLAGS"
if test -z "$GCC"; then
case $host in
*-*-irix*)
DEBUG="-g -signed"
CFLAGS="-O2 -w -signed"
PROFILE="-p -g3 -O2 -signed"
;;
sparc-sun-solaris*)
DEBUG="-v -g"
CFLAGS="-xO4 -fast -w -fsimple -native -xcg92"
PROFILE="-v -xpg -g -xO4 -fast -native -fsimple -xcg92 -Dsuncc"
;;
*)
DEBUG="-g"
CFLAGS="-O"
PROFILE="-g -p"
;;
esac
else
case $host in
*-*-linux*)
DEBUG="-g -Wall -fsigned-char"
CFLAGS="-O20 -ffast-math -fsigned-char"
PROFILE="-Wall -W -pg -g -O20 -ffast-math -fsigned-char"
;;
sparc-sun-*)
sparc_cpu=""
AC_MSG_CHECKING([if gcc supports -mv8])
old_cflags="$CFLAGS"
CFLAGS="$CFLAGS -mv8"
AC_TRY_COMPILE(, [return 0;], [
AC_MSG_RESULT([yes])
sparc_cpu="-mv8"
])
CFLAGS="$old_cflags"
DEBUG="-g -Wall -fsigned-char $sparc_cpu"
CFLAGS="-O20 -ffast-math -fsigned-char $sparc_cpu"
PROFILE="-pg -g -O20 -fsigned-char $sparc_cpu"
;;
*-*-darwin*)
DEBUG="-fno-common -g -Wall -fsigned-char"
CFLAGS="-fno-common -O4 -Wall -fsigned-char -ffast-math"
PROFILE="-fno-common -O4 -Wall -pg -g -fsigned-char -ffast-math"
;;
*)
DEBUG="-g -Wall -fsigned-char"
CFLAGS="-O20 -fsigned-char"
PROFILE="-O20 -g -pg -fsigned-char"
;;
esac
fi
CFLAGS="$CFLAGS $cflags_save"
DEBUG="$DEBUG $cflags_save"
PROFILE="$PROFILE $cflags_save"
dnl Checks for programs.
dnl Checks for libraries.
dnl Checks for header files.
AC_HEADER_STDC
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
dnl Check for types
AC_MSG_CHECKING(for int16_t)
AC_CACHE_VAL(has_cv_int16_t,
[AC_TRY_RUN([
#if defined __BEOS__ && !defined __HAIKU__
#include <inttypes.h>
#endif
#include <sys/types.h>
int16_t foo;
int main() {return 0;}
],
has_cv_int16_t=yes,
has_cv_int16_t=no,
has_cv_int16_t=no
)])
AC_MSG_RESULT($has_cv_int16_t)
AC_MSG_CHECKING(for int32_t)
AC_CACHE_VAL(has_cv_int32_t,
[AC_TRY_RUN([
#if defined __BEOS__ && !defined __HAIKU__
#include <inttypes.h>
#endif
#include <sys/types.h>
int32_t foo;
int main() {return 0;}
],
has_cv_int32_t=yes,
has_cv_int32_t=no,
has_cv_int32_t=no
)])
AC_MSG_RESULT($has_cv_int32_t)
AC_MSG_CHECKING(for uint32_t)
AC_CACHE_VAL(has_cv_uint32_t,
[AC_TRY_RUN([
#if defined __BEOS__ && !defined __HAIKU__
#include <inttypes.h>
#endif
#include <sys/types.h>
uint32_t foo;
int main() {return 0;}
],
has_cv_uint32_t=yes,
has_cv_uint32_t=no,
has_cv_uint32_t=no
)])
AC_MSG_RESULT($has_cv_uint32_t)
AC_MSG_CHECKING(for uint16_t)
AC_CACHE_VAL(has_cv_uint16_t,
[AC_TRY_RUN([
#if defined __BEOS__ && !defined __HAIKU__
#include <inttypes.h>
#endif
#include <sys/types.h>
uint16_t foo;
int main() {return 0;}
],
has_cv_uint16_t=yes,
has_cv_uint16_t=no,
has_cv_uint16_t=no
)])
AC_MSG_RESULT($has_cv_uint16_t)
AC_MSG_CHECKING(for u_int32_t)
AC_CACHE_VAL(has_cv_u_int32_t,
[AC_TRY_RUN([
#if defined __BEOS__ && !defined __HAIKU__
#include <inttypes.h>
#endif
#include <sys/types.h>
u_int32_t foo;
int main() {return 0;}
],
has_cv_u_int32_t=yes,
has_cv_u_int32_t=no,
has_cv_u_int32_t=no
)])
AC_MSG_RESULT($has_cv_u_int32_t)
AC_MSG_CHECKING(for u_int16_t)
AC_CACHE_VAL(has_cv_u_int16_t,
[AC_TRY_RUN([
#if defined __BEOS__ && !defined __HAIKU__
#include <inttypes.h>
#endif
#include <sys/types.h>
u_int16_t foo;
int main() {return 0;}
],
has_cv_u_int16_t=yes,
has_cv_u_int16_t=no,
has_cv_u_int16_t=no
)])
AC_MSG_RESULT($has_cv_u_int16_t)
AC_MSG_CHECKING(for int64_t)
AC_CACHE_VAL(has_cv_int64_t,
[AC_TRY_RUN([
#if defined __BEOS__ && !defined __HAIKU__
#include <inttypes.h>
#endif
#include <sys/types.h>
int64_t foo;
int main() {return 0;}
],
has_cv_int64_t=yes,
has_cv_int64_t=no,
has_cv_int64_t=no
)])
AC_MSG_RESULT($has_cv_int64_t)
AC_CHECK_SIZEOF(short,2)
AC_CHECK_SIZEOF(int,4)
AC_CHECK_SIZEOF(long,4)
AC_CHECK_SIZEOF(long long,8)
if test x$has_cv_int16_t = "xyes" ; then
SIZE16="int16_t"
else
case 2 in
$ac_cv_sizeof_short) SIZE16="short";;
$ac_cv_sizeof_int) SIZE16="int";;
esac
fi
if test x$has_cv_int32_t = "xyes" ; then
SIZE32="int32_t"
else
case 4 in
$ac_cv_sizeof_short) SIZE32="short";;
$ac_cv_sizeof_int) SIZE32="int";;
$ac_cv_sizeof_long) SIZE32="long";;
esac
fi
if test x$has_cv_uint32_t = "xyes" ; then
USIZE32="uint32_t"
else
if test x$has_cv_u_int32_t = "xyes" ; then
USIZE32="u_int32_t"
else
case 4 in
$ac_cv_sizeof_short) USIZE32="unsigned short";;
$ac_cv_sizeof_int) USIZE32="unsigned int";;
$ac_cv_sizeof_long) USIZE32="unsigned long";;
esac
fi
fi
if test x$has_cv_uint16_t = "xyes" ; then
USIZE16="uint16_t"
else
if test x$has_cv_u_int16_t = "xyes" ; then
USIZE16="u_int16_t"
else
case 2 in
$ac_cv_sizeof_short) USIZE16="unsigned short";;
$ac_cv_sizeof_int) USIZE16="unsigned int";;
$ac_cv_sizeof_long) USIZE16="unsigned long";;
esac
fi
fi
if test x$has_cv_int64_t = "xyes" ; then
SIZE64="int64_t"
else
case 8 in
$ac_cv_sizeof_int) SIZE64="int";;
$ac_cv_sizeof_long) SIZE64="long";;
$ac_cv_sizeof_long_long) SIZE64="long long";;
esac
fi
if test -z "$SIZE16"; then
AC_MSG_ERROR(No 16 bit type found on this platform!)
fi
if test -z "$USIZE16"; then
AC_MSG_ERROR(No unsigned 16 bit type found on this platform!)
fi
if test -z "$SIZE32"; then
AC_MSG_ERROR(No 32 bit type found on this platform!)
fi
if test -z "$USIZE32"; then
AC_MSG_ERROR(No unsigned 32 bit type found on this platform!)
fi
if test -z "$SIZE64"; then
AC_MSG_WARN(No 64 bit type found on this platform!)
fi
dnl Checks for library functions.
AC_FUNC_MEMCMP
dnl Make substitutions
AC_SUBST(LIBTOOL_DEPS)
AC_SUBST(SIZE16)
AC_SUBST(USIZE16)
AC_SUBST(SIZE32)
AC_SUBST(USIZE32)
AC_SUBST(SIZE64)
AC_SUBST(OPT)
AC_SUBST(LIBS)
AC_SUBST(DEBUG)
AC_SUBST(CFLAGS)
AC_SUBST(PROFILE)
AC_OUTPUT([
Makefile
src/Makefile
doc/Makefile doc/libogg/Makefile
include/Makefile include/ogg/Makefile include/ogg/config_types.h
libogg.spec
ogg.pc
ogg-uninstalled.pc
])