/[svn]/qsampler/trunk/configure.ac
ViewVC logotype

Annotation of /qsampler/trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2108 - (hide annotations) (download)
Thu Jul 15 08:03:32 2010 UTC (13 years, 8 months ago) by capela
File size: 12323 byte(s)
* Sampler channel and instrument file requester support for
  other than GIG instrument files (*gig *.dls) has been added,
  now also allowing for SFZ instrument files (*.sfz) loading.

1 capela 753 # Process this file with autoconf to produce a configure script.
2 capela 2108 AC_INIT(Qsampler, 0.2.2.25, rncbc@rncbc.org, qsampler)
3 capela 1463
4 capela 2074 AC_CONFIG_SRCDIR(src/qsampler.cpp)
5     AC_CONFIG_HEADERS(src/config.h)
6     AC_CONFIG_FILES(Makefile qsampler.spec src/src.pri src/qsampler.desktop)
7 capela 753
8     # Set default installation prefix.
9     AC_PREFIX_DEFAULT(/usr/local)
10     ac_prefix=$prefix
11     if test "x$ac_prefix" = "xNONE"; then
12     ac_prefix=$ac_default_prefix
13     fi
14     AC_SUBST(ac_prefix)
15     AC_DEFINE_UNQUOTED(CONFIG_PREFIX, ["$ac_prefix"], [Default installation prefix.])
16    
17     # Enable debugging argument option.
18     AC_ARG_ENABLE(debug,
19     AC_HELP_STRING([--enable-debug], [enable debugging (default=no)]),
20 capela 1166 [ac_debug="$enableval"])
21 capela 753
22 capela 1166 if test "x$ac_debug" = "xyes"; then
23 capela 753 AC_DEFINE(CONFIG_DEBUG, 1, [Define if debugging is enabled.])
24 capela 2065 ac_stacktrace="yes"
25 capela 1166 ac_debug="debug"
26     else
27 capela 2065 ac_stacktrace="no"
28 capela 1166 ac_debug="release"
29 capela 753 fi
30 capela 1166 AC_SUBST(ac_debug)
31 capela 753
32     # Enable libgig availability.
33     AC_ARG_ENABLE(libgig,
34 capela 1166 AC_HELP_STRING([--enable-libgig], [enable libgig interface (default=yes)]),
35     [ac_libgig="$enableval"],
36 capela 753 [ac_libgig="yes"])
37    
38 capela 2065 # Enable debugger stack-trace option (assumes --enable-debug).
39     AC_ARG_ENABLE(stacktrace,
40     AC_HELP_STRING([--enable-stacktrace], [enable debugger stack-trace (default=no)]),
41     [ac_stacktrace="$enableval"])
42    
43    
44 capela 1166 # Standard installation base dirs.
45     ac_with_paths="/usr /usr/local"
46    
47     # Some a-la-debian alternatives...
48 capela 1890 for X in /usr/lib /usr/lib64 /usr/share; do
49 schoenebeck 1461 for Y in qt qt4; do
50 capela 1166 if test -d $X/$Y/bin; then
51     ac_with_paths="$ac_with_paths $X/$Y"
52     fi
53     done
54     done
55    
56 capela 1463 # Set for alternate Qt installation dir.
57     AC_ARG_WITH(qt,
58     AC_HELP_STRING([--with-qt=PATH], [use alternate Qt install path]),
59     [ac_with_paths="$ac_with_paths $withval"])
60    
61 capela 825 # Set for alternate liblscp installation dir.
62     AC_ARG_WITH(liblscp,
63     AC_HELP_STRING([--with-liblscp=PATH], [use alternate liblscp install path]),
64     [ac_with_paths="$ac_with_paths $withval"])
65    
66     # Set for alternate libgig installation dir.
67     AC_ARG_WITH(libgig,
68     AC_HELP_STRING([--with-libgig=PATH], [use alternate libgig install path]),
69     [ac_with_paths="$ac_with_paths $withval"])
70    
71 capela 753 # Checks for programs.
72     AC_PROG_CC
73     AC_PROG_CPP
74     AC_PROG_CXX
75     AC_PROG_CXXCPP
76     AC_PROG_GCC_TRADITIONAL
77    
78     # Checks for languages.
79     AC_LANG_C
80     AC_LANG_CPLUSPLUS
81    
82 capela 825 # Prepend alternate dependencies paths.
83 capela 1166 ac_path=$PATH
84 capela 825 for X in $ac_with_paths; do
85 capela 1166 if test -d $X/bin; then
86     ac_path="$X/bin:$ac_path"
87     fi
88 capela 1463 if test -x $X/qmake; then
89     ac_path="$X:$ac_path"
90     fi
91 capela 825 if test -d $X/include; then
92 schoenebeck 1461 for Y in qt qt4; do
93 capela 1166 if test -d $X/include/$Y; then
94     CFLAGS="-I$X/include/$Y $CFLAGS"
95     CPPFLAGS="-I$X/include/$Y $CPPFLAGS"
96     ac_incpath="$X/include/$Y $ac_incpath"
97     fi
98     done
99     CFLAGS="-I$X/include $CFLAGS"
100     CPPFLAGS="-I$X/include $CPPFLAGS"
101 capela 825 ac_incpath="$X/include $ac_incpath"
102     fi
103 capela 847 if test -d $X/lib64; then
104 capela 1166 LIBS="-L$X/lib64 $LIBS"
105     ac_libs="-L$X/lib64 $ac_libs"
106 capela 847 fi
107 capela 825 if test -d $X/lib; then
108 capela 1166 LIBS="-L$X/lib $LIBS"
109 capela 825 ac_libs="-L$X/lib $ac_libs"
110     fi
111     done
112    
113 capela 1463 # Check for proper Qt version.
114 capela 2107 AC_CACHE_CHECK([for Qt library version >= 4.2],
115 capela 1820 ac_cv_qtversion, [
116 capela 1463 AC_TRY_LINK([#include "Qt/qglobal.h"], [
117 capela 2107 #if QT_VERSION < 0x040200
118     #error Qt library 4.2 or greater required.
119 capela 753 #endif
120 capela 1820 ], ac_cv_qtversion="yes", [
121 capela 2107 echo "no; Qt 4.2 or greater is required"
122 capela 753 exit
123     ])
124     ])
125    
126     # A common error message:
127 capela 1463 ac_errmsg="not found in current PATH. Maybe QT development environment isn't available (qt-devel)."
128 capela 753
129     # Check for Qt qmake utility.
130 capela 1166 AC_PATH_PROG(ac_qmake, qmake, [no], $ac_path)
131 capela 753 if test "x$ac_qmake" = "xno"; then
132 capela 1463 AC_MSG_ERROR([qmake $ac_errmsg])
133 capela 753 fi
134     AC_SUBST(ac_qmake)
135    
136     # Check for Qt moc utility.
137 capela 1166 AC_PATH_PROG(ac_moc, moc, [no], $ac_path)
138 capela 753 if test "x$ac_moc" = "xno"; then
139 capela 1463 AC_MSG_ERROR([moc $ac_errmsg])
140 capela 753 fi
141     AC_SUBST(ac_moc)
142    
143     # Check for Qt uic utility.
144 capela 1166 AC_PATH_PROG(ac_uic, uic, [no], $ac_path)
145 capela 753 if test "x$ac_uic" = "xno"; then
146 capela 1463 AC_MSG_ERROR([uic $ac_errmsg])
147 capela 753 fi
148     AC_SUBST(ac_uic)
149    
150 capela 1873 # Check for Qt lupdate utility.
151     AC_PATH_PROG(ac_lupdate, lupdate, [no], $ac_path)
152     if test "x$ac_lupdate" = "xno"; then
153     AC_MSG_ERROR([lupdate $ac_errmsg])
154     fi
155     AC_SUBST(ac_lupdate)
156    
157     # Check for Qt lrelease utility.
158     AC_PATH_PROG(ac_lrelease, lrelease, [no], $ac_path)
159     if test "x$ac_release" = "xno"; then
160     AC_MSG_ERROR([lrelease $ac_errmsg])
161     fi
162     AC_SUBST(ac_lrelease)
163    
164 capela 753 # Checks for libraries.
165     AC_CHECK_LIB(m, main)
166     AC_CHECK_LIB(X11, main)
167     AC_CHECK_LIB(Xext, main)
168    
169     # Check for round math function.
170     AC_CHECK_LIB(m, round, [ac_round="yes"], [ac_round="no"])
171     if test "x$ac_round" = "xyes"; then
172     AC_DEFINE(CONFIG_ROUND, 1, [Define if round is available.])
173     fi
174    
175     # Check for mandatory libraries.
176     AC_CHECK_LIB(lscp, main, [ac_liblscp="yes"], [ac_liblscp="no"])
177     if test "x$ac_liblscp" = "xno"; then
178     AC_MSG_ERROR([LSCP library not found.])
179     fi
180 capela 825 ac_libs="$ac_libs -llscp"
181 capela 753
182     AC_CACHE_CHECK([for instrument_name in lscp_channel_info_t],
183 capela 1820 ac_cv_instrument_name, [
184 capela 753 AC_TRY_COMPILE([#include "lscp/client.h"], [
185     lscp_channel_info_t info;
186     info.instrument_name = 0;
187 capela 1820 ], ac_cv_instrument_name="yes", ac_cv_instrument_name="no")
188 capela 753 ])
189 capela 1820 ac_instrument_name=$ac_cv_instrument_name
190 capela 753 if test "x$ac_instrument_name" = "xyes"; then
191     AC_DEFINE(CONFIG_INSTRUMENT_NAME, 1, [Define if instrument_name is available.])
192     fi
193    
194     AC_CACHE_CHECK([for mute/solo in lscp_channel_info_t],
195 capela 1820 ac_cv_mute_solo, [
196 capela 753 AC_TRY_COMPILE([#include "lscp/client.h"], [
197     lscp_channel_info_t info;
198     info.mute = 0;
199     info.solo = 0;
200 capela 1820 ], ac_cv_mute_solo="yes", ac_cv_mute_solo="no")
201 capela 753 ])
202 capela 1820 ac_mute_solo=$ac_cv_mute_solo
203 capela 753 if test "x$ac_mute_solo" = "xyes"; then
204     AC_CHECK_LIB(lscp, lscp_set_channel_mute, [ac_mute_solo="yes"], [ac_mute_solo="no"])
205     fi
206     if test "x$ac_mute_solo" = "xyes"; then
207     AC_CHECK_LIB(lscp, lscp_set_channel_solo, [ac_mute_solo="yes"], [ac_mute_solo="no"])
208     fi
209     if test "x$ac_mute_solo" = "xyes"; then
210     AC_DEFINE(CONFIG_MUTE_SOLO, 1, [Define if mute/solo is available.])
211     fi
212    
213 capela 957 AC_CHECK_LIB(lscp, lscp_map_midi_instrument, [ac_midi_instrument="yes"], [ac_midi_instrument="no"])
214     if test "x$ac_midi_instrument" = "xyes"; then
215     AC_DEFINE(CONFIG_MIDI_INSTRUMENT, 1, [Define if MIDI instrument mapping is available.])
216     fi
217    
218 capela 1022 AC_CHECK_LIB(lscp, lscp_create_fxsend, [ac_fxsend="yes"], [ac_fxsend="no"])
219     if test "x$ac_fxsend" = "xyes"; then
220     AC_DEFINE(CONFIG_FXSEND, 1, [Define if FX sends is available.])
221 capela 1033 AC_CACHE_CHECK([for FX send level in lscp_fxsend_info_t],
222 capela 1820 ac_cv_fxsend_level, [
223 capela 1033 AC_TRY_COMPILE([#include "lscp/client.h"], [
224     lscp_fxsend_info_t info;
225     info.level = 0.0f;
226 capela 1820 ], ac_cv_fxsend_level="yes", ac_cv_fxsend_level="no")
227 capela 1033 ])
228 capela 1820 ac_fxsend_level=$ac_cv_fxsend_level
229 capela 1033 if test "x$ac_fxsend_level" = "xyes"; then
230     AC_DEFINE(CONFIG_FXSEND_LEVEL, 1, [Define if FX send level is available.])
231     fi
232 schoenebeck 1667 AC_CHECK_LIB(lscp, lscp_set_fxsend_name, [ac_fxsend_rename="yes"], [ac_fxsend_rename="no"])
233     if test "x$ac_fxsend_rename" = "xyes"; then
234     AC_DEFINE(CONFIG_FXSEND_RENAME, 1, [Define if FX send rename is available.])
235     fi
236 capela 1022 fi
237    
238     AC_CACHE_CHECK([for audio_routing array type],
239 capela 1820 ac_cv_audio_routing, [
240 capela 1022 AC_TRY_COMPILE([#include "lscp/client.h"], [
241 capela 1166 lscp_channel_info_t info;
242     char ch = info.audio_routing[0][0];
243 capela 1820 ], ac_cv_audio_routing="no", ac_cv_audio_routing="yes")
244 capela 1022 ])
245 capela 1820 ac_audio_routing=$ac_cv_audio_routing
246 capela 1022 if test "x$ac_audio_routing" = "xyes"; then
247     AC_DEFINE(CONFIG_AUDIO_ROUTING, 1, [Define if audio_routing is an integer array.])
248     fi
249    
250 capela 1034 AC_CHECK_LIB(lscp, lscp_set_volume, [ac_volume="yes"], [ac_volume="no"])
251     if test "x$ac_volume" = "xyes"; then
252     AC_DEFINE(CONFIG_VOLUME, 1, [Define if global volume is available.])
253     fi
254    
255 capela 1414 AC_CHECK_LIB(lscp, lscp_edit_channel_instrument, [ac_edit_instrument="yes"], [ac_edit_instrument="no"])
256 schoenebeck 1366 if test "x$ac_edit_instrument" = "xyes"; then
257     AC_DEFINE(CONFIG_EDIT_INSTRUMENT, 1, [Define if instrument editing is available.])
258     fi
259    
260 schoenebeck 1691 AC_CACHE_CHECK([for CHANNEL_MIDI LSCP event support in liblscp],
261 capela 1820 ac_cv_channel_midi_event, [
262 schoenebeck 1691 AC_TRY_COMPILE([
263     #include "lscp/client.h"
264     #include "lscp/event.h"
265     ], [
266     lscp_event_t ev;
267     ev = LSCP_EVENT_CHANNEL_MIDI;
268 capela 1820 ], ac_cv_channel_midi_event="yes", ac_cv_channel_midi_event="no")
269 schoenebeck 1691 ])
270 capela 1820 ac_channel_midi_event=$ac_cv_channel_midi_event
271     if test "x$ac_channel_midi_event" = "xyes"; then
272 capela 1704 AC_DEFINE(CONFIG_EVENT_CHANNEL_MIDI, 1, [Define if LSCP CHANNEL_MIDI event support is available.])
273 schoenebeck 1691 fi
274    
275 schoenebeck 1698 AC_CACHE_CHECK([for DEVICE_MIDI LSCP event support in liblscp],
276 capela 1820 ac_cv_device_midi_event, [
277 schoenebeck 1698 AC_TRY_COMPILE([
278     #include "lscp/client.h"
279     #include "lscp/event.h"
280     ], [
281     lscp_event_t ev;
282     ev = LSCP_EVENT_DEVICE_MIDI;
283 capela 1820 ], ac_cv_device_midi_event="yes", ac_cv_device_midi_event="no")
284 schoenebeck 1698 ])
285 capela 1820 ac_device_midi_event=$ac_cv_device_midi_event
286     if test "x$ac_device_midi_event" = "xyes"; then
287 capela 1704 AC_DEFINE(CONFIG_EVENT_DEVICE_MIDI, 1, [Define if LSCP DEVICE_MIDI event support is available.])
288 schoenebeck 1698 fi
289    
290 schoenebeck 1803 AC_CHECK_LIB(lscp, lscp_get_voices, [ac_max_voices="yes"], [ac_max_voices="no"])
291     if test "x$ac_max_voices" = "xyes"; then
292     AC_DEFINE(CONFIG_MAX_VOICES, 1, [Define if max. voices / streams is available.])
293     fi
294    
295 capela 753 # Check for optional libraries.
296     if test "x$ac_libgig" = "xyes"; then
297     AC_CHECK_LIB(gig, main, [ac_libgig="yes"], [ac_libgig="no"])
298     if test "x$ac_libgig" = "xyes"; then
299     AC_DEFINE(CONFIG_LIBGIG, 1, [Define if libgig is available.])
300 capela 825 ac_libs="$ac_libs -lgig"
301 schoenebeck 1527 AC_MSG_CHECKING([for gig::File::SetAutoLoad() method in libgig])
302     AC_LANG_SAVE
303     AC_LANG_CPLUSPLUS
304     CXXFLAGS="$ac_libs"
305     AC_TRY_RUN([
306     #include <stdlib.h>
307     #include <gig.h>
308     int main() {
309     gig::File file;
310     file.SetAutoLoad(false);
311     exit(0);
312     }
313     ],
314     have_libgig_setautoload="yes",
315     have_libgig_setautoload="no",
316     have_libgig_setautoload="no"
317     )
318     AC_LANG_RESTORE
319     AC_MSG_RESULT([$have_libgig_setautoload])
320     if test "x$have_libgig_setautoload" = "xyes"; then
321     AC_DEFINE(HAVE_LIBGIG_SETAUTOLOAD, 1, [Define if libgig provides gig::File::SetAutoLoad() method.])
322     fi
323 capela 753 fi
324     fi
325    
326 capela 972 # Check for round math function.
327     AC_CHECK_LIB(m, lroundf, [ac_round="yes"], [ac_round="no"])
328     if test "x$ac_round" = "xyes"; then
329     AC_DEFINE(CONFIG_ROUND, 1, [Define if round is available.])
330     fi
331    
332 capela 2065 # Check for debugging stack-trace.
333     if test "x$ac_stacktrace" = "xyes"; then
334     AC_DEFINE(CONFIG_STACKTRACE, 1, [Define if debugger stack-trace is enabled.])
335     fi
336    
337 capela 753 AC_SUBST(ac_libs)
338 capela 825 AC_SUBST(ac_incpath)
339 capela 753
340     # Checks for header files.
341     AC_HEADER_STDC
342     AC_HEADER_SYS_WAIT
343     AC_CHECK_HEADERS(fcntl.h sys/ioctl.h unistd.h signal.h)
344    
345 capela 825 AC_CHECK_HEADER(lscp/client.h, [ac_lscp_h="yes"], [ac_lscp_h="no"])
346     if test "x$ac_lscp_h" = "xno"; then
347     AC_MSG_ERROR([LSCP headers not found.])
348     fi
349 capela 753
350     # Checks for typedefs, structures, and compiler characteristics.
351     # AC_C_CONST
352    
353     # Checks for library functions.
354     AC_CHECK_FUNCS(system)
355    
356     # Finally produce a configure header file and the makefiles.
357     AC_OUTPUT
358    
359     # make clean > /dev/null 2>&1
360    
361 capela 1463 # Output summary message
362    
363     echo
364     echo " $PACKAGE_NAME $PACKAGE_VERSION"
365     echo
366     echo " Build target . . . . . . . . . . . . . . . . . . .: $ac_debug"
367     echo
368     echo " LSCP instrument name support . . . . . . . . . . .: $ac_instrument_name"
369     echo " LSCP mute/solo support . . . . . . . . . . . . . .: $ac_mute_solo"
370     echo " LSCP MIDI instrument support . . . . . . . . . . .: $ac_midi_instrument"
371     echo " LSCP FX send support . . . . . . . . . . . . . . .: $ac_fxsend"
372     echo " LSCP FX send level support . . . . . . . . . . . .: $ac_fxsend_level"
373 schoenebeck 1667 echo " LSCP FX send rename support . . . . . . . . . . .: $ac_fxsend_rename"
374 capela 1463 echo " LSCP audio routing support . . . . . . . . . . . .: $ac_audio_routing"
375     echo " LSCP volume support . . . . . . . . . . . . . . .: $ac_volume"
376     echo " LSCP edit instrument support . . . . . . . . . . .: $ac_edit_instrument"
377     echo " GigaSampler instrument file support (libgig) . . .: $ac_libgig"
378 schoenebeck 1527 if test "x$ac_libgig" = "xyes"; then
379     echo " libgig supports fast information retrieval . . . .: $have_libgig_setautoload"
380     fi
381 capela 1820 echo " LSCP channel MIDI event support . . . . . . . . .: $ac_channel_midi_event"
382     echo " LSCP device MIDI event support . . . . . . . . . .: $ac_device_midi_event"
383 schoenebeck 1803 echo " LSCP runtime max. voices / disk streams support .: $ac_max_voices"
384 capela 1463 echo
385 capela 2065 echo " Debugger stack-trace (gdb) . . . . . . . . . . . .: $ac_stacktrace"
386     echo
387 capela 1463 echo " Install prefix . . . . . . . . . . . . . . . . . .: $ac_prefix"
388     echo
389 capela 753 echo "Now type 'make', followed by 'make install' as root."
390 capela 1463 echo

  ViewVC Help
Powered by ViewVC