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