diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 204 |
1 files changed, 204 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..9180756 --- /dev/null +++ b/configure.ac @@ -0,0 +1,204 @@ +# Filename: configure.in +AC_INIT(src/miav.cc) +AM_INIT_AUTOMAKE( miav, 0.4.0 ) + +AC_PROG_CXX + +AC_PROG_LIBTOOL +AM_PROG_LIBTOOL + +AM_CONFIG_HEADER(config.h) +AC_STDC_HEADERS + +#################### +# Setup debug flags +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 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector -Wall -Werror -g" + AC_DEFINE_UNQUOTED(WITH_DEBUG, , + [The project is configured to use debug output]) +fi + +dnl ====================== +dnl Init pkg-config +dnl ====================== +PKG_PROG_PKG_CONFIG(0.23) + +AC_ARG_WITH(client, [ --without-client build without client support]) +if test x$with_client != xno && test -z "$CLIENT"; then + dnl ====================== + dnl Check for Qt + dnl ====================== + PKG_CHECK_MODULES(QT, QtCore QtGui QtNetwork >= 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 SDL library + dnl ===================== + SDL_VERSION=1.2.0 + AM_PATH_SDL($SDL_VERSION,:,AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])) + AC_SUBST(SDL_CFLAGS) + AC_SUBST(SDL_LIBS) + + dnl ====================== + dnl Check for iec61883 library + dnl ====================== + PKG_CHECK_MODULES(IEC61883, libiec61883 >= 1.2) + + dnl ====================== + dnl Check for dv library + dnl ====================== + PKG_CHECK_MODULES(DV, libdv >= 1.0) +else + AC_MSG_WARN([*** Building without client support!]) +fi + +AC_ARG_WITH(server, [ --without-server build without server support]) +if test x$with_server != xno && test -z "$SERVER"; then + dnl ====================== + dnl Check for 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 headers not found!])) + AC_CHECK_LIB(pthread, sem_init, , AC_MSG_ERROR([*** libpthread 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 dv library + dnl ====================== + PKG_CHECK_MODULES(DV, libdv >= 1.0) + + dnl ====================== + dnl Check for Jpeg 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(jpeglib.h, , AC_MSG_ERROR([*** libJpeg not found!])) + AC_CHECK_LIB(jpeg, jpeg_start_compress, , AC_MSG_ERROR([*** libJpeg not found!])) + JPEG_CFLAGS="$CXXFLAGS $CPPFLAGS $CFLAGS" + JPEG_LIBS="$LDFLAGS $LIBS" + CXXFLAGS="$tmp_CXXFLAGS" + CPPFLAGS="$tmp_CPPFLAGS" + CFLAGS="$tmp_CFLAGS" + LDFLAGS="$tmp_LDFLAGS" + LIBS="$tmp_LIBS" + AC_SUBST(JPEG_CFLAGS) + AC_SUBST(JPEG_LIBS) + + dnl ====================== + dnl Check for Fame 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(fame.h, , AC_MSG_ERROR([*** libFAME include files not found!])) + AC_CHECK_LIB(fame, fame_init, , AC_MSG_ERROR([*** libFAME not found!])) + FAME_CFLAGS="$CXXFLAGS $CPPFLAGS $CFLAGS" + FAME_LIBS="$LDFLAGS $LIBS" + CXXFLAGS="$tmp_CXXFLAGS" + CPPFLAGS="$tmp_CPPFLAGS" + CFLAGS="$tmp_CFLAGS" + LDFLAGS="$tmp_LDFLAGS" + LIBS="$tmp_LIBS" + AC_SUBST(FAME_CFLAGS) + AC_SUBST(FAME_LIBS) + + dnl ====================== + dnl Check for Lame 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(lame/lame.h, , AC_MSG_ERROR([*** libLAME (libmp3lame) include files not found!])) + AC_CHECK_LIB(mp3lame, lame_init, , AC_MSG_ERROR([*** libLAME (libmp3lame) not found!])) + LAME_CFLAGS="$CXXFLAGS $CPPFLAGS $CFLAGS" + LAME_LIBS="$LDFLAGS $LIBS" + CXXFLAGS="$tmp_CXXFLAGS" + CPPFLAGS="$tmp_CPPFLAGS" + CFLAGS="$tmp_CFLAGS" + LDFLAGS="$tmp_LDFLAGS" + LIBS="$tmp_LIBS" + AC_SUBST(LAME_CFLAGS) + AC_SUBST(LAME_LIBS) +else + AC_MSG_WARN([*** Building without server support!]) +fi + + +################################## +# Check if tests should be built. +AC_ARG_WITH(test, + [ --with-test build tests (default=no)], + [], + [with_test=no]) +if test x$with_test == xyes; then + AM_PATH_CPPUNIT(1.9.6) + AC_CONFIG_FILES(test/Makefile) +fi + +AC_SUBST(CFLAGS) +AC_SUBST(CPPFLAGS) +AC_SUBST(CXXFLAGS) +AC_SUBST(LDFLAGS) + +AM_CONDITIONAL([WITH_CLIENT], [test "x$with_client" = "xyes"]) +AM_CONDITIONAL([WITH_SERVER], [test "x$with_server" = "xyes"]) + +AC_OUTPUT( + Makefile + src/Makefile + tools/Makefile + etc/Makefile + pixmaps/Makefile + man/Makefile) |