📄 configure.ac
字号:
# Copyright (C) 1999-2004 Erik de Castro Lopo (erikd AT mega-nerd DOT com).dnl Require autoconf versionAC_PREREQ(2.53)AC_INIT(libsndfile,1.0.11,erikd@mega-nerd.com)AC_CONFIG_SRCDIR([src/sndfile.c])AC_CANONICAL_TARGET([])AM_INIT_AUTOMAKE($PACKAGE_NAME,$PACKAGE_VERSION)AM_CONFIG_HEADER(src/config.h)AM_MAINTAINER_MODE#------------------------------------------------------------------------------------# Rules for library version information:## 1. Start with version information of `0:0:0' for each libtool library.# 2. Update the version information only immediately before a public release of# your software. More frequent updates are unnecessary, and only guarantee# that the current interface number gets larger faster.# 3. If the library source code has changed at all since the last update, then# increment revision (`c:r:a' becomes `c:r+1:a').# 4. If any interfaces have been added, removed, or changed since the last update,# increment current, and set revision to 0.# 5. If any interfaces have been added since the last public release, then increment# age.# 6. If any interfaces have been removed since the last public release, then set age# to 0.SHARED_VERSION_INFO="1:11:0"AC_PROG_CCAM_PROG_LIBTOOLAC_CHECK_PROG(autogen, autogen, yes, no)AC_PROG_INSTALLAC_PROG_LN_SAC_HEADER_STDCAC_CHECK_HEADERS(endian.h)AC_CHECK_HEADERS(byteswap.h)AC_HEADER_SYS_WAITAC_CHECK_DECLS(S_IRGRP)AC_DEFINE_UNQUOTED([HAVE_DECL_S_IRGRP],${HAVE_DECL_S_IRGRP}, [Set to 1 if S_IRGRP is defined.])#====================================================================================# Check for support of the struct hack.AC_C99_FLEXIBLE_ARRAYif test x$ac_cv_c99_flexible_array = xyes ; then AC_DEFINE([HAVE_FLEXIBLE_ARRAY],1, [Set to 1 if the compile supports the struct hack.])else AC_MSG_WARN([[*** This compiler does not support the 1999 ISO C Standard ***]]) AC_MSG_WARN([[*** feature known as the flexible array struct member. ***]]) AC_DEFINE([HAVE_FLEXIBLE_ARRAY],0) fi#====================================================================================# Couple of initializations here. Fill in real values later.SHLIB_VERSION_ARG=""#====================================================================================# Finished checking, handle options.AC_ARG_ENABLE(experimental, AC_HELP_STRING([--enable-experimental], [enable experimental code]), ac_arg_experimental=yes, ac_arg_experimental=no)EXPERIMENTAL_CODE=0if test x$ac_arg_experimental = xyes ; then EXPERIMENTAL_CODE=1 fiAC_DEFINE_UNQUOTED([ENABLE_EXPERIMENTAL_CODE],${EXPERIMENTAL_CODE}, [Set to 1 to enable experimental code.])AC_ARG_ENABLE(gcc-werror, AC_HELP_STRING([--enable-gcc-werror], [enable -Werror in all Makefiles]), ac_arg_gcc_werror=yes, ac_arg_gcc_werror=no)AC_ARG_ENABLE(gcc-pipe, AC_HELP_STRING([--disable-gcc-pipe], [disable gcc -pipe option]), ac_arg_gcc_pipe="N", ac_arg_gcc_pipe="Y")AC_ARG_ENABLE(gcc-opt, AC_HELP_STRING([--disable-gcc-opt], [disable gcc optimisations]), ac_arg_gcc_opt="N", ac_arg_gcc_opt="Y")AC_ARG_ENABLE(cpu-clip, AC_HELP_STRING([--disable-cpu-clip], [disable tricky cpu specific clipper]), ac_arg_cpu_clip="N", ac_arg_cpu_clip="Y")AC_ARG_ENABLE(bow-docs, AC_HELP_STRING([--enable-bow-docs], [enable black-on-white html docs]), ac_arg_bow_docs="Y", ac_arg_bow_docs="N")#====================================================================================# Check types and their sizes.AC_CHECK_SIZEOF(short,2)AC_CHECK_SIZEOF(int,4)AC_CHECK_SIZEOF(long,4)AC_CHECK_SIZEOF(float,4)AC_CHECK_SIZEOF(double,4)AC_CHECK_SIZEOF(void*,8)AC_CHECK_SIZEOF(size_t,4)AC_CHECK_SIZEOF(int64_t,8)AC_CHECK_SIZEOF(long long,8)#====================================================================================# Find an appropriate type for sf_count_t.# On systems supporting files larger than 2 Gig, sf_count_t must be a 64 bit value.# Unfortunately there is more than one way of ensuring this so need to do some# pretty rigourous testing here.unset ac_cv_sizeof_off_tAC_CHECK_SIZEOF(off_t,1) # Fake default value.case "$target_os" in mingw32*) TYPEOF_SF_COUNT_T="__int64" SF_COUNT_MAX="0x7FFFFFFFFFFFFFFFLL" SIZEOF_SF_COUNT_T=8 ;; *) if test "x$ac_cv_sizeof_off_t" = "x8" ; then # If sizeof (off_t) is 8, no further checking is needed. TYPEOF_SF_COUNT_T="off_t" SF_COUNT_MAX="0x7FFFFFFFFFFFFFFFLL" SIZEOF_SF_COUNT_T=8 else # Check for common 64 bit file offset types. AC_CHECK_SIZEOF(loff_t,1) # Fake default value. AC_CHECK_SIZEOF(off64_t,1) # Fake default value. TYPEOF_SF_COUNT_T="unknown" if test "x$ac_cv_sizeof_loff_t" = "x8" ; then TYPEOF_SF_COUNT_T="loff_t" SIZEOF_SF_COUNT_T=8 elif test "x$ac_cv_sizeof_off64_t" = "x8" ; then TYPEOF_SF_COUNT_T="off64_t" SIZEOF_SF_COUNT_T=8 fi # Save the old sizeof (off_t) value and then unset it to see if it # changes when Large File Support is enabled. pre_largefile_sizeof_off_t=$ac_cv_sizeof_off_t unset ac_cv_sizeof_off_t AC_SYS_EXTRA_LARGEFILE if test "x$ac_cv_sys_largefile_CFLAGS" = "xno" ; then ac_cv_sys_largefile_CFLAGS="" fi if test "x$ac_cv_sys_largefile_LDFLAGS" = "xno" ; then ac_cv_sys_largefile_LDFLAGS="" fi if test "x$ac_cv_sys_largefile_LIBS" = "xno" ; then ac_cv_sys_largefile_LIBS="" fi AC_CHECK_SIZEOF(off_t,1) # Fake default value. if test "x$ac_cv_sizeof_off_t" = "x8" ; then SF_COUNT_MAX="0x7FFFFFFFFFFFFFFFLL" elif test "x$ac_cv_sizeof_off_t" = "x$pre_largefile_sizeof_off_t" ; then AC_MSG_WARN([[This machine does not seem to support 64 bit file offsets.]]) TYPEOF_SF_COUNT_T="off_t" SIZEOF_SF_COUNT_T=$ac_cv_sizeof_off_t elif test "x$TYPEOF_SF_COUNT_T" = "xunknown" ; then echo echo "*** The configure process has determined that this system is capable" echo "*** of Large File Support but has not been able to find a type which" echo "*** is an unambiguous 64 bit file offset." echo "*** Please contact the author to help resolve this problem." echo AC_MSG_ERROR([[Bad file offset type.]]) fi fi ;; esacif test $SIZEOF_SF_COUNT_T = 4 ; then SF_COUNT_MAX="0x7FFFFFFF" fiAC_DEFINE_UNQUOTED([TYPEOF_SF_COUNT_T],${TYPEOF_SF_COUNT_T}, [Set to long if unknown.])AC_SUBST(TYPEOF_SF_COUNT_T)AC_DEFINE_UNQUOTED([SIZEOF_SF_COUNT_T],${SIZEOF_SF_COUNT_T}, [Set to sizeof (long) if unknown.])AC_SUBST(SIZEOF_SF_COUNT_T)AC_DEFINE_UNQUOTED([SF_COUNT_MAX],${SF_COUNT_MAX}, [Set to maximum allowed value of sf_count_t type.])AC_SUBST(SF_COUNT_MAX)AC_CHECK_TYPES(ssize_t)AC_CHECK_SIZEOF(ssize_t,4)#====================================================================================# Determine endian-ness of target processor.AC_C_FIND_ENDIANAC_DEFINE_UNQUOTED(CPU_IS_BIG_ENDIAN, ${ac_cv_c_big_endian}, [Target processor is big endian.])AC_DEFINE_UNQUOTED(CPU_IS_LITTLE_ENDIAN, ${ac_cv_c_little_endian}, [Target processor is little endian.])#====================================================================================# Check for functions.AC_CHECK_FUNCS(malloc calloc realloc free)AC_CHECK_FUNCS(open read write lseek pread pwrite)AC_CHECK_FUNCS(fstat ftruncate fsync fdatasync)AC_CHECK_FUNCS(snprintf vsnprintf)AC_CHECK_FUNCS(gmtime gmtime_r)AC_CHECK_FUNCS(mmap getpagesize)AC_CHECK_LIB([m],floor)AC_CHECK_FUNCS(floor ceil fmod)case "$target_os" in darwin* | rhapsody*) AC_MSG_WARN([[Not using native lrint() and lrintf() because they are missing on 10.1.]]) ;; *) AC_C99_FUNC_LRINT AC_C99_FUNC_LRINTF if test "x$ac_cv_c99_lrint" = "xno" ; then if test "x$ac_cv_c99_lrintf" = "xno" ; then AC_MSG_WARN([[*** Missing C99 standard functions lrint() and lrintf().]]) AC_MSG_WARN([[*** This may cause benign compiler warnings on some systems (ie Solaris).]]) fi fi ;;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -