Update to 3.14.0:
macros2: Update links to macros in the autoconf-archive
Now that the macros have been committed upstream, we can link to their
manual pages rather than the bug reports.
macros2: Add support for APPSTREAM_XML macro
And request that appstream-xml.m4 get installed if missing.
macros2: Deprecate GNOME_CODE_COVERAGE
The autoconf-archive AX_CODE_COVERAGE macro should be used instead.
macros2: Deprecate GNOME_MAINTAINER_MODE_DEFINES
The modules which it deprecates are all ancient and unused. Many of the
modules which use GNOME_MAINTAINER_MODE_DEFINES don’t make use of the
DISABLE_DEPRECATED variable it generates anyway.
If a module really wants maintainer mode, they should use
AM_MAINTAINER_MODE. Otherwise, they should just eliminate this call
macros2: Deprecate GNOME_DEBUG_CHECK
The autoconf-archive AX_DEBUG_CHECK macro should be used instead, or the
macro contents should just be substituted into configure.ac directly,
since it’s so simple.
build: Remove a non-existent file from EXTRA_DIST
compiler-flags: allow suppressing warnings
Some projects want to see no warnings at all, for example, projects that
are written in Vala. But GNOME_COMPILE_WARNINGS([no]) is a no-op that
does nothing to turn off the default compiler warnings. Presumably if
you ask for no compiler warnings, you want no compiler warnings, so
suppress them in this case instead.
code-coverage: Support lcov 1.11
macros2: Remove FORBIDDEN_M4MACROS infrastructure
It was completely outdated and unused. The REQUIRED_M4MACROS
infrastructure is, however, still in use.
macros2: Remove outdated README file
doc: Move doc/usage.txt to README and update
We don’t like references to CVS any more. Update the guidelines to no
longer reference GNOME_COMMON_INIT.
make program_VERSION a local variable
Otherwise we may end up overriding what was manually set in the
Update to 3.12.0:
gnome-autogen.sh: Fix check if stdin is a tty
Commit 7f977b021462 introduced a check if stdin is ins't a tty, and
prevent printing terminal codes in this case. But the check was wrong
and always failed.
gnome-autogen: require automake 1.11.2
This is the version of automake that introduced ACLOCAL_PATH support, so
make sure that we have it before attempting to configure the package.
gnome-common: use ACLOCAL_PATH over ACLOCAL_FLAGS
jhbuild has set this variable for more than two years.
gnome-autogen.sh: correct IFS value
Due to a likely copy-paste mistake, the default value of IFS was being
set to 9 spaces instead of a tab and a space. Fix that.
gnome-autogen.sh: Check for appdata-xml.m4 with APPDATA_XML
compiler-flags: Simplify a case statement slightly
compiler-flags: Replace deprecated AC_HELP_STRING with AS_HELP_STRING
Read the dirlist file unconditionally
Update to 3.10.0:
compiler-flags: Add a #serial line
As suggested in bug #707475, this will ensure the latest version of
gnome-compiler-flags.m4 is used if conflicting versions are found in
different directories in the autoconf search path.
compiler-flags: Add an optional second argument for custom warnings
This allows module authors to choose to enforce stricter warnings on
a per-module basis, to avoid the situation where an outside
contributor submits a patch which introduces warnings the maintainer
has enabled locally.
Run intltool before autoreconf so intltool.m4 is picked up by aclocal.
gnome-autogen.sh: run glib-gettexize if using GLib gettext
This code was removed by error in
gnome-autogen.sh: Check only for autoreconf
autoconf, automake, libtool, gettext are already checked by autoreconf
Rename configure.in to configure.ac
gnome-autogen: Do not use sed to get the AC_CONFIG_MACRO_DIR directory
macros2/gnome-autogen.sh: Create m4 directory if it doesnt exits
This is a automake bug fixed in automake 1.13.2
gnome-autogen.sh: Use autoreconf
instead autopoint/libtoolize/autoconf/automake manually
Add support for automake 1.14
code-coverage: fix conditionalization
The "make clean" rule added by gnome-code-coverage.m4 was not
conditionalized (making it spew errors on "make clean" when built
without coverage support, since $(LCOV) expanded to ""), and the other
rules were conditionalized incorrectly (testing "ifdef
CODE_COVERAGE_ENABLED", when that variable was always set, just
sometimes to "no"). Fix both problems.
Add support for lcov 1.10
COPYING: add GPL-2 license file
Finally declare gnome-common to be GPL 2+, by doing some source code
These files we can effectively ignore:
The build files you could argue are boilerplate/uncopyrightable:
So that leaves:
Appeared in e16ea58db92e05b9720acdc6992175ec346dfc91. Appears to have
been copy-pasted from scrollkeeper-example2, LGPLv2.1.
Can be traced back to gnome-libs 88f7376472d3ee54329213c118b46225703d8223, which
Synced with gnome-core as of 425e5cc9aad003c9f64d43f2d3f15e04a97db854, so
The long-standing assumption is that gnome-common was GPLv2+, so use that
license. Finally the tyranny of unclear licensing is over!
build: remove useless (empty or ancient) files that we don't need
Add support for automake 1.13.
Better support of using AUTOCONF environment variable
When I launch gnome-autogen.sh by telling it to use a version of
autoconf that is at a particular path -- by using the AUTOCONF
environment variable -- I can see that there is a spot in the script
that fails to honour that variable. I thus get the error message
(that I trim to just keep the relevant part):
AUTOCONF=/my/autoconf AUTOM4TE=/my/autom4te /bin/sh -x \
+++ find_configure_files /home/dodji/devel/git/gdl/master
+++ test -f /home/dodji/devel/git/gdl/master/configure.ac
+++ test -f /home/dodji/devel/git/gdl/master/configure.in
+++ test x/home/dodji/devel/git/gdl/master/configure.in '!=' x
+++ echo /home/dodji/devel/git/gdl/master/configure.in
+++ autoconf -t 'AC_CONFIG_SUBDIRS:$1' \
+++ read dir
/home/dodji/devel/git/gdl/master/configure.in:8: error: Autoconf version \
2.65 or higher is required
/home/dodji/devel/git/gdl/master/configure.in:8: the top level
autom4te: /bin/m4 failed with exit status: 63
I think the problem is that the find_configure_files function uses
'autoconf' directly instead of using $AUTOCONF. So it's taking the
autoconf binary that is in my path, and that one doesn't satisfy the
version requirement of the configure.in script template that is in.
The patch below fixes that essentially by s/autoconf/$AUTOCONF there,
and also by moving the definition point of the AUTOCONF variable --
that is done by a call to version_check -- before the first spot that
actually uses it.
It's worth noting that this bug appears to have been introduced by the
patch attached to bug #510713.
Tested on my Fedora Rawhide system.
* macros2/gnome-autogen.sh (find_configure_files): Use the
AUTOCONF variable, rather than calling the autoconf program
directly. Remove the now useless comment.
(<at global scope>): Move the definition of the AUTOCONF variable
before its first use.
compiler-warnings: Fix tabs->spaces
compiler-warnings: Drop -Wdeclaration-after-statement
Some GNOME modules want the ability to use C99, let's not hamper them.
compiler-warnings: Drop -Wno-sign-comare
It's not part of -Wall, and we're not explicitly turning it on here,
so there's no point in turning it off, since it's not on.
Additionally, if a given module did want it on, it's clearer if
the compiler flags don't have -Wno-sign-compare -Wsign-compare.
compiler-warnings: Move -Wnested-externs to the always-on warning set
Since there's no reason to have it different for yes/maximum.
compiler-warnings: code cleanup: Extract common warnings into variables
Will make future refactoring clearer, and also we have comments now.
compiler-warnings: Drop -Waggregate-return
This trips up gnome-desktop using things like XSyncValue, and while
it's possible to avoid, we shouldn't punish people who are pushed to
use structures as return values by external APIs.
Returning a two-element structure is not a big deal.
compiler-warnings: cosmetic cleanup: Put each warning on own line
So that further patches are more readable.
Add lots of warnings to GNOME_COMPILE_WARNINGS
Following Colin Walters' thread on desktop-devel-list:
https://mail.gnome.org/archives/desktop … 00100.html
Add a selection of more strict warnings to the default level of
GNOME_COMPILE_WARNINGS. Check all the warnings by passing them to GCC,
and ignore those which fail. Set the severity of some of the warnings to
errors, so that particularly bad code is rejected (set the warning level
to ‘minimum’ is you wish to avoid this behaviour). Fixes bug 568546 and
code-coverage: Relicence to LGPLv2.1+
As gnome-common is widely used, it’s useful for it to have a fairly liberal
licence. This relicences the gnome-code-coverage.m4 file from GPLv3+ to
Permission has been obtained (by private e-mail) from the other contributors:
• Christian Persch <firstname.lastname@example.org>
• Xan Lopez <email@example.com>
See also: https://bugzilla.gnome.org/show_bug.cgi?id=133689
code coverage: Quiet lcov and add extra ignore patterns
Make lcov be quiet if V=0, and add a new CODE_COVERAGE_IGNORE_PATTERN
variable to be able to add extra files to ignore in code coverage reporting.
Post release version bump