Simpler way to use custom service/collection/item types
[platform/upstream/libsecret.git] / configure.ac
index b20e5f5..cefc69e 100644 (file)
-AC_PREREQ(2.65)
-AC_CONFIG_MACRO_DIR([build/m4])
+AC_PREREQ(2.63)
+
+AC_INIT([libsecret],[0.15],
+        [http://bugzilla.gnome.org/enter_bug.cgi?product=libsecret],
+        [libsecret])
+
+dnl ****************************************************************************
+dnl Library package and libtool versioning
+dnl
+dnl Updating the libtool versions, follow these instructions sequentially:
+dnl  1. If the library source code has changed at all since the last update, then increment revision (‘c:r:a’ becomes ‘c:r+1:a’).
+dnl  2. If any interfaces have been added, removed, or changed since the last update, increment current, and set revision to 0.
+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.
 
-AC_INIT([gsecret],[0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=gsecret])
+SECRET_MAJOR=1
+SECRET_MINOR=0
+SECRET_MICRO=0
 
-AC_CONFIG_SRCDIR([library/gsecret-value.c])
-AC_CONFIG_HEADERS([config.h])
+SECRET_CURRENT=0
+SECRET_REVISION=0
+SECRET_AGE=0
 
-dnl Other initialization
-AM_INIT_AUTOMAKE
+# -----------------------------------------------------------------------------
+
+AC_CONFIG_MACRO_DIR([build/m4])
+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_CHECK_FUNCS(mlock)
-
-# --------------------------------------------------------------------
-# intltool
-#
-
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+AM_PROG_LIBTOOL
 IT_PROG_INTLTOOL([0.35.0])
-GETTEXT_PACKAGE=gsecret
+AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
 
+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 >= 2.32.0
+       gio-2.0 >= 2.32.0
        gio-unix-2.0)
 LIBS="$LIBS $GLIB_LIBS"
 CFLAGS="$CFLAGS $GLIB_CFLAGS"
 
+GTK_DOC_CHECK(1.9)
+
+GOBJECT_INTROSPECTION_CHECK([1.29])
 AC_PATH_PROG(GLIB_MKENUMS, glib-mkenums)
 
 # --------------------------------------------------------------------
+# Manual pages
+
+AC_ARG_ENABLE(manpages,
+              AC_HELP_STRING([--disable-man-pages], [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
+
+VALA_REQUIRED=0.17.2.12
+
+VAPIGEN_CHECK($VALA_REQUIRED)
+
+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
@@ -56,13 +109,19 @@ 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_VERSION, 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",
@@ -81,18 +140,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"
@@ -120,13 +174,17 @@ if test "$enable_strict" = "yes"; then
                -DGDK_DISABLE_DEPRECATED \
                -DG_DISABLE_DEPRECATED \
                -DGDK_PIXBUF_DISABLE_DEPRECATED"
+       INTROSPECTION_FLAGS="--warn-error"
        TEST_MODE="thorough"
-else 
+else
+       CFLAGS="$CFLAGS -Wno-error"
        TEST_MODE="quick"
-       $enable_strict="no"
+       INTROSPECTION_FLAGS=""
+       enable_strict="no"
 fi
 
 AC_MSG_RESULT($enable_strict)
+AC_SUBST(INTROSPECTION_FLAGS)
 AC_SUBST(TEST_MODE)
 
 AC_MSG_CHECKING([for debug mode])
@@ -145,6 +203,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"
@@ -192,15 +251,29 @@ AC_SUBST(GENHTML)
 # Results
 #
 
+SECRET_LT_RELEASE=$SECRET_CURRENT:$SECRET_REVISION:$SECRET_AGE
+AC_SUBST(SECRET_LT_RELEASE)
+AC_SUBST(SECRET_MAJOR)
+AC_SUBST(SECRET_MINOR)
+
 AC_CONFIG_FILES([
        Makefile
        build/Makefile
+       docs/Makefile
+       docs/man/Makefile
+       docs/reference/Makefile
+       docs/reference/libsecret/Makefile
+       docs/reference/libsecret/version.xml
+       docs/reference/libsecret/version-major.xml
        egg/Makefile
        egg/tests/Makefile
        po/Makefile.in
        po/Makefile
-       library/Makefile
-       library/tests/Makefile
+       libsecret/Makefile
+       libsecret/libsecret.pc
+       libsecret/libsecret-unstable.pc
+       libsecret/tests/Makefile
+       tool/Makefile
 ])
 AC_OUTPUT
 
@@ -208,7 +281,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