packaging/libsecret.spec
[platform/upstream/libsecret.git] / configure.ac
index 4c37406..fad887a 100644 (file)
@@ -1,7 +1,29 @@
-AC_PREREQ(2.65)
-AC_CONFIG_MACRO_DIR([build/m4])
+AC_PREREQ(2.63)
+
+AC_INIT([libsecret],[0.18],
+        [http://bugzilla.gnome.org/enter_bug.cgi?product=libsecret],
+        [libsecret])
+
+dnl ****************************************************************************
+dnl Dependency versions
+
+# Required
+
+GLIB_REQ=2.38.0
+GLIB_MIN=GLIB_VERSION_2_38
+GLIB_MAX=GLIB_VERSION_2_38
+
+INTLTOOL_REQ=0.35.0
+
+# Optional
+
+VALA_WANT=0.17.2.12
+
+GCRYPT_WANT=1.2.2
+
+GTKDOC_WANT=1.9
 
-AC_INIT([libsecret],[0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=libsecret])
+GIR_WANT=1.29
 
 dnl ****************************************************************************
 dnl Library package and libtool versioning
@@ -12,7 +34,7 @@ dnl  2. If any interfaces have been added, removed, or changed since the last up
 dnl  3. If any interfaces have been added since the last public release, then increment age.
 dnl  4. If any interfaces have been removed or changed since the last public release, then set age to 0.
 
-SECRET_MAJOR=0
+SECRET_MAJOR=1
 SECRET_MINOR=0
 SECRET_MICRO=0
 
@@ -20,52 +42,84 @@ SECRET_CURRENT=0
 SECRET_REVISION=0
 SECRET_AGE=0
 
-AC_CONFIG_SRCDIR([library/secret-value.c])
-AC_CONFIG_HEADERS([config.h])
+# -----------------------------------------------------------------------------
 
-dnl Other initialization
-AM_INIT_AUTOMAKE
+AC_CONFIG_MACRO_DIR([build/m4])
+AC_CONFIG_AUX_DIR([build])
+AM_INIT_AUTOMAKE([1.11 tar-ustar foreign -Wno-portability])
+AM_SANITY_CHECK
+AC_CONFIG_HEADERS(config.h)
+AC_CONFIG_SRCDIR([libsecret/secret-value.c])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
 AM_MAINTAINER_MODE([enable])
-m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],)
-LT_INIT
 
-dnl Checks for programs.
+# -----------------------------------------------------------------------------
+# Basic tools
+
+AC_GNU_SOURCE
+AC_ISC_POSIX
 AC_PROG_CC
 AC_PROG_CPP
 AM_PROG_CC_C_O
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+AM_PROG_LIBTOOL
+IT_PROG_INTLTOOL($INTLTOOL_REQ)
+AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
 
-AC_CHECK_FUNCS(mlock)
-
-# --------------------------------------------------------------------
-# intltool
-#
-
-IT_PROG_INTLTOOL([0.35.0])
 GETTEXT_PACKAGE=libsecret
-
 AC_SUBST([GETTEXT_PACKAGE])
 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[The gettext domain name])
 AM_GLIB_GNU_GETTEXT
 
 # --------------------------------------------------------------------
+# Checks for functions
+
+AC_CHECK_FUNCS(mlock)
+
+# --------------------------------------------------------------------
 # GLib
-#
 
 PKG_CHECK_MODULES(GLIB,
-       glib-2.0 >= 2.31.0
-       gio-2.0 >= 2.31.0
+       glib-2.0 >= $GLIB_REQ
+       gio-2.0
        gio-unix-2.0)
 LIBS="$LIBS $GLIB_LIBS"
-CFLAGS="$CFLAGS $GLIB_CFLAGS"
+CFLAGS="$CFLAGS $GLIB_CFLAGS -DGLIB_VERSION_MIN_REQUIRED=$GLIB_MIN -DGLIB_VERSION_MAX_ALLOWED=$GLIB_MAX"
 
-GOBJECT_INTROSPECTION_CHECK([1.29])
+GTK_DOC_CHECK($GTKDOC_WANT)
+
+GOBJECT_INTROSPECTION_CHECK($GIR_WANT)
 AC_PATH_PROG(GLIB_MKENUMS, glib-mkenums)
 
 # --------------------------------------------------------------------
+# Manual pages
+
+AC_ARG_ENABLE(manpages,
+              AC_HELP_STRING([--disable-manpages], [Build manual pages]))
+if test "$enable_manpages" != "no"; then
+       enable_manpages="yes"
+       AC_PATH_PROG([XSLTPROC], [xsltproc])
+       if test x$XSLTPROC = x; then
+               AC_MSG_ERROR([xsltproc is required to build manual pages])
+       fi
+fi
+AM_CONDITIONAL(WITH_MANPAGES, test x$enable_manpages = xyes)
+
+# --------------------------------------------------------------------
+# Vala
+
+VAPIGEN_CHECK($VALA_WANT)
+
+if test "$enable_vala" != "no"; then
+       AC_PATH_PROG([VALAC], [valac], [])
+fi
+AM_CONDITIONAL(HAVE_VALAC, test "x$VALAC" != "x")
+
+# --------------------------------------------------------------------
 # libgcrypt
-#
 
-GCRYPT_VERSION=1.2.2
 GCRYPT_LIBVER=1
 
 AC_ARG_ENABLE(gcrypt,
@@ -74,22 +128,28 @@ AC_ARG_ENABLE(gcrypt,
               ])
 
 if test "$enable_gcrypt" != "no"; then
-       AM_PATH_LIBGCRYPT($GCRYPT_LIBVER:$GCRYPT_VERSION,,
-                         AC_MSG_ERROR([[
+
+       have_gcrypt="no"
+       m4_ifdef([AM_PATH_LIBGCRYPT],
+                [AM_PATH_LIBGCRYPT($GCRYPT_LIBVER:$GCRYPT_WANT, have_gcrypt=yes)])
+
+       if test $have_gcrypt != "yes"; then
+               AC_MSG_ERROR([[
 ***
 *** libgcrypt was not found. You may want to get it from
 *** ftp://ftp.gnupg.org/gcrypt/libgcrypt/
 ***
-                         ]]))
+               ]])
+       fi
 
        AC_DEFINE(WITH_GCRYPT, 1, [Build with libgcypt and transport encryption])
-       AC_DEFINE_UNQUOTED(LIBGCRYPT_VERSION, "$GCRYPT_VERSION",
+       AC_DEFINE_UNQUOTED(LIBGCRYPT_VERSION, "$GCRYPT_WANT",
                           [Version of GCRYPT we expect])
 
        AC_SUBST([LIBGCRYPT_CFLAGS])
        AC_SUBST([LIBGCRYPT_LIBS])
 
-       gcrypt_status=$GCRYPT_VERSION
+       gcrypt_status="yes"
        enable_gcrypt="yes"
 else
        gcrypt_status="no"
@@ -99,18 +159,13 @@ AM_CONDITIONAL(WITH_GCRYPT, test "$enable_gcrypt" = "yes")
 
 # --------------------------------------------------------------------
 # Compilation options
-#
 
-AC_ARG_ENABLE(more-warnings,
-              AS_HELP_STRING([--disable-more-warnings], [Inhibit compiler warnings]),
-              set_more_warnings=no)
-
-if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
+if test "$GCC" = "yes"; then
        CFLAGS="$CFLAGS \
-               -Wall -Wstrict-prototypes -Wmissing-declarations \
+               -Wall -Wmissing-declarations \
                -Wmissing-prototypes -Wnested-externs -Wpointer-arith \
                -Wdeclaration-after-statement -Wformat=2 -Winit-self \
-               -Waggregate-return -Wmissing-format-attribute"
+               -Waggregate-return"
 
        for option in -Wmissing-include-dirs -Wundef; do
                SAVE_CFLAGS="$CFLAGS"
@@ -133,17 +188,14 @@ AC_ARG_ENABLE(strict, [
 AC_MSG_CHECKING([build strict])
 
 if test "$enable_strict" = "yes"; then
-       CFLAGS="$CFLAGS -Werror \
-               -DGTK_DISABLE_DEPRECATED \
-               -DGDK_DISABLE_DEPRECATED \
-               -DG_DISABLE_DEPRECATED \
-               -DGDK_PIXBUF_DISABLE_DEPRECATED"
+       CFLAGS="$CFLAGS -Werror -DG_DISABLE_DEPRECATED"
        INTROSPECTION_FLAGS="--warn-error"
        TEST_MODE="thorough"
-else 
+else
+       CFLAGS="$CFLAGS -Wno-error"
        TEST_MODE="quick"
        INTROSPECTION_FLAGS=""
-       $enable_strict="no"
+       enable_strict="no"
 fi
 
 AC_MSG_RESULT($enable_strict)
@@ -166,6 +218,7 @@ if test "$enable_debug" = "yes"; then
        CFLAGS="$CFLAGS -O0"
 elif test "$enable_debug" = "no"; then
        debug_status="no"
+       CFLAGS="$CFLAGS -O2"
        AC_DEFINE_UNQUOTED(G_DISABLE_ASSERT, 1, [Disable glib assertions])
 else
        debug_status="default"
@@ -220,14 +273,10 @@ AC_SUBST(SECRET_MINOR)
 
 AC_CONFIG_FILES([
        Makefile
-       build/Makefile
-       egg/Makefile
-       egg/tests/Makefile
        po/Makefile.in
        po/Makefile
-       library/Makefile
-       library/libsecret.pc
-       library/tests/Makefile
+       libsecret/libsecret.pc
+       libsecret/libsecret-unstable.pc
 ])
 AC_OUTPUT
 
@@ -235,7 +284,9 @@ echo
 echo "CFLAGS: $CFLAGS"
 echo
 echo "OPTIONS:"
-echo "  libgcrypt:            $gcrypt_status"
-echo "  Debug:                $debug_status"
-echo "  Coverage:             $enable_coverage"
+echo "  libgcrypt:     $gcrypt_status"
+echo "  vala:          $enable_vala"
+echo "  Debug:         $debug_status"
+echo "  Coverage:      $enable_coverage"
+echo "  Manual Page:   $enable_manpages"
 echo