# Process this file with autoconf to produce a configure script.
#
# This file is part of DisOrder.
-# Copyright (C) 2004, 2005, 2006 Richard Kettlewell
+# Copyright (C) 2004, 2005, 2006, 2007 Richard Kettlewell
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
AC_CONFIG_SRCDIR([server/disorderd.c])
AM_CONFIG_HEADER([config.h])
+# Find host type
+AC_CANONICAL_HOST
+
# What we want to build
want_server=yes
want_gtk=yes
want_python=yes
+case "$host" in
+*linux* | *Linux* )
+ want_speaker=yes
+ ;;
+* )
+ want_speaker=no
+ ;;
+esac
+
# Checks for programs.
AC_PROG_CC
AC_SET_MAKE
AC_CHECK_LIB([ao], [ao_initialize],
[AC_SUBST(LIBAO,[-lao])],
[missing_libraries="$missing_libraries libao"])
- AC_CHECK_LIB([asound], [snd_pcm_open],
- [AC_SUBST(LIBASOUND,[-lasound])],
- [missing_libraries="$missing_libraries libasound"])
+ if test $want_speaker = yes; then
+ case "$host" in
+ *linux* | *Linux* )
+ AC_CHECK_LIB([asound], [snd_pcm_open],
+ [AC_SUBST(LIBASOUND,[-lasound])],
+ [missing_libraries="$missing_libraries libasound"])
+ AC_DEFINE([BUILD_SPEAKER],[disorder-speaker],[define to build the speaker subprocess])
+ ;;
+ * )
+ AC_MSG_ERROR([want to build speaker for unknown sound API])
+ ;;
+ esac
+ fi
fi
if test $want_gtk = yes; then
/*
* This file is part of DisOrder
- * Copyright (C) 2005, 2006 Richard Kettlewell
+ * Copyright (C) 2005, 2006, 2007 Richard Kettlewell
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#include <assert.h>
#include <sys/select.h>
#include <time.h>
-#include <alsa/asoundlib.h>
#include "configuration.h"
#include "syscalls.h"
#include "speaker.h"
#include "user.h"
+#if BUILD_SPEAKER
+#include <alsa/asoundlib.h>
+
#define BUFFER_SECONDS 5 /* How many seconds of input to
* buffer. */
info("stopped (parent terminated)");
exit(0);
}
+#else
+int main(int attribute((unused)) argc, char **argv) {
+ set_progname(argv);
+ mem_init(0);
+ fatal(0, "disorder-speaker not supported on this platform");
+}
+#endif
/*
Local Variables: