mirror of
https://github.com/claunia/flac.git
synced 2025-12-16 18:54:26 +00:00
Previously CFLAGS had a -O3 at the start and a -O2 at the end. According
to the GCC docs:
https://gcc.gnu.org/onlinedocs/gcc-4.9.1/gcc/Optimize-Options.html
"If you use multiple -O options, with or without level numbers,
the last such option is the one that is effective" which means that
GCC doesn't try to use SIMD to vectorize the code, etc."
535 lines
17 KiB
Plaintext
535 lines
17 KiB
Plaintext
# FLAC - Free Lossless Audio Codec
|
|
# Copyright (C) 2001,2002,2003,2004,2005,2006,2007,2008,2009 Josh Coalson
|
|
#
|
|
# This file is part the FLAC project. FLAC is comprised of several
|
|
# components distributed under different licenses. The codec libraries
|
|
# are distributed under Xiph.Org's BSD-like license (see the file
|
|
# COPYING.Xiph in this distribution). All other programs, libraries, and
|
|
# plugins are distributed under the GPL (see COPYING.GPL). The documentation
|
|
# is distributed under the Gnu FDL (see COPYING.FDL). Each file in the
|
|
# FLAC distribution contains at the top the terms under which it may be
|
|
# distributed.
|
|
#
|
|
# Since this particular file is relevant to all components of FLAC,
|
|
# it may be distributed under the Xiph.Org license, which is the least
|
|
# restrictive of those mentioned above. See the file COPYING.Xiph in this
|
|
# distribution.
|
|
|
|
# NOTE that for many of the AM_CONDITIONALs we use the prefix FLaC__
|
|
# instead of FLAC__ since autoconf triggers off 'AC_' in strings
|
|
|
|
AC_PREREQ(2.60)
|
|
AC_INIT([flac], [1.3.0], [flac-dev@xiph.org], [flac], [https://www.xiph.org/flac/])
|
|
AC_CONFIG_HEADERS([config.h])
|
|
AC_CONFIG_SRCDIR([src/flac/main.c])
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
AM_INIT_AUTOMAKE([foreign 1.11 -Wall tar-pax no-dist-gzip dist-xz subdir-objects])
|
|
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
|
|
|
user_cflags=$CFLAGS
|
|
|
|
#Prefer whatever the current ISO standard is.
|
|
AC_PROG_CC_STDC
|
|
AC_USE_SYSTEM_EXTENSIONS
|
|
m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
|
|
LT_INIT([win32-dll disable-static pic-only])
|
|
AM_PROG_AS
|
|
AC_PROG_CXX
|
|
XIPH_C_COMPILER_IS_CLANG
|
|
XIPH_GCC_REALLY_IS_GCC
|
|
AC_PROG_MAKE_SET
|
|
AC_PROG_MKDIR_P
|
|
|
|
AC_SYS_LARGEFILE
|
|
AC_FUNC_FSEEKO
|
|
|
|
AC_CHECK_SIZEOF(off_t,1) # Fake default value.
|
|
AC_CHECK_SIZEOF([void*])
|
|
AC_SEARCH_LIBS([lround],[m], [AC_DEFINE(HAVE_LROUND,1,lround support)])
|
|
|
|
AC_LANG_PUSH([C++])
|
|
# c++ flavor first
|
|
AC_C_VARARRAYS
|
|
if test $ac_cv_c_vararrays = yes; then
|
|
AC_DEFINE([HAVE_CXX_VARARRAYS], 1, [Define to 1 if C++ supports variable-length arrays.])
|
|
fi
|
|
AC_LANG_POP([C++])
|
|
|
|
# c flavor
|
|
AC_HEADER_STDC
|
|
AM_PROG_CC_C_O
|
|
AC_C_INLINE
|
|
AC_C_VARARRAYS
|
|
AC_C_TYPEOF
|
|
|
|
AC_CHECK_HEADERS([stdint.h inttypes.h byteswap.h sys/param.h termios.h x86intrin.h cpuid.h])
|
|
|
|
AC_HEADER_TIOCGWINSZ
|
|
|
|
XIPH_C_BSWAP32
|
|
|
|
ac_cv_c_big_endian=0
|
|
ac_cv_c_little_endian=0
|
|
AC_C_BIGENDIAN([ac_cv_c_big_endian=1], [ac_cv_c_little_endian=1], [
|
|
AC_MSG_WARN([[*****************************************************************]])
|
|
AC_MSG_WARN([[*** Not able to determine endian-ness of target processor. ]])
|
|
AC_MSG_WARN([[*** The constants CPU_IS_BIG_ENDIAN and CPU_IS_LITTLE_ENDIAN in ]])
|
|
AC_MSG_WARN([[*** config.h may need to be hand editied. ]])
|
|
AC_MSG_WARN([[*****************************************************************]])
|
|
])
|
|
AC_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.])
|
|
AC_DEFINE_UNQUOTED(WORDS_BIGENDIAN, ${ac_cv_c_big_endian},
|
|
[Target processor is big endian.])
|
|
|
|
AC_ARG_ENABLE(asm-optimizations, AC_HELP_STRING([--disable-asm-optimizations], [Don't use any assembly optimization routines]), asm_opt=no, asm_opt=yes)
|
|
dnl ' Terminate the damn single quote
|
|
AM_CONDITIONAL(FLaC__NO_ASM, test "x$asm_opt" = xno)
|
|
if test "x$asm_opt" = xno ; then
|
|
AC_DEFINE(FLAC__NO_ASM)
|
|
AH_TEMPLATE(FLAC__NO_ASM, [define to disable use of assembly code])
|
|
fi
|
|
|
|
# For the XMMS plugin.
|
|
AC_CHECK_TYPES(socklen_t, [], [])
|
|
|
|
dnl check for getopt in standard library
|
|
dnl AC_CHECK_FUNCS(getopt_long , , [LIBOBJS="$LIBOBJS getopt.o getopt1.o"] )
|
|
AC_CHECK_FUNCS(getopt_long, [], [])
|
|
|
|
AC_CHECK_SIZEOF(void*,1)
|
|
|
|
asm_optimisation=no
|
|
case "$host_cpu" in
|
|
x86_64)
|
|
if test $ac_cv_sizeof_voidp = 4 ; then
|
|
# This must be a 32 bit user space running on 64 bit kernel so treat
|
|
# this as ia32.
|
|
cpu_ia32=true
|
|
AC_DEFINE(FLAC__CPU_IA32)
|
|
AH_TEMPLATE(FLAC__CPU_IA32, [define if building for ia32/i386])
|
|
else
|
|
# x86_64 user space and kernel.
|
|
cpu_x86_64=true
|
|
AC_DEFINE(FLAC__CPU_X86_64)
|
|
AH_TEMPLATE(FLAC__CPU_X86_64, [define if building for x86_64])
|
|
fi
|
|
asm_optimisation=$asm_opt
|
|
;;
|
|
i*86)
|
|
cpu_ia32=true
|
|
AC_DEFINE(FLAC__CPU_IA32)
|
|
AH_TEMPLATE(FLAC__CPU_IA32, [define if building for ia32/i386])
|
|
asm_optimisation=$asm_opt
|
|
;;
|
|
powerpc|powerpc64)
|
|
cpu_ppc=true
|
|
AC_DEFINE(FLAC__CPU_PPC)
|
|
AH_TEMPLATE(FLAC__CPU_PPC, [define if building for PowerPC])
|
|
asm_optimisation=$asm_opt
|
|
;;
|
|
sparc)
|
|
cpu_sparc=true
|
|
AC_DEFINE(FLAC__CPU_SPARC)
|
|
AH_TEMPLATE(FLAC__CPU_SPARC, [define if building for SPARC])
|
|
asm_optimisation=$asm_opt
|
|
;;
|
|
esac
|
|
AM_CONDITIONAL(FLAC__CPU_X86_64, test "x$cpu_x86_64" = xtrue)
|
|
AM_CONDITIONAL(FLaC__CPU_IA32, test "x$cpu_ia32" = xtrue)
|
|
AM_CONDITIONAL(FLaC__CPU_PPC, test "x$cpu_ppc" = xtrue)
|
|
AM_CONDITIONAL(FLaC__CPU_SPARC, test "x$cpu_sparc" = xtrue)
|
|
|
|
AC_DEFINE_UNQUOTED([FLAC__HAS_X86INTRIN],${HAVE_X86INTRIN_H}, [Set to 1 if <x86intrin.h> is available.])
|
|
|
|
case "$host" in
|
|
i386-*-openbsd3.[[0-3]]) OBJ_FORMAT=aoutb ;;
|
|
*-*-cygwin|*mingw*) OBJ_FORMAT=win32 ;;
|
|
*-*-darwin*) OBJ_FORMAT=macho ;;
|
|
*emx*) OBJ_FORMAT=aout ;;
|
|
*) OBJ_FORMAT=elf ;;
|
|
esac
|
|
AC_SUBST(OBJ_FORMAT)
|
|
case "$host" in
|
|
*-gnuspe)
|
|
abi_spe=true
|
|
AC_DEFINE(FLAC__CPU_PPC_SPE)
|
|
AH_TEMPLATE(FLAC__CPU_PPC_SPE, [define if building for PowerPC with SPE ABI])
|
|
;;
|
|
esac
|
|
AM_CONDITIONAL(FLaC__CPU_PPC_SPE, test "x$abi_spe" = xtrue)
|
|
|
|
os_is_windows=no
|
|
case "$host" in
|
|
*-*-cygwin|*mingw*)
|
|
CPPFLAGS="-D__MSVCRT_VERSION__=0x0601 $CPPFLAGS"
|
|
os_is_windows=yes
|
|
;;
|
|
esac
|
|
|
|
AM_CONDITIONAL(OS_IS_WINDOWS, test "x$os_is_windows" = xyes)
|
|
|
|
case "$host" in
|
|
*-pc-linux-gnu)
|
|
sys_linux=true
|
|
AC_DEFINE(FLAC__SYS_LINUX)
|
|
AH_TEMPLATE(FLAC__SYS_LINUX, [define if building for Linux])
|
|
;;
|
|
*-*-darwin*)
|
|
sys_darwin=true
|
|
AC_DEFINE(FLAC__SYS_DARWIN)
|
|
AH_TEMPLATE(FLAC__SYS_DARWIN, [define if building for Darwin / MacOS X])
|
|
;;
|
|
esac
|
|
AM_CONDITIONAL(FLaC__SYS_DARWIN, test "x$sys_darwin" = xtrue)
|
|
AM_CONDITIONAL(FLaC__SYS_LINUX, test "x$sys_linux" = xtrue)
|
|
|
|
if test "x$cpu_ia32" = xtrue || test "x$cpu_x86_64" = xtrue ; then
|
|
AC_DEFINE(FLAC__ALIGN_MALLOC_DATA)
|
|
AH_TEMPLATE(FLAC__ALIGN_MALLOC_DATA, [define to align allocated memory on 32-byte boundaries])
|
|
fi
|
|
|
|
AC_ARG_ENABLE(debug,
|
|
AC_HELP_STRING([--enable-debug], [Turn on debugging]),
|
|
[case "${enableval}" in
|
|
yes) debug=true ;;
|
|
no) debug=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
|
|
esac],[debug=false])
|
|
AM_CONDITIONAL(DEBUG, test "x$debug" = xtrue)
|
|
|
|
AC_ARG_ENABLE(sse,
|
|
AC_HELP_STRING([--disable-sse], [Disable SSE if the OS does not support SSE instructions]),
|
|
[case "${enableval}" in
|
|
yes) sse_os=yes ;;
|
|
no) sse_os=no ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-sse) ;;
|
|
esac],[sse_os=yes])
|
|
AM_CONDITIONAL(FLaC__SSE_OS, test "x$sse_os" = xtrue)
|
|
if test "x$sse_os" = xyes ; then
|
|
AC_DEFINE(FLAC__SSE_OS)
|
|
AH_TEMPLATE(FLAC__SSE_OS, [define if your operating system supports SSE instructions])
|
|
fi
|
|
|
|
AC_ARG_ENABLE(3dnow,
|
|
AC_HELP_STRING([--disable-3dnow], [Disable 3DNOW! optimizations]),
|
|
[case "${enableval}" in
|
|
yes) use_3dnow=true ;;
|
|
no) use_3dnow=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-3dnow) ;;
|
|
esac],[use_3dnow=true])
|
|
AM_CONDITIONAL(FLaC__USE_3DNOW, test "x$use_3dnow" = xtrue)
|
|
if test "x$use_3dnow" = xtrue ; then
|
|
AC_DEFINE(FLAC__USE_3DNOW)
|
|
AH_TEMPLATE(FLAC__USE_3DNOW, [define to enable use of 3Dnow! instructions])
|
|
fi
|
|
|
|
AC_ARG_ENABLE(altivec,
|
|
AC_HELP_STRING([--disable-altivec], [Disable Altivec optimizations]),
|
|
[case "${enableval}" in
|
|
yes) use_altivec=true ;;
|
|
no) use_altivec=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-altivec) ;;
|
|
esac],[use_altivec=true])
|
|
AM_CONDITIONAL(FLaC__USE_ALTIVEC, test "x$use_altivec" = xtrue)
|
|
if test "x$use_altivec" = xtrue ; then
|
|
AC_DEFINE(FLAC__USE_ALTIVEC)
|
|
AH_TEMPLATE(FLAC__USE_ALTIVEC, [define to enable use of Altivec instructions])
|
|
fi
|
|
|
|
AC_ARG_ENABLE(thorough-tests,
|
|
AC_HELP_STRING([--disable-thorough-tests], [Disable thorough (long) testing, do only basic tests]),
|
|
[case "${enableval}" in
|
|
yes) thorough_tests=true ;;
|
|
no) thorough_tests=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-thorough-tests) ;;
|
|
esac],[thorough_tests=true])
|
|
AC_ARG_ENABLE(exhaustive-tests,
|
|
AC_HELP_STRING([--enable-exhaustive-tests], [Enable exhaustive testing (VERY long)]),
|
|
[case "${enableval}" in
|
|
yes) exhaustive_tests=true ;;
|
|
no) exhaustive_tests=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-exhaustive-tests) ;;
|
|
esac],[exhaustive_tests=false])
|
|
if test "x$thorough_tests" = xfalse ; then
|
|
FLAC__TEST_LEVEL=0
|
|
elif test "x$exhaustive_tests" = xfalse ; then
|
|
FLAC__TEST_LEVEL=1
|
|
else
|
|
FLAC__TEST_LEVEL=2
|
|
fi
|
|
AC_SUBST(FLAC__TEST_LEVEL)
|
|
|
|
AC_ARG_ENABLE(werror,
|
|
AC_HELP_STRING([--enable-werror], [Enable -Werror in all Makefiles]))
|
|
|
|
AC_ARG_ENABLE(stack-smash-protection,
|
|
AC_HELP_STRING([--enable-stack-smash-protection], [Enable GNU GCC stack smash protection]))
|
|
|
|
AC_ARG_ENABLE(valgrind-testing,
|
|
AC_HELP_STRING([--enable-valgrind-testing], [Run all tests inside Valgrind]),
|
|
[case "${enableval}" in
|
|
yes) FLAC__TEST_WITH_VALGRIND=yes ;;
|
|
no) FLAC__TEST_WITH_VALGRIND=no ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-valgrind-testing) ;;
|
|
esac],[FLAC__TEST_WITH_VALGRIND=no])
|
|
AC_SUBST(FLAC__TEST_WITH_VALGRIND)
|
|
|
|
AC_ARG_ENABLE(doxygen-docs,
|
|
AC_HELP_STRING([--disable-doxygen-docs], [Disable API documentation building via Doxygen]),
|
|
[case "${enableval}" in
|
|
yes) enable_doxygen_docs=true ;;
|
|
no) enable_doxygen_docs=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-doxygen-docs) ;;
|
|
esac],[enable_doxygen_docs=true])
|
|
if test "x$enable_doxygen_docs" != xfalse ; then
|
|
AC_CHECK_PROGS(DOXYGEN, doxygen)
|
|
fi
|
|
AM_CONDITIONAL(FLaC__HAS_DOXYGEN, test -n "$DOXYGEN")
|
|
|
|
AC_ARG_ENABLE(local-xmms-plugin,
|
|
AC_HELP_STRING([--enable-local-xmms-plugin], [Install XMMS plugin to ~/.xmms/Plugins instead of system location]),
|
|
[case "${enableval}" in
|
|
yes) install_xmms_plugin_locally=true ;;
|
|
no) install_xmms_plugin_locally=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-local-xmms-plugin) ;;
|
|
esac],[install_xmms_plugin_locally=false])
|
|
AM_CONDITIONAL(FLaC__INSTALL_XMMS_PLUGIN_LOCALLY, test "x$install_xmms_plugin_locally" = xtrue)
|
|
|
|
AC_ARG_ENABLE(xmms-plugin,
|
|
AC_HELP_STRING([--disable-xmms-plugin], [Do not build XMMS plugin]),
|
|
[case "${enableval}" in
|
|
yes) enable_xmms_plugin=true ;;
|
|
no) enable_xmms_plugin=false ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-xmms-plugin) ;;
|
|
esac],[enable_xmms_plugin=true])
|
|
if test "x$enable_xmms_plugin" != xfalse ; then
|
|
AM_PATH_XMMS(0.9.5.1, , AC_MSG_WARN([*** XMMS >= 0.9.5.1 not installed - XMMS support will not be built]))
|
|
fi
|
|
AM_CONDITIONAL(FLaC__HAS_XMMS, test -n "$XMMS_INPUT_PLUGIN_DIR")
|
|
|
|
dnl build FLAC++ or not
|
|
AC_ARG_ENABLE([cpplibs],
|
|
AC_HELP_STRING([--disable-cpplibs], [Do not build libFLAC++]),
|
|
[case "${enableval}" in
|
|
yes) disable_cpplibs=false ;;
|
|
no) disable_cpplibs=true ;;
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-cpplibs) ;;
|
|
esac], [disable_cpplibs=false])
|
|
AM_CONDITIONAL(FLaC__WITH_CPPLIBS, [test "x$disable_cpplibs" != xtrue])
|
|
|
|
dnl check for ogg library
|
|
AC_ARG_ENABLE([ogg],
|
|
AC_HELP_STRING([--disable-ogg], [Disable ogg support (default: test for libogg)]),
|
|
[ want_ogg=$enableval ], [ want_ogg=yes ] )
|
|
|
|
if test "x$want_ogg" != "xno"; then
|
|
XIPH_PATH_OGG(have_ogg=yes, AC_MSG_WARN([*** Ogg development enviroment not installed - Ogg support will not be built]))
|
|
fi
|
|
|
|
AM_CONDITIONAL(FLaC__HAS_OGG, [test "x$have_ogg" = xyes])
|
|
if test "x$have_ogg" = xyes ; then
|
|
AC_DEFINE_UNQUOTED([FLAC__HAS_OGG],1,[define if you have the ogg library])
|
|
OGG_PACKAGE="ogg"
|
|
else
|
|
AC_DEFINE_UNQUOTED([FLAC__HAS_OGG],0)
|
|
have_ogg=no
|
|
fi
|
|
AC_SUBST(OGG_PACKAGE)
|
|
|
|
dnl check for i18n(internationalization); these are from libiconv/gettext
|
|
AM_ICONV
|
|
AM_LANGINFO_CODESET
|
|
|
|
AC_CHECK_PROGS(DOCBOOK_TO_MAN, docbook-to-man docbook2man)
|
|
AM_CONDITIONAL(FLaC__HAS_DOCBOOK_TO_MAN, test -n "$DOCBOOK_TO_MAN")
|
|
if test -n "$DOCBOOK_TO_MAN" ; then
|
|
AC_DEFINE(FLAC__HAS_DOCBOOK_TO_MAN)
|
|
AH_TEMPLATE(FLAC__HAS_DOCBOOK_TO_MAN, [define if you have docbook-to-man or docbook2man])
|
|
fi
|
|
|
|
# only matters for x86
|
|
AC_CHECK_PROGS(NASM, nasm)
|
|
AM_CONDITIONAL(FLaC__HAS_NASM, test -n "$NASM")
|
|
if test -n "$NASM" ; then
|
|
AC_DEFINE(FLAC__HAS_NASM)
|
|
AH_TEMPLATE(FLAC__HAS_NASM, [define if you are compiling for x86 and have the NASM assembler])
|
|
fi
|
|
|
|
# only matters for PowerPC
|
|
AC_CHECK_PROGS(AS, as, as)
|
|
AC_CHECK_PROGS(GAS, gas, gas)
|
|
|
|
# try -v (apple as) and --version (gas) at the same time
|
|
test "$AS" = "as" && as --version -v < /dev/null 2>&1 | grep Apple >/dev/null || AS=gas
|
|
|
|
AM_CONDITIONAL(FLaC__HAS_AS, test "$AS" = "as")
|
|
AM_CONDITIONAL(FLaC__HAS_GAS, test "$AS" = "gas")
|
|
if test "$AS" = "as" ; then
|
|
AC_DEFINE(FLAC__HAS_AS)
|
|
AH_TEMPLATE(FLAC__HAS_AS, [define if you are compiling for PowerPC and have the 'as' assembler])
|
|
fi
|
|
if test "$AS" = "gas" ; then
|
|
# funniest. macro. ever.
|
|
AC_DEFINE(FLAC__HAS_GAS)
|
|
AH_TEMPLATE(FLAC__HAS_GAS, [define if you are compiling for PowerPC and have the 'gas' assembler])
|
|
fi
|
|
|
|
if test "x$debug" = xtrue; then
|
|
CPPFLAGS="-DDEBUG $CPPFLAGS"
|
|
CFLAGS=$(echo "$CFLAGS" | sed 's/-g//')
|
|
CFLAGS="-g $CFLAGS"
|
|
else
|
|
CPPFLAGS="-DNDEBUG $CPPFLAGS"
|
|
CFLAGS=$(echo "$CFLAGS" | sed 's/-O2//;s/-g//')
|
|
CFLAGS="-O3 -funroll-loops $CFLAGS"
|
|
fi
|
|
|
|
XIPH_GCC_VERSION
|
|
|
|
if test x$ac_cv_c_compiler_gnu = xyes ; then
|
|
CFLAGS="$CFLAGS -Wall -Wextra -Wstrict-prototypes -Wmissing-prototypes -Waggregate-return -Wcast-align -Wnested-externs -Wshadow -Wundef -Wmissing-declarations -Wunreachable-code -Winline " # -Wcast-qual -Wbad-function-cast -Wwrite-strings -Wconversion
|
|
CXXFLAGS="$CXXFLAGS -Wall -Wextra -Wcast-align -Wshadow -Wwrite-strings -Wctor-dtor-privacy -Wnon-virtual-dtor -Wreorder -Wsign-promo -Wundef -Wunreachable-code " # -Wcast-qual -Wbad-function-cast -Wwrite-strings -Woverloaded-virtual -Wmissing-declarations
|
|
|
|
XIPH_ADD_CFLAGS([-Wdeclaration-after-statement])
|
|
XIPH_ADD_CFLAGS([-D_FORTIFY_SOURCE=2])
|
|
|
|
AC_LANG_PUSH([C++])
|
|
XIPH_ADD_CXXFLAGS([-Weffc++])
|
|
AC_LANG_POP([C++])
|
|
|
|
if test "$GCC_MAJOR_VERSION" -ge 4 && test "$OBJ_FORMAT" = elf; then
|
|
CPPFLAGS="$CPPFLAGS -DFLAC__USE_VISIBILITY_ATTR"
|
|
CFLAGS="$CFLAGS -fvisibility=hidden"
|
|
CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
|
|
fi
|
|
|
|
if test "$GCC_MAJOR_VERSION" -ge 4 && test "$OBJ_FORMAT" = macho; then
|
|
CPPFLAGS="$CPPFLAGS -DFLAC__USE_VISIBILITY_ATTR"
|
|
CFLAGS="$CFLAGS -fvisibility=hidden"
|
|
CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
|
|
fi
|
|
|
|
if test "x$GCC_MAJOR_VERSION$GCC_MINOR_VERSION" = "x42" ; then
|
|
XIPH_ADD_CFLAGS([-fgnu89-inline])
|
|
fi
|
|
|
|
if test "x$asm_optimisation" = "xyes" ; then
|
|
XIPH_ADD_CFLAGS([-msse2])
|
|
fi
|
|
|
|
fi
|
|
|
|
XIPH_ADD_CFLAGS([-Wextra])
|
|
|
|
if test x$enable_werror = "xyes" ; then
|
|
XIPH_ADD_CFLAGS([-Werror])
|
|
AC_LANG_PUSH([C++])
|
|
XIPH_ADD_CXXFLAGS([-Werror])
|
|
AC_LANG_POP([C++])
|
|
fi
|
|
|
|
|
|
if test x$enable_stack_smash_protection = "xyes" ; then
|
|
XIPH_GCC_STACK_PROTECTOR
|
|
XIPH_GXX_STACK_PROTECTOR
|
|
fi
|
|
|
|
#@@@
|
|
AM_CONDITIONAL(FLaC__HAS_AS__TEMPORARILY_DISABLED, test "yes" = "no")
|
|
AM_CONDITIONAL(FLaC__HAS_GAS__TEMPORARILY_DISABLED, test "yes" = "no")
|
|
|
|
AC_CONFIG_FILES([ \
|
|
Makefile \
|
|
src/Makefile \
|
|
src/libFLAC/Makefile \
|
|
src/libFLAC/flac.pc \
|
|
src/libFLAC/ia32/Makefile \
|
|
src/libFLAC/ppc/Makefile \
|
|
src/libFLAC/ppc/as/Makefile \
|
|
src/libFLAC/ppc/gas/Makefile \
|
|
src/libFLAC/include/Makefile \
|
|
src/libFLAC/include/private/Makefile \
|
|
src/libFLAC/include/protected/Makefile \
|
|
src/libFLAC++/Makefile \
|
|
src/libFLAC++/flac++.pc \
|
|
src/flac/Makefile \
|
|
src/metaflac/Makefile \
|
|
src/plugin_common/Makefile \
|
|
src/plugin_xmms/Makefile \
|
|
src/share/Makefile \
|
|
src/test_grabbag/Makefile \
|
|
src/test_grabbag/cuesheet/Makefile \
|
|
src/test_grabbag/picture/Makefile \
|
|
src/test_libs_common/Makefile \
|
|
src/test_libFLAC/Makefile \
|
|
src/test_libFLAC++/Makefile \
|
|
src/test_seeking/Makefile \
|
|
src/test_streams/Makefile \
|
|
src/utils/Makefile \
|
|
src/utils/flacdiff/Makefile \
|
|
src/utils/flactimer/Makefile \
|
|
examples/Makefile \
|
|
examples/c/Makefile \
|
|
examples/c/decode/Makefile \
|
|
examples/c/decode/file/Makefile \
|
|
examples/c/encode/Makefile \
|
|
examples/c/encode/file/Makefile \
|
|
examples/cpp/Makefile \
|
|
examples/cpp/decode/Makefile \
|
|
examples/cpp/decode/file/Makefile \
|
|
examples/cpp/encode/Makefile \
|
|
examples/cpp/encode/file/Makefile \
|
|
include/Makefile \
|
|
include/FLAC/Makefile \
|
|
include/FLAC++/Makefile \
|
|
include/share/Makefile \
|
|
include/share/grabbag/Makefile \
|
|
include/test_libs_common/Makefile \
|
|
doc/Doxyfile \
|
|
doc/Makefile \
|
|
doc/html/Makefile \
|
|
doc/html/images/Makefile \
|
|
m4/Makefile \
|
|
man/Makefile \
|
|
test/common.sh \
|
|
test/Makefile \
|
|
test/cuesheets/Makefile \
|
|
test/flac-to-flac-metadata-test-files/Makefile \
|
|
test/metaflac-test-files/Makefile \
|
|
test/pictures/Makefile \
|
|
build/Makefile \
|
|
objs/Makefile \
|
|
objs/debug/Makefile \
|
|
objs/debug/bin/Makefile \
|
|
objs/debug/lib/Makefile \
|
|
objs/release/Makefile \
|
|
objs/release/bin/Makefile \
|
|
objs/release/lib/Makefile \
|
|
])
|
|
AC_OUTPUT
|
|
|
|
AC_MSG_RESULT([
|
|
-=-=-=-=-=-=-=-=-=-= Configuration Complete =-=-=-=-=-=-=-=-=-=-
|
|
|
|
Configuration summary :
|
|
|
|
FLAC version : ........................ ${VERSION}
|
|
|
|
Host CPU : ............................ ${host_cpu}
|
|
Host Vendor : ......................... ${host_vendor}
|
|
Host OS : ............................. ${host_os}
|
|
])
|
|
|
|
echo " Compiler is GCC : ..................... ${ac_cv_c_compiler_gnu}"
|
|
if test x$ac_cv_c_compiler_gnu = xyes ; then
|
|
echo " GCC version : ......................... ${GCC_VERSION}"
|
|
fi
|
|
echo " Compiler is Clang : ................... ${xiph_cv_c_compiler_clang}"
|
|
echo " SSE optimizations : ................... ${sse_os}"
|
|
echo " Asm optimizations : ................... ${asm_optimisation}"
|
|
echo " Ogg/FLAC support : .................... ${have_ogg}"
|
|
echo
|