~ubuntu-branches/ubuntu/jaunty/gimp/jaunty-security

« back to all changes in this revision

Viewing changes to m4macros/alsa.m4

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Holbach
  • Date: 2007-05-02 16:33:03 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20070502163303-bvzhjzbpw8qglc4y
Tags: 2.3.16-1ubuntu1
* Resynchronized with Debian, remaining Ubuntu changes:
  - debian/rules: i18n magic.
* debian/control.in:
  - Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
* debian/patches/02_help-message.patch,
  debian/patches/03_gimp.desktop.in.in.patch,
  debian/patches/10_dont_show_wizard.patch: updated.
* debian/patches/04_composite-signedness.patch,
  debian/patches/05_add-letter-spacing.patch: dropped, used upstream.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
dnl Configure Paths for Alsa
 
2
dnl Some modifications by Richard Boulton <richard-alsa@tartarus.org>
 
3
dnl Christopher Lansdown <lansdoct@cs.alfred.edu>
 
4
dnl Jaroslav Kysela <perex@suse.cz>
 
5
dnl Last modification: alsa.m4,v 1.24 2004/09/15 18:48:07 tiwai Exp
 
6
dnl AM_PATH_ALSA([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
 
7
dnl Test for libasound, and define ALSA_CFLAGS and ALSA_LIBS as appropriate.
 
8
dnl enables arguments --with-alsa-prefix=
 
9
dnl                   --with-alsa-enc-prefix=
 
10
dnl                   --disable-alsatest
 
11
dnl
 
12
dnl For backwards compatibility, if ACTION_IF_NOT_FOUND is not specified,
 
13
dnl and the alsa libraries are not found, a fatal AC_MSG_ERROR() will result.
 
14
dnl
 
15
AC_DEFUN([AM_PATH_ALSA],
 
16
[dnl Save the original CFLAGS, LDFLAGS, and LIBS
 
17
alsa_save_CFLAGS="$CFLAGS"
 
18
alsa_save_LDFLAGS="$LDFLAGS"
 
19
alsa_save_LIBS="$LIBS"
 
20
alsa_found=yes
 
21
 
 
22
dnl
 
23
dnl Get the cflags and libraries for alsa
 
24
dnl
 
25
AC_ARG_WITH(alsa-prefix,
 
26
[  --with-alsa-prefix=PFX  Prefix where Alsa library is installed(optional)],
 
27
[alsa_prefix="$withval"], [alsa_prefix=""])
 
28
 
 
29
AC_ARG_WITH(alsa-inc-prefix,
 
30
[  --with-alsa-inc-prefix=PFX  Prefix where include libraries are (optional)],
 
31
[alsa_inc_prefix="$withval"], [alsa_inc_prefix=""])
 
32
 
 
33
dnl FIXME: this is not yet implemented
 
34
AC_ARG_ENABLE(alsatest,
 
35
[  --disable-alsatest      Do not try to compile and run a test Alsa program],
 
36
[enable_alsatest="$enableval"],
 
37
[enable_alsatest=yes])
 
38
 
 
39
dnl Add any special include directories
 
40
AC_MSG_CHECKING(for ALSA CFLAGS)
 
41
if test "$alsa_inc_prefix" != "" ; then
 
42
        ALSA_CFLAGS="$ALSA_CFLAGS -I$alsa_inc_prefix"
 
43
        CFLAGS="$CFLAGS -I$alsa_inc_prefix"
 
44
fi
 
45
AC_MSG_RESULT($ALSA_CFLAGS)
 
46
CFLAGS="$alsa_save_CFLAGS"
 
47
 
 
48
dnl add any special lib dirs
 
49
AC_MSG_CHECKING(for ALSA LDFLAGS)
 
50
if test "$alsa_prefix" != "" ; then
 
51
        ALSA_LIBS="$ALSA_LIBS -L$alsa_prefix"
 
52
        LDFLAGS="$LDFLAGS $ALSA_LIBS"
 
53
fi
 
54
 
 
55
dnl add the alsa library
 
56
ALSA_LIBS="$ALSA_LIBS -lasound -lm -ldl -lpthread"
 
57
LIBS="$ALSA_LIBS $LIBS"
 
58
AC_MSG_RESULT($ALSA_LIBS)
 
59
 
 
60
dnl Check for a working version of libasound that is of the right version.
 
61
min_alsa_version=ifelse([$1], ,0.1.1,$1)
 
62
AC_MSG_CHECKING(for libasound headers version >= $min_alsa_version)
 
63
no_alsa=""
 
64
    alsa_min_major_version=`echo $min_alsa_version | \
 
65
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
 
66
    alsa_min_minor_version=`echo $min_alsa_version | \
 
67
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
 
68
    alsa_min_micro_version=`echo $min_alsa_version | \
 
69
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
 
70
 
 
71
AC_LANG_SAVE
 
72
AC_LANG_C
 
73
AC_TRY_COMPILE([
 
74
#include <alsa/asoundlib.h>
 
75
], [
 
76
/* ensure backward compatibility */
 
77
#if !defined(SND_LIB_MAJOR) && defined(SOUNDLIB_VERSION_MAJOR)
 
78
#define SND_LIB_MAJOR SOUNDLIB_VERSION_MAJOR
 
79
#endif
 
80
#if !defined(SND_LIB_MINOR) && defined(SOUNDLIB_VERSION_MINOR)
 
81
#define SND_LIB_MINOR SOUNDLIB_VERSION_MINOR
 
82
#endif
 
83
#if !defined(SND_LIB_SUBMINOR) && defined(SOUNDLIB_VERSION_SUBMINOR)
 
84
#define SND_LIB_SUBMINOR SOUNDLIB_VERSION_SUBMINOR
 
85
#endif
 
86
 
 
87
#  if(SND_LIB_MAJOR > $alsa_min_major_version)
 
88
  exit(0);
 
89
#  else
 
90
#    if(SND_LIB_MAJOR < $alsa_min_major_version)
 
91
#       error not present
 
92
#    endif
 
93
 
 
94
#   if(SND_LIB_MINOR > $alsa_min_minor_version)
 
95
  exit(0);
 
96
#   else
 
97
#     if(SND_LIB_MINOR < $alsa_min_minor_version)
 
98
#          error not present
 
99
#      endif
 
100
 
 
101
#      if(SND_LIB_SUBMINOR < $alsa_min_micro_version)
 
102
#        error not present
 
103
#      endif
 
104
#    endif
 
105
#  endif
 
106
exit(0);
 
107
],
 
108
  [AC_MSG_RESULT(found.)],
 
109
  [AC_MSG_RESULT(not present.)
 
110
   ifelse([$3], , [AC_MSG_ERROR(Sufficiently new version of libasound not found.)])
 
111
   alsa_found=no]
 
112
)
 
113
AC_LANG_RESTORE
 
114
 
 
115
dnl Now that we know that we have the right version, let's see if we have the library and not just the headers.
 
116
if test "x$enable_alsatest" = "xyes"; then
 
117
AC_CHECK_LIB([asound], [snd_ctl_open],,
 
118
        [ifelse([$3], , [AC_MSG_ERROR(No linkable libasound was found.)])
 
119
         alsa_found=no]
 
120
)
 
121
fi
 
122
 
 
123
LDFLAGS="$alsa_save_LDFLAGS"
 
124
LIBS="$alsa_save_LIBS"
 
125
 
 
126
if test "x$alsa_found" = "xyes" ; then
 
127
   ifelse([$2], , :, [$2])
 
128
else
 
129
   ALSA_CFLAGS=""
 
130
   ALSA_LIBS=""
 
131
   ifelse([$3], , :, [$3])
 
132
fi
 
133
 
 
134
dnl That should be it.  Now just export out symbols:
 
135
AC_SUBST(ALSA_CFLAGS)
 
136
AC_SUBST(ALSA_LIBS)
 
137
])
 
138