# Filename: configure.in AC_INIT(src/drumgizmo.cc) VERSION="`cat version.h | cut -d'\"' -f2`" AM_INIT_AUTOMAKE( drumgizmo, $VERSION ) AC_PROG_CXX #AM_PROG_CC_C_O AC_PROG_LIBTOOL AM_PROG_LIBTOOL AM_CONFIG_HEADER(config.h) AC_STDC_HEADERS dnl ====================== dnl Init pkg-config dnl ====================== PKG_PROG_PKG_CONFIG(0.23) HUGIN_PARM="-DDISABLE_HUGIN" AC_ARG_WITH(debug, [ --with-debug Build with debug support]) if test x$with_debug == xyes; then AC_MSG_WARN([*** Building with debug support!]) CXXFLAGS="$CXXFLAGS -Wall -Werror -g" HUGIN_PARM="" fi CXXFLAGS="$CXXFLAGS $HUGIN_PARM" dnl ====================== dnl Compile LV2 plugin dnl ====================== AC_ARG_ENABLE([lv2], [ --enable-lv2 Compile the LV2 plugin [default=yes]],, [enable_lv2="yes"]) if test "x$enable_lv2" = "xyes"; then enable_lv2=yes dnl ====================== dnl Check for lv2core dnl ====================== PKG_CHECK_MODULES(LV2, lv2 >= 1.0) dnl ====================== dnl Check for Xlib dnl ====================== PKG_CHECK_MODULES(X11, x11 >= 1.0) else AC_MSG_RESULT([*** LV2 plugin will not be compiled ***]) enable_lv2=no fi AM_CONDITIONAL([ENABLE_LV2], [test "x$enable_lv2" = "xyes"]) #dnl ====================== #dnl Compile VST plugin #dnl ====================== #AC_ARG_ENABLE([vst], #[ --enable-vst Compile the VST plugin [default=yes]],, # [enable_vst="yes"]) #if test "x$enable_vst" = "xyes"; then # enable_vst=yes # dnl ====================== # dnl Check for vstcore # dnl ====================== # PKG_CHECK_MODULES(VST, vstcore >= 4.1) #else # AC_MSG_RESULT([*** VST plugin will not be compiled ***]) # enable_vst=no #fi #AM_CONDITIONAL([ENABLE_VST], [test "x$enable_vst" = "xyes"]) dnl ====================== dnl Compile AU plugin dnl ====================== #AC_ARG_ENABLE([au], #[ --enable-au Compile the audio units plugin [default=no]],, # [enable_au="no"]) #if test "x$enable_au" = "xyes"; then # enable_au=yes #else # AC_MSG_RESULT([*** Audio Units plugin will not be compiled ***]) # enable_au=no #fi #AM_CONDITIONAL([ENABLE_AU], [test "x$enable_au" = "xyes"]) dnl ====================== dnl Compile cli client dnl ====================== AC_ARG_ENABLE([cli], [ --enable-cli Compile the command line interface [default=yes]],, [enable_cli="yes"]) if test "x$enable_cli" = "xyes"; then enable_cli=yes dnl ====================== dnl Check for getopt dnl ====================== AC_HAVE_HEADERS(getopt.h) dnl *** dnl *** Input plugins dnl *** dnl *** Dummy AC_ARG_ENABLE([input_dummy], [ --disable-input-dummy Disable input dummy plugin [default=enabled]],, [enable_input_dummy="yes"]) if test "x$enable_input_dummy" = "xyes"; then have_input_dummy=yes else AC_MSG_RESULT([*** input dummy plugin disabled per user request ***]) have_input_dummy=no fi dnl *** Test AC_ARG_ENABLE([input_test], [ --disable-input-test Disable input test plugin [default=enabled]],, [enable_input_test="yes"]) if test "x$enable_input_test" = "xyes"; then have_input_test=yes else AC_MSG_RESULT([*** input test plugin disabled per user request ***]) have_input_test=no fi dnl *** Jackmidi AC_ARG_ENABLE([input_jackmidi], [ --disable-input-jackmidi Disable input jackmidi plugin [default=enabled]],, [enable_input_jackmidi="yes"]) if test "x$enable_input_jackmidi" = "xyes"; then have_input_jackmidi=yes dnl ====================== dnl Check for jack dnl ====================== PKG_CHECK_MODULES(JACK, jack >= 0.120.1) else AC_MSG_RESULT([*** input jackmidi plugin disabled per user request ***]) have_input_jackmidi=no fi dnl *** Midifile AC_ARG_ENABLE([input_midifile], [ --disable-input-midifile Disable input midifile plugin [default=enabled]],, [enable_input_midifile="yes"]) if test "x$enable_input_midifile" = "xyes"; then have_input_midifile=yes dnl ====================== dnl Check for libsmf dnl ====================== PKG_CHECK_MODULES(SMF, smf >= 1.2) else AC_MSG_RESULT([*** input midifile plugin disabled per user request ***]) have_input_midifile=no fi INPUT_PLUGINS="midifile jackmidi dummy test" AC_SUBST(INPUT_PLUGINS) dnl *** dnl *** Output plugins dnl *** dnl *** dummy AC_ARG_ENABLE([output_dummy], [ --disable-output-dummy Disable output dummy plugin [default=enabled]],, [enable_output_dummy="yes"]) if test "x$enable_output_dummy" = "xyes"; then have_output_dummy=yes else AC_MSG_RESULT([*** output dummy plugin disabled per user request ***]) have_output_dummy=no fi dnl *** alsa AC_ARG_ENABLE([output_alsa], [ --disable-output-alsa Disable output alsa plugin [default=enabled]],, [enable_output_alsa="yes"]) if test "x$enable_output_alsa" = "xyes"; then have_output_alsa=yes dnl ====================== dnl Check for alsa library dnl ====================== PKG_CHECK_MODULES(ALSA, alsa >= 1.0.18) else AC_MSG_RESULT([*** output alsa plugin disabled per user request ***]) have_output_alsa=no fi dnl *** wavfile AC_ARG_ENABLE([output_wavfile], [ --disable-output-wavfile Disable output wavfile plugin [default=enabled]],, [enable_output_wavfile="yes"]) if test "x$enable_output_wavfile" = "xyes"; then have_output_wavfile=yes else AC_MSG_RESULT([*** output wavfile plugin disabled per user request ***]) have_output_wavfile=no fi OUTPUT_PLUGINS="dummy alsa wavfile" AC_SUBST(OUTPUT_PLUGINS) dnl dnl Setup plugin paths dnl dgplugindir=${libdir}/drumgizmo AC_SUBST([dgplugindir]) INPUT_PLUGIN_DIR=${dgplugindir}/input OUTPUT_PLUGIN_DIR=${dgplugindir}/output AC_SUBST([INPUT_PLUGIN_DIR]) AC_SUBST([OUTPUT_PLUGIN_DIR]) AC_DEFINE_UNQUOTED(INPUT_PLUGIN_DIR, "${prefix}/lib/drumgizmo/input", [Input plugin dir]) AC_DEFINE_UNQUOTED(OUTPUT_PLUGIN_DIR, "${prefix}/lib/drumgizmo/output", [Output plugin dir]) else AC_MSG_RESULT([*** Command line interface disabled per user request ***]) enable_cli=no fi AM_CONDITIONAL([ENABLE_CLI], [test "x$enable_cli" == "xyes"]) AM_CONDITIONAL([HAVE_INPUT_DUMMY], [test "x$have_input_dummy" = "xyes"]) AM_CONDITIONAL([HAVE_INPUT_TEST], [test "x$have_input_test" = "xyes"]) AM_CONDITIONAL([HAVE_INPUT_JACKMIDI], [test "x$have_input_jackmidi" = "xyes"]) AM_CONDITIONAL([HAVE_INPUT_MIDIFILE], [test "x$have_input_midifile" = "xyes"]) AM_CONDITIONAL([HAVE_OUTPUT_DUMMY], [test "x$have_output_dummy" = "xyes"]) AM_CONDITIONAL([HAVE_OUTPUT_ALSA], [test "x$have_output_alsa" = "xyes"]) AM_CONDITIONAL([HAVE_OUTPUT_WAVFILE], [test "x$have_output_wavfile" = "xyes"]) AC_ARG_ENABLE([editor], [ --disable-editor Disable Qt editor [default=enabled]],, [enable_editor="yes"]) if test "x$enable_editor" = "xyes"; then have_editor=yes dnl ====================== dnl Check for Qt dnl ====================== PKG_CHECK_MODULES(QT, QtCore QtGui QtXml >= 4.5) AC_CHECK_PROGS(QT_MOC, [moc4 moc-qt4 moc], []) AC_CHECK_PROGS(QT_RCC, [rcc4 rcc-qt4 rcc], []) AC_CHECK_PROGS(QT_UIC, [uic4 uic-qt4 uic], []) if (test "$QT_MOC" = ""); then AC_MSG_ERROR([QT4 moc is required.]) fi if (test "$QT_RCC" = ""); then AC_MSG_ERROR([QT4 rcc is required.]) fi if (test "$QT_UIC" = ""); then AC_MSG_ERROR([QT4 uic is required.]) fi dnl ====================== dnl Check for libao dnl ====================== PKG_CHECK_MODULES(AO, ao >= 1.1.0) else AC_MSG_RESULT([*** Qt Drumkit Editor disabled per user request ***]) have_editor=no fi AM_CONDITIONAL([HAVE_EDITOR], [test "x$have_editor" = "xyes"]) dnl ====================== dnl Check for sndfile dnl ====================== PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.21) dnl ====================== dnl Check for sndfile dnl ====================== PKG_CHECK_MODULES(PNG, libpng >= 1.2) dnl ====================== dnl Check for the pthread library dnl ====================== tmp_CXXFLAGS="$CXXFLAGS" tmp_CPPFLAGS="$CPPFLAGS" tmp_CFLAGS="$CFLAGS" tmp_LDFLAGS="$LDFLAGS" tmp_LIBS="$LIBS" CXXFLAGS="" CPPFLAGS="" CFLAGS="" LDFLAGS="" LIBS="" AC_CHECK_HEADER(pthread.h, , AC_MSG_ERROR([*** pthread header file not found!])) AC_CHECK_LIB(pthread, pthread_mutex_init, , AC_MSG_ERROR([*** pthread library not found!])) PTHREAD_CFLAGS="$CXXFLAGS $CPPFLAGS $CFLAGS" PTHREAD_LIBS="$LDFLAGS $LIBS" CXXFLAGS="$tmp_CXXFLAGS" CPPFLAGS="$tmp_CPPFLAGS" CFLAGS="$tmp_CFLAGS" LDFLAGS="$tmp_LDFLAGS" LIBS="$tmp_LIBS" AC_SUBST(PTHREAD_CFLAGS) AC_SUBST(PTHREAD_LIBS) dnl ====================== dnl Check for eXpat library dnl ====================== tmp_CXXFLAGS="$CXXFLAGS" tmp_CPPFLAGS="$CPPFLAGS" tmp_CFLAGS="$CFLAGS" tmp_LDFLAGS="$LDFLAGS" tmp_LIBS="$LIBS" CXXFLAGS="" CPPFLAGS="" CFLAGS="" LDFLAGS="" LIBS="" AC_CHECK_HEADER(expat.h, , AC_MSG_ERROR([*** eXpat header file not found!])) AC_CHECK_LIB(expat, XML_ParserCreate, , AC_MSG_ERROR([*** eXpat library not found!])) EXPAT_CFLAGS="$CXXFLAGS $CPPFLAGS $CFLAGS" EXPAT_LIBS="$LDFLAGS $LIBS" CXXFLAGS="$tmp_CXXFLAGS" CPPFLAGS="$tmp_CPPFLAGS" CFLAGS="$tmp_CFLAGS" LDFLAGS="$tmp_LDFLAGS" LIBS="$tmp_LIBS" AC_SUBST(EXPAT_CFLAGS) AC_SUBST(EXPAT_LIBS) AC_SUBST(CFLAGS) AC_SUBST(CPPFLAGS) AC_SUBST(CXXFLAGS) AC_SUBST(LDFLAGS) # au/Makefile AC_OUTPUT( Makefile tools/Makefile src/Makefile vst/Makefile lv2/Makefile plugingui/Makefile include/Makefile drumgizmo/Makefile drumgizmo/input/Makefile drumgizmo/input/dummy/Makefile drumgizmo/input/test/Makefile drumgizmo/input/jackmidi/Makefile drumgizmo/input/midifile/Makefile drumgizmo/output/Makefile drumgizmo/output/dummy/Makefile drumgizmo/output/alsa/Makefile drumgizmo/output/wavfile/Makefile dgedit/Makefile)