2 # Process this file with autoconf to produce a configure script.
5 AC_INIT([calf],[0.0.18.3],[wdev@foltman.com])
6 AC_CONFIG_SRCDIR([config.h.in])
7 AC_CONFIG_HEADER([config.h])
11 if test "x$prefix" = "xNONE"; then
12 prefix=$ac_default_prefix
15 # Checks for programs.
22 # Checks for libraries.
25 # Checks for header files.
27 AC_CHECK_HEADERS([memory.h stdint.h stdlib.h time.h math.h])
29 AC_CHECK_HEADER(ladspa.h, LADSPA_FOUND="yes", LADSPA_FOUND="no")
31 AC_CHECK_HEADER(dssi.h, DSSI_FOUND="yes", DSSI_FOUND="no")
33 AC_CHECK_HEADER(expat.h, true, AC_MSG_ERROR([Expat XML library not found]))
34 AC_CHECK_LIB(expat, XML_Parse, true, AC_MSG_ERROR([Expat XML library not found]))
36 AC_CHECK_HEADERS([jack/jack.h], have_jack_header=yes, have_jack_header=no)
38 PKG_CHECK_MODULES(GLIB_DEPS, glib-2.0 >= 2.0.0, true, AC_MSG_ERROR([glib-2.0 library not found]))
40 if test "$have_jack_header" = "yes"; then
41 PKG_CHECK_MODULES(JACK_DEPS, jack >= 0.103.0,
42 AC_CHECK_LIB([jack], [jack_port_register], JACK_FOUND="yes", JACK_FOUND="no"),
48 if test "$JACK_FOUND" = "yes"; then
49 PKG_CHECK_MODULES(JACK_MIDI_DEPS, jack >= 0.105.0, OLD_JACK="no", OLD_JACK="yes")
52 AC_SUBST(GLIB_DEPS_CFLAGS)
53 AC_SUBST(GLIB_DEPS_LIBS)
54 AC_SUBST(GUI_DEPS_CFLAGS)
55 AC_SUBST(GUI_DEPS_LIBS)
56 AC_SUBST(JACK_DEPS_CFLAGS)
57 AC_SUBST(JACK_DEPS_LIBS)
59 PKG_CHECK_MODULES(LV2_DEPS, lv2core >= 1, LV2_ENABLED="yes", LV2_ENABLED="no")
60 PKG_CHECK_MODULES(LASH_DEPS, lash-1.0 >= 0.5.2, LASH_ENABLED="yes", LASH_ENABLED="no")
62 if test "$LADSPA_FOUND" = "yes"; then
63 AC_MSG_CHECKING([whether to allow LADSPA])
65 AC_HELP_STRING([--without-ladspa],[disable LADSPA and DSSI interfaces]),
66 [if test "$withval" = "no"; then LADSPA_FOUND="no"; DSSI_FOUND="no"; fi],[])
67 AC_MSG_RESULT($LADSPA_FOUND)
70 if test "$DSSI_FOUND" = "yes"; then
71 AC_MSG_CHECKING([whether to allow DSSI])
73 AC_HELP_STRING([--without-dssi],[disable DSSI interface]),
74 [if test "$withval" = "no"; then DSSI_FOUND="no"; fi],[])
75 AC_MSG_RESULT($DSSI_FOUND)
78 if test "$LV2_ENABLED" = "yes"; then
79 AC_MSG_CHECKING([whether to allow LV2])
81 AC_HELP_STRING([--without-lv2],[disable LV2 interface]),
82 [if test "$withval" = "no"; then LV2_ENABLED="no"; fi],[])
83 AC_MSG_RESULT($LV2_ENABLED)
86 if test "$JACK_FOUND" = "yes" -o "$DSSI_FOUND" = "yes" -o "$LV2_ENABLED" = "yes"; then
87 PKG_CHECK_MODULES(GUI_DEPS, gtk+-2.0 >= 2.8.0 libglade-2.0 >= 2.4.0 cairo >= 1.2.0,
89 GUI_ENABLED="no (GTK+ 2.8, cairo 1.2 and libglade 2.4.0 or newer required)"
95 if test "$GUI_ENABLED" = "yes" -a "$JACK_FOUND" = "yes"; then
101 if test "$GUI_ENABLED" = "yes" -a "$DSSI_FOUND" = "yes"; then
102 DSSI_GUI_ENABLED="yes"
104 DSSI_GUI_ENABLED="no"
107 if test "$GUI_ENABLED" = "yes" -a "$LV2_ENABLED" = "yes"; then
108 LV2_GUI_ENABLED="yes"
113 AC_MSG_CHECKING([whether to enable experimental/unfinished features])
114 AC_ARG_ENABLE(experimental,
115 AC_HELP_STRING([--enable-experimental],[enable unfinished features - not recommended!]),
116 [set_enable_experimental="$enableval"],
117 [set_enable_experimental="no"])
118 AC_MSG_RESULT($set_enable_experimental)
120 AC_MSG_CHECKING([whether to enable debugging mode])
122 AC_HELP_STRING([--enable-debug],[enable debug mode - slow!]),
123 [set_enable_debug="$enableval"],
124 [set_enable_debug="no"])
125 AC_MSG_RESULT($set_enable_debug)
127 if test "$set_enable_debug" = "yes"; then
128 CXXFLAGS="$CXXFLAGS -O0 -g -Wall"
130 CXXFLAGS="$CXXFLAGS -O3 -finline-functions -finline-functions-called-once -Wall"
133 AM_CONDITIONAL(USE_DSSI, test "$DSSI_FOUND" = "yes")
134 AM_CONDITIONAL(USE_LADSPA, test "$LADSPA_FOUND" = "yes")
135 AM_CONDITIONAL(USE_JACK, test "$JACK_ENABLED" = "yes")
136 AM_CONDITIONAL(USE_LV2, test "$LV2_ENABLED" = "yes")
137 AM_CONDITIONAL(USE_GUI, test "$GUI_ENABLED" = "yes")
138 AM_CONDITIONAL(USE_DSSI_GUI, test "$DSSI_GUI_ENABLED" = "yes")
139 AM_CONDITIONAL(USE_LV2_GUI, test "$LV2_GUI_ENABLED" = "yes")
140 AM_CONDITIONAL(USE_LASH, test "$LASH_ENABLED" = "yes")
141 AM_CONDITIONAL(USE_DEBUG, test "$set_enable_debug" = "yes")
142 if test "$LADSPA_FOUND" = "yes"; then
143 AC_DEFINE([USE_LADSPA], [1], [LADSPA wrapper will be built])
145 if test "$DSSI_FOUND" = "yes"; then
146 AC_DEFINE(USE_DSSI, 1, [DSSI wrapper will be built])
148 if test "$DSSI_GUI_ENABLED" = "yes"; then
149 AC_DEFINE(USE_DSSI_GUI, 1, [GTK+ GUI for DSSI will be built])
151 if test "$LV2_ENABLED" = "yes"; then
152 AC_DEFINE(USE_LV2, 1, [LV2 wrapper will be built])
154 if test "$LV2_GUI_ENABLED" = "yes"; then
155 AC_DEFINE(USE_LV2_GUI, 1, [GTK+ GUI for LV2 plugins will be built])
157 if test "$JACK_ENABLED" = "yes"; then
158 AC_DEFINE(USE_JACK, 1, [JACK I/O will be used])
160 if test "$OLD_JACK" = "yes"; then
161 AC_DEFINE(OLD_JACK, 1, [Old JACK version (with extra nframes argument) is to be used])
163 if test "$LASH_ENABLED" = "yes"; then
164 AC_DEFINE(USE_LASH, 1, "LASH Audio Session Handler client functionality is enabled")
166 if test "$set_enable_experimental" = "yes"; then
167 AC_DEFINE([ENABLE_EXPERIMENTAL], [1], "Experimental features are enabled")
170 # Checks for typedefs, structures, and compiler characteristics.
183 AC_MSG_CHECKING(where to install LADSPA plugins)
184 AC_ARG_WITH(ladspa_dir,
185 AC_HELP_STRING([--with-ladspa-dir],[install LADSPA plugins to DIR (default=$prefix/lib/ladspa/)]),
187 [with_ladspa_dir="$prefix/lib/ladspa/"])
188 AC_MSG_RESULT($with_ladspa_dir)
189 AC_SUBST(with_ladspa_dir)
191 AC_MSG_CHECKING(where to install LADSPA RDF file)
192 AC_ARG_WITH(ladspa_rdf_dir,
193 AC_HELP_STRING([--with-ladspa-rdf-dir],[install RDF file to DIR (default=$prefix/share/ladspa/rdf/)]),
195 [with_ladspa_rdf_dir="$prefix/share/ladspa/rdf/"])
196 AC_MSG_RESULT($with_ladspa_rdf_dir)
197 AC_SUBST(with_ladspa_rdf_dir)
199 AC_MSG_CHECKING(where to install DSSI plugins)
200 AC_ARG_WITH(dssi_dir,
201 AC_HELP_STRING([--with-dssi-dir],[install DSSI plugins to DIR (default=$prefix/lib/dssi/)]),
203 [with_dssi_dir="$prefix/lib/dssi/"])
204 AC_MSG_RESULT($with_dssi_dir)
205 AC_SUBST(with_dssi_dir)
207 if test "$LV2_ENABLED" == "yes"; then
208 AC_MSG_CHECKING(where to install LV2 plugins)
210 AC_HELP_STRING([--with-lv2-dir],[install LV2 calf.lv2 bundle to DIR (default=$prefix/lib/lv2/)]),
212 [with_lv2_dir="$prefix/lib/lv2/"])
213 AC_MSG_RESULT($with_lv2_dir)
214 AC_SUBST(with_lv2_dir)
217 AC_DEFINE_UNQUOTED(PKGLIBDIR,"$prefix/share/calf/",[Calf shared data directory (bitmaps, GUI XML etc.)])
219 # Checks for library functions.
220 AC_CHECK_FUNCS([floor memset pow])
222 AC_CONFIG_FILES([Makefile
231 Debug mode: $set_enable_debug
232 Experimental plugins: $set_enable_experimental
233 LADSPA enabled: $LADSPA_FOUND
234 DSSI enabled: $DSSI_FOUND
235 DSSI GUI enabled: $DSSI_GUI_ENABLED
236 LV2 enabled: $LV2_ENABLED
237 LV2 GUI enabled: $LV2_GUI_ENABLED
238 JACK host enabled: $JACK_ENABLED
239 LASH enabled: $LASH_ENABLED
240 Old-style JACK MIDI: $OLD_JACK
242 Installation prefix: $prefix