Mercurial > hg > xmms-sid
comparison xmms.m4 @ 1016:0fee394985f2 default tip
Added xmms.m4
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sat, 09 Jan 2016 19:05:29 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
1015:d8c1c1c5f609 | 1016:0fee394985f2 |
---|---|
1 # CFLAGS and library paths for XMMS | |
2 # written 15 December 1999 by Ben Gertzfield <che@debian.org> | |
3 | |
4 dnl Usage: | |
5 dnl AM_PATH_XMMS([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) | |
6 dnl | |
7 dnl Example: | |
8 dnl AM_PATH_XMMS(0.9.5.1, , AC_MSG_ERROR([*** XMMS >= 0.9.5.1 not installed - please install first ***])) | |
9 dnl | |
10 dnl Defines XMMS_CFLAGS, XMMS_LIBS, XMMS_DATA_DIR, XMMS_PLUGIN_DIR, | |
11 dnl XMMS_VISUALIZATION_PLUGIN_DIR, XMMS_INPUT_PLUGIN_DIR, | |
12 dnl XMMS_OUTPUT_PLUGIN_DIR, XMMS_GENERAL_PLUGIN_DIR, XMMS_EFFECT_PLUGIN_DIR, | |
13 dnl and XMMS_VERSION for your plugin pleasure. | |
14 dnl | |
15 | |
16 dnl XMMS_TEST_VERSION(AVAILABLE-VERSION, NEEDED-VERSION [, ACTION-IF-OKAY [, ACTION-IF-NOT-OKAY]]) | |
17 AC_DEFUN([XMMS_TEST_VERSION], [ | |
18 | |
19 # Determine which version number is greater. Prints 2 to stdout if | |
20 # the second number is greater, 1 if the first number is greater, | |
21 # 0 if the numbers are equal. | |
22 | |
23 # Written 15 December 1999 by Ben Gertzfield <che@debian.org> | |
24 # Revised 15 December 1999 by Jim Monty <monty@primenet.com> | |
25 | |
26 AC_PROG_AWK | |
27 xmms_got_version=[` $AWK ' \ | |
28 BEGIN { \ | |
29 print vercmp(ARGV[1], ARGV[2]); \ | |
30 } \ | |
31 \ | |
32 function vercmp(ver1, ver2, ver1arr, ver2arr, \ | |
33 ver1len, ver2len, \ | |
34 ver1int, ver2int, len, i, p) { \ | |
35 \ | |
36 ver1len = split(ver1, ver1arr, /\./); \ | |
37 ver2len = split(ver2, ver2arr, /\./); \ | |
38 \ | |
39 len = ver1len > ver2len ? ver1len : ver2len; \ | |
40 \ | |
41 for (i = 1; i <= len; i++) { \ | |
42 p = 1000 ^ (len - i); \ | |
43 ver1int += ver1arr[i] * p; \ | |
44 ver2int += ver2arr[i] * p; \ | |
45 } \ | |
46 \ | |
47 if (ver1int < ver2int) \ | |
48 return 2; \ | |
49 else if (ver1int > ver2int) \ | |
50 return 1; \ | |
51 else \ | |
52 return 0; \ | |
53 }' $1 $2`] | |
54 | |
55 if test $xmms_got_version -eq 2; then # failure | |
56 ifelse([$4], , :, $4) | |
57 else # success! | |
58 ifelse([$3], , :, $3) | |
59 fi | |
60 ]) | |
61 | |
62 AC_DEFUN([AM_PATH_XMMS], | |
63 [ | |
64 AC_ARG_WITH([xmms-prefix],[ --with-xmms-prefix=PFX Prefix where XMMS is installed (optional)], | |
65 [xmms_config_prefix="$withval", xmms_config_prefix=""]) | |
66 AC_ARG_WITH([xmms-exec-prefix],[ --with-xmms-exec-prefix=PFX Exec prefix where XMMS is installed (optional)], | |
67 [xmms_config_exec_prefix="$withval", xmms_config_exec_prefix=""]) | |
68 | |
69 if test x$xmms_config_exec_prefix != x; then | |
70 xmms_config_args="$xmms_config_args --exec-prefix=$xmms_config_exec_prefix" | |
71 if test x${XMMS_CONFIG+set} != xset; then | |
72 XMMS_CONFIG=$xmms_config_exec_prefix/bin/xmms-config | |
73 fi | |
74 fi | |
75 | |
76 if test x$xmms_config_prefix != x; then | |
77 xmms_config_args="$xmms_config_args --prefix=$xmms_config_prefix" | |
78 if test x${XMMS_CONFIG+set} != xset; then | |
79 XMMS_CONFIG=$xmms_config_prefix/bin/xmms-config | |
80 fi | |
81 fi | |
82 | |
83 AC_PATH_PROG([XMMS_CONFIG], [xmms-config], [no]) | |
84 min_xmms_version=ifelse([$1], ,0.9.5.1, $1) | |
85 | |
86 if test "$XMMS_CONFIG" = "no"; then | |
87 no_xmms=yes | |
88 else | |
89 XMMS_CFLAGS=`$XMMS_CONFIG $xmms_config_args --cflags` | |
90 XMMS_LIBS=`$XMMS_CONFIG $xmms_config_args --libs` | |
91 XMMS_VERSION=`$XMMS_CONFIG $xmms_config_args --version` | |
92 XMMS_DATA_DIR=`$XMMS_CONFIG $xmms_config_args --data-dir` | |
93 XMMS_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --plugin-dir` | |
94 XMMS_VISUALIZATION_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args \ | |
95 --visualization-plugin-dir` | |
96 XMMS_INPUT_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --input-plugin-dir` | |
97 XMMS_OUTPUT_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --output-plugin-dir` | |
98 XMMS_EFFECT_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --effect-plugin-dir` | |
99 XMMS_GENERAL_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --general-plugin-dir` | |
100 | |
101 XMMS_TEST_VERSION([$XMMS_VERSION], [$min_xmms_version], ,[no_xmms=version]) | |
102 fi | |
103 | |
104 AC_MSG_CHECKING([for XMMS - version >= $min_xmms_version]) | |
105 | |
106 if test "x$no_xmms" = x; then | |
107 AC_MSG_RESULT([yes]) | |
108 ifelse([$2], , :, [$2]) | |
109 else | |
110 AC_MSG_RESULT(no) | |
111 | |
112 if test "$XMMS_CONFIG" = "no" ; then | |
113 echo "*** The xmms-config script installed by XMMS could not be found." | |
114 echo "*** If XMMS was installed in PREFIX, make sure PREFIX/bin is in" | |
115 echo "*** your path, or set the XMMS_CONFIG environment variable to the" | |
116 echo "*** full path to xmms-config." | |
117 else | |
118 if test "$no_xmms" = "version"; then | |
119 echo "*** An old version of XMMS, $XMMS_VERSION, was found." | |
120 echo "*** You need a version of XMMS newer than $min_xmms_version." | |
121 echo "*** The latest version of XMMS is always available from" | |
122 echo "*** http://legacy.xmms2.org/" | |
123 echo "***" | |
124 | |
125 echo "*** If you have already installed a sufficiently new version, this error" | |
126 echo "*** probably means that the wrong copy of the xmms-config shell script is" | |
127 echo "*** being found. The easiest way to fix this is to remove the old version" | |
128 echo "*** of XMMS, but you can also set the XMMS_CONFIG environment to point to the" | |
129 echo "*** correct copy of xmms-config. (In this case, you will have to" | |
130 echo "*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf" | |
131 echo "*** so that the correct libraries are found at run-time)" | |
132 fi | |
133 fi | |
134 XMMS_CFLAGS="" | |
135 XMMS_LIBS="" | |
136 ifelse([$3], , :, [$3]) | |
137 fi | |
138 AC_SUBST([XMMS_CFLAGS]) | |
139 AC_SUBST([XMMS_LIBS]) | |
140 AC_SUBST([XMMS_VERSION]) | |
141 AC_SUBST([XMMS_DATA_DIR]) | |
142 AC_SUBST([XMMS_PLUGIN_DIR]) | |
143 AC_SUBST([XMMS_VISUALIZATION_PLUGIN_DIR]) | |
144 AC_SUBST([XMMS_INPUT_PLUGIN_DIR]) | |
145 AC_SUBST([XMMS_OUTPUT_PLUGIN_DIR]) | |
146 AC_SUBST([XMMS_GENERAL_PLUGIN_DIR]) | |
147 AC_SUBST([XMMS_EFFECT_PLUGIN_DIR]) | |
148 ]) |