Blame configure.ac

Packit Service ea0369
AC_INIT(libvirt-glib, 3.0.0)
Packit Service ea0369
AC_CONFIG_SRCDIR(libvirt-glib/libvirt-glib-main.c)
Packit Service ea0369
AC_CONFIG_AUX_DIR([build-aux])
Packit Service ea0369
AC_CONFIG_HEADERS([config.h])
Packit Service ea0369
AC_CONFIG_MACRO_DIR([m4])
Packit Service ea0369
dnl Make automake keep quiet about wildcards & other GNUmake-isms
Packit Service ea0369
AM_INIT_AUTOMAKE([-Wno-portability])
Packit Service ea0369
AC_CANONICAL_HOST
Packit Service ea0369
Packit Service ea0369
AM_SILENT_RULES([yes])
Packit Service ea0369
Packit Service ea0369
LIBVIRT_REQUIRED=1.2.5
Packit Service ea0369
AC_SUBST([LIBVIRT_REQUIRED]) dnl used in the .spec file
Packit Service ea0369
GLIB2_REQUIRED=2.38.0
Packit Service ea0369
AC_SUBST([GLIB2_REQUIRED]) dnl used in the .spec file
Packit Service ea0369
GLIB2_VERSION_SYMBOL="GLIB_VERSION_2_38"
Packit Service ea0369
AC_SUBST([GLIB2_VERSION_SYMBOL]) dnl sets glib deprecations
Packit Service ea0369
GOBJECT_INTROSPECTION_REQUIRED=1.36.0
Packit Service ea0369
LIBXML2_REQUIRED=2.0.0
Packit Service ea0369
Packit Service ea0369
LIBVIRT_GLIB_MAJOR_VERSION=`echo $VERSION | awk -F. '{print $1}'`
Packit Service ea0369
LIBVIRT_GLIB_MINOR_VERSION=`echo $VERSION | awk -F. '{print $2}'`
Packit Service ea0369
LIBVIRT_GLIB_MICRO_VERSION=`echo $VERSION | awk -F. '{print $3}'`
Packit Service ea0369
LIBVIRT_GLIB_VERSION=$LIBVIRT_GLIB_MAJOR_VERSION.$LIBVIRT_GLIB_MINOR_VERSION.$LIBVIRT_GLIB_MICRO_VERSION$LIBVIRT_GLIB_MICRO_VERSION_SUFFIX
Packit Service ea0369
LIBVIRT_GLIB_VERSION_NUMBER=`expr $LIBVIRT_GLIB_MAJOR_VERSION \* 1000000 + $LIBVIRT_GLIB_MINOR_VERSION \* 1000 + $LIBVIRT_GLIB_MICRO_VERSION`
Packit Service ea0369
Packit Service ea0369
# In libtool terminology we need to figure out:
Packit Service ea0369
#
Packit Service ea0369
# CURRENT
Packit Service ea0369
#     The most recent interface number that this library implements.
Packit Service ea0369
#
Packit Service ea0369
# REVISION
Packit Service ea0369
#     The implementation number of the CURRENT interface.
Packit Service ea0369
#
Packit Service ea0369
# AGE
Packit Service ea0369
#     The difference between the newest and oldest interfaces that this
Packit Service ea0369
#     library implements.
Packit Service ea0369
#
Packit Service ea0369
# In other words, the library implements all the interface numbers
Packit Service ea0369
# in the range from number `CURRENT - AGE' to `CURRENT'.
Packit Service ea0369
#
Packit Service ea0369
# Libtool assigns the soname version from `CURRENT - AGE', and we
Packit Service ea0369
# don't want that to ever change in libvirt-glib, unless we need
Packit Service ea0369
# to break ABI for some rason.
Packit Service ea0369
#
Packit Service ea0369
# We would, however, like the libvirt-glib version number reflected
Packit Service ea0369
# in the so version'd symlinks, and this is based on AGE.REVISION
Packit Service ea0369
# eg  libvirt-glib.so.0.AGE.REVISION
Packit Service ea0369
#
Packit Service ea0369
# Assuming we do ever want to break soname version, this can
Packit Service ea0369
# toggled. But seriously, don't ever touch this.
Packit Service ea0369
LIBVIRT_GLIB_SONUM=0
Packit Service ea0369
Packit Service ea0369
# The following examples show what libtool will do
Packit Service ea0369
#
Packit Service ea0369
# Input: 0.9.14 ->   libvirt-glib.so.0.9.14
Packit Service ea0369
# Input: 1.0.0  ->   libvirt-glib.so.0.1000.0
Packit Service ea0369
# Input: 2.5.8  ->   libvirt-glib.so.0.2005.8
Packit Service ea0369
#
Packit Service ea0369
AGE=`expr $LIBVIRT_GLIB_MAJOR_VERSION '*' 1000 + $LIBVIRT_GLIB_MINOR_VERSION`
Packit Service ea0369
REVISION=$LIBVIRT_GLIB_MICRO_VERSION
Packit Service ea0369
CURRENT=`expr $LIBVIRT_GLIB_SONUM + $AGE`
Packit Service ea0369
LIBVIRT_GLIB_VERSION_INFO=$CURRENT:$REVISION:$AGE
Packit Service ea0369
Packit Service ea0369
AC_SUBST([LIBVIRT_GLIB_MAJOR_VERSION])
Packit Service ea0369
AC_SUBST([LIBVIRT_GLIB_MINOR_VERSION])
Packit Service ea0369
AC_SUBST([LIBVIRT_GLIB_MICRO_VERSION])
Packit Service ea0369
AC_SUBST([LIBVIRT_GLIB_VERSION])
Packit Service ea0369
AC_SUBST([LIBVIRT_GLIB_VERSION_INFO])
Packit Service ea0369
AC_SUBST([LIBVIRT_GLIB_VERSION_NUMBER])
Packit Service ea0369
Packit Service ea0369
AC_PROG_CC
Packit Service ea0369
AM_PROG_CC_C_O
Packit Service ea0369
Packit Service ea0369
AC_PATH_PROG([PERL], [perl])
Packit Service ea0369
Packit Service ea0369
LT_INIT([shared disable-static win32-dll])
Packit Service ea0369
Packit Service ea0369
dnl AC_CONFIG_LIBOBJ_DIR([src])
Packit Service ea0369
Packit Service ea0369
AC_DEFINE([_GNU_SOURCE], [], [Enable GNU extensions])
Packit Service ea0369
Packit Service ea0369
# Autoconf 2.61a.99 and earlier don't support linking a file only
Packit Service ea0369
# in VPATH builds.  But since GNUmakefile is for maintainer use
Packit Service ea0369
# only, it does not matter if we skip the link with older autoconf.
Packit Service ea0369
# Automake 1.10.1 and earlier try to remove GNUmakefile in non-VPATH
Packit Service ea0369
# builds, so use a shell variable to bypass this.
Packit Service ea0369
GNUmakefile=GNUmakefile
Packit Service ea0369
m4_if(m4_version_compare([2.61a.100],
Packit Service ea0369
        m4_defn([m4_PACKAGE_VERSION])), [1], [],
Packit Service ea0369
      [AC_CONFIG_LINKS([$GNUmakefile:$GNUmakefile], [],
Packit Service ea0369
        [GNUmakefile=$GNUmakefile])])
Packit Service ea0369
Packit Service ea0369
LIBVIRT_GLIB_COMPILE_WARNINGS
Packit Service ea0369
Packit Service ea0369
PKG_CHECK_MODULES(LIBVIRT, libvirt >= $LIBVIRT_REQUIRED)
Packit Service ea0369
# virDomainOpenGraphicsFD was introduced in libvirt 1.2.8
Packit Service ea0369
AC_MSG_CHECKING([for virDomainOpenGraphicsFD])
Packit Service ea0369
PKG_CHECK_EXISTS(libvirt >= 1.2.8,
Packit Service ea0369
                 [
Packit Service ea0369
		   AC_DEFINE([HAVE_VIR_DOMAIN_OPEN_GRAPHICS_FD], 1, [Have virDomainOpenGraphicsFD?])
Packit Service ea0369
		   AC_MSG_RESULT([yes])
Packit Service ea0369
		 ],[AC_MSG_RESULT([no])])
Packit Service ea0369
# virNetworkGetDHCPLeases was introduced in libvirt 1.2.6
Packit Service ea0369
AC_MSG_CHECKING([for virNetworkGetDHCPLeases])
Packit Service ea0369
PKG_CHECK_EXISTS(libvirt >= 1.2.6,
Packit Service ea0369
                 [
Packit Service ea0369
		   AC_DEFINE([HAVE_VIR_NETWORK_GET_DHCP_LEASES], 1, [Have virNetworkGetDHCPLeases?])
Packit Service ea0369
		   AC_MSG_RESULT([yes])
Packit Service ea0369
		 ],[AC_MSG_RESULT([no])])
Packit Service ea0369
PKG_CHECK_MODULES(GLIB2, glib-2.0 >= $GLIB2_REQUIRED)
Packit Service ea0369
PKG_CHECK_MODULES(GTHREAD2, gthread-2.0 >= $GLIB2_REQUIRED)
Packit Service ea0369
PKG_CHECK_MODULES(GOBJECT2, gobject-2.0 >= $GLIB2_REQUIRED)
Packit Service ea0369
PKG_CHECK_MODULES(GIO2, gio-2.0 >= $GLIB2_REQUIRED)
Packit Service ea0369
PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= $LIBXML2_REQUIRED)
Packit Service ea0369
Packit Service ea0369
LIBVIRT_GLIB_ARG_NLS
Packit Service ea0369
LIBVIRT_GLIB_CHECK_NLS
Packit Service ea0369
Packit Service ea0369
Packit Service ea0369
GTK_DOC_CHECK([1.10],[--flavour no-tmpl])
Packit Service ea0369
Packit Service ea0369
# Setup GLIB_MKENUMS to use glib-mkenums even if GLib is uninstalled.
Packit Service ea0369
GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
Packit Service ea0369
AC_SUBST(GLIB_MKENUMS)
Packit Service ea0369
Packit Service ea0369
GLIB_TESTS
Packit Service ea0369
Packit Service ea0369
dnl Extra link-time flags for Cygwin.
Packit Service ea0369
dnl Copied from libxml2 configure.in, but I removed mingw changes
Packit Service ea0369
dnl for now since I'm not supporting mingw at present.  - RWMJ
Packit Service ea0369
CYGWIN_EXTRA_LDFLAGS=
Packit Service ea0369
CYGWIN_EXTRA_LIBADD=
Packit Service ea0369
MINGW_EXTRA_LDFLAGS=
Packit Service ea0369
case "$host" in
Packit Service ea0369
  *-*-cygwin*)
Packit Service ea0369
    CYGWIN_EXTRA_LDFLAGS="-no-undefined"
Packit Service ea0369
    CYGWIN_EXTRA_LIBADD="${INTLLIBS}"
Packit Service ea0369
    ;;
Packit Service ea0369
  *-*-mingw*)
Packit Service ea0369
    MINGW_EXTRA_LDFLAGS="-no-undefined"
Packit Service ea0369
    ;;
Packit Service ea0369
esac
Packit Service ea0369
AC_SUBST([CYGWIN_EXTRA_LDFLAGS])
Packit Service ea0369
AC_SUBST([CYGWIN_EXTRA_LIBADD])
Packit Service ea0369
AC_SUBST([MINGW_EXTRA_LDFLAGS])
Packit Service ea0369
Packit Service ea0369
Packit Service ea0369
AC_ARG_ENABLE([test-coverage],
Packit Service ea0369
[  --enable-test-coverage  turn on code coverage instrumentation],
Packit Service ea0369
[case "${enableval}" in
Packit Service ea0369
   yes|no) ;;
Packit Service ea0369
   *)      AC_MSG_ERROR([bad value ${enableval} for test-coverage option]) ;;
Packit Service ea0369
 esac],
Packit Service ea0369
              [enableval=no])
Packit Service ea0369
enable_coverage=$enableval
Packit Service ea0369
Packit Service ea0369
if test "${enable_coverage}" = yes; then
Packit Service ea0369
  gl_WARN_ADD([-fprofile-arcs], COV_FLAGS)
Packit Service ea0369
  gl_WARN_ADD([-ftest-coverage], COV_FLAGS)
Packit Service ea0369
  AC_SUBST([COVERAGE_CFLAGS], [$COV_FLAGS])
Packit Service ea0369
  AC_SUBST([COVERAGE_LDFLAGS], [$COV_FLAGS])
Packit Service ea0369
  COV_FLAGS=
Packit Service ea0369
fi
Packit Service ea0369
Packit Service ea0369
GOBJECT_INTROSPECTION_CHECK([$GOBJECT_INTROSPECTION_REQUIRED])
Packit Service ea0369
Packit Service ea0369
with_linux=no
Packit Service ea0369
case $host in
Packit Service ea0369
  *-*-linux*) with_linux=yes ;;
Packit Service ea0369
esac
Packit Service ea0369
AM_CONDITIONAL([WITH_LINUX], [test "$with_linux" = "yes"])
Packit Service ea0369
Packit Service ea0369
AC_ARG_ENABLE([vala],
Packit Service ea0369
              AS_HELP_STRING([--enable-vala], [enable Vala binding generation]),
Packit Service ea0369
              [], [enable_vala=check])
Packit Service ea0369
if test "x$enable_introspection" = "xyes" ; then
Packit Service ea0369
        if test "x$enable_vala" != "xno" ; then
Packit Service ea0369
                AC_PATH_PROG(VAPIGEN, vapigen, no)
Packit Service ea0369
                if test "x$VAPIGEN" == "xno"; then
Packit Service ea0369
                        if test "x$enable_vala" == "xcheck" ; then
Packit Service ea0369
                                enable_vala=no
Packit Service ea0369
                        else
Packit Service ea0369
                                AC_MSG_ERROR([Cannot find the "vapigen" binary in your PATH])
Packit Service ea0369
                        fi
Packit Service ea0369
                fi
Packit Service ea0369
                AC_SUBST(VAPIGEN)
Packit Service ea0369
        fi
Packit Service ea0369
        if test "x$enable_vala" != "xno" ; then
Packit Service ea0369
                AC_MSG_CHECKING([$VAPIGEN support for --metadatadir])
Packit Service ea0369
                $VAPIGEN --help | grep metadatadir 1>/dev/null 2>&1
Packit Service ea0369
                if test $? != 0 ; then
Packit Service ea0369
                        if test "x$enable_vala" == "xcheck" ; then
Packit Service ea0369
                                enable_vala=no
Packit Service ea0369
                                AC_MSG_RESULT([no])
Packit Service ea0369
                        else
Packit Service ea0369
                                AC_MSG_ERROR(["vapigen" binary in your PATH is too old (< 0.13)])
Packit Service ea0369
                        fi
Packit Service ea0369
                else
Packit Service ea0369
                        AC_MSG_RESULT([no])
Packit Service ea0369
                fi
Packit Service ea0369
        fi
Packit Service ea0369
        if test "x$enable_vala" = "xcheck" ; then
Packit Service ea0369
                enable_vala=yes
Packit Service ea0369
        fi
Packit Service ea0369
fi
Packit Service ea0369
AM_CONDITIONAL([WITH_VALA], [test "x$enable_vala" = "xyes"])
Packit Service ea0369
Packit Service ea0369
AC_OUTPUT(Makefile
Packit Service ea0369
          libvirt-glib/Makefile
Packit Service ea0369
          libvirt-gconfig/Makefile
Packit Service ea0369
          libvirt-gconfig/tests/Makefile
Packit Service ea0369
          libvirt-gobject/Makefile
Packit Service ea0369
          examples/Makefile
Packit Service ea0369
          vapi/Makefile
Packit Service ea0369
          docs/Makefile
Packit Service ea0369
          docs/libvirt-glib/Makefile
Packit Service ea0369
          docs/libvirt-glib/version.xml
Packit Service ea0369
          docs/libvirt-gobject/Makefile
Packit Service ea0369
          docs/libvirt-gconfig/Makefile
Packit Service ea0369
          po/Makefile
Packit Service ea0369
          tests/Makefile
Packit Service ea0369
          libvirt-glib-1.0.pc
Packit Service ea0369
          libvirt-gconfig-1.0.pc
Packit Service ea0369
          libvirt-gobject-1.0.pc
Packit Service ea0369
          libvirt-glib.spec
Packit Service ea0369
          mingw-libvirt-glib.spec)