-
Notifications
You must be signed in to change notification settings - Fork 3
/
configure.ac
184 lines (150 loc) · 4.84 KB
/
configure.ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
dnl Process this file with autoconf to produce a configure script.
AC_INIT(src/libremix/remix_base.c)
AM_INIT_AUTOMAKE(remix, 0.2.3)
AM_CONFIG_HEADER(config.h)
dnl Checks for programs.
AM_PROG_LIBTOOL
AC_PROG_INSTALL
AC_PROG_MAKE_SET
# Check for doxygen
AC_CHECK_PROG(HAVE_DOXYGEN, doxygen, true, false)
AM_CONDITIONAL(HAVE_DOXYGEN,$HAVE_DOXYGEN)
if test $HAVE_DOXYGEN = "false"; then
AC_MSG_WARN([*** doxygen not found, docs will not be built])
fi
# Check for valgrind
VALGRIND_ENVIRONMENT=""
ac_enable_valgrind=no
AC_ARG_ENABLE(valgrind-testing,
[ --enable-valgrind-testing enable running of tests inside Valgrind ], [ ac_enable_valgrind=yes ], [ ac_enable_valgrind=no] )
if test "x${ac_enable_valgrind}" = xyes ; then
if test "x${enable_shared}" = xyes ; then
VALGRIND_ENVIRONMENT="libtool --mode=execute "
fi
AC_CHECK_PROG(HAVE_VALGRIND, valgrind, yes, no)
if test "x$HAVE_VALGRIND" = xyes ; then
VALGRIND_ENVIRONMENT="$VALGRIND_ENVIRONMENT valgrind -q --leak-check=yes --show-reachable=yes --num-callers=100"
AC_SUBST(VALGRIND_ENVIRONMENT)
TESTS_INFO="'make check' test suite will be run under:
${VALGRIND_ENVIRONMENT}"
else
TESTS_INFO="'make check' to run test suite (Valgrind not found)"
fi
else
TESTS_INFO="'make check' to run test suite (Valgrind testing not enabled)"
fi
dnl
dnl Configuration option for building of experimental code.
dnl
ac_enable_experimental=no
AC_ARG_ENABLE(experimental,
[ --enable-experimental enable building of experimental code ],
[ ac_enable_experimental=yes ])
if test "x${ac_enable_experimental}" = xyes ; then
AC_DEFINE(ANX_CONFIG_EXPERIMENTAL, [], [Define to build experimental code])
fi
dnl Checks for libraries.
dnl
dnl Detect libsndfile 1.0
dnl
PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.0,
HAVE_LIBSNDFILE1="yes", HAVE_LIBSNDFILE1="no")
if test "$HAVE_LIBSNDFILE1" = "yes" ; then
AC_DEFINE([HAVE_LIBSNDFILE1], [], [Define if libsndfile version 1 found])
AC_SUBST(SNDFILE_LIBS)
AC_SUBST(SNDFILE_CFLAGS)
else
AC_CHECK_LIB(sndfile, sf_open, SNDFILE_LIBS="maybe")
if test "$SNDFILE_LIBS" = "maybe" ; then
AC_MSG_ERROR([
***
*** libsndfile-1.0.0 or greater seems to exist on your system, however
*** the pkg-config tool cannot find its build information.
***
*** Please set your PKG_CONFIG_PATH environment variable to include the
*** directory in which sndfile.pc was installed. For example, sndfile.pc
*** is installed in /usr/local/lib/pkgconfig by default; if that is the
*** case do:
***
*** export PKG_CONFIG_PATH="\$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig"
***
*** then run this ./configure again. If you configured libsndfile with a
*** different --prefix option, replace /usr/local above with that prefix.
***
])
fi
fi
dnl Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS(limits.h)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_TYPE_SIZE_T
AC_TYPE_UID_T
dnl Checks for library functions.
AC_CHECK_FUNCS(strdup strerror)
dnl Test for sys/soundcard.h -- if user doesn't have it, don't build remix_monitor
HAVE_SYS_SOUNDCARD_H=0
AC_CHECK_HEADERS(sys/soundcard.h)
if test "x${ac_cv_header_sys_soundcard_h}" = xyes ; then
HAVE_SYS_SOUNDCARD_H=1
BUILD_MONITOR=1
fi
AC_SUBST(BUILD_MONITOR)
AM_CONDITIONAL(BUILD_MONITOR, test -n "$BUILD_MONITOR")
dnl
dnl Set PACKAGE_PLUGIN_DIR in Makefiles and config.h.
dnl
PACKAGE_PLUGIN_DIR="${libdir}/remix"
AC_SUBST(PACKAGE_PLUGIN_DIR)
if test "x${prefix}" = "xNONE"; then
PACKAGE_PLUGIN_DIR="${ac_default_prefix}/lib/remix"
else
PACKAGE_PLUGIN_DIR="${prefix}/lib/remix"
fi
AC_DEFINE_UNQUOTED(PACKAGE_PLUGIN_DIR, "$PACKAGE_PLUGIN_DIR",
[Set the plugin directory for remix])
dnl Use -Wall if we have gcc.
changequote(,)dnl
if test "x$GCC" = "xyes"; then
case " $CFLAGS " in
*[\ \ ]-Wall[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wall" ;;
esac
fi
changequote([,])dnl
AC_OUTPUT([
Makefile
doc/Makefile
doc/Doxyfile
include/Makefile
include/remix/Makefile
src/Makefile
src/ctxdata/Makefile
src/libremix/Makefile
src/plugins/Makefile
src/plugins/ladspa/Makefile
src/plugins/noise/Makefile
src/examples/Makefile
src/tests/Makefile
ctxdata.pc
remix.pc
remix.spec
])
AC_MSG_RESULT([
------------------------------------------------------------------------
$PACKAGE $VERSION: Automatic configuration OK.
General configuration:
Experimental code: ........... ${ac_enable_experimental}
Plugins:
ladspa noise
Example programs (./src/examples):
noisedemo sndfiledemo squaredemo
Installation paths:
libremix: .................... ${prefix}/lib
Plugins: ..................... ${PACKAGE_PLUGIN_DIR}
C header files: .............. ${prefix}/include/remix
Documentation: ............... ${prefix}/share/doc/$PACKAGE
Example programs will be built but not installed.
------------------------------------------------------------------------
])