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

Annotation of /qsampler/trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2563 - (hide annotations) (download)
Tue May 20 10:59:37 2014 UTC (9 years, 10 months ago) by capela
File size: 13434 byte(s)
"*
1 capela 753 # Process this file with autoconf to produce a configure script.
2 capela 2563 AC_INIT(Qsampler, 0.2.3.3, 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 capela 2481
33     # Enable Qt4/5 availability.
34     AC_ARG_ENABLE(qt4,
35     AC_HELP_STRING([--enable-qt4], [enable Qt4 build (default=yes)]),
36     [ac_qt4="$enableval"],
37     [ac_qt4="yes"])
38    
39     AC_ARG_ENABLE(qt5,
40     AC_HELP_STRING([--enable-qt5], [enable Qt5 build (default=no)]),
41     [ac_qt5="$enableval"],
42     [ac_qt5="no"])
43    
44     if test "x$ac_qt4" = "xno"; then
45     ac_qt5="yes"
46     fi
47     if test "x$ac_qt5" = "xyes"; then
48     ac_qt4="no"
49     fi
50    
51 capela 2511
52 capela 753 # Enable libgig availability.
53     AC_ARG_ENABLE(libgig,
54 capela 1166 AC_HELP_STRING([--enable-libgig], [enable libgig interface (default=yes)]),
55     [ac_libgig="$enableval"],
56 capela 753 [ac_libgig="yes"])
57    
58 capela 2065 # Enable debugger stack-trace option (assumes --enable-debug).
59     AC_ARG_ENABLE(stacktrace,
60     AC_HELP_STRING([--enable-stacktrace], [enable debugger stack-trace (default=no)]),
61     [ac_stacktrace="$enableval"])
62    
63    
64 capela 1166 # Standard installation base dirs.
65     ac_with_paths="/usr /usr/local"
66    
67 capela 1463 # Set for alternate Qt installation dir.
68     AC_ARG_WITH(qt,
69     AC_HELP_STRING([--with-qt=PATH], [use alternate Qt install path]),
70     [ac_with_paths="$ac_with_paths $withval"])
71    
72 capela 825 # Set for alternate liblscp installation dir.
73     AC_ARG_WITH(liblscp,
74     AC_HELP_STRING([--with-liblscp=PATH], [use alternate liblscp install path]),
75     [ac_with_paths="$ac_with_paths $withval"])
76    
77     # Set for alternate libgig installation dir.
78     AC_ARG_WITH(libgig,
79     AC_HELP_STRING([--with-libgig=PATH], [use alternate libgig install path]),
80     [ac_with_paths="$ac_with_paths $withval"])
81    
82 capela 2545
83     # Honor user specified flags.
84     ac_cflags=$CFLAGS
85     ac_ldflags=$LDFLAGS
86    
87    
88 capela 753 # Checks for programs.
89     AC_PROG_CC
90     AC_PROG_CPP
91     AC_PROG_CXX
92     AC_PROG_CXXCPP
93     AC_PROG_GCC_TRADITIONAL
94    
95     # Checks for languages.
96     AC_LANG_C
97     AC_LANG_CPLUSPLUS
98    
99 capela 2511
100     # Check for proper flags.
101     ac_arch=`uname -m`
102    
103     # Check for some a-la-debian alternatives...
104     ac_qtdirs="qt"
105    
106     if test "x$ac_qt4" = "xyes"; then
107     ac_qtdirs="qt4 $ac_qtdirs"
108     fi
109     if test "x$ac_qt5" = "xyes"; then
110     ac_qtdirs="qt5 $ac_qtdirs"
111     fi
112    
113     ac_topdirs="/usr/share /usr/lib"
114    
115     if test "x$ac_arch" = "xx86_64"; then
116     CFLAGS="-fPIC $CFLAGS"
117     CPPFLAGS="-fPIC $CPPFLAGS"
118     ac_topdirs="$ac_topdirs /usr/lib64"
119     fi
120    
121     for X in $ac_topdirs; do
122     for Y in $ac_qtdirs; do
123     if test -d $X/$Y/bin; then
124     ac_with_paths="$X/$Y $ac_with_paths"
125     fi
126     done
127     done
128    
129 capela 825 # Prepend alternate dependencies paths.
130 capela 1166 ac_path=$PATH
131 capela 825 for X in $ac_with_paths; do
132 capela 1166 if test -d $X/bin; then
133     ac_path="$X/bin:$ac_path"
134     fi
135 capela 2459 # if test -x $X/qmake; then
136     # ac_path="$X:$ac_path"
137     # fi
138 capela 825 if test -d $X/include; then
139 capela 2481 for Y in $ac_qtdirs; do
140 capela 1166 if test -d $X/include/$Y; then
141     CFLAGS="-I$X/include/$Y $CFLAGS"
142     CPPFLAGS="-I$X/include/$Y $CPPFLAGS"
143     ac_incpath="$X/include/$Y $ac_incpath"
144     fi
145     done
146     CFLAGS="-I$X/include $CFLAGS"
147     CPPFLAGS="-I$X/include $CPPFLAGS"
148 capela 825 ac_incpath="$X/include $ac_incpath"
149     fi
150 capela 2511 if test "x$ac_arch" = "xx86_64" -a -d $X/lib64; then
151 capela 1166 LIBS="-L$X/lib64 $LIBS"
152     ac_libs="-L$X/lib64 $ac_libs"
153 capela 847 fi
154 capela 825 if test -d $X/lib; then
155 capela 1166 LIBS="-L$X/lib $LIBS"
156 capela 825 ac_libs="-L$X/lib $ac_libs"
157     fi
158     done
159    
160 capela 2480
161 capela 1463 # Check for proper Qt version.
162 capela 2459 AC_CACHE_CHECK([for Qt library version >= 4.4],
163 capela 1820 ac_cv_qtversion, [
164 capela 2387 AC_TRY_LINK([#include "QtCore/qglobal.h"], [
165 capela 2459 #if QT_VERSION < 0x040400
166     #error Qt library 4.4 or greater required.
167 capela 753 #endif
168 capela 1820 ], ac_cv_qtversion="yes", [
169 capela 2459 echo "no; Qt 4.4 or greater is required"
170 capela 753 exit
171     ])
172     ])
173    
174 capela 2511
175 capela 753 # A common error message:
176 capela 1463 ac_errmsg="not found in current PATH. Maybe QT development environment isn't available (qt-devel)."
177 capela 753
178     # Check for Qt qmake utility.
179 capela 1166 AC_PATH_PROG(ac_qmake, qmake, [no], $ac_path)
180 capela 753 if test "x$ac_qmake" = "xno"; then
181 capela 1463 AC_MSG_ERROR([qmake $ac_errmsg])
182 capela 753 fi
183     AC_SUBST(ac_qmake)
184    
185     # Check for Qt moc utility.
186 capela 1166 AC_PATH_PROG(ac_moc, moc, [no], $ac_path)
187 capela 753 if test "x$ac_moc" = "xno"; then
188 capela 1463 AC_MSG_ERROR([moc $ac_errmsg])
189 capela 753 fi
190     AC_SUBST(ac_moc)
191    
192     # Check for Qt uic utility.
193 capela 1166 AC_PATH_PROG(ac_uic, uic, [no], $ac_path)
194 capela 753 if test "x$ac_uic" = "xno"; then
195 capela 1463 AC_MSG_ERROR([uic $ac_errmsg])
196 capela 753 fi
197     AC_SUBST(ac_uic)
198    
199 capela 1873 # Check for Qt lupdate utility.
200     AC_PATH_PROG(ac_lupdate, lupdate, [no], $ac_path)
201     if test "x$ac_lupdate" = "xno"; then
202     AC_MSG_ERROR([lupdate $ac_errmsg])
203     fi
204     AC_SUBST(ac_lupdate)
205    
206     # Check for Qt lrelease utility.
207     AC_PATH_PROG(ac_lrelease, lrelease, [no], $ac_path)
208     if test "x$ac_release" = "xno"; then
209     AC_MSG_ERROR([lrelease $ac_errmsg])
210     fi
211     AC_SUBST(ac_lrelease)
212    
213 capela 753 # Checks for libraries.
214     AC_CHECK_LIB(m, main)
215     AC_CHECK_LIB(X11, main)
216     AC_CHECK_LIB(Xext, main)
217    
218     # Check for round math function.
219     AC_CHECK_LIB(m, round, [ac_round="yes"], [ac_round="no"])
220     if test "x$ac_round" = "xyes"; then
221     AC_DEFINE(CONFIG_ROUND, 1, [Define if round is available.])
222     fi
223    
224     # Check for mandatory libraries.
225     AC_CHECK_LIB(lscp, main, [ac_liblscp="yes"], [ac_liblscp="no"])
226     if test "x$ac_liblscp" = "xno"; then
227     AC_MSG_ERROR([LSCP library not found.])
228     fi
229 capela 825 ac_libs="$ac_libs -llscp"
230 persson 2144 case "{$host}" in
231     *mingw*)
232     ac_libs="$ac_libs -lws2_32"
233     LIBS="$LIBS -lws2_32"
234     ;;
235     esac
236 capela 753
237     AC_CACHE_CHECK([for instrument_name in lscp_channel_info_t],
238 capela 1820 ac_cv_instrument_name, [
239 capela 753 AC_TRY_COMPILE([#include "lscp/client.h"], [
240     lscp_channel_info_t info;
241     info.instrument_name = 0;
242 capela 1820 ], ac_cv_instrument_name="yes", ac_cv_instrument_name="no")
243 capela 753 ])
244 capela 1820 ac_instrument_name=$ac_cv_instrument_name
245 capela 753 if test "x$ac_instrument_name" = "xyes"; then
246     AC_DEFINE(CONFIG_INSTRUMENT_NAME, 1, [Define if instrument_name is available.])
247     fi
248    
249     AC_CACHE_CHECK([for mute/solo in lscp_channel_info_t],
250 capela 1820 ac_cv_mute_solo, [
251 capela 753 AC_TRY_COMPILE([#include "lscp/client.h"], [
252     lscp_channel_info_t info;
253     info.mute = 0;
254     info.solo = 0;
255 capela 1820 ], ac_cv_mute_solo="yes", ac_cv_mute_solo="no")
256 capela 753 ])
257 capela 1820 ac_mute_solo=$ac_cv_mute_solo
258 capela 753 if test "x$ac_mute_solo" = "xyes"; then
259     AC_CHECK_LIB(lscp, lscp_set_channel_mute, [ac_mute_solo="yes"], [ac_mute_solo="no"])
260     fi
261     if test "x$ac_mute_solo" = "xyes"; then
262     AC_CHECK_LIB(lscp, lscp_set_channel_solo, [ac_mute_solo="yes"], [ac_mute_solo="no"])
263     fi
264     if test "x$ac_mute_solo" = "xyes"; then
265     AC_DEFINE(CONFIG_MUTE_SOLO, 1, [Define if mute/solo is available.])
266     fi
267    
268 capela 957 AC_CHECK_LIB(lscp, lscp_map_midi_instrument, [ac_midi_instrument="yes"], [ac_midi_instrument="no"])
269     if test "x$ac_midi_instrument" = "xyes"; then
270     AC_DEFINE(CONFIG_MIDI_INSTRUMENT, 1, [Define if MIDI instrument mapping is available.])
271     fi
272    
273 capela 1022 AC_CHECK_LIB(lscp, lscp_create_fxsend, [ac_fxsend="yes"], [ac_fxsend="no"])
274     if test "x$ac_fxsend" = "xyes"; then
275     AC_DEFINE(CONFIG_FXSEND, 1, [Define if FX sends is available.])
276 capela 1033 AC_CACHE_CHECK([for FX send level in lscp_fxsend_info_t],
277 capela 1820 ac_cv_fxsend_level, [
278 capela 1033 AC_TRY_COMPILE([#include "lscp/client.h"], [
279     lscp_fxsend_info_t info;
280     info.level = 0.0f;
281 capela 1820 ], ac_cv_fxsend_level="yes", ac_cv_fxsend_level="no")
282 capela 1033 ])
283 capela 1820 ac_fxsend_level=$ac_cv_fxsend_level
284 capela 1033 if test "x$ac_fxsend_level" = "xyes"; then
285     AC_DEFINE(CONFIG_FXSEND_LEVEL, 1, [Define if FX send level is available.])
286     fi
287 schoenebeck 1667 AC_CHECK_LIB(lscp, lscp_set_fxsend_name, [ac_fxsend_rename="yes"], [ac_fxsend_rename="no"])
288     if test "x$ac_fxsend_rename" = "xyes"; then
289     AC_DEFINE(CONFIG_FXSEND_RENAME, 1, [Define if FX send rename is available.])
290     fi
291 capela 1022 fi
292    
293     AC_CACHE_CHECK([for audio_routing array type],
294 capela 1820 ac_cv_audio_routing, [
295 capela 1022 AC_TRY_COMPILE([#include "lscp/client.h"], [
296 capela 1166 lscp_channel_info_t info;
297     char ch = info.audio_routing[0][0];
298 capela 1820 ], ac_cv_audio_routing="no", ac_cv_audio_routing="yes")
299 capela 1022 ])
300 capela 1820 ac_audio_routing=$ac_cv_audio_routing
301 capela 1022 if test "x$ac_audio_routing" = "xyes"; then
302     AC_DEFINE(CONFIG_AUDIO_ROUTING, 1, [Define if audio_routing is an integer array.])
303     fi
304    
305 capela 1034 AC_CHECK_LIB(lscp, lscp_set_volume, [ac_volume="yes"], [ac_volume="no"])
306     if test "x$ac_volume" = "xyes"; then
307     AC_DEFINE(CONFIG_VOLUME, 1, [Define if global volume is available.])
308     fi
309    
310 capela 1414 AC_CHECK_LIB(lscp, lscp_edit_channel_instrument, [ac_edit_instrument="yes"], [ac_edit_instrument="no"])
311 schoenebeck 1366 if test "x$ac_edit_instrument" = "xyes"; then
312     AC_DEFINE(CONFIG_EDIT_INSTRUMENT, 1, [Define if instrument editing is available.])
313     fi
314    
315 schoenebeck 1691 AC_CACHE_CHECK([for CHANNEL_MIDI LSCP event support in liblscp],
316 capela 1820 ac_cv_channel_midi_event, [
317 schoenebeck 1691 AC_TRY_COMPILE([
318     #include "lscp/client.h"
319     #include "lscp/event.h"
320     ], [
321     lscp_event_t ev;
322     ev = LSCP_EVENT_CHANNEL_MIDI;
323 capela 1820 ], ac_cv_channel_midi_event="yes", ac_cv_channel_midi_event="no")
324 schoenebeck 1691 ])
325 capela 1820 ac_channel_midi_event=$ac_cv_channel_midi_event
326     if test "x$ac_channel_midi_event" = "xyes"; then
327 capela 1704 AC_DEFINE(CONFIG_EVENT_CHANNEL_MIDI, 1, [Define if LSCP CHANNEL_MIDI event support is available.])
328 schoenebeck 1691 fi
329    
330 schoenebeck 1698 AC_CACHE_CHECK([for DEVICE_MIDI LSCP event support in liblscp],
331 capela 1820 ac_cv_device_midi_event, [
332 schoenebeck 1698 AC_TRY_COMPILE([
333     #include "lscp/client.h"
334     #include "lscp/event.h"
335     ], [
336     lscp_event_t ev;
337     ev = LSCP_EVENT_DEVICE_MIDI;
338 capela 1820 ], ac_cv_device_midi_event="yes", ac_cv_device_midi_event="no")
339 schoenebeck 1698 ])
340 capela 1820 ac_device_midi_event=$ac_cv_device_midi_event
341     if test "x$ac_device_midi_event" = "xyes"; then
342 capela 1704 AC_DEFINE(CONFIG_EVENT_DEVICE_MIDI, 1, [Define if LSCP DEVICE_MIDI event support is available.])
343 schoenebeck 1698 fi
344    
345 schoenebeck 1803 AC_CHECK_LIB(lscp, lscp_get_voices, [ac_max_voices="yes"], [ac_max_voices="no"])
346     if test "x$ac_max_voices" = "xyes"; then
347     AC_DEFINE(CONFIG_MAX_VOICES, 1, [Define if max. voices / streams is available.])
348     fi
349    
350 capela 753 # Check for optional libraries.
351     if test "x$ac_libgig" = "xyes"; then
352     AC_CHECK_LIB(gig, main, [ac_libgig="yes"], [ac_libgig="no"])
353     if test "x$ac_libgig" = "xyes"; then
354     AC_DEFINE(CONFIG_LIBGIG, 1, [Define if libgig is available.])
355 capela 825 ac_libs="$ac_libs -lgig"
356 schoenebeck 1527 AC_MSG_CHECKING([for gig::File::SetAutoLoad() method in libgig])
357     AC_LANG_SAVE
358     AC_LANG_CPLUSPLUS
359     CXXFLAGS="$ac_libs"
360 persson 2144 AC_TRY_COMPILE([
361 schoenebeck 1527 #include <stdlib.h>
362     #include <gig.h>
363 persson 2144 ],[
364 schoenebeck 1527 gig::File file;
365     file.SetAutoLoad(false);
366     ],
367     have_libgig_setautoload="yes",
368     have_libgig_setautoload="no"
369     )
370     AC_LANG_RESTORE
371     AC_MSG_RESULT([$have_libgig_setautoload])
372     if test "x$have_libgig_setautoload" = "xyes"; then
373     AC_DEFINE(HAVE_LIBGIG_SETAUTOLOAD, 1, [Define if libgig provides gig::File::SetAutoLoad() method.])
374     fi
375 capela 753 fi
376     fi
377    
378 capela 972 # Check for round math function.
379     AC_CHECK_LIB(m, lroundf, [ac_round="yes"], [ac_round="no"])
380     if test "x$ac_round" = "xyes"; then
381     AC_DEFINE(CONFIG_ROUND, 1, [Define if round is available.])
382     fi
383    
384 capela 2065 # Check for debugging stack-trace.
385     if test "x$ac_stacktrace" = "xyes"; then
386     AC_DEFINE(CONFIG_STACKTRACE, 1, [Define if debugger stack-trace is enabled.])
387     fi
388    
389 capela 2116 # Some recent distros (eg. fedora, debian) require this.
390 persson 2144 if test "x$ac_cv_lib_X11_main" = "xyes"; then
391     ac_libs="$ac_libs -lX11"
392     fi
393 capela 2116
394 capela 753 AC_SUBST(ac_libs)
395 capela 825 AC_SUBST(ac_incpath)
396 capela 2545 AC_SUBST(ac_cflags)
397     AC_SUBST(ac_ldflags)
398 capela 753
399     # Checks for header files.
400     AC_HEADER_STDC
401     AC_HEADER_SYS_WAIT
402 persson 2144 AC_CHECK_HEADERS(fcntl.h sys/ioctl.h unistd.h signal.h sys/socket.h)
403 capela 753
404 capela 825 AC_CHECK_HEADER(lscp/client.h, [ac_lscp_h="yes"], [ac_lscp_h="no"])
405     if test "x$ac_lscp_h" = "xno"; then
406     AC_MSG_ERROR([LSCP headers not found.])
407     fi
408 capela 753
409     # Checks for typedefs, structures, and compiler characteristics.
410     # AC_C_CONST
411    
412     # Checks for library functions.
413     AC_CHECK_FUNCS(system)
414    
415     # Finally produce a configure header file and the makefiles.
416     AC_OUTPUT
417    
418     # make clean > /dev/null 2>&1
419    
420 capela 1463 # Output summary message
421    
422     echo
423     echo " $PACKAGE_NAME $PACKAGE_VERSION"
424     echo
425     echo " Build target . . . . . . . . . . . . . . . . . . .: $ac_debug"
426     echo
427     echo " LSCP instrument name support . . . . . . . . . . .: $ac_instrument_name"
428     echo " LSCP mute/solo support . . . . . . . . . . . . . .: $ac_mute_solo"
429     echo " LSCP MIDI instrument support . . . . . . . . . . .: $ac_midi_instrument"
430     echo " LSCP FX send support . . . . . . . . . . . . . . .: $ac_fxsend"
431     echo " LSCP FX send level support . . . . . . . . . . . .: $ac_fxsend_level"
432 schoenebeck 1667 echo " LSCP FX send rename support . . . . . . . . . . .: $ac_fxsend_rename"
433 capela 1463 echo " LSCP audio routing support . . . . . . . . . . . .: $ac_audio_routing"
434     echo " LSCP volume support . . . . . . . . . . . . . . .: $ac_volume"
435     echo " LSCP edit instrument support . . . . . . . . . . .: $ac_edit_instrument"
436     echo " GigaSampler instrument file support (libgig) . . .: $ac_libgig"
437 schoenebeck 1527 if test "x$ac_libgig" = "xyes"; then
438     echo " libgig supports fast information retrieval . . . .: $have_libgig_setautoload"
439     fi
440 capela 1820 echo " LSCP channel MIDI event support . . . . . . . . .: $ac_channel_midi_event"
441     echo " LSCP device MIDI event support . . . . . . . . . .: $ac_device_midi_event"
442 schoenebeck 1803 echo " LSCP runtime max. voices / disk streams support .: $ac_max_voices"
443 capela 1463 echo
444 capela 2065 echo " Debugger stack-trace (gdb) . . . . . . . . . . . .: $ac_stacktrace"
445     echo
446 capela 1463 echo " Install prefix . . . . . . . . . . . . . . . . . .: $ac_prefix"
447     echo
448 capela 753 echo "Now type 'make', followed by 'make install' as root."
449 capela 1463 echo

  ViewVC Help
Powered by ViewVC