Mercurial > audlegacy-plugins
comparison acinclude.m4 @ 2718:37f75d10f46a
And more updates to acinclude.m4.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 17 Jun 2008 20:08:47 +0300 |
parents | 1b4fcab95915 |
children | dd8b44fbfd6f |
comparison
equal
deleted
inserted
replaced
2717:1b4fcab95915 | 2718:37f75d10f46a |
---|---|
1 | 1 |
2 dnl ** ADD_PKG_REQUIRES([requirement]) | 2 dnl ** ADD_PKG_REQUIRES([requirement]) |
3 dnl ** Adds a dependency to package's pkg-config file. | |
3 AC_DEFUN([ADD_PC_REQUIRES], [ | 4 AC_DEFUN([ADD_PC_REQUIRES], [ |
4 if test "x$PC_REQUIRES" = "x"; then | 5 if test "x$PC_REQUIRES" = "x"; then |
5 PC_REQUIRES="$1" | 6 PC_REQUIRES="$1" |
6 else | 7 else |
7 PC_REQUIRES="$PC_REQUIRES, $1" | 8 PC_REQUIRES="$PC_REQUIRES, $1" |
8 fi | 9 fi |
9 AC_SUBST([PC_REQUIRES]) | 10 AC_SUBST([PC_REQUIRES]) |
10 ]) | 11 ]) |
11 | 12 |
12 | 13 |
13 dnl ** Like PKG_CHECK_MODULES, but provides an informative error message. | |
14 dnl ** AUD_CHECK_MODULE([define name], [module], [version required], | 14 dnl ** AUD_CHECK_MODULE([define name], [module], [version required], |
15 dnl ** [informational name], [additional error message]) | 15 dnl ** [informational name], [additional error message]) |
16 dnl ** | |
17 dnl ** Works like PKG_CHECK_MODULES, but provides an informative | |
18 dnl ** error message if the package is not found. NOTICE! Unlike | |
19 dnl ** PKG_C_M, this macro ONLY supports one module name! | |
16 dnl ** | 20 dnl ** |
17 dnl ** AUD_CHECK_MODULE([GLIB], [gtk+-2.0], [>= 2.10.0], [Gtk+2], [See http://www.gtk.org/]) | 21 dnl ** AUD_CHECK_MODULE([GLIB], [gtk+-2.0], [>= 2.10.0], [Gtk+2], [See http://www.gtk.org/]) |
18 AC_DEFUN([AUD_CHECK_MODULE], [ | 22 AC_DEFUN([AUD_CHECK_MODULE], [ |
19 PKG_CHECK_MODULES([$1], [$2 $3], [ | 23 PKG_CHECK_MODULES([$1], [$2 $3], [ |
20 ADD_PC_REQUIRES([$2 $3]) | 24 ADD_PC_REQUIRES([$2 $3]) |
32 ]) | 36 ]) |
33 ]) | 37 ]) |
34 ]) | 38 ]) |
35 | 39 |
36 | 40 |
37 dnl ** Simplifying wrapper | 41 dnl ** AUD_CONDITIONAL([symbol], [variable to test][, value]) |
42 dnl ** Simplifying wrapper for AM_CONDITIONAL. | |
43 dnl ** | |
44 dnl ** AUD_CONDITIONAL([FOO], [foo]) | |
38 AC_DEFUN([AUD_CONDITIONAL], | 45 AC_DEFUN([AUD_CONDITIONAL], |
39 [if test "x${$2}" = m4_ifval([$3], ["x$3"],["xyes"]) ; then | 46 [if test "x${$2}" = m4_ifval([$3], ["x$3"],["xyes"]) ; then |
40 $1="yes" | 47 $1="yes" |
41 else | 48 else |
42 $1="no" | 49 $1="no" |
46 | 53 |
47 | 54 |
48 dnl ** Simple wrapper for AC_ARG_ENABLE | 55 dnl ** Simple wrapper for AC_ARG_ENABLE |
49 dnl ** AUD_ARG_ENABLE([name], [default value], [help string], [if enabled], [if disabled]) | 56 dnl ** AUD_ARG_ENABLE([name], [default value], [help string], [if enabled], [if disabled]) |
50 AC_DEFUN([AUD_ARG_ENABLE], [dnl | 57 AC_DEFUN([AUD_ARG_ENABLE], [dnl |
51 define([Name], [translit([$1], [./-], [___])])dnl | 58 define([Name], [translit([$1], [./-], [___])])dnl |
52 define([cBasce], [ifelse([$2],[yes],[Disable],[Enable]) $3 (def: ifelse([$2],[yes],[enabled],[disabled]))])dnl | 59 define([cBasce], [ifelse([$2],[yes],[Disable],[Enable]) $3 (def: ifelse([$2],[yes],[enabled],[disabled]))])dnl |
53 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$2],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_[]Name=$2]) | 60 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$2],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_[]Name=$2]) |
54 if test "x${enable_[]Name}" = "xyes"; then | 61 if test "x${enable_[]Name}" = "xyes"; then |
55 m4_ifvaln([$4], [$4], [:])dnl | 62 m4_ifvaln([$4], [$4], [:])dnl |
56 m4_ifvaln([$5], [else $5])dnl | 63 m4_ifvaln([$5], [else $5])dnl |
57 fi | 64 fi |
58 ]) | 65 ]) |
59 | 66 |
60 | 67 |
61 AC_DEFUN([AUD_ARG_SIMPLE], [dnl | 68 AC_DEFUN([AUD_ARG_SIMPLE], [dnl |
62 define([Name], [translit([$1], [./-], [___])])dnl | 69 define([Name], [translit([$1], [./-], [___])])dnl |
63 define([cBasce], [ifelse([$2],[yes],[Disable],[Enable]) $3 (def: ifelse([$2],[yes],[enabled],[disabled]))])dnl | 70 define([cBasce], [ifelse([$2],[yes],[Disable],[Enable]) $3 (def: ifelse([$2],[yes],[enabled],[disabled]))])dnl |
64 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$2],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_[]Name=$2]) | 71 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$2],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_[]Name=$2]) |
65 if test "x${enable_[]Name}" = "xyes"; then | 72 if test "x${enable_[]Name}" = "xyes"; then |
66 AC_DEFINE([$4], [$5], [$6]) | 73 AC_DEFINE([$4], [$5], [$6]) |
67 fi | 74 fi |
68 AUD_CONDITIONAL([$4], [enable_$1]) | 75 AUD_CONDITIONAL([$4], [enable_$1]) |
134 define([aud_get_plugin_dirs_defined],[1])dnl | 141 define([aud_get_plugin_dirs_defined],[1])dnl |
135 ])dnl | 142 ])dnl |
136 | 143 |
137 | 144 |
138 | 145 |
139 dnl *** | 146 dnl ** |
140 dnl *** Common checks | 147 dnl ** Common checks |
141 dnl *** | 148 dnl ** |
142 AC_DEFUN([AUD_COMMON_PROGS], [ | 149 AC_DEFUN([AUD_COMMON_PROGS], [ |
143 | 150 |
144 dnl Check for C and C++ compilers | 151 dnl Check for C and C++ compilers |
145 dnl ============================= | 152 dnl ============================= |
146 AUD_CHECK_GNU_MAKE | 153 AUD_CHECK_GNU_MAKE |
230 ]) | 237 ]) |
231 | 238 |
232 ]) | 239 ]) |
233 | 240 |
234 | 241 |
235 dnl Plugin helper macros | 242 dnl ** |
236 dnl ==================== | 243 dnl ** Plugin helper macros |
244 dnl ** | |
245 | |
246 dnl ** Unconditionally add a plugin to "build these" list | |
237 AC_DEFUN([AUD_PLUGIN_ADD], [dnl | 247 AC_DEFUN([AUD_PLUGIN_ADD], [dnl |
238 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl | 248 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl |
239 have_[]Name="yes"; res_short_[]Name="$1" | 249 have_[]Name="yes"; res_short_[]Name="$1" |
240 res_desc_[]Name="$3"; ifdef([aud_def_plugin_$2], [$2[]_PLUGINS="${$2[]_PLUGINS} $1"], [$2[]_PLUGINS="$1"])dnl | 250 res_desc_[]Name="$3"; ifdef([aud_def_plugin_$2], [$2[]_PLUGINS="${$2[]_PLUGINS} $1"], [$2[]_PLUGINS="$1"])dnl |
241 define([aud_def_plugin_$2],[1])dnl | 251 define([aud_def_plugin_$2],[1])dnl |
242 ]) | 252 ]) |
243 | 253 |
254 | |
255 dnl ** Generic template for macros below | |
244 AC_DEFUN([AUD_PLUGIN_CHK], [dnl | 256 AC_DEFUN([AUD_PLUGIN_CHK], [dnl |
245 define([cBasce], [$5 (def: ifelse([$2],[yes],[enabled],[disabled]))])dnl | 257 define([cBasce], [ifelse([$3],[yes],[Disable],[Enable]) $5 (def: ifelse([$3],[yes],[enabled],[disabled]))])dnl |
246 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$2],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_$2="$3"])dnl | 258 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$3],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_$2="$3"])dnl |
247 have_$2="no" | 259 have_$2="no" |
248 if test "x${enable_$2}" = "xyes"; then | 260 if test "x${enable_$2}" = "xyes"; then |
249 m4_ifvaln([$6], [$6], [:]) | 261 m4_ifvaln([$6], [$6], [:]) |
250 if test "x${have_$2}" = "xyes"; then | 262 if test "x${have_$2}" = "xyes"; then |
251 m4_ifvaln([$7], [$7], [:])dnl | 263 m4_ifvaln([$7], [$7], [:])dnl |
257 res_msg_$2="(disabled)" | 269 res_msg_$2="(disabled)" |
258 m4_ifvaln([$9], [$9], [:])dnl | 270 m4_ifvaln([$9], [$9], [:])dnl |
259 fi | 271 fi |
260 ]) | 272 ]) |
261 | 273 |
274 | |
275 dnl ** Add a plugin based on --enable/--disable options | |
262 AC_DEFUN([AUD_PLUGIN_CHECK_SIMPLE], [dnl | 276 AC_DEFUN([AUD_PLUGIN_CHECK_SIMPLE], [dnl |
263 define([cBasce], [$6 (def: ifelse([$2],[yes],[enabled],[disabled]))])dnl | 277 define([cBasce], [ifelse([$2],[yes],[Disable],[Enable]) $6 (def: ifelse([$2],[yes],[enabled],[disabled]))])dnl |
264 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$2],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_$2="$3"])dnl | 278 AC_ARG_ENABLE([$1], [AS_HELP_STRING([ifelse([$2],[yes],[--disable-$1],[--enable-$1])], cBasce)],, [enable_$2="$3"])dnl |
265 have_$2="no" | 279 have_$2="no" |
266 if test "x${enable_$2}" = "xyes"; then | 280 if test "x${enable_$2}" = "xyes"; then |
267 m4_ifvaln([$6], [$6], [:]) | 281 m4_ifvaln([$6], [$6], [:]) |
268 else | 282 else |
270 m4_ifvaln([$7], [$7], [:])dnl | 284 m4_ifvaln([$7], [$7], [:])dnl |
271 fi | 285 fi |
272 ]) | 286 ]) |
273 | 287 |
274 | 288 |
275 dnl Check and enable a plugin with a pkg-config check | 289 dnl ** Check and enable a plugin with a pkg-config check |
276 AC_DEFUN([AUD_PLUGIN_CHECK_PKG], [dnl | 290 AC_DEFUN([AUD_PLUGIN_CHECK_PKG], [dnl |
277 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl | 291 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl |
278 define([BigN], [translit([$1], [a-z./-], [A-Z___])])dnl | 292 define([BigN], [translit([$1], [a-z./-], [A-Z___])])dnl |
279 AUD_PLUGIN_CHK([$1], Name, [$2], [$4], [$6], [dnl | 293 AUD_PLUGIN_CHK([$1], Name, [$2], [$4], [$6], [dnl |
280 PKG_CHECK_MODULES([]BigN, [$7], [have_[]Name[]="yes"], [have_[]Name[]="no"]) | 294 PKG_CHECK_MODULES([]BigN, [$7], [have_[]Name[]="yes"], [have_[]Name[]="no"]) |
282 AUD_PLUGIN_ADD([$5], [$3]) | 296 AUD_PLUGIN_ADD([$5], [$3]) |
283 m4_ifvaln([$8], [$8]) | 297 m4_ifvaln([$8], [$8]) |
284 ], [$9], [$10]) | 298 ], [$9], [$10]) |
285 ]) | 299 ]) |
286 | 300 |
287 dnl Check and enable a plugin with a header files check | 301 |
302 dnl ** Check and enable a plugin with a header files check | |
288 AC_DEFUN([AUD_PLUGIN_CHECK_HEADERS], [ | 303 AC_DEFUN([AUD_PLUGIN_CHECK_HEADERS], [ |
289 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl | 304 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl |
290 AUD_PLUGIN_CHK([$1], Name, [$2], [$4], [$6], [ | 305 AUD_PLUGIN_CHK([$1], Name, [$2], [$4], [$6], [ |
291 AC_CHECK_HEADERS([$7], [have_[]Name[]="yes"], [have_[]Name[]="no"]) | 306 AC_CHECK_HEADERS([$7], [have_[]Name[]="yes"], [have_[]Name[]="no"]) |
292 ], [ | 307 ], [ |
293 AUD_PLUGIN_ADD([$5], [$3]) | 308 AUD_PLUGIN_ADD([$5], [$3]) |
294 m4_ifvaln([$8], [$8]) | 309 m4_ifvaln([$8], [$8]) |
295 ], [$9], [$10]) | 310 ], [$9], [$10]) |
296 ]) | 311 ]) |
297 | 312 |
298 dnl Check and enable a plugin with complex checks | 313 |
314 dnl ** Check and enable a plugin with a complex check | |
299 AC_DEFUN([AUD_PLUGIN_CHECK_COMPLEX], [ | 315 AC_DEFUN([AUD_PLUGIN_CHECK_COMPLEX], [ |
300 # CHECK_COMPLEX #1 : $1 | 316 # CHECK_COMPLEX #1 : $1 |
301 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl | 317 define([Name], [translit([$1], [A-Z./-], [a-z___])])dnl |
302 AUD_PLUGIN_CHK([$1], Name, [$2], [$4], [$6], [ | 318 AUD_PLUGIN_CHK([$1], Name, [$2], [$4], [$6], [ |
303 # CHECK_COMPLEX #2 BEGIN | 319 # CHECK_COMPLEX #2 BEGIN |
307 # CHECK_COMPLEX #3 BEGIN | 323 # CHECK_COMPLEX #3 BEGIN |
308 AUD_PLUGIN_ADD([$5], [$3]) | 324 AUD_PLUGIN_ADD([$5], [$3]) |
309 m4_ifvaln([$8], [$8]) | 325 m4_ifvaln([$8], [$8]) |
310 # CHECK_COMPLEX #3 END | 326 # CHECK_COMPLEX #3 END |
311 ], [$9], [$10]) | 327 ], [$9], [$10]) |
312 ]) | 328 # CHECK_COMPLEX #4 END |
313 | 329 ]) |