dnl Process this file with autoconf to produce a configure script. AC_INIT(jackd/jackd.c) AC_CONFIG_AUX_DIR(.) JACK_MAJOR_VERSION=0 JACK_MINOR_VERSION=33 JACK_MICRO_VERSION=2 BETA= AC_SUBST(JACK_MAJOR_VERSION) AC_SUBST(JACK_MINOR_VERSION) AC_SUBST(JACK_MICRO_VERSION) JACK_SO_VERSION=${JACK_MAJOR_VERSION}:${JACK_MINOR_VERSION}:${JACK_MICRO_VERSION}${BETA} JACK_VERSION=$JACK_MAJOR_VERSION.$JACK_MINOR_VERSION.${JACK_MICRO_VERSION}${BETA} JACK_RELEASE=$JACK_MAJOR_VERSION-$JACK_MINOR_VERSION-${JACK_MICRO_VERSION}${BETA} AC_SUBST(JACK_SO_VERSION) AC_SUBST(JACK_VERSION) AC_SUBST(JACK_RELEASE) AM_INIT_AUTOMAKE(jack-audio-connection-kit,${JACK_VERSION}) AC_PROG_CC AC_PROG_CXX AC_PROG_LD AM_PROG_LIBTOOL JACK_CFLAGS='-I$(top_srcdir) -DADDON_DIR=\"$(ADDON_DIR)\" -g -Wall -D_REENTRANT' JACK_OPT_CFLAGS='-I$(top_srcdir) -DADDON_DIR=\"$(ADDON_DIR)\" -D_REENTRANT -O6 -Wall -fomit-frame-pointer -ffast-math -fstrength-reduce -funroll-loops -fmove-all-movables' AC_ARG_ENABLE(optimize, [ --enable-optimize ask the compiler for its best optimizations], [ if test "x$enable_optimize" != "xno" ; then JACK_CFLAGS="$JACK_OPT_CFLAGS" ; fi ]) USE_CAPABILITIES=false AC_ARG_ENABLE(capabilities, [ --enable-capabilities use libcap to gain realtime scheduling priviledges], [ if test "x$enable_capabilities" != "xno" ; then AC_CHECK_LIB(cap, capgetp, [AC_CHECK_HEADER(sys/capability.h, [HAVE_CAPABILITIES=true], [AC_MSG_WARN([*** no kernel support for capabilities]) HAVE_CAPABILITIES=false] )], [AC_MSG_WARN([*** no libcap present]) HAVE_CAPABILITIES=false] ) if test "x$HAVE_CAPABILITIES" = "xtrue"; then AC_CHECK_PROG(HAVE_CAPABILITIES, md5sum, true, false) fi if test "x$HAVE_CAPABILITIES" = "xfalse"; then AC_MSG_WARN([*** required program md5sum not found]) fi if test "x$HAVE_CAPABILITIES" = "xfalse"; then AC_MSG_ERROR([*** Capabilities support not present. Run configure again without --enable-capabilities.]) fi USE_CAPABILITIES=true JACK_CFLAGS="$JACK_CFLAGS -DUSE_CAPABILITIES" fi ] ) AC_SUBST(JACK_CFLAGS) STRIPPED_JACKD=false AC_ARG_ENABLE(stripped-jackd, [ --enable-stripped-jackd strip jack before computing its md5 sum ], [ if test "x$USE_CAPABILITIES" != "xtrue" ; then AC_MSG_WARN([*** capabilities not enabled, stripped jackd has no effect]) elif test "x$enable_stripped_jackd" != "xno"; then STRIPPED_JACKD=true fi ] ) # plugins (just jack_alsa.so at the moment) go in the addon dir. ADDON_DIR=${libdir}/jack AC_SUBST(ADDON_DIR) AC_ARG_WITH(html-dir, [ --with-html-dir=PATH where to install the html documentation]) if test "x$with_html_dir" = "x" ; then HTML_DIR='${datadir}/gtk-doc/html' else HTML_DIR=$with_html_dir fi AC_SUBST(HTML_DIR) # jack depends on alsa 0.9 and glib. some example apps depend on libsndfile and fltk. AM_PATH_GLIB(1.0.0, [:], [AC_MSG_ERROR([*** JACK requires GLib, but it does not appear to be installed])] ) AC_CHECK_LIB(asound,snd_pcm_drop, [:], [AC_MSG_ERROR([*** JACK currently requires ALSA (0.9.X) which you don't appear to have])], [-lm] ) AC_LANG_SAVE AC_LANG_CPLUSPLUS AC_CHECK_LIB(fltk,main, [AC_CHECK_HEADER(FL/Fl.H, [HAVE_FLTK=true], [HAVE_FLTK=false] )], [HAVE_FLTK=false], [-L/usr/X11R6/lib -lX11 -lXext] ) AC_LANG_RESTORE if test $HAVE_FLTK = "false"; then AC_MSG_WARN([*** no fltk found, the fltk example client will not be built]) fi AC_CHECK_LIB(sndfile,main, [AC_CHECK_HEADER(sndfile.h, [HAVE_SNDFILE=true], [HAVE_SNDFILE=false] )], [HAVE_SNDFILE=false] ) if test $HAVE_SNDFILE = "false"; then AC_MSG_WARN([*** no libsndfile found, the jackrec example client will not be built]) fi # you need doxygen to make dist. AC_CHECK_PROG(HAVE_DOXYGEN, doxygen, true, false) if test $HAVE_DOXYGEN = "false"; then AC_MSG_WARN([*** doxygen not found, docs will not be built]) fi AM_CONDITIONAL(HAVE_FLTK, $HAVE_FLTK) AM_CONDITIONAL(HAVE_SNDFILE, $HAVE_SNDFILE) AM_CONDITIONAL(HAVE_DOXYGEN, $HAVE_DOXYGEN) AM_CONDITIONAL(USE_CAPABILITIES, $USE_CAPABILITIES) AM_CONDITIONAL(STRIPPED_JACKD, $STRIPPED_JACKD) AC_OUTPUT( Makefile jack.pc jack.spec jack/Makefile jackd/Makefile libjack/Makefile drivers/Makefile drivers/alsa/Makefile example-clients/Makefile doc/Makefile doc/reference.doxygen )