2014-12-17 13:05:44 +00:00
|
|
|
AC_PREREQ([2.63])
|
|
|
|
|
2015-11-26 22:07:05 +00:00
|
|
|
# Making releases:
|
2016-05-06 14:37:47 +00:00
|
|
|
# FLATPAK_MICRO_VERSION += 1;
|
|
|
|
# FLATPAK_INTERFACE_AGE += 1;
|
|
|
|
# FLATPAK_BINARY_AGE += 1;
|
|
|
|
# if any functions have been added, set FLATPAK_INTERFACE_AGE to 0.
|
2015-11-26 22:07:05 +00:00
|
|
|
# if backwards compatibility has been broken,
|
2016-05-06 14:37:47 +00:00
|
|
|
# set FLATPAK_BINARY_AGE and FLATPAK_INTERFACE_AGE to 0.
|
2015-12-16 12:18:28 +00:00
|
|
|
#
|
|
|
|
# in easier to understand terms:
|
|
|
|
#
|
|
|
|
# on the stable branch, interface age == micro
|
|
|
|
# on the unstable (ie master), interface age = 0
|
2015-11-26 22:07:05 +00:00
|
|
|
|
2016-05-06 14:37:47 +00:00
|
|
|
m4_define([flatpak_major_version], [0])
|
2017-01-18 16:06:42 +00:00
|
|
|
m4_define([flatpak_minor_version], [9])
|
2017-06-30 20:56:59 +00:00
|
|
|
m4_define([flatpak_micro_version], [7])
|
|
|
|
m4_define([flatpak_interface_age], [7])
|
2016-05-06 14:37:47 +00:00
|
|
|
m4_define([flatpak_binary_age],
|
|
|
|
[m4_eval(10000 * flatpak_major_version + 100 * flatpak_minor_version + flatpak_micro_version)])
|
|
|
|
m4_define([flatpak_version],
|
|
|
|
[flatpak_major_version.flatpak_minor_version.flatpak_micro_version])
|
2015-11-26 22:07:05 +00:00
|
|
|
|
2016-05-31 08:47:04 +00:00
|
|
|
AC_INIT([Flatpak],
|
|
|
|
[flatpak_version],
|
|
|
|
[https://github.com/flatpak/flatpak/issues],
|
|
|
|
[flatpak],
|
|
|
|
[http://flatpak.org/])
|
2014-12-17 13:05:44 +00:00
|
|
|
|
2017-03-15 08:44:28 +00:00
|
|
|
GLIB_REQS=2.44
|
2017-05-04 08:40:29 +00:00
|
|
|
SYSTEM_BWRAP_REQS=0.1.8
|
2017-08-15 16:26:04 +00:00
|
|
|
OSTREE_REQS=2017.10
|
2016-07-04 21:40:14 +00:00
|
|
|
|
2015-03-20 15:21:19 +00:00
|
|
|
AC_USE_SYSTEM_EXTENSIONS
|
2017-06-30 12:51:18 +00:00
|
|
|
AC_SYS_LARGEFILE
|
2015-03-20 15:21:19 +00:00
|
|
|
|
2014-12-17 13:05:44 +00:00
|
|
|
AC_PROG_CC
|
|
|
|
AM_PROG_CC_C_O
|
|
|
|
AC_DISABLE_STATIC
|
|
|
|
|
|
|
|
LT_PREREQ([2.2.6])
|
|
|
|
LT_INIT([disable-static])
|
|
|
|
|
2016-05-06 16:03:47 +00:00
|
|
|
AC_CONFIG_SRCDIR([common/flatpak-dir.c])
|
2014-12-17 13:05:44 +00:00
|
|
|
AC_CONFIG_HEADERS([config.h])
|
|
|
|
AC_CONFIG_MACRO_DIR([m4])
|
2017-03-15 08:54:37 +00:00
|
|
|
AM_INIT_AUTOMAKE([1.13.4 no-define no-dist-gzip dist-xz tar-ustar foreign subdir-objects])
|
2015-01-27 20:59:16 +00:00
|
|
|
AC_PROG_SED
|
2014-12-17 13:05:44 +00:00
|
|
|
|
2016-07-15 14:37:58 +00:00
|
|
|
AM_GNU_GETTEXT([external])
|
2016-07-15 16:54:41 +00:00
|
|
|
AM_GNU_GETTEXT_VERSION([0.18.2])
|
2016-07-15 14:37:58 +00:00
|
|
|
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$PACKAGE", [gettext domain])
|
2016-04-25 15:25:41 +00:00
|
|
|
|
2014-12-17 13:05:44 +00:00
|
|
|
# Enable silent rules is available
|
|
|
|
AM_SILENT_RULES([yes])
|
|
|
|
AM_MAINTAINER_MODE([enable])
|
|
|
|
|
2017-03-22 18:50:48 +00:00
|
|
|
dnl This list is shared with https://github.com/ostreedev/ostree
|
|
|
|
CC_CHECK_FLAGS_APPEND([WARN_CFLAGS], [CFLAGS], [\
|
|
|
|
-pipe \
|
|
|
|
-Wall \
|
|
|
|
-Werror=empty-body \
|
|
|
|
-Werror=strict-prototypes \
|
|
|
|
-Werror=missing-prototypes \
|
|
|
|
-Werror=implicit-function-declaration \
|
|
|
|
"-Werror=format=2 -Werror=format-security -Werror=format-nonliteral" \
|
|
|
|
-Werror=pointer-arith -Werror=init-self \
|
|
|
|
-Werror=missing-declarations \
|
|
|
|
-Werror=return-type \
|
|
|
|
-Werror=overflow \
|
|
|
|
-Werror=int-conversion \
|
|
|
|
-Werror=parenthesis \
|
|
|
|
-Werror=incompatible-pointer-types \
|
|
|
|
-Werror=misleading-indentation \
|
2017-03-27 10:44:54 +00:00
|
|
|
-Werror=missing-include-dirs \
|
2017-03-22 18:50:48 +00:00
|
|
|
])
|
|
|
|
AC_SUBST(WARN_CFLAGS)
|
2014-12-17 13:05:44 +00:00
|
|
|
|
2015-09-07 08:26:56 +00:00
|
|
|
AX_VALGRIND_CHECK
|
|
|
|
|
2015-01-27 20:59:16 +00:00
|
|
|
PKG_PROG_PKG_CONFIG([0.24])
|
|
|
|
|
2016-05-24 08:09:20 +00:00
|
|
|
AC_ARG_WITH(privileged_group,
|
|
|
|
AS_HELP_STRING([--with-privileged-group=GROUP],[Name of privileged group, [default=wheel]]),
|
|
|
|
with_privileged_group="$withval", with_privileged_group=wheel)
|
|
|
|
PRIVILEGED_GROUP=$with_privileged_group
|
|
|
|
AC_SUBST(PRIVILEGED_GROUP)
|
|
|
|
|
2015-01-27 20:59:16 +00:00
|
|
|
AC_ARG_WITH(dbus_service_dir,
|
|
|
|
AS_HELP_STRING([--with-dbus-service-dir=PATH],[choose directory for dbus service files, [default=PREFIX/share/dbus-1/services]]),
|
|
|
|
with_dbus_service_dir="$withval", with_dbus_service_dir=$datadir/dbus-1/services)
|
|
|
|
DBUS_SERVICE_DIR=$with_dbus_service_dir
|
|
|
|
AC_SUBST(DBUS_SERVICE_DIR)
|
|
|
|
|
2017-01-18 22:25:46 +00:00
|
|
|
AC_ARG_WITH(dbus_config_dir,
|
|
|
|
AS_HELP_STRING([--with-dbus-config-dir=PATH],[choose directory for dbus config files, [default=SYSCONFDIR/dbus-1/system.d]]),
|
|
|
|
with_dbus_config_dir="$withval", with_dbus_config_dir=${sysconfdir}/dbus-1/system.d)
|
|
|
|
DBUS_CONFIG_DIR=$with_dbus_config_dir
|
|
|
|
AC_SUBST(DBUS_CONFIG_DIR)
|
|
|
|
|
2016-01-28 14:22:18 +00:00
|
|
|
AC_ARG_WITH([systemduserunitdir],
|
|
|
|
[AS_HELP_STRING([--with-systemduserunitdir=DIR],
|
|
|
|
[Directory for systemd user service files (default=PREFIX/lib/systemd/user)])],
|
|
|
|
[],
|
|
|
|
dnl This is deliberately not ${libdir}: systemd units always go in
|
|
|
|
dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu
|
|
|
|
[with_systemduserunitdir='${prefix}/lib/systemd/user'])
|
|
|
|
AC_SUBST([systemduserunitdir], [$with_systemduserunitdir])
|
2015-03-06 10:26:07 +00:00
|
|
|
|
2016-04-22 09:08:30 +00:00
|
|
|
AC_ARG_WITH([systemdsystemunitdir],
|
|
|
|
[AS_HELP_STRING([--with-systemdsystemunitdir=DIR],
|
|
|
|
[Directory for systemd system service files (default=PREFIX/lib/systemd/system)])],
|
|
|
|
[],
|
|
|
|
dnl This is deliberately not ${libdir}: systemd units always go in
|
|
|
|
dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu
|
|
|
|
[with_systemdsystemunitdir='${prefix}/lib/systemd/system'])
|
|
|
|
AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
|
|
|
|
|
2015-03-06 10:26:07 +00:00
|
|
|
AC_ARG_WITH(system_fonts_dir,
|
|
|
|
AS_HELP_STRING([--with-system-fonts-dir=PATH],[Directory where system fonts are, [default=/usr/share/fonts]]),
|
|
|
|
with_system_fonts_dir="$withval", with_system_fonts_dir=/usr/share/fonts)
|
|
|
|
SYSTEM_FONTS_DIR=$with_system_fonts_dir
|
|
|
|
AC_SUBST(SYSTEM_FONTS_DIR)
|
|
|
|
|
2017-01-18 22:35:08 +00:00
|
|
|
AC_ARG_WITH(profile_dir,
|
|
|
|
AS_HELP_STRING([--with-profile-dir=PATH],[choose directory for profile.d files, [default=SYSCONFDIR/profile.d]]),
|
|
|
|
with_profile_dir="$withval", with_profile_dir=${sysconfdir}/profile.d)
|
|
|
|
PROFILE_DIR=$with_profile_dir
|
|
|
|
AC_SUBST(PROFILE_DIR)
|
|
|
|
|
2016-06-26 09:38:30 +00:00
|
|
|
AC_ARG_VAR([BWRAP], [Bubblewrap executable])
|
|
|
|
AC_ARG_WITH([system-bubblewrap],
|
|
|
|
[AS_HELP_STRING([--with-system-bubblewrap], [Use system bwrap executable [default=check $BWRAP]])],
|
|
|
|
[BWRAP="$withval"],
|
|
|
|
[BWRAP="${BWRAP:-false}"])
|
|
|
|
AS_CASE([$BWRAP],
|
|
|
|
[yes],
|
|
|
|
[BWRAP=bwrap],
|
|
|
|
[no],
|
|
|
|
[BWRAP=false],
|
|
|
|
[auto],
|
|
|
|
[AC_CHECK_PROG([BWRAP], [bwrap], [bwrap], [false])])
|
2016-09-09 07:07:15 +00:00
|
|
|
if test "x$BWRAP" != xfalse; then
|
|
|
|
BWRAP_VERSION=`$BWRAP --version | sed 's,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,'`
|
|
|
|
AX_COMPARE_VERSION([$SYSTEM_BWRAP_REQS],[gt],[$BWRAP_VERSION],
|
|
|
|
AC_MSG_ERROR([You need at least version $SYSTEM_BWRAP_REQS of bubblewrap to use the system installed version]))
|
|
|
|
AM_CONDITIONAL([WITH_SYSTEM_BWRAP], [true])
|
|
|
|
else
|
|
|
|
AM_CONDITIONAL([WITH_SYSTEM_BWRAP], [false])
|
|
|
|
fi
|
2016-06-26 09:38:30 +00:00
|
|
|
|
2015-05-06 16:04:35 +00:00
|
|
|
AC_CHECK_FUNCS(fdwalk)
|
|
|
|
|
2015-04-05 20:13:45 +00:00
|
|
|
AC_CHECK_HEADER([sys/xattr.h], [], AC_MSG_ERROR([You must have sys/xattr.h from glibc]))
|
2015-03-02 11:36:56 +00:00
|
|
|
AC_CHECK_HEADER([sys/capability.h], have_caps=yes, AC_MSG_ERROR([sys/capability.h header not found]))
|
2015-01-27 20:59:16 +00:00
|
|
|
|
2015-11-26 22:07:05 +00:00
|
|
|
AC_SUBST([GLIB_MKENUMS], [`$PKG_CONFIG --variable glib_mkenums glib-2.0`])
|
2015-01-27 20:59:16 +00:00
|
|
|
AC_SUBST([GLIB_COMPILE_RESOURCES], [`$PKG_CONFIG --variable glib_compile_resources gio-2.0`])
|
|
|
|
AC_SUBST([GDBUS_CODEGEN], [`$PKG_CONFIG --variable gdbus_codegen gio-2.0`])
|
|
|
|
|
2016-04-25 16:58:36 +00:00
|
|
|
POLKIT_GOBJECT_REQUIRED=0.98
|
|
|
|
|
2017-05-11 14:55:46 +00:00
|
|
|
PKG_CHECK_MODULES(BASE, [glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0 libarchive >= 2.8.0 libxml-2.0 >= 2.4 ])
|
2015-01-21 20:23:14 +00:00
|
|
|
PKG_CHECK_MODULES(SOUP, [libsoup-2.4])
|
2016-01-28 11:01:08 +00:00
|
|
|
|
2016-10-28 14:19:11 +00:00
|
|
|
save_LIBS=$LIBS
|
|
|
|
LIBS=$BASE_LIBS
|
|
|
|
AC_CHECK_FUNCS(archive_read_support_filter_all)
|
|
|
|
LIBS=$save_LIBS
|
|
|
|
|
2017-03-29 11:47:41 +00:00
|
|
|
LIBGPGME_DEPENDENCY="1.1.8"
|
|
|
|
PKG_CHECK_MODULES(DEP_GPGME, gpgme-pthread >= $LIBGPGME_DEPENDENCY, have_gpgme=yes, [
|
|
|
|
m4_ifdef([AM_PATH_GPGME_PTHREAD], [
|
|
|
|
AM_PATH_GPGME_PTHREAD($LIBGPGME_DEPENDENCY, have_gpgme=yes, have_gpgme=no)
|
|
|
|
],[ have_gpgme=no ])
|
|
|
|
])
|
|
|
|
AS_IF([ test x$have_gpgme = xno ], [
|
|
|
|
AC_MSG_ERROR([Need GPGME_PTHREAD version $LIBGPGME_DEPENDENCY or later])
|
|
|
|
])
|
|
|
|
|
2016-06-04 18:55:54 +00:00
|
|
|
AC_ARG_ENABLE([system-helper],
|
|
|
|
AC_HELP_STRING([--disable-system-helper],
|
|
|
|
[Disable system helper]),
|
|
|
|
[],
|
|
|
|
[enable_system_helper=yes])
|
2016-06-07 08:10:30 +00:00
|
|
|
if test "x$enable_system_helper" = "xyes"; then
|
2016-06-04 18:55:54 +00:00
|
|
|
PKG_CHECK_MODULES(POLKIT, \
|
|
|
|
polkit-gobject-1 >= $POLKIT_GOBJECT_REQUIRED)
|
2016-10-24 13:26:49 +00:00
|
|
|
AC_DEFINE([USE_SYSTEM_HELPER], [1], [Define if using system-helper])
|
2016-06-04 18:55:54 +00:00
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(BUILD_SYSTEM_HELPER, test x$enable_system_helper = xyes)
|
2016-04-25 16:58:36 +00:00
|
|
|
|
2016-01-28 11:01:08 +00:00
|
|
|
AC_ARG_ENABLE([xauth],
|
|
|
|
AC_HELP_STRING([--disable-xauth],
|
|
|
|
[Disable Xauth use]),
|
|
|
|
[],
|
|
|
|
[enable_xauth=yes])
|
|
|
|
if test "x$enable_xauth" = "xyes"; then
|
|
|
|
PKG_CHECK_MODULES(XAUTH, [xau])
|
|
|
|
AC_DEFINE([ENABLE_XAUTH], [1],
|
|
|
|
[Define if using xauth])
|
|
|
|
fi
|
2015-09-29 14:12:37 +00:00
|
|
|
|
2016-02-09 14:02:56 +00:00
|
|
|
AC_ARG_ENABLE([sandboxed-triggers],
|
|
|
|
AC_HELP_STRING([--disable-sandboxed-triggers],
|
|
|
|
[Disable sandboxed triggers]),
|
|
|
|
[],
|
|
|
|
[enable_sandboxed_triggers=yes])
|
|
|
|
if test "x$enable_sandboxed_triggers" = "xno"; then
|
|
|
|
AC_DEFINE([DISABLE_SANDBOXED_TRIGGERS], [1],
|
|
|
|
[Define if sandboxed triggers are disabled])
|
|
|
|
fi
|
|
|
|
|
2016-09-09 07:13:20 +00:00
|
|
|
PKG_CHECK_MODULES(OSTREE, [ostree-1 >= $OSTREE_REQS])
|
2015-09-29 14:12:37 +00:00
|
|
|
|
2015-07-10 14:46:27 +00:00
|
|
|
PKG_CHECK_MODULES(FUSE, [fuse])
|
2014-12-17 13:05:44 +00:00
|
|
|
|
2015-11-16 15:23:23 +00:00
|
|
|
PKG_CHECK_MODULES(JSON, [json-glib-1.0])
|
|
|
|
|
2015-09-24 12:57:53 +00:00
|
|
|
AC_ARG_ENABLE([seccomp],
|
|
|
|
AC_HELP_STRING([--disable-seccomp],
|
|
|
|
[Disable seccomp]),
|
|
|
|
[],
|
|
|
|
[enable_seccomp=yes])
|
|
|
|
|
|
|
|
if test "x$enable_seccomp" = "xyes"; then
|
|
|
|
PKG_CHECK_MODULES(LIBSECCOMP, [libseccomp])
|
|
|
|
AC_DEFINE([ENABLE_SECCOMP], [1],
|
|
|
|
[Define if using seccomp])
|
|
|
|
fi
|
|
|
|
|
2015-05-29 08:46:10 +00:00
|
|
|
AC_ARG_WITH(priv-mode,
|
2017-01-30 11:11:19 +00:00
|
|
|
AS_HELP_STRING([--with-priv-mode=setuid/none],
|
2016-01-28 08:43:14 +00:00
|
|
|
[How to set privilege-raising during install (only needed if userns not working)]),
|
2015-05-29 08:46:10 +00:00
|
|
|
[],
|
2016-01-28 08:43:14 +00:00
|
|
|
[with_priv_mode="none"])
|
2015-05-29 08:46:10 +00:00
|
|
|
|
|
|
|
AM_CONDITIONAL(PRIV_MODE_SETUID, test "x$with_priv_mode" = "xsetuid")
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(sudo,
|
|
|
|
AS_HELP_STRING([--enable-sudo],[Use sudo to set setuid flags on binaries during install (only needed if userns disabled)]),
|
|
|
|
[SUDO_BIN="sudo"], [SUDO_BIN=""])
|
|
|
|
AC_SUBST([SUDO_BIN])
|
|
|
|
|
2016-01-08 15:47:01 +00:00
|
|
|
dnl ************************
|
|
|
|
dnl *** check for libelf ***
|
|
|
|
dnl ************************
|
|
|
|
PKG_CHECK_MODULES([LIBELF], [libelf >= 0.8.12], [have_libelf=yes], [have_libelf=maybe])
|
|
|
|
AS_IF([ test $have_libelf = maybe ], [
|
|
|
|
save_LIBS=$LIBS
|
|
|
|
AC_CHECK_LIB([elf], [elf_begin], [:], [have_libelf=no])
|
|
|
|
AC_CHECK_LIB([elf], [elf_getshdrstrndx], [:], [have_libelf=no])
|
|
|
|
AC_CHECK_LIB([elf], [elf_getshdrnum], [:], [have_libelf=no])
|
|
|
|
AC_CHECK_HEADER([libelf.h], [:], [have_libelf=no])
|
|
|
|
LIBS=$save_LIBS
|
|
|
|
|
|
|
|
if test $have_libelf != no; then
|
|
|
|
LIBELF_LIBS=-lelf
|
|
|
|
have_libelf=yes
|
|
|
|
fi
|
|
|
|
])
|
|
|
|
|
|
|
|
if test x$have_libelf != xyes; then
|
|
|
|
AC_MSG_ERROR([libelf not found])
|
|
|
|
fi
|
2016-02-26 10:43:04 +00:00
|
|
|
|
2016-05-18 09:11:03 +00:00
|
|
|
AC_ARG_WITH(system-install-dir,
|
|
|
|
[AS_HELP_STRING([--with-system-install-dir=DIR],
|
|
|
|
[Location of system installation [LOCALSTATEDIR/lib/flatpak]])],
|
|
|
|
[],
|
|
|
|
[with_system_install_dir='$(localstatedir)/lib/flatpak'])
|
|
|
|
SYSTEM_INSTALL_DIR=$with_system_install_dir
|
|
|
|
AC_SUBST(SYSTEM_INSTALL_DIR)
|
|
|
|
|
2016-02-26 10:43:04 +00:00
|
|
|
dnl This only checks for the header, not the library.
|
|
|
|
AC_ARG_WITH([dwarf-header],
|
|
|
|
[AS_HELP_STRING([--with-dwarf-header],
|
|
|
|
[path containing dwarf.h])],
|
|
|
|
[AS_IF([test "x$with_dwarf_header" = "xno"],
|
|
|
|
[AC_MSG_WARN([either a path containing dwarf.h must be
|
|
|
|
provided, or it will be searched for in includedir])])],
|
|
|
|
[with_dwarf_header=yes])
|
|
|
|
|
2017-03-27 08:55:40 +00:00
|
|
|
# We need to check these exist, because otherwise -Werror=missing-include-dirs errors out
|
|
|
|
LIBDWARF_INCLUDES=
|
|
|
|
if test -d $(eval echo \"$includedir\")/libdwarf; then
|
|
|
|
LIBDWARF_INCLUDES="$LIBDWARF_INCLUDES -I$(eval echo \"$includedir\")/libdwarf"
|
|
|
|
fi
|
|
|
|
if test -d /usr/include/libdwarf; then
|
|
|
|
LIBDWARF_INCLUDES="$LIBDWARF_INCLUDES -I/usr/include/libdwarf"
|
|
|
|
fi
|
|
|
|
|
2016-02-26 10:43:04 +00:00
|
|
|
AS_IF([test "x$with_dwarf_header" = "xyes"],
|
2017-03-27 08:55:40 +00:00
|
|
|
[CPPFLAGS="$CPPFLAGS $LIBDWARF_INCLUDES"
|
2016-02-26 10:43:04 +00:00
|
|
|
AC_CHECK_HEADER([dwarf.h])
|
|
|
|
AS_IF([test "x$ac_cv_header_dwarf_h" != "xyes"],
|
|
|
|
[AC_MSG_ERROR([dwarf.h is required but was not found; locate it using --with-dwarf-header=/path/containing/header])])],
|
|
|
|
[CPPFLAGS="$CPPFLAGS -I$with_dwarf_header"
|
|
|
|
AC_CHECK_HEADER([dwarf.h])
|
|
|
|
AS_IF([test "x$ac_cv_header_dwarf_h" != "xyes"],
|
|
|
|
[AC_MSG_ERROR([dwarf.h is required but was not found])])])
|
|
|
|
|
2015-01-14 05:36:07 +00:00
|
|
|
AC_ARG_ENABLE(documentation,
|
|
|
|
AC_HELP_STRING([--enable-documentation], [Build documentation]),,
|
|
|
|
enable_documentation=yes)
|
|
|
|
if test x$enable_documentation = xyes; then
|
|
|
|
AC_PATH_PROG([XSLTPROC], [xsltproc])
|
|
|
|
if test x$XSLTPROC = x; then
|
|
|
|
AC_MSG_ERROR([xsltproc is required to build documentation])
|
|
|
|
fi
|
2015-06-17 15:10:41 +00:00
|
|
|
|
|
|
|
dnl check for DocBook DTD in the local catalog
|
|
|
|
JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
|
|
|
|
[DocBook XML DTD V4.1.2], [have_docbook_dtd=yes], [have_docbook_dtd=no])
|
|
|
|
if test "$have_docbook_dtd" != yes; then
|
|
|
|
AC_MSG_ERROR([DocBook DTD is required for --enable-documentation])
|
|
|
|
fi
|
|
|
|
|
|
|
|
dnl check for DocBook XSL stylesheets in the local catalog
|
|
|
|
JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
|
|
|
|
[DocBook XSL Stylesheets], [have_docbook_style=yes],[have_docbook_style=no])
|
|
|
|
if test "$have_docbook_style" != yes; then
|
|
|
|
AC_MSG_ERROR([DocBook XSL Stylesheets are required for --enable-documentation])
|
|
|
|
fi
|
2015-01-14 05:36:07 +00:00
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(BUILD_DOCUMENTATION, test x$enable_documentation = xyes)
|
|
|
|
|
2015-12-04 09:36:30 +00:00
|
|
|
GOBJECT_INTROSPECTION_CHECK([1.40.0])
|
|
|
|
|
2015-12-04 14:57:20 +00:00
|
|
|
# gtkdocize greps for ^GTK_DOC_CHECK, so we need to put it on its own line
|
|
|
|
m4_ifdef([GTK_DOC_CHECK], [
|
|
|
|
GTK_DOC_CHECK([1.20], [--flavour no-tmpl])
|
2016-01-29 08:41:23 +00:00
|
|
|
|
|
|
|
AC_ARG_ENABLE([gtk-doc-check],
|
|
|
|
[AS_HELP_STRING([--enable-gtk-doc-check],
|
|
|
|
[Check completeness of documentation in 'make check'])],
|
|
|
|
[],
|
|
|
|
[enable_gtk_doc_check=no])
|
2015-12-04 14:57:20 +00:00
|
|
|
],[
|
|
|
|
enable_gtk_doc="disabled (no gtk-doc)"
|
2016-01-29 08:41:23 +00:00
|
|
|
enable_gtk_doc_check="disabled (no gtk-doc)"
|
2015-12-04 14:57:20 +00:00
|
|
|
AM_CONDITIONAL([ENABLE_GTK_DOC], [false])
|
|
|
|
])
|
2016-01-29 08:41:23 +00:00
|
|
|
AM_CONDITIONAL([ENABLE_GTK_DOC_CHECK], [test "x$enable_gtk_doc_check" = xyes])
|
2015-12-04 14:57:20 +00:00
|
|
|
|
2016-07-12 04:41:13 +00:00
|
|
|
|
|
|
|
AC_ARG_ENABLE(docbook-docs,
|
|
|
|
[AS_HELP_STRING([--enable-docbook-docs],[build documentation (requires xmlto)])],
|
|
|
|
enable_docbook_docs=$enableval, enable_docbook_docs=auto)
|
|
|
|
AC_PATH_PROG(XMLTO, xmlto, no)
|
|
|
|
AC_MSG_CHECKING([whether to build DocBook documentation])
|
|
|
|
if test x$XMLTO = xno ; then
|
|
|
|
have_docbook=no
|
|
|
|
else
|
|
|
|
have_docbook=yes
|
|
|
|
fi
|
|
|
|
if test x$enable_docbook_docs = xauto ; then
|
|
|
|
if test x$have_docbook = xno ; then
|
|
|
|
enable_docbook_docs=no
|
|
|
|
else
|
|
|
|
enable_docbook_docs=yes
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if test x$enable_docbook_docs = xyes; then
|
|
|
|
if test x$have_docbook = xno; then
|
|
|
|
AC_MSG_ERROR([Building DocBook docs explicitly required, but DocBook not found])
|
|
|
|
fi
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
else
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(DOCBOOK_DOCS_ENABLED, test x$enable_docbook_docs = xyes)
|
|
|
|
AC_ARG_VAR([XMLTO],[Define/override the 'xmlto' location.])
|
|
|
|
AC_ARG_VAR([XMLTO_FLAGS],[Define/override 'xmlto' options, like '--skip-validation'.])
|
|
|
|
|
|
|
|
|
2015-11-26 22:07:05 +00:00
|
|
|
##################################################
|
|
|
|
# Visibility handling
|
|
|
|
##################################################
|
|
|
|
|
|
|
|
HIDDEN_VISIBILITY_CFLAGS=""
|
|
|
|
case "$host" in
|
|
|
|
*)
|
|
|
|
dnl on other compilers, check if we can do -fvisibility=hidden
|
|
|
|
SAVED_CFLAGS="${CFLAGS}"
|
|
|
|
CFLAGS="-fvisibility=hidden"
|
|
|
|
AC_MSG_CHECKING([for -fvisibility=hidden compiler flag])
|
|
|
|
AC_TRY_COMPILE([], [int main (void) { return 0; }],
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
enable_fvisibility_hidden=yes,
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
enable_fvisibility_hidden=no)
|
|
|
|
CFLAGS="${SAVED_CFLAGS}"
|
|
|
|
|
|
|
|
AS_IF([test "${enable_fvisibility_hidden}" = "yes"], [
|
2016-05-06 14:37:47 +00:00
|
|
|
AC_DEFINE([FLATPAK_EXTERN], [__attribute__((visibility("default"))) extern],
|
2015-11-26 22:07:05 +00:00
|
|
|
[defines how to decorate public symbols while building])
|
|
|
|
HIDDEN_VISIBILITY_CFLAGS="-fvisibility=hidden"
|
|
|
|
], [
|
2016-05-06 14:37:47 +00:00
|
|
|
AC_DEFINE([FLATPAK_EXTERN], [extern],
|
2015-11-26 22:07:05 +00:00
|
|
|
[defines how to decorate public symbols while building])
|
|
|
|
])
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
AC_SUBST(HIDDEN_VISIBILITY_CFLAGS)
|
|
|
|
|
2016-04-27 14:31:27 +00:00
|
|
|
GLIB_TESTS
|
|
|
|
|
2016-05-06 14:37:47 +00:00
|
|
|
FLATPAK_MAJOR_VERSION=flatpak_major_version
|
|
|
|
FLATPAK_MINOR_VERSION=flatpak_minor_version
|
|
|
|
FLATPAK_MICRO_VERSION=flatpak_micro_version
|
|
|
|
FLATPAK_INTERFACE_AGE=flatpak_interface_age
|
|
|
|
FLATPAK_VERSION=flatpak_version
|
|
|
|
AC_SUBST(FLATPAK_MAJOR_VERSION)
|
|
|
|
AC_SUBST(FLATPAK_MINOR_VERSION)
|
|
|
|
AC_SUBST(FLATPAK_MICRO_VERSION)
|
|
|
|
AC_SUBST(FLATPAK_INTERFACE_AGE)
|
|
|
|
AC_SUBST(FLATPAK_VERSION)
|
2016-12-14 12:47:45 +00:00
|
|
|
AC_DEFINE_UNQUOTED([PACKAGE_MAJOR_VERSION], $FLATPAK_MAJOR_VERSION, [Major version])
|
|
|
|
AC_DEFINE_UNQUOTED([PACKAGE_MINOR_VERSION], $FLATPAK_MINOR_VERSION, [Minor version])
|
|
|
|
AC_DEFINE_UNQUOTED([PACKAGE_MICRO_VERSION], $FLATPAK_MICRO_VERSION, [Micro version])
|
2015-11-26 22:07:05 +00:00
|
|
|
|
|
|
|
# libtool versioning
|
2016-05-06 14:37:47 +00:00
|
|
|
#LT_RELEASE=$FLATPAK_MAJOR_VERSION.$FLATPAK_MINOR_VERSION
|
|
|
|
#LT_CURRENT=`expr $FLATPAK_MICRO_VERSION - $FLATPAK_INTERFACE_AGE`
|
|
|
|
#LT_REVISION=$FLATPAK_INTERFACE_AGE
|
|
|
|
#LT_AGE=`expr $FLATPAK_BINARY_AGE - $FLATPAK_INTERFACE_AGE`
|
2015-11-26 22:07:05 +00:00
|
|
|
#LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
|
|
|
|
|
2016-05-06 14:37:47 +00:00
|
|
|
m4_define([lt_current], [m4_eval(10000 * flatpak_major_version + 100 * flatpak_minor_version + flatpak_micro_version - flatpak_interface_age)])
|
|
|
|
m4_define([lt_revision], [flatpak_interface_age])
|
|
|
|
m4_define([lt_age], [m4_eval(flatpak_binary_age - flatpak_interface_age)])
|
2015-11-26 22:07:05 +00:00
|
|
|
LT_VERSION_INFO="lt_current:lt_revision:lt_age"
|
|
|
|
LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
|
|
|
|
AC_SUBST(LT_VERSION_INFO)
|
|
|
|
AC_SUBST(LT_CURRENT_MINUS_AGE)
|
|
|
|
|
2014-12-17 13:05:44 +00:00
|
|
|
AC_CONFIG_FILES([
|
|
|
|
Makefile
|
2015-01-14 05:36:07 +00:00
|
|
|
doc/Makefile
|
2015-12-04 14:57:20 +00:00
|
|
|
doc/reference/Makefile
|
2016-05-09 07:40:38 +00:00
|
|
|
flatpak.pc
|
2016-05-06 16:03:47 +00:00
|
|
|
lib/flatpak-version-macros.h
|
2016-03-25 15:10:51 +00:00
|
|
|
doc/reference/version.xml
|
2016-07-12 04:41:13 +00:00
|
|
|
doc/flatpak-docs.xml
|
2016-04-25 15:25:41 +00:00
|
|
|
po/Makefile.in
|
2014-12-17 13:05:44 +00:00
|
|
|
])
|
|
|
|
AC_OUTPUT
|
2016-07-28 19:02:40 +00:00
|
|
|
|
|
|
|
if test x$BWRAP = xfalse ; then
|
|
|
|
build_bwrap="yes"
|
|
|
|
else
|
|
|
|
build_bwrap="no"
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo " Flatpak $FLATPAK_VERSION"
|
|
|
|
echo " ============="
|
|
|
|
echo ""
|
|
|
|
echo " Build system helper: $enable_system_helper"
|
|
|
|
echo " Build bubblewrap: $build_bwrap"
|
|
|
|
echo " Use sandboxed triggers: $enable_sandboxed_triggers"
|
|
|
|
echo " Use seccomp: $enable_seccomp"
|
|
|
|
echo " Privileged group: $PRIVILEGED_GROUP"
|
|
|
|
echo " Privilege mode: $with_priv_mode"
|
|
|
|
echo ""
|