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
|
AC_INIT(cdcd.c)
MAJOR_VERSION=0
MINOR_VERSION=6
MICRO_VERSION=5
PACKAGE=cdcd
VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION
AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
AM_CONFIG_HEADER(config.h)
dnl Checks for programs.
AC_PROG_AWK
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_CPP
AM_C_PROTOTYPES
AC_CANONICAL_HOST
EXTRA_CFLAGS=''
dnl Checks for libraries.
dnl TODO: use the macro included in libcdaudio.m4.
AC_CHECK_LIB(curses, tputs,,
[AC_MSG_ERROR([cannot find the curses library.
Check the INSTALL file, maybe you can find how to solve the problem.])])
LIBS="-lcurses"
AC_CHECK_LIB(readline, rl_completion_matches,,
[AC_MSG_ERROR([cannot find GNU libreadline 4.2 or higher.
Check the INSTALL file, maybe you can find how to solve the problem.])],
-lcurses)
LIBS="-lcurses -lreadline"
# It's better to have this string in one single place.
LIBCDAUDIO_MISSING="couldn't locate libcdaudio. Check the INSTALL file, maybe you can find how to solve the problem."
define(HAVE_LIBCDAUDIO_DEF, [Define to 1 if we must provide -llibcdaudio.])
define(HAVE_CDAUDIO_DEF, [Define to 1 if we must provide -lcdaudio.])
define(DEFAULT_DEVICE_DEF, [Default CDROM device.])
case "$host_os" in
irix*)
AC_DEFINE([DEFAULT_DEVICE], "/dev/unspecified", DEFAULT_DEVICE_DEF)
AC_CHECK_LIB(libcdaudio, cd_init_device,
[LIBS="$LIBS -llibcdaudio -lcdaudio -lmediad -lds"],
[AC_MSG_ERROR([$LIBCDAUDIO_MISSING])])
AC_DEFINE([HAVE_LIBCDAUDIO], 1, HAVE_LIBCDAUDIO_DEF)
;;
*bsd*)
AC_DEFINE([DEFAULT_DEVICE], "/dev/wcd0a", DEFAULT_DEVICE_DEF)
AC_DEFINE([HAVE_CDAUDIO], 1, HAVE_CDAUDIO_DEF)
LIBS="$LIBS -L$ac_default_prefix/lib -lcdaudio"
EXTRA_CFLAGS="-I$ac_default_prefix/include"
;;
*linux*)
AC_DEFINE([DEFAULT_DEVICE], "/dev/cdrom", DEFAULT_DEVICE_DEF)
AC_CHECK_LIB(cdaudio, cd_init_device,
[LIBS="$LIBS -lcdaudio"],
[AC_MSG_ERROR([$LIBCDAUDIO_MISSING])])
AC_DEFINE([HAVE_CDAUDIO], 1, HAVE_CDAUDIO_DEF)
;;
*solaris*)
AC_DEFINE([DEFAULT_DEVICE], "/dev/c0t1d0s0", DEFAULT_DEVICE_DEF)
AC_DEFINE([HAVE_CDAUDIO], 1, HAVE_CDAUDIO_DEF)
LIBS="$LIBS -lcdaudio"
;;
esac
AC_CHECK_FUNC([vasprintf],
[AC_DEFINE([HAVE_VASPRINTF], 1,
[Define if the C library provides the `vasprintf' function.])],
[AC_MSG_NOTICE([The C library on this system doesn't have a `vasprintf'])
AC_MSG_NOTICE([function. Falling back to Glib's `g_strdup_vprintf'.])
AM_PATH_GLIB([1.1.12],,
[AC_MSG_ERROR([Your system lacks both `vasprintf' and Glib >= 1.1.12.
cdcd needs either one of them to run.
Please install Glib version 1.1.12 or higher first.])])])
AC_SUBST(EXTRA_CFLAGS)
dnl Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([string.h strings.h alloca.h])
AC_CHECK_HEADERS([errno.h locale.h malloc.h stdlib.h \
readline/readline.h readline/history.h sys/socket.h unistd.h],, \
[AC_MSG_ERROR([missing header file.])])
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_TYPE_SIZE_T
dnl Checks for library functions.
AC_FUNC_MALLOC
AC_TYPE_SIGNAL
AC_FUNC_STAT
AC_CHECK_FUNCS([setlocale strcasecmp strchr strdup strncasecmp strstr \
strtol],, [AC_MSG_ERROR([missing function.])])
AC_OUTPUT([Makefile doc/Makefile])
dnl
dnl Local Variables:
dnl mode: shell-script
dnl End:
|