Fix a comment typo.
[opusfile.git] / configure.ac
1 # autoconf source script for generating configure
2
3 AC_INIT([opusfile], m4_esyscmd([doc/git-version.sh]))
4
5 AC_USE_SYSTEM_EXTENSIONS
6 AC_SYS_LARGEFILE
7
8 AM_INIT_AUTOMAKE([1.11 foreign])
9 AM_MAINTAINER_MODE([enable])
10 LT_INIT
11
12 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
13
14 AC_CONFIG_MACRO_DIR([m4])
15
16 dnl Library versioning for libtool.
17 dnl Please update these for releases.
18 dnl CURRENT, REVISION, AGE
19 dnl - library source changed -> increment REVISION
20 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
21 dnl - interfaces added -> increment AGE
22 dnl - interfaces removed -> AGE = 0
23
24 OP_LT_CURRENT=0
25 OP_LT_REVISION=1
26 OP_LT_AGE=0
27
28 AC_SUBST(OP_LT_CURRENT)
29 AC_SUBST(OP_LT_REVISION)
30 AC_SUBST(OP_LT_AGE)
31
32 AC_ARG_ENABLE([assertions],
33   AS_HELP_STRING([--enable-assertions], [Enable assertions in code]),,
34   enable_assertions=no)
35
36 AS_IF([test "x$enable_assertions" = "xyes"], [
37   AC_DEFINE([OP_ENABLE_ASSERTIONS], [1], [Enable assertions in code])
38 ])
39
40 AC_ARG_ENABLE([http],
41   AS_HELP_STRING([--disable-http], [Disable HTTP support]),,
42   enable_http=yes)
43
44 AS_IF([test "x$enable_http" != "xno"],
45   AC_CHECK_HEADER([sys/socket.h],,
46     AC_MSG_WARN([HTTP support requires a posix socket library.])
47     enable_http=no
48   )
49 )
50
51 AS_IF([test "x$enable_http" != "xno"], [
52    openssl="openssl"
53    AC_DEFINE([OP_ENABLE_HTTP], [1], [Enable HTTP support])
54 ])
55 AC_SUBST(openssl)
56
57 PKG_CHECK_MODULES([DEPS], [ogg >= 1.3 opus >= 1.0.1 ${openssl}])
58
59 AC_ARG_ENABLE([fixed-point],
60   AS_HELP_STRING([--enable-fixed-point], [Enable fixed-point calculation]),,
61   enable_fixed_point=no)
62 AC_ARG_ENABLE([float],
63   AS_HELP_STRING([--disable-float], [Disable floating-point API]),,
64   enable_float=yes)
65
66 AS_IF([test "x$enable_float" = "xno"],
67   [enable_fixed_point=yes
68    AC_DEFINE([OP_DISABLE_FLOAT_API], [1], [Disable floating-point API])
69   ]
70 )
71
72 AS_IF([test "x$enable_fixed_point" = "xyes"],
73   [AC_DEFINE([OP_FIXED_POINT], [1], [Enable fixed-point calculation])],
74   [dnl This only has to be tested for if float->fixed conversions are required
75    AC_SEARCH_LIBS([lrintf], [m], [
76       AC_DEFINE([OP_HAVE_LRINTF], [1], [Enable use of lrintf function])
77       lrintf_notice="
78     Library for lrintf() ......... ${ac_cv_search_lrintf}"
79    ])
80   ]
81 )
82 AC_SUBST(ac_cv_search_lrintf)
83
84 CC_ATTRIBUTE_VISIBILITY([default], [
85   CC_FLAG_VISIBILITY([CFLAGS="${CFLAGS} -fvisibility=hidden"])
86 ])
87
88 CC_CHECK_CFLAGS_APPEND([-std=c89 -pedantic -Wall -Wextra -Wno-parentheses -Wno-long-long])
89
90 # Platform-specific tweaks
91 case $host in
92   *-mingw*)
93     # -std=c89 causes some warnings under mingw.
94     CC_CHECK_CFLAGS_APPEND([-U__STRICT_ANSI__])
95     ;;
96 esac
97
98 dnl Check for doxygen
99 AC_ARG_ENABLE([doc],
100   AS_HELP_STRING([--disable-doc], [Do not build API documentation]),,
101   [enable_doc=yes]
102 )
103 AC_CHECK_PROG(HAVE_DOXYGEN, doxygen, yes, no)
104 if test "$HAVE_DOXYGEN" != "yes" -o "$enable_doc" != "yes" ; then
105   HAVE_DOXYGEN="no"
106   enable_doc="no"
107 fi
108 AM_CONDITIONAL(HAVE_DOXYGEN, [test $HAVE_DOXYGEN = yes])
109
110 AC_OUTPUT([
111   Makefile
112   opusfile.pc
113   opusfile-uninstalled.pc
114   doc/Doxyfile
115 ])
116
117 AC_MSG_NOTICE([
118 ------------------------------------------------------------------------
119   $PACKAGE $VERSION: Automatic configuration OK.
120
121     Assertions ................... ${enable_assertions}
122
123     HTTP support ................. ${enable_http}
124     Fixed-point .................. ${enable_fixed_point}
125     Floating-point API ........... ${enable_float}${lrintf_notice}
126
127     Hidden visibility ............ ${cc_cv_flag_visibility}
128
129     API documentation ............ ${enable_doc}
130 ------------------------------------------------------------------------
131 ])