Hello community, here is the log from the commit of package python-gobject for openSUSE:Factory checked in at 2017-05-18 20:37:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-gobject (Old) and /work/SRC/openSUSE:Factory/.python-gobject.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-gobject" Thu May 18 20:37:26 2017 rev:66 rq:494087 version:3.24.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-gobject/python-gobject.changes 2017-03-22 23:08:14.577099980 +0100 +++ /work/SRC/openSUSE:Factory/.python-gobject.new/python-gobject.changes 2017-05-18 20:37:38.845631346 +0200 @@ -1,0 +2,16 @@ +Wed Apr 19 14:34:42 UTC 2017 - [email protected] + +- Update to version 3.24.1: + + pygi-info: initialize GIArgument before passing it to + g_constant_info_get_value (bgo#772949). + +------------------------------------------------------------------- +Mon Mar 27 18:08:28 UTC 2017 - [email protected] + +- Switch to single-spec version. +- Add python version-dependent wrapper packages to pull in + necessary dependencies. +- Include all dependencies in -devel packages. +- Rebase .changes file to include changes in -devel package. + +------------------------------------------------------------------- Old: ---- pre_checkin.sh pygobject-3.24.0.tar.xz python3-gobject.changes python3-gobject.spec New: ---- pygobject-3.24.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-gobject.spec ++++++ --- /var/tmp/diff_new_pack.lTI8ea/_old 2017-05-18 20:37:41.513254885 +0200 +++ /var/tmp/diff_new_pack.lTI8ea/_new 2017-05-18 20:37:41.513254885 +0200 @@ -16,72 +16,54 @@ # +%{?!python_module:%define python_module() python-%{**} python3-%{**}} + # This figures in an error message %global __requires_exclude typelib\\(%%namespaces\\) -%global __requires_exclude_from ^%{local_py_sitedir}/gi/__init__.py$ -%define build_for_python3 0 - -%if %{build_for_python3} -%define local_py_requires Requires: python(abi) = %py3_ver -%define local_py_sitedir %{python3_sitearch} -%define local_py_suffix 3 -%define local_py_pkg python3 -%define local_lib_ver 3-0 -%else -%define local_py_requires %{py_requires} -%define local_py_sitedir %{py_sitedir} -%define local_py_suffix 2 -%define local_py_pkg python -%define local_lib_ver 2-0 -%endif +%global __requires_exclude_from ^%{python2_sitearch}/gi/__init__.py$ +%global __requires_exclude_from ^%{python3_sitearch}/gi/__init__.py$ Name: python-gobject %define _name pygobject Summary: Python bindings for GObject License: LGPL-2.1+ Group: Development/Libraries/Python -Version: 3.24.0 +Version: 3.24.1 Release: 0 Url: https://wiki.gnome.org/Projects/PyGObject/ Source: http://download.gnome.org/sources/pygobject/3.24/%{_name}-%{version}.tar.xz # PATCH-FIX-UPSTREAM pycompile-searchpath.patch [email protected] -- Fix build with python 3.4 Patch1: pycompile-searchpath.patch +BuildRequires: %{python_module cairo-devel} +BuildRequires: %{python_module cairo} +BuildRequires: %{python_module devel} +BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: glib2-devel >= 2.38.0 BuildRequires: gnome-common BuildRequires: gobject-introspection-devel >= 1.46.0 BuildRequires: libffi-devel >= 3.0.0 -%if %{build_for_python3} -BuildRequires: python3-cairo-devel -BuildRequires: python3-devel -%else -BuildRequires: python-cairo-devel -BuildRequires: python-devel -%endif +BuildRequires: python-rpm-macros BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(cairo-gobject) # Trigger an automatic installation of python(3)?-gobject when python and libgirepository are installed. -Supplements: packageand(%{local_py_pkg}:libgirepository-1_0-1) -%if %local_py_suffix == 2 -Provides: python2-gobject = %{version} -%endif +Supplements: packageand(python:%{gdk_real_package}) BuildRoot: %{_tmppath}/%{name}-%{version}-build -%{local_py_requires} + +%python_subpackages %description Pygobjects is an extension module for python that gives you access to GLib's GObjects. + %package Gdk Summary: Python bindings for GObject -- Gdk bindings Group: Development/Libraries/Python Requires: %{name} = %{version} Requires: %{name}-cairo = %{version} -%if %local_py_suffix == 2 -Provides: python2-gobject-Gdk = %{version} -%endif -%define gdk_real_package %(rpm -q --qf '%%{NAME}' -f $(readlink /usr/lib64/libgdk-3.so -f)) -Supplements: packageand(%{name}:%{gdk_real_package}) +%define gdk_real_package %(rpm -q --qf '%%{NAME}' -f $(readlink %{_libdir}/libgdk-3.so -f)) +Supplements: packageand(python-gobject:%{gdk_real_package}) %description Gdk Pygobjects is an extension module for python that gives you access to @@ -89,15 +71,13 @@ This package contains the Python Gdk bindings for GObject. + %package cairo Summary: Python bindings for GObject -- Cairo bindings Group: Development/Libraries/Python Requires: %{name} = %{version} -%if %local_py_suffix == 2 -Provides: python2-gobject-cairo = %{version} -%endif %define cairo_real_package %(rpm -q --qf '%%{NAME}' --whatprovides cairo) -Supplements: packageand(%{name}:%{cairo_real_package}) +Supplements: packageand(python-gobject:%{cairo_real_package}) %description cairo Pygobjects is an extension module for python that gives you access to @@ -105,24 +85,38 @@ This package contains the Python Cairo bindings for GObject. -%if ! %{build_for_python3} + +# Dummy wrapper file to pull in all Python-version-specific dependencies %package devel -Summary: Python bindings for GObject +Summary: Python bindings for GObject -- development files Group: Development/Libraries/Python Requires: %{name} = %{version} -Requires: python3-gobject = %{version} -# Until version 3.11.5, the -devel package contained python2 / python3 specifiecs -# AS this was cleared and the package no longer depends on the python version, the -# python3-gobject-devel package is no longer being built. In order to ease upgrades -# and remove the obsolete package, we obsolete/provide it here. -Obsoletes: python3-gobject-devel < 3.11.5 -Provides: python2-gobject-devel = %{version} -Provides: python3-gobject-devel = %{version} +Requires: %{name}-Gdk = %{version} +Requires: %{name}-cairo = %{version} +Requires: %{name}-common-devel = %{version} +Requires: python-devel %description devel This package contains files required to build wrappers for gobject addon libraries such as pygtk. -%endif + + +%package -n %{name}-common-devel +Summary: Python bindings for GObject -- shared development files +Group: Development/Libraries/Python +Requires: %{python_module gobject-devel = %{version}} +Requires: glib2-devel >= 2.38.0 +Requires: gnome-common +Requires: gobject-introspection-devel >= 1.46.0 +Requires: libffi-devel >= 3.0.0 +Requires: pkgconfig(cairo) +Requires: pkgconfig(cairo-gobject) +Provides: %{python_module gobject-common-devel = %{version}} + +%description -n %{name}-common-devel +This package contains common files required to build wrappers for gobject +addon libraries such as pygtk in both Python2 and Python3. + %prep %setup -q -n %{_name}-%{version} @@ -130,60 +124,76 @@ %build autoreconf -fiv -%if %{build_for_python3} -export PYTHON=python3 -%else -export PYTHON=python2 -%endif -%configure \ -%if %{build_for_python3} - --without-common -%endif + +# We want to do an out-of-source build +%define _configure ../configure + +%{python_expand mkdir build_%{$python_bin_suffix} +pushd build_%{$python_bin_suffix} + +export PYTHON=$python +%configure make %{?jobs:-j%jobs} V=1 +popd +} + %install -%makeinstall -find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f +%{python_expand pushd build_%{$python_bin_suffix} + +%make_install + +popd +} + # Drop pygtkcompat layer.it's useless and we lack other stuff for it to work -rm %{buildroot}%{local_py_sitedir}/gi/pygtkcompat.py -rm -r %{buildroot}%{local_py_sitedir}/pygtkcompat/ +%python_expand rm %{buildroot}%{$python_sitearch}/gi/pygtkcompat.py* +%python_expand rm -r %{buildroot}%{$python_sitearch}/pygtkcompat/ + # Drop GIMarshallingTests - It's test suite remainders that should not be installed -find %{buildroot}%{local_py_sitedir}/gi -name GIMarshallingTests.py* -delete -print +find %{buildroot}%{_prefix} -name GIMarshallingTests.py* -delete -print + rm examples/Makefile* -%fdupes $RPM_BUILD_ROOT +find %{buildroot} -name '*.la' -or -name '*.a' | xargs rm -f -%clean -rm -rf $RPM_BUILD_ROOT +%fdupes %{buildroot} -%files +%files %{python_files} %defattr(-,root,root) -%doc AUTHORS NEWS README ChangeLog examples -%{local_py_sitedir}/gi/ -%{local_py_sitedir}/*.egg-info +%doc AUTHORS COPYING ChangeLog NEWS README +%doc examples/ +%{python_sitearch}/gi/ +%{python_sitearch}/*.egg-info # Lives in cairo subpackage -%exclude %{local_py_sitedir}/gi/_gi_cairo*.so -%exclude %{local_py_sitedir}/gi/overrides/Gdk.* -%exclude %{local_py_sitedir}/gi/overrides/Gtk.* -%exclude %{local_py_sitedir}/gi/overrides/keysyms.* -%exclude %{local_py_sitedir}/gi/overrides/Pango.py +%exclude %{python_sitearch}/gi/_gi_cairo*.so +# Lives in Gdk subpackage +%exclude %{python_sitearch}/gi/overrides/Gdk.* +%exclude %{python_sitearch}/gi/overrides/Gtk.* +%exclude %{python_sitearch}/gi/overrides/keysyms.* +%exclude %{python_sitearch}/gi/overrides/Pango.* + +%files %{python_files Gdk} +%defattr(-,root,root) +%doc AUTHORS COPYING +%{python_sitearch}/gi/overrides/Gdk.* +%{python_sitearch}/gi/overrides/Gtk.* +%{python_sitearch}/gi/overrides/keysyms.* +%{python_sitearch}/gi/overrides/Pango.* -%files Gdk +%files %{python_files cairo} %defattr(-,root,root) -%{local_py_sitedir}/gi/overrides/Gdk.* -%{local_py_sitedir}/gi/overrides/Gtk.* -%{local_py_sitedir}/gi/overrides/keysyms.* -%{local_py_sitedir}/gi/overrides/Pango.py +%doc AUTHORS COPYING +%{python_sitearch}/gi/_gi_cairo*.so -%files cairo +%files %{python_files devel} %defattr(-,root,root) -%{local_py_sitedir}/gi/_gi_cairo*.so +%doc AUTHORS COPYING -%if ! %{build_for_python3} -%files devel +%files -n %{name}-common-devel %defattr(-,root,root) +%doc AUTHORS COPYING %{_includedir}/pygobject-3.0/ %{_libdir}/pkgconfig/pygobject-3.0.pc -%endif %changelog ++++++ pygobject-3.24.0.tar.xz -> pygobject-3.24.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pygobject-3.24.0/ChangeLog new/pygobject-3.24.1/ChangeLog --- old/pygobject-3.24.0/ChangeLog 2017-03-20 14:25:32.000000000 +0100 +++ new/pygobject-3.24.1/ChangeLog 2017-04-10 12:37:08.000000000 +0200 @@ -1,3 +1,35 @@ +commit 48fb00980464c95f69579688c5390cf0560c4f04 +Author: Christoph Reiter <[email protected]> +Date: Mon Mar 20 18:11:21 2017 +0100 + + pygi-info: initialize GIArgument before passing it to + g_constant_info_get_value + + Co-Authored-By: Mikhail Fludkov <[email protected]> + + https://bugzilla.gnome.org/show_bug.cgi?id=772949 + + gi/pygi-info.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit e0c036d84ee66530498ec71e5388eaf23df2eb95 +Author: Christoph Reiter <[email protected]> +Date: Mon Mar 20 16:10:12 2017 +0100 + + configure.ac: post-release version bump to 3.24.1 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 9d76190bc7a256764b1af5ec4bd05ce4a7b6e1d2 +Author: Christoph Reiter <[email protected]> +Date: Mon Mar 20 14:28:51 2017 +0100 + + release 3.24.0 + + NEWS | 3 +++ + 1 file changed, 3 insertions(+) + commit bffbb4b1f823de5035e51e013dc6da5a973045aa Author: Christoph Reiter <[email protected]> Date: Mon Mar 20 14:23:59 2017 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pygobject-3.24.0/NEWS new/pygobject-3.24.1/NEWS --- old/pygobject-3.24.0/NEWS 2017-03-20 14:25:18.000000000 +0100 +++ new/pygobject-3.24.1/NEWS 2017-04-10 12:36:35.000000000 +0200 @@ -1,3 +1,7 @@ +3.24.1 10-Apr-2017 + - pygi-info: initialize GIArgument before passing it to g_constant_info_get_value (Christoph Reiter) (#772949) + - configure.ac: post-release version bump to 3.24.1 (Christoph Reiter) + 3.24.0 20-Mar-2017 - configure.ac: pre-release version bump to 3.24.0 (Christoph Reiter) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pygobject-3.24.0/PKG-INFO new/pygobject-3.24.1/PKG-INFO --- old/pygobject-3.24.0/PKG-INFO 2017-03-20 14:25:12.000000000 +0100 +++ new/pygobject-3.24.1/PKG-INFO 2017-04-10 12:36:29.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: PyGObject -Version: 3.24.0 +Version: 3.24.1 Summary: Python bindings for GObject Home-page: http://www.pygtk.org/ Author: James Henstridge @@ -8,7 +8,7 @@ Maintainer: Simon Feltman Maintainer-email: [email protected] License: GNU LGPL -Download-url: ftp://ftp.gnome.org/pub/GNOME/sources/pygobject/3.24/pygobject-3.24.0.tar.gz +Download-url: ftp://ftp.gnome.org/pub/GNOME/sources/pygobject/3.24/pygobject-3.24.1.tar.gz Description: Python bindings for GLib and GObject Platform: POSIX, Windows Classifier: Development Status :: 5 - Production/Stable diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pygobject-3.24.0/aclocal.m4 new/pygobject-3.24.1/aclocal.m4 --- old/pygobject-3.24.0/aclocal.m4 2017-03-20 14:25:07.000000000 +0100 +++ new/pygobject-3.24.1/aclocal.m4 2017-04-10 12:36:24.000000000 +0200 @@ -20,282 +20,6 @@ If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- -dnl serial 11 (pkg-config-0.29) -dnl -dnl Copyright © 2004 Scott James Remnant <[email protected]>. -dnl Copyright © 2012-2015 Dan Nicholson <[email protected]> -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2 of the License, or -dnl (at your option) any later version. -dnl -dnl This program is distributed in the hope that it will be useful, but -dnl WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -dnl 02111-1307, USA. -dnl -dnl As a special exception to the GNU General Public License, if you -dnl distribute this file as part of a program that contains a -dnl configuration script generated by Autoconf, you may include it under -dnl the same distribution terms that you use for the rest of that -dnl program. - -dnl PKG_PREREQ(MIN-VERSION) -dnl ----------------------- -dnl Since: 0.29 -dnl -dnl Verify that the version of the pkg-config macros are at least -dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's -dnl installed version of pkg-config, this checks the developer's version -dnl of pkg.m4 when generating configure. -dnl -dnl To ensure that this macro is defined, also add: -dnl m4_ifndef([PKG_PREREQ], -dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) -dnl -dnl See the "Since" comment for each macro you use to see what version -dnl of the macros you require. -m4_defun([PKG_PREREQ], -[m4_define([PKG_MACROS_VERSION], [0.29]) -m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, - [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) -])dnl PKG_PREREQ - -dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) -dnl ---------------------------------- -dnl Since: 0.16 -dnl -dnl Search for the pkg-config tool and set the PKG_CONFIG variable to -dnl first found in the path. Checks that the version of pkg-config found -dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is -dnl used since that's the first version where most current features of -dnl pkg-config existed. -AC_DEFUN([PKG_PROG_PKG_CONFIG], -[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) -m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) -m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) -AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) -AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) -AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=m4_default([$1], [0.9.0]) - AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - PKG_CONFIG="" - fi -fi[]dnl -])dnl PKG_PROG_PKG_CONFIG - -dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------------------------------- -dnl Since: 0.18 -dnl -dnl Check to see whether a particular set of modules exists. Similar to -dnl PKG_CHECK_MODULES(), but does not set variables or print errors. -dnl -dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -dnl only at the first occurence in configure.ac, so if the first place -dnl it's called might be skipped (such as if it is within an "if", you -dnl have to call PKG_CHECK_EXISTS manually -AC_DEFUN([PKG_CHECK_EXISTS], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -if test -n "$PKG_CONFIG" && \ - AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then - m4_default([$2], [:]) -m4_ifvaln([$3], [else - $3])dnl -fi]) - -dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) -dnl --------------------------------------------- -dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting -dnl pkg_failed based on the result. -m4_define([_PKG_CONFIG], -[if test -n "$$1"; then - pkg_cv_[]$1="$$1" - elif test -n "$PKG_CONFIG"; then - PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes ], - [pkg_failed=yes]) - else - pkg_failed=untried -fi[]dnl -])dnl _PKG_CONFIG - -dnl _PKG_SHORT_ERRORS_SUPPORTED -dnl --------------------------- -dnl Internal check to see if pkg-config supports short errors. -AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi[]dnl -])dnl _PKG_SHORT_ERRORS_SUPPORTED - - -dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl -------------------------------------------------------------- -dnl Since: 0.4.0 -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES might not happen, you should be sure to include an -dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac -AC_DEFUN([PKG_CHECK_MODULES], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl -AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl - -pkg_failed=no -AC_MSG_CHECKING([for $1]) - -_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) -_PKG_CONFIG([$1][_LIBS], [libs], [$2]) - -m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS -and $1[]_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details.]) - -if test $pkg_failed = yes; then - AC_MSG_RESULT([no]) - _PKG_SHORT_ERRORS_SUPPORTED - if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` - else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - - m4_default([$4], [AC_MSG_ERROR( -[Package requirements ($2) were not met: - -$$1_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -_PKG_TEXT])[]dnl - ]) -elif test $pkg_failed = untried; then - AC_MSG_RESULT([no]) - m4_default([$4], [AC_MSG_FAILURE( -[The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -_PKG_TEXT - -To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl - ]) -else - $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS - $1[]_LIBS=$pkg_cv_[]$1[]_LIBS - AC_MSG_RESULT([yes]) - $3 -fi[]dnl -])dnl PKG_CHECK_MODULES - - -dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl --------------------------------------------------------------------- -dnl Since: 0.29 -dnl -dnl Checks for existence of MODULES and gathers its build flags with -dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags -dnl and VARIABLE-PREFIX_LIBS from --libs. -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to -dnl include an explicit call to PKG_PROG_PKG_CONFIG in your -dnl configure.ac. -AC_DEFUN([PKG_CHECK_MODULES_STATIC], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -_save_PKG_CONFIG=$PKG_CONFIG -PKG_CONFIG="$PKG_CONFIG --static" -PKG_CHECK_MODULES($@) -PKG_CONFIG=$_save_PKG_CONFIG[]dnl -])dnl PKG_CHECK_MODULES_STATIC - - -dnl PKG_INSTALLDIR([DIRECTORY]) -dnl ------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable pkgconfigdir as the location where a module -dnl should install pkg-config .pc files. By default the directory is -dnl $libdir/pkgconfig, but the default can be changed by passing -dnl DIRECTORY. The user can override through the --with-pkgconfigdir -dnl parameter. -AC_DEFUN([PKG_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([pkgconfigdir], - [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, - [with_pkgconfigdir=]pkg_default) -AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_INSTALLDIR - - -dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) -dnl -------------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable noarch_pkgconfigdir as the location where a -dnl module should install arch-independent pkg-config .pc files. By -dnl default the directory is $datadir/pkgconfig, but the default can be -dnl changed by passing DIRECTORY. The user can override through the -dnl --with-noarch-pkgconfigdir parameter. -AC_DEFUN([PKG_NOARCH_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([noarch-pkgconfigdir], - [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, - [with_noarch_pkgconfigdir=]pkg_default) -AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_NOARCH_INSTALLDIR - - -dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, -dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------- -dnl Since: 0.28 -dnl -dnl Retrieves the value of the pkg-config variable for the given module. -AC_DEFUN([PKG_CHECK_VAR], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl - -_PKG_CONFIG([$1], [variable="][$3]["], [$2]) -AS_VAR_COPY([$1], [pkg_cv_][$1]) - -AS_VAR_IF([$1], [""], [$5], [$4])dnl -])dnl PKG_CHECK_VAR - # =========================================================================== # http://www.gnu.org/software/autoconf-archive/ax_code_coverage.html # =========================================================================== @@ -373,7 +97,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -#serial 20 +#serial 17 AC_DEFUN([AX_CODE_COVERAGE],[ dnl Check for --enable-code-coverage @@ -409,13 +133,35 @@ AC_MSG_ERROR([not compiling with gcc, which is required for gcov code coverage]) ]) + # List of supported lcov versions. + lcov_version_list="1.6 1.7 1.8 1.9 1.10 1.11 1.12" + AC_CHECK_PROG([LCOV], [lcov], [lcov]) AC_CHECK_PROG([GENHTML], [genhtml], [genhtml]) - AS_IF([ test -z "$LCOV" ], [ - AC_MSG_ERROR([To enable code coverage reporting you must have lcov installed]) + AS_IF([ test "$LCOV" ], [ + AC_CACHE_CHECK([for lcov version], ax_cv_lcov_version, [ + ax_cv_lcov_version=invalid + lcov_version=`$LCOV -v 2>/dev/null | $SED -e 's/^.* //'` + for lcov_check_version in $lcov_version_list; do + if test "$lcov_version" = "$lcov_check_version"; then + ax_cv_lcov_version="$lcov_check_version (ok)" + fi + done + ]) + ], [ + lcov_msg="To enable code coverage reporting you must have one of the following lcov versions installed: $lcov_version_list" + AC_MSG_ERROR([$lcov_msg]) ]) + case $ax_cv_lcov_version in + ""|invalid[)] + lcov_msg="You must have one of the following versions of lcov: $lcov_version_list (found: $lcov_version)." + AC_MSG_ERROR([$lcov_msg]) + LCOV="exit 0;" + ;; + esac + AS_IF([ test -z "$GENHTML" ], [ AC_MSG_ERROR([Could not find genhtml from the lcov package]) ]) @@ -425,7 +171,7 @@ CODE_COVERAGE_CPPFLAGS="-DNDEBUG" CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" - CODE_COVERAGE_LIBS="-lgcov" + CODE_COVERAGE_LDFLAGS="-lgcov" CODE_COVERAGE_LDFLAGS="$CODE_COVERAGE_LIBS" AC_SUBST([CODE_COVERAGE_CPPFLAGS]) @@ -433,32 +179,6 @@ AC_SUBST([CODE_COVERAGE_CXXFLAGS]) AC_SUBST([CODE_COVERAGE_LIBS]) AC_SUBST([CODE_COVERAGE_LDFLAGS]) - - [CODE_COVERAGE_RULES_CHECK=' - -$(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check - $(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture -'] - [CODE_COVERAGE_RULES_CAPTURE=' - $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS) - $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS) - -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp - $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS) - @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html" -'] - [CODE_COVERAGE_RULES_CLEAN=' -clean: code-coverage-clean -distclean: code-coverage-clean -code-coverage-clean: - -$(LCOV) --directory $(top_builddir) -z - -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY) - -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete -'] - ], [ - [CODE_COVERAGE_RULES_CHECK=' - @echo "Need to reconfigure with --enable-code-coverage" -'] - CODE_COVERAGE_RULES_CAPTURE="$CODE_COVERAGE_RULES_CHECK" - CODE_COVERAGE_RULES_CLEAN='' ]) [CODE_COVERAGE_RULES=' @@ -538,15 +258,37 @@ code_coverage_sanitize = $(subst -,_,$(subst .,_,$(1))) # Use recursive makes in order to ignore errors during check -check-code-coverage:'"$CODE_COVERAGE_RULES_CHECK"' +check-code-coverage: +ifeq ($(CODE_COVERAGE_ENABLED),yes) + -$(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check + $(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture +else + @echo "Need to reconfigure with --enable-code-coverage" +endif # Capture code coverage data -code-coverage-capture: code-coverage-capture-hook'"$CODE_COVERAGE_RULES_CAPTURE"' +code-coverage-capture: code-coverage-capture-hook +ifeq ($(CODE_COVERAGE_ENABLED),yes) + $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS) + $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS) + -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp + $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS) + @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html" +else + @echo "Need to reconfigure with --enable-code-coverage" +endif # Hook rule executed before code-coverage-capture, overridable by the user code-coverage-capture-hook: -'"$CODE_COVERAGE_RULES_CLEAN"' +ifeq ($(CODE_COVERAGE_ENABLED),yes) +clean: code-coverage-clean +distclean: code-coverage-clean +code-coverage-clean: + -$(LCOV) --directory $(top_builddir) -z + -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY) + -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete +endif GITIGNOREFILES ?= GITIGNOREFILES += $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY) @@ -764,241 +506,517 @@ GLIB_COMPILE_RESOURCES="" ifelse([$3], , :, [$3]) fi - AC_SUBST(GLIB_CFLAGS) - AC_SUBST(GLIB_LIBS) - AC_SUBST(GLIB_GENMARSHAL) - AC_SUBST(GOBJECT_QUERY) - AC_SUBST(GLIB_MKENUMS) - AC_SUBST(GLIB_COMPILE_RESOURCES) - rm -f conf.glibtest -]) + AC_SUBST(GLIB_CFLAGS) + AC_SUBST(GLIB_LIBS) + AC_SUBST(GLIB_GENMARSHAL) + AC_SUBST(GOBJECT_QUERY) + AC_SUBST(GLIB_MKENUMS) + AC_SUBST(GLIB_COMPILE_RESOURCES) + rm -f conf.glibtest +]) + +dnl GNOME_CODE_COVERAGE +dnl +dnl Defines CODE_COVERAGE_CFLAGS and CODE_COVERAGE_LDFLAGS which should be +dnl included in the CFLAGS and LIBS/LDFLAGS variables of every build target +dnl (program or library) which should be built with code coverage support. +dnl Also defines GNOME_CODE_COVERAGE_RULES which should be substituted in your +dnl Makefile; and $enable_code_coverage which can be used in subsequent +dnl configure output. +dnl +dnl Note that all optimisation flags in CFLAGS must be disabled when code +dnl coverage is enabled. +dnl +dnl Derived from Makefile.decl in GLib, originally licenced under LGPLv2.1+. +dnl This file is licenced under LGPLv2.1+. +dnl +dnl Usage example: +dnl configure.ac: +dnl GNOME_CODE_COVERAGE +dnl +dnl Makefile.am: +dnl @GNOME_CODE_COVERAGE_RULES@ +dnl my_program_LIBS = … $(CODE_COVERAGE_LDFLAGS) … +dnl my_program_CFLAGS = … $(CODE_COVERAGE_CFLAGS) … +dnl +dnl This results in a “check-code-coverage” rule being added to any Makefile.am +dnl which includes “@GNOME_CODE_COVERAGE_RULES@” (assuming the module has been +dnl configured with --enable-code-coverage). Running `make check-code-coverage` +dnl in that directory will run the module’s test suite (`make check`) and build +dnl a code coverage report detailing the code which was touched, then print the +dnl URI for the report. + +AU_DEFUN([GNOME_CODE_COVERAGE],[ + AX_CODE_COVERAGE + GNOME_CODE_COVERAGE_RULES=$CODE_COVERAGE_RULES + + AC_SUBST([GNOME_CODE_COVERAGE_RULES]) + m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([GNOME_CODE_COVERAGE_RULES])]) +], +[[$0: This macro is deprecated. You should use AX_CODE_COVERAGE instead and +replace uses of GNOME_CODE_COVERAGE_RULES with CODE_COVERAGE_RULES. +See: http://www.gnu.org/software/autoconf-archive/ax_code_coverage.html#ax_code_coverage]]) + +# gnome-compiler-flags.m4 +# +# serial 4 +# + +dnl GNOME_COMPILE_WARNINGS +dnl Turn on many useful compiler warnings and substitute the result into +dnl WARN_CFLAGS +dnl For now, only works on GCC +dnl Pass the default value of the --enable-compile-warnings configure option as +dnl the first argument to the macro, defaulting to 'yes'. +dnl Additional warning/error flags can be passed as an optional second argument. +dnl +dnl For example: GNOME_COMPILE_WARNINGS([maximum],[-Werror=some-flag -Wfoobar]) +AU_DEFUN([GNOME_COMPILE_WARNINGS],[ + dnl ****************************** + dnl More compiler warnings + dnl ****************************** + + AC_ARG_ENABLE(compile-warnings, + AS_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@], + [Turn on compiler warnings]),, + [enable_compile_warnings="m4_default([$1],[yes])"]) + + if test "x$GCC" != xyes; then + enable_compile_warnings=no + fi + + warning_flags= + realsave_CFLAGS="$CFLAGS" + + dnl These are warning flags that aren't marked as fatal. Can be + dnl overridden on a per-project basis with -Wno-foo. + base_warn_flags=" \ + -Wall \ + -Wstrict-prototypes \ + -Wnested-externs \ + " + + dnl These compiler flags typically indicate very broken or suspicious + dnl code. Some of them such as implicit-function-declaration are + dnl just not default because gcc compiles a lot of legacy code. + dnl We choose to make this set into explicit errors. + base_error_flags=" \ + -Werror=missing-prototypes \ + -Werror=implicit-function-declaration \ + -Werror=pointer-arith \ + -Werror=init-self \ + -Werror=format-security \ + -Werror=format=2 \ + -Werror=missing-include-dirs \ + -Werror=return-type \ + " + + dnl Additional warning or error flags provided by the module author to + dnl allow stricter standards to be imposed on a per-module basis. + dnl The author can pass -W or -Werror flags here as they see fit. + additional_flags="m4_default([$2],[])" + + case "$enable_compile_warnings" in + no) + warning_flags="-w" + ;; + minimum) + warning_flags="-Wall" + ;; + yes|maximum|error) + warning_flags="$base_warn_flags $base_error_flags $additional_flags" + ;; + *) + AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings) + ;; + esac + + if test "$enable_compile_warnings" = "error" ; then + warning_flags="$warning_flags -Werror" + fi + + dnl Check whether GCC supports the warning options + for option in $warning_flags; do + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $option" + AC_MSG_CHECKING([whether gcc understands $option]) + AC_TRY_COMPILE([], [], + has_option=yes, + has_option=no,) + CFLAGS="$save_CFLAGS" + AC_MSG_RESULT([$has_option]) + if test $has_option = yes; then + tested_warning_flags="$tested_warning_flags $option" + fi + unset has_option + unset save_CFLAGS + done + unset option + CFLAGS="$realsave_CFLAGS" + AC_MSG_CHECKING(what warning flags to pass to the C compiler) + AC_MSG_RESULT($tested_warning_flags) + + AC_ARG_ENABLE(iso-c, + AS_HELP_STRING([--enable-iso-c], + [Try to warn if code is not ISO C ]),, + [enable_iso_c=no]) + + AC_MSG_CHECKING(what language compliance flags to pass to the C compiler) + complCFLAGS= + if test "x$enable_iso_c" != "xno"; then + if test "x$GCC" = "xyes"; then + case " $CFLAGS " in + *[\ \ ]-ansi[\ \ ]*) ;; + *) complCFLAGS="$complCFLAGS -ansi" ;; + esac + case " $CFLAGS " in + *[\ \ ]-pedantic[\ \ ]*) ;; + *) complCFLAGS="$complCFLAGS -pedantic" ;; + esac + fi + fi + AC_MSG_RESULT($complCFLAGS) + + WARN_CFLAGS="$tested_warning_flags $complCFLAGS" + AC_SUBST(WARN_CFLAGS) +], +[[$0: This macro is deprecated. You should use AX_COMPILER_FLAGS instead and +eliminate use of --enable-iso-c. +See: http://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html#ax_compiler_flags]]) + +dnl For C++, do basically the same thing. + +AU_DEFUN([GNOME_CXX_WARNINGS],[ + AC_ARG_ENABLE(cxx-warnings, + AS_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@] + [Turn on compiler warnings.]),, + [enable_cxx_warnings="m4_default([$1],[minimum])"]) + + AC_MSG_CHECKING(what warning flags to pass to the C++ compiler) + warnCXXFLAGS= + if test "x$GXX" != xyes; then + enable_cxx_warnings=no + fi + if test "x$enable_cxx_warnings" != "xno"; then + if test "x$GXX" = "xyes"; then + case " $CXXFLAGS " in + *[\ \ ]-Wall[\ \ ]*) ;; + *) warnCXXFLAGS="-Wall -Wno-unused" ;; + esac -dnl GNOME_CODE_COVERAGE -dnl -dnl Defines CODE_COVERAGE_CFLAGS and CODE_COVERAGE_LDFLAGS which should be -dnl included in the CFLAGS and LIBS/LDFLAGS variables of every build target -dnl (program or library) which should be built with code coverage support. -dnl Also defines GNOME_CODE_COVERAGE_RULES which should be substituted in your -dnl Makefile; and $enable_code_coverage which can be used in subsequent -dnl configure output. + ## -W is not all that useful. And it cannot be controlled + ## with individual -Wno-xxx flags, unlike -Wall + if test "x$enable_cxx_warnings" = "xyes"; then + warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual" + fi + fi + fi + AC_MSG_RESULT($warnCXXFLAGS) + + AC_ARG_ENABLE(iso-cxx, + AS_HELP_STRING([--enable-iso-cxx], + [Try to warn if code is not ISO C++ ]),, + [enable_iso_cxx=no]) + + AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler) + complCXXFLAGS= + if test "x$enable_iso_cxx" != "xno"; then + if test "x$GXX" = "xyes"; then + case " $CXXFLAGS " in + *[\ \ ]-ansi[\ \ ]*) ;; + *) complCXXFLAGS="$complCXXFLAGS -ansi" ;; + esac + + case " $CXXFLAGS " in + *[\ \ ]-pedantic[\ \ ]*) ;; + *) complCXXFLAGS="$complCXXFLAGS -pedantic" ;; + esac + fi + fi + AC_MSG_RESULT($complCXXFLAGS) + + WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS" + AC_SUBST(WARN_CXXFLAGS) +], +[[$0: This macro is deprecated. You should use AX_COMPILER_FLAGS instead and +eliminate use of --enable-iso-cxx. +See: http://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html#ax_compiler_flags]]) + +dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +dnl serial 11 (pkg-config-0.29) dnl -dnl Note that all optimisation flags in CFLAGS must be disabled when code -dnl coverage is enabled. +dnl Copyright © 2004 Scott James Remnant <[email protected]>. +dnl Copyright © 2012-2015 Dan Nicholson <[email protected]> dnl -dnl Derived from Makefile.decl in GLib, originally licenced under LGPLv2.1+. -dnl This file is licenced under LGPLv2.1+. +dnl This program is free software; you can redistribute it and/or modify +dnl it under the terms of the GNU General Public License as published by +dnl the Free Software Foundation; either version 2 of the License, or +dnl (at your option) any later version. dnl -dnl Usage example: -dnl configure.ac: -dnl GNOME_CODE_COVERAGE +dnl This program is distributed in the hope that it will be useful, but +dnl WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl General Public License for more details. dnl -dnl Makefile.am: -dnl @GNOME_CODE_COVERAGE_RULES@ -dnl my_program_LIBS = … $(CODE_COVERAGE_LDFLAGS) … -dnl my_program_CFLAGS = … $(CODE_COVERAGE_CFLAGS) … +dnl You should have received a copy of the GNU General Public License +dnl along with this program; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +dnl 02111-1307, USA. dnl -dnl This results in a “check-code-coverage” rule being added to any Makefile.am -dnl which includes “@GNOME_CODE_COVERAGE_RULES@” (assuming the module has been -dnl configured with --enable-code-coverage). Running `make check-code-coverage` -dnl in that directory will run the module’s test suite (`make check`) and build -dnl a code coverage report detailing the code which was touched, then print the -dnl URI for the report. +dnl As a special exception to the GNU General Public License, if you +dnl distribute this file as part of a program that contains a +dnl configuration script generated by Autoconf, you may include it under +dnl the same distribution terms that you use for the rest of that +dnl program. -AU_DEFUN([GNOME_CODE_COVERAGE],[ - AX_CODE_COVERAGE - GNOME_CODE_COVERAGE_RULES=$CODE_COVERAGE_RULES +dnl PKG_PREREQ(MIN-VERSION) +dnl ----------------------- +dnl Since: 0.29 +dnl +dnl Verify that the version of the pkg-config macros are at least +dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's +dnl installed version of pkg-config, this checks the developer's version +dnl of pkg.m4 when generating configure. +dnl +dnl To ensure that this macro is defined, also add: +dnl m4_ifndef([PKG_PREREQ], +dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) +dnl +dnl See the "Since" comment for each macro you use to see what version +dnl of the macros you require. +m4_defun([PKG_PREREQ], +[m4_define([PKG_MACROS_VERSION], [0.29]) +m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, + [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) +])dnl PKG_PREREQ - AC_SUBST([GNOME_CODE_COVERAGE_RULES]) - m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([GNOME_CODE_COVERAGE_RULES])]) -], -[[$0: This macro is deprecated. You should use AX_CODE_COVERAGE instead and -replace uses of GNOME_CODE_COVERAGE_RULES with CODE_COVERAGE_RULES. -See: http://www.gnu.org/software/autoconf-archive/ax_code_coverage.html#ax_code_coverage]]) +dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) +dnl ---------------------------------- +dnl Since: 0.16 +dnl +dnl Search for the pkg-config tool and set the PKG_CONFIG variable to +dnl first found in the path. Checks that the version of pkg-config found +dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is +dnl used since that's the first version where most current features of +dnl pkg-config existed. +AC_DEFUN([PKG_PROG_PKG_CONFIG], +[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) +m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) +m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) +AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) +AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) +AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) -# gnome-compiler-flags.m4 -# -# serial 4 -# +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=m4_default([$1], [0.9.0]) + AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + PKG_CONFIG="" + fi +fi[]dnl +])dnl PKG_PROG_PKG_CONFIG -dnl GNOME_COMPILE_WARNINGS -dnl Turn on many useful compiler warnings and substitute the result into -dnl WARN_CFLAGS -dnl For now, only works on GCC -dnl Pass the default value of the --enable-compile-warnings configure option as -dnl the first argument to the macro, defaulting to 'yes'. -dnl Additional warning/error flags can be passed as an optional second argument. +dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +dnl ------------------------------------------------------------------- +dnl Since: 0.18 dnl -dnl For example: GNOME_COMPILE_WARNINGS([maximum],[-Werror=some-flag -Wfoobar]) -AU_DEFUN([GNOME_COMPILE_WARNINGS],[ - dnl ****************************** - dnl More compiler warnings - dnl ****************************** +dnl Check to see whether a particular set of modules exists. Similar to +dnl PKG_CHECK_MODULES(), but does not set variables or print errors. +dnl +dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +dnl only at the first occurence in configure.ac, so if the first place +dnl it's called might be skipped (such as if it is within an "if", you +dnl have to call PKG_CHECK_EXISTS manually +AC_DEFUN([PKG_CHECK_EXISTS], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +if test -n "$PKG_CONFIG" && \ + AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then + m4_default([$2], [:]) +m4_ifvaln([$3], [else + $3])dnl +fi]) - AC_ARG_ENABLE(compile-warnings, - AS_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@], - [Turn on compiler warnings]),, - [enable_compile_warnings="m4_default([$1],[yes])"]) +dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) +dnl --------------------------------------------- +dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting +dnl pkg_failed based on the result. +m4_define([_PKG_CONFIG], +[if test -n "$$1"; then + pkg_cv_[]$1="$$1" + elif test -n "$PKG_CONFIG"; then + PKG_CHECK_EXISTS([$3], + [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes ], + [pkg_failed=yes]) + else + pkg_failed=untried +fi[]dnl +])dnl _PKG_CONFIG + +dnl _PKG_SHORT_ERRORS_SUPPORTED +dnl --------------------------- +dnl Internal check to see if pkg-config supports short errors. +AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi[]dnl +])dnl _PKG_SHORT_ERRORS_SUPPORTED + + +dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +dnl [ACTION-IF-NOT-FOUND]) +dnl -------------------------------------------------------------- +dnl Since: 0.4.0 +dnl +dnl Note that if there is a possibility the first call to +dnl PKG_CHECK_MODULES might not happen, you should be sure to include an +dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac +AC_DEFUN([PKG_CHECK_MODULES], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl +AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl - if test "x$GCC" != xyes; then - enable_compile_warnings=no - fi +pkg_failed=no +AC_MSG_CHECKING([for $1]) - warning_flags= - realsave_CFLAGS="$CFLAGS" +_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) +_PKG_CONFIG([$1][_LIBS], [libs], [$2]) - dnl These are warning flags that aren't marked as fatal. Can be - dnl overridden on a per-project basis with -Wno-foo. - base_warn_flags=" \ - -Wall \ - -Wstrict-prototypes \ - -Wnested-externs \ - " +m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS +and $1[]_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details.]) - dnl These compiler flags typically indicate very broken or suspicious - dnl code. Some of them such as implicit-function-declaration are - dnl just not default because gcc compiles a lot of legacy code. - dnl We choose to make this set into explicit errors. - base_error_flags=" \ - -Werror=missing-prototypes \ - -Werror=implicit-function-declaration \ - -Werror=pointer-arith \ - -Werror=init-self \ - -Werror=format-security \ - -Werror=format=2 \ - -Werror=missing-include-dirs \ - -Werror=return-type \ - " +if test $pkg_failed = yes; then + AC_MSG_RESULT([no]) + _PKG_SHORT_ERRORS_SUPPORTED + if test $_pkg_short_errors_supported = yes; then + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` + else + $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - dnl Additional warning or error flags provided by the module author to - dnl allow stricter standards to be imposed on a per-module basis. - dnl The author can pass -W or -Werror flags here as they see fit. - additional_flags="m4_default([$2],[])" + m4_default([$4], [AC_MSG_ERROR( +[Package requirements ($2) were not met: - case "$enable_compile_warnings" in - no) - warning_flags="-w" - ;; - minimum) - warning_flags="-Wall" - ;; - yes|maximum|error) - warning_flags="$base_warn_flags $base_error_flags $additional_flags" - ;; - *) - AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings) - ;; - esac +$$1_PKG_ERRORS - if test "$enable_compile_warnings" = "error" ; then - warning_flags="$warning_flags -Werror" - fi +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. - dnl Check whether GCC supports the warning options - for option in $warning_flags; do - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $option" - AC_MSG_CHECKING([whether gcc understands $option]) - AC_TRY_COMPILE([], [], - has_option=yes, - has_option=no,) - CFLAGS="$save_CFLAGS" - AC_MSG_RESULT([$has_option]) - if test $has_option = yes; then - tested_warning_flags="$tested_warning_flags $option" - fi - unset has_option - unset save_CFLAGS - done - unset option - CFLAGS="$realsave_CFLAGS" - AC_MSG_CHECKING(what warning flags to pass to the C compiler) - AC_MSG_RESULT($tested_warning_flags) +_PKG_TEXT])[]dnl + ]) +elif test $pkg_failed = untried; then + AC_MSG_RESULT([no]) + m4_default([$4], [AC_MSG_FAILURE( +[The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. - AC_ARG_ENABLE(iso-c, - AS_HELP_STRING([--enable-iso-c], - [Try to warn if code is not ISO C ]),, - [enable_iso_c=no]) +_PKG_TEXT - AC_MSG_CHECKING(what language compliance flags to pass to the C compiler) - complCFLAGS= - if test "x$enable_iso_c" != "xno"; then - if test "x$GCC" = "xyes"; then - case " $CFLAGS " in - *[\ \ ]-ansi[\ \ ]*) ;; - *) complCFLAGS="$complCFLAGS -ansi" ;; - esac - case " $CFLAGS " in - *[\ \ ]-pedantic[\ \ ]*) ;; - *) complCFLAGS="$complCFLAGS -pedantic" ;; - esac - fi - fi - AC_MSG_RESULT($complCFLAGS) +To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl + ]) +else + $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS + $1[]_LIBS=$pkg_cv_[]$1[]_LIBS + AC_MSG_RESULT([yes]) + $3 +fi[]dnl +])dnl PKG_CHECK_MODULES - WARN_CFLAGS="$tested_warning_flags $complCFLAGS" - AC_SUBST(WARN_CFLAGS) -], -[[$0: This macro is deprecated. You should use AX_COMPILER_FLAGS instead and -eliminate use of --enable-iso-c. -See: http://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html#ax_compiler_flags]]) -dnl For C++, do basically the same thing. +dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +dnl [ACTION-IF-NOT-FOUND]) +dnl --------------------------------------------------------------------- +dnl Since: 0.29 +dnl +dnl Checks for existence of MODULES and gathers its build flags with +dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags +dnl and VARIABLE-PREFIX_LIBS from --libs. +dnl +dnl Note that if there is a possibility the first call to +dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to +dnl include an explicit call to PKG_PROG_PKG_CONFIG in your +dnl configure.ac. +AC_DEFUN([PKG_CHECK_MODULES_STATIC], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +_save_PKG_CONFIG=$PKG_CONFIG +PKG_CONFIG="$PKG_CONFIG --static" +PKG_CHECK_MODULES($@) +PKG_CONFIG=$_save_PKG_CONFIG[]dnl +])dnl PKG_CHECK_MODULES_STATIC -AU_DEFUN([GNOME_CXX_WARNINGS],[ - AC_ARG_ENABLE(cxx-warnings, - AS_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@] - [Turn on compiler warnings.]),, - [enable_cxx_warnings="m4_default([$1],[minimum])"]) - AC_MSG_CHECKING(what warning flags to pass to the C++ compiler) - warnCXXFLAGS= - if test "x$GXX" != xyes; then - enable_cxx_warnings=no - fi - if test "x$enable_cxx_warnings" != "xno"; then - if test "x$GXX" = "xyes"; then - case " $CXXFLAGS " in - *[\ \ ]-Wall[\ \ ]*) ;; - *) warnCXXFLAGS="-Wall -Wno-unused" ;; - esac +dnl PKG_INSTALLDIR([DIRECTORY]) +dnl ------------------------- +dnl Since: 0.27 +dnl +dnl Substitutes the variable pkgconfigdir as the location where a module +dnl should install pkg-config .pc files. By default the directory is +dnl $libdir/pkgconfig, but the default can be changed by passing +dnl DIRECTORY. The user can override through the --with-pkgconfigdir +dnl parameter. +AC_DEFUN([PKG_INSTALLDIR], +[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) +m4_pushdef([pkg_description], + [pkg-config installation directory @<:@]pkg_default[@:>@]) +AC_ARG_WITH([pkgconfigdir], + [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, + [with_pkgconfigdir=]pkg_default) +AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) +m4_popdef([pkg_default]) +m4_popdef([pkg_description]) +])dnl PKG_INSTALLDIR - ## -W is not all that useful. And it cannot be controlled - ## with individual -Wno-xxx flags, unlike -Wall - if test "x$enable_cxx_warnings" = "xyes"; then - warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual" - fi - fi - fi - AC_MSG_RESULT($warnCXXFLAGS) - AC_ARG_ENABLE(iso-cxx, - AS_HELP_STRING([--enable-iso-cxx], - [Try to warn if code is not ISO C++ ]),, - [enable_iso_cxx=no]) +dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) +dnl -------------------------------- +dnl Since: 0.27 +dnl +dnl Substitutes the variable noarch_pkgconfigdir as the location where a +dnl module should install arch-independent pkg-config .pc files. By +dnl default the directory is $datadir/pkgconfig, but the default can be +dnl changed by passing DIRECTORY. The user can override through the +dnl --with-noarch-pkgconfigdir parameter. +AC_DEFUN([PKG_NOARCH_INSTALLDIR], +[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) +m4_pushdef([pkg_description], + [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) +AC_ARG_WITH([noarch-pkgconfigdir], + [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, + [with_noarch_pkgconfigdir=]pkg_default) +AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) +m4_popdef([pkg_default]) +m4_popdef([pkg_description]) +])dnl PKG_NOARCH_INSTALLDIR - AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler) - complCXXFLAGS= - if test "x$enable_iso_cxx" != "xno"; then - if test "x$GXX" = "xyes"; then - case " $CXXFLAGS " in - *[\ \ ]-ansi[\ \ ]*) ;; - *) complCXXFLAGS="$complCXXFLAGS -ansi" ;; - esac - case " $CXXFLAGS " in - *[\ \ ]-pedantic[\ \ ]*) ;; - *) complCXXFLAGS="$complCXXFLAGS -pedantic" ;; - esac - fi - fi - AC_MSG_RESULT($complCXXFLAGS) +dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, +dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +dnl ------------------------------------------- +dnl Since: 0.28 +dnl +dnl Retrieves the value of the pkg-config variable for the given module. +AC_DEFUN([PKG_CHECK_VAR], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl - WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS" - AC_SUBST(WARN_CXXFLAGS) -], -[[$0: This macro is deprecated. You should use AX_COMPILER_FLAGS instead and -eliminate use of --enable-iso-cxx. -See: http://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html#ax_compiler_flags]]) +_PKG_CONFIG([$1], [variable="][$3]["], [$2]) +AS_VAR_COPY([$1], [pkg_cv_][$1]) + +AS_VAR_IF([$1], [""], [$5], [$4])dnl +])dnl PKG_CHECK_VAR # Copyright (C) 2002-2014 Free Software Foundation, Inc. # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pygobject-3.24.0/configure new/pygobject-3.24.1/configure --- old/pygobject-3.24.0/configure 2017-03-20 14:25:07.000000000 +0100 +++ new/pygobject-3.24.1/configure 2017-04-10 12:36:24.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for pygobject 3.24.0. +# Generated by GNU Autoconf 2.69 for pygobject 3.24.1. # # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=pygobject>. # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='pygobject' PACKAGE_TARNAME='pygobject' -PACKAGE_VERSION='3.24.0' -PACKAGE_STRING='pygobject 3.24.0' +PACKAGE_VERSION='3.24.1' +PACKAGE_STRING='pygobject 3.24.1' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=pygobject' PACKAGE_URL='https://wiki.gnome.org/Projects/PyGObject/' @@ -1414,7 +1414,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures pygobject 3.24.0 to adapt to many kinds of systems. +\`configure' configures pygobject 3.24.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1485,7 +1485,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of pygobject 3.24.0:";; + short | recursive ) echo "Configuration of pygobject 3.24.1:";; esac cat <<\_ACEOF @@ -1629,7 +1629,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -pygobject configure 3.24.0 +pygobject configure 3.24.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1907,7 +1907,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by pygobject $as_me 3.24.0, which was +It was created by pygobject $as_me 3.24.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2271,9 +2271,9 @@ PYGOBJECT_MINOR_VERSION=24 -$as_echo "#define PYGOBJECT_MICRO_VERSION 0" >>confdefs.h +$as_echo "#define PYGOBJECT_MICRO_VERSION 1" >>confdefs.h -PYGOBJECT_MICRO_VERSION=0 +PYGOBJECT_MICRO_VERSION=1 ac_config_headers="$ac_config_headers config.h" @@ -2795,7 +2795,7 @@ # Define the identity of the package. PACKAGE='pygobject' - VERSION='3.24.0' + VERSION='3.24.1' cat >>confdefs.h <<_ACEOF @@ -15102,6 +15102,9 @@ fi + # List of supported lcov versions. + lcov_version_list="1.6 1.7 1.8 1.9 1.10 1.11 1.12" + # Extract the first word of "lcov", so it can be a program name with args. set dummy lcov; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 @@ -15177,11 +15180,40 @@ - if test -z "$LCOV" ; then : + if test "$LCOV" ; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lcov version" >&5 +$as_echo_n "checking for lcov version... " >&6; } +if ${ax_cv_lcov_version+:} false; then : + $as_echo_n "(cached) " >&6 +else - as_fn_error $? "To enable code coverage reporting you must have lcov installed" "$LINENO" 5 + ax_cv_lcov_version=invalid + lcov_version=`$LCOV -v 2>/dev/null | $SED -e 's/^.* //'` + for lcov_check_version in $lcov_version_list; do + if test "$lcov_version" = "$lcov_check_version"; then + ax_cv_lcov_version="$lcov_check_version (ok)" + fi + done fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_lcov_version" >&5 +$as_echo "$ax_cv_lcov_version" >&6; } + +else + + lcov_msg="To enable code coverage reporting you must have one of the following lcov versions installed: $lcov_version_list" + as_fn_error $? "$lcov_msg" "$LINENO" 5 + +fi + + case $ax_cv_lcov_version in + ""|invalid) + lcov_msg="You must have one of the following versions of lcov: $lcov_version_list (found: $lcov_version)." + as_fn_error $? "$lcov_msg" "$LINENO" 5 + LCOV="exit 0;" + ;; + esac if test -z "$GENHTML" ; then : @@ -15192,7 +15224,7 @@ CODE_COVERAGE_CPPFLAGS="-DNDEBUG" CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" - CODE_COVERAGE_LIBS="-lgcov" + CODE_COVERAGE_LDFLAGS="-lgcov" CODE_COVERAGE_LDFLAGS="$CODE_COVERAGE_LIBS" @@ -15201,34 +15233,6 @@ - CODE_COVERAGE_RULES_CHECK=' - -$(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check - $(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture -' - CODE_COVERAGE_RULES_CAPTURE=' - $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS) - $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS) - -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp - $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS) - @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html" -' - CODE_COVERAGE_RULES_CLEAN=' -clean: code-coverage-clean -distclean: code-coverage-clean -code-coverage-clean: - -$(LCOV) --directory $(top_builddir) -z - -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY) - -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete -' - -else - - CODE_COVERAGE_RULES_CHECK=' - @echo "Need to reconfigure with --enable-code-coverage" -' - CODE_COVERAGE_RULES_CAPTURE="$CODE_COVERAGE_RULES_CHECK" - CODE_COVERAGE_RULES_CLEAN='' - fi CODE_COVERAGE_RULES=' @@ -15308,15 +15312,37 @@ code_coverage_sanitize = $(subst -,_,$(subst .,_,$(1))) # Use recursive makes in order to ignore errors during check -check-code-coverage:'"$CODE_COVERAGE_RULES_CHECK"' +check-code-coverage: +ifeq ($(CODE_COVERAGE_ENABLED),yes) + -$(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) -k check + $(A''M_V_at)$(MAKE) $(AM_MAKEFLAGS) code-coverage-capture +else + @echo "Need to reconfigure with --enable-code-coverage" +endif # Capture code coverage data -code-coverage-capture: code-coverage-capture-hook'"$CODE_COVERAGE_RULES_CAPTURE"' +code-coverage-capture: code-coverage-capture-hook +ifeq ($(CODE_COVERAGE_ENABLED),yes) + $(code_coverage_v_lcov_cap)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(call code_coverage_sanitize,$(PACKAGE_NAME)-$(PACKAGE_VERSION))" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_OPTIONS) + $(code_coverage_v_lcov_ign)$(LCOV) $(code_coverage_quiet) $(addprefix --directory ,$(CODE_COVERAGE_DIRECTORY)) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_LCOV_SHOPTS) $(CODE_COVERAGE_LCOV_RMOPTS) + -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp + $(code_coverage_v_genhtml)LANG=C $(GENHTML) $(code_coverage_quiet) $(addprefix --prefix ,$(CODE_COVERAGE_DIRECTORY)) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS) + @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html" +else + @echo "Need to reconfigure with --enable-code-coverage" +endif # Hook rule executed before code-coverage-capture, overridable by the user code-coverage-capture-hook: -'"$CODE_COVERAGE_RULES_CLEAN"' +ifeq ($(CODE_COVERAGE_ENABLED),yes) +clean: code-coverage-clean +distclean: code-coverage-clean +code-coverage-clean: + -$(LCOV) --directory $(top_builddir) -z + -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY) + -find . \( -name "*.gcda" -o -name "*.gcno" -o -name "*.gcov" \) -delete +endif GITIGNOREFILES ?= GITIGNOREFILES += $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY) @@ -16026,7 +16052,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by pygobject $as_me 3.24.0, which was +This file was extended by pygobject $as_me 3.24.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16093,7 +16119,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -pygobject config.status 3.24.0 +pygobject config.status 3.24.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pygobject-3.24.0/configure.ac new/pygobject-3.24.1/configure.ac --- old/pygobject-3.24.0/configure.ac 2017-03-20 14:23:48.000000000 +0100 +++ new/pygobject-3.24.1/configure.ac 2017-04-10 12:32:36.000000000 +0200 @@ -18,7 +18,7 @@ dnl the pygobject version number m4_define(pygobject_major_version, 3) m4_define(pygobject_minor_version, 24) -m4_define(pygobject_micro_version, 0) +m4_define(pygobject_micro_version, 1) m4_define(pygobject_version, pygobject_major_version.pygobject_minor_version.pygobject_micro_version) dnl versions of packages we require ... diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pygobject-3.24.0/gi/pygi-info.c new/pygobject-3.24.1/gi/pygi-info.c --- old/pygobject-3.24.0/gi/pygi-info.c 2017-01-25 09:03:08.000000000 +0100 +++ new/pygobject-3.24.1/gi/pygi-info.c 2017-04-10 12:32:36.000000000 +0200 @@ -1709,7 +1709,7 @@ _wrap_g_constant_info_get_value (PyGIBaseInfo *self) { GITypeInfo *type_info; - GIArgument value; + GIArgument value = {0}; PyObject *py_value; gboolean free_array = FALSE;
