Code

configure.ac: prepare for 0.25
[ncmpc.git] / configure.ac
index 4e29197256965c347cd73d5e32d5f6f2a7397729..9f71835b5b572d2fc0a2bb804a0bceb9e5a29a42 100644 (file)
@@ -1,17 +1,19 @@
 AC_PREREQ(2.60)
-AC_INIT(ncmpc, 0.21~git, max@duempel.org)
+AC_INIT(ncmpc, 0.25, max@duempel.org)
 
 VERSION_MAJOR=0
-VERSION_MINOR=21
+VERSION_MINOR=25
 VERSION_REVISION=0
 VERSION_EXTRA=0
 
 AC_CONFIG_SRCDIR([src/main.c])
 AC_CONFIG_AUX_DIR(build)
-AM_INIT_AUTOMAKE([foreign 1.10 dist-bzip2 subdir-objects])
+AM_INIT_AUTOMAKE([foreign 1.11 dist-xz subdir-objects])
+AM_SILENT_RULES
 AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_MACRO_DIR([m4])
 
+
 dnl Check for programs
 AC_PROG_CC_C99
 AC_PROG_INSTALL
@@ -26,7 +28,7 @@ dnl initialize variables
 dnl =======================================================
 
 dnl i18n
-ALL_LINGUAS=`grep -v '^\#' po/LINGUAS`
+ALL_LINGUAS=`grep -v '^\#' $srcdir/po/LINGUAS`
 
 set -- $CFLAGS
 
@@ -76,6 +78,8 @@ mingw32* | windows*)
                [AC_CHECK_LIB([nsl],[gethostbyname],[LIBS="$LIBS -lnsl"],
                [AC_MSG_ERROR(No UNIX gethostbyname API found)])
                ])
+
+       HAVE_WINDOWS=0
 esac
 AM_CONDITIONAL([HAVE_WINDOWS], [test $HAVE_WINDOWS -eq 1])
 
@@ -94,14 +98,17 @@ else
        fi
 fi
 
-dnl Check for glib-2.12
-PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.12],,
-       [AC_MSG_ERROR([glib 2.12 is required])])
+dnl Check for GLib
+PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.14],,
+       [AC_MSG_ERROR([glib 2.14 is required])])
 
-dnl Check for libmpdclient 2.2
-PKG_CHECK_MODULES([LIBMPDCLIENT], [libmpdclient >= 2.2],,
+dnl Check for libmpdclient 2.3
+PKG_CHECK_MODULES([LIBMPDCLIENT], [libmpdclient >= 2.3],,
        [AC_MSG_ERROR([libmpdclient2 is required])])
 
+dnl Check for libmpdclient 2.5 (the chat screen requires this version)
+PKG_CHECK_EXISTS([libmpdclient >= 2.5],
+       [have_libmpdclient_2_5=yes], [have_libmpdclient_2_5=no])
 
 dnl i18n
 
@@ -322,7 +329,6 @@ AC_DEFINE_UNQUOTED([LYRICS_PLUGIN_DIR], ["$lyrics_plugin_dir"],
 AC_SUBST(lyrics_plugin_dir)
 
 AM_CONDITIONAL(ENABLE_PLUGIN_LIBRARY, test x$enable_lyrics_screen = xyes)
-AM_CONDITIONAL(ENABLE_SCREEN_TEXT, test x$enable_lyrics_screen = xyes)
 
 dnl Optional screen - outputs
 AC_MSG_CHECKING([whether to include the outputs screen])
@@ -345,13 +351,20 @@ AC_ARG_ENABLE([chat-screen],
               AC_HELP_STRING([--enable-chat-screen],
                [Enable chat screen @<:@default=no@:>@]),,
        [enable_chat_screen=no])
+if test "x$enable_chat_screen" = "xauto"; then
+       enable_chat_screen=$have_libmpdclient_2_5
+fi
 AC_MSG_RESULT([$enable_chat_screen])
 if test "x$enable_chat_screen" = "xyes" ; then
-    AC_DEFINE(ENABLE_CHAT_SCREEN, 1, [Enable chat screen])
+       if test "x$have_libmpdclient_2_5" = "xno"; then
+               AC_MSG_ERROR(The chat screen requires at least libmpclient 2.5)
+       fi
+       AC_DEFINE(ENABLE_CHAT_SCREEN, 1, [Enable chat screen])
 fi
-
 AM_CONDITIONAL(ENABLE_CHAT_SCREEN, test x$enable_chat_screen = xyes)
 
+AM_CONDITIONAL(ENABLE_SCREEN_TEXT,
+       test x$enable_lyrics_screen = xyes -o x$enable_chat_screen = xyes)
 
 dnl
 dnl Windows OS Resource File
@@ -381,6 +394,11 @@ AC_ARG_ENABLE(debug,
 
 if test "x$enable_debug" = xno; then
        AM_CFLAGS="$AM_CFLAGS -DNDEBUG"
+
+       AX_APPEND_COMPILE_FLAGS([-ffunction-sections])
+       AX_APPEND_COMPILE_FLAGS([-fdata-sections])
+
+       AX_APPEND_LINK_FLAGS([-Wl,--gc-sections])
 fi
 
 AC_ARG_ENABLE(test,
@@ -415,6 +433,10 @@ dnl
 
 AC_SUBST(AM_CFLAGS)
 
+AX_APPEND_COMPILE_FLAGS([-fvisibility=hidden])
+AX_APPEND_COMPILE_FLAGS([-ffast-math])
+AX_APPEND_COMPILE_FLAGS([-ftree-vectorize])
+
 AX_APPEND_COMPILE_FLAGS([-Wall])
 AX_APPEND_COMPILE_FLAGS([-Wextra])
 AX_APPEND_COMPILE_FLAGS([-Wno-deprecated-declarations])