3 |
|
|
4 |
m4_define(linuxsampler_release_major, 2) |
m4_define(linuxsampler_release_major, 2) |
5 |
m4_define(linuxsampler_release_minor, 1) |
m4_define(linuxsampler_release_minor, 1) |
6 |
m4_define(linuxsampler_release_build, 1.svn46) |
m4_define(linuxsampler_release_build, 1.svn59) |
7 |
|
|
8 |
|
|
9 |
AC_INIT([linuxsampler],[linuxsampler_release_major.linuxsampler_release_minor.linuxsampler_release_build]) |
AC_INIT([linuxsampler],[linuxsampler_release_major.linuxsampler_release_minor.linuxsampler_release_build]) |
195 |
fi |
fi |
196 |
|
|
197 |
|
|
198 |
|
# check whether C++ compiler supports "designated initializers" |
199 |
|
echo -n "Checking whether C++ compiler supports designated initializers (partly)... " |
200 |
|
AC_LANG_PUSH([C++]) |
201 |
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ |
202 |
|
#include <stdlib.h> |
203 |
|
struct Foo { |
204 |
|
int a; |
205 |
|
float b; |
206 |
|
bool c; |
207 |
|
char d; |
208 |
|
}; |
209 |
|
static void bar(Foo o) { |
210 |
|
} |
211 |
|
int main() { |
212 |
|
bar({ |
213 |
|
.a = 2, |
214 |
|
.b = 4.3f, |
215 |
|
.c = true, |
216 |
|
.d = 'z' |
217 |
|
}); |
218 |
|
return 0; |
219 |
|
} |
220 |
|
]])], |
221 |
|
[cxx_designated_init_partly="yes"], |
222 |
|
[cxx_designated_init_partly="no"] |
223 |
|
) |
224 |
|
AC_LANG_POP([C++]) |
225 |
|
if test $cxx_designated_init_partly = "yes"; then |
226 |
|
echo "yes" |
227 |
|
else |
228 |
|
echo "NO" |
229 |
|
echo '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' |
230 |
|
echo '! !' |
231 |
|
echo '! ERROR: Selected C++ compiler does not support designated !' |
232 |
|
echo '! initializers at all, not even partly! !' |
233 |
|
echo '! !' |
234 |
|
echo '! Please either update your C++ compiler or select a !' |
235 |
|
echo '! different compiler (e.g. GCC >= 8 or clang >= 5). If you !' |
236 |
|
echo '! have several C++ compilers installed on your machine, you !' |
237 |
|
echo '! can easily select a different compiler by environment !' |
238 |
|
echo '! variable, e.g. to compile with clang instead: !' |
239 |
|
echo '! !' |
240 |
|
echo '! CXX=clang++ CC=clang ./configure && make !' |
241 |
|
echo '! !' |
242 |
|
echo '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' |
243 |
|
exit -1 |
244 |
|
fi |
245 |
|
echo -n "Checking whether C++ compiler fully supports designated initializers... " |
246 |
|
AC_LANG_PUSH([C++]) |
247 |
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ |
248 |
|
#include <stdlib.h> |
249 |
|
struct Foo { |
250 |
|
int a; |
251 |
|
float b; |
252 |
|
bool c; |
253 |
|
char d; |
254 |
|
}; |
255 |
|
static void bar(Foo o) { |
256 |
|
} |
257 |
|
int main() { |
258 |
|
bar({ |
259 |
|
.d = 'z', |
260 |
|
.a = 2 |
261 |
|
}); |
262 |
|
return 0; |
263 |
|
} |
264 |
|
]])], |
265 |
|
[cxx_designated_init_fully="yes"], |
266 |
|
[cxx_designated_init_fully="no"] |
267 |
|
) |
268 |
|
AC_LANG_POP([C++]) |
269 |
|
if test $cxx_designated_init_fully = "yes"; then |
270 |
|
echo "yes" |
271 |
|
else |
272 |
|
echo 'NO' |
273 |
|
echo '***************************************************************' |
274 |
|
echo '* *' |
275 |
|
echo '* WARNING: Selected C++ compiler does not fully support *' |
276 |
|
echo '* designated initializers (only partly)! *' |
277 |
|
echo '* *' |
278 |
|
echo '* You will be able to compile LinuxSampler, but you will not *' |
279 |
|
echo '* be able to compile the test cases. Consider updating your *' |
280 |
|
echo '* C++ compiler or switching to a different compiler. Chances *' |
281 |
|
echo '* are that LinuxSampler will soon no longer support your *' |
282 |
|
echo '* compiler. *' |
283 |
|
echo '* *' |
284 |
|
echo '* If you have several C++ compilers installed on your machine,*' |
285 |
|
echo '* you can easily select a different compiler by environment *' |
286 |
|
echo '* variable, e.g. to compile with clang instead: *' |
287 |
|
echo '* *' |
288 |
|
echo '* CXX=clang++ CC=clang ./configure && make *' |
289 |
|
echo '* *' |
290 |
|
echo '***************************************************************' |
291 |
|
fi |
292 |
|
|
293 |
|
|
294 |
# In case Bison is available, determine the exact version, since we need to |
# In case Bison is available, determine the exact version, since we need to |
295 |
# use different custom parser code for Bison 2.x vs. Bison 3.x generated |
# use different custom parser code for Bison 2.x vs. Bison 3.x generated |
296 |
# parser yacc tables. |
# parser yacc tables. |
860 |
AC_DEFINE_UNQUOTED(CONFIG_RT_EXCEPTIONS, 1, [Define to 1 to allow exceptions in the realtime context.]) |
AC_DEFINE_UNQUOTED(CONFIG_RT_EXCEPTIONS, 1, [Define to 1 to allow exceptions in the realtime context.]) |
861 |
fi |
fi |
862 |
|
|
863 |
config_pthread_testcancel="$mac" |
AC_CHECK_FUNC(pthread_testcancel, |
864 |
AC_ARG_ENABLE(pthread-testcancel, |
[config_pthread_testcancel="yes"], |
865 |
[ --enable-pthread-testcancel |
[config_pthread_testcancel="no"] |
866 |
Enable pthread_testcancel() calls and avoid |
) |
|
asynchronous cancel of pthreads (default=yes |
|
|
for Mac targets, no otherwise).], |
|
|
[config_pthread_testcancel="$enableval"], |
|
|
[]) |
|
867 |
if test "$config_pthread_testcancel" = "yes"; then |
if test "$config_pthread_testcancel" = "yes"; then |
868 |
AC_DEFINE_UNQUOTED(CONFIG_PTHREAD_TESTCANCEL, 1, [Define to 1 to enable pthread_testcancel() calls.]) |
AC_DEFINE_UNQUOTED(CONFIG_PTHREAD_TESTCANCEL, 1, [Define to 1 if pthread_testcancel() is available.]) |
869 |
fi |
fi |
870 |
|
|
871 |
AC_ARG_ENABLE(preload-samples, |
AC_ARG_ENABLE(preload-samples, |