* build-aux/gendocs.sh (version):
* doc/gendocs_template:
* doc/gendocs_template_min:
* doc/gnulib.texi:
* lib/version-etc.c (COPYRIGHT_YEAR):
Update copyright dates by hand in templates and the like.
* all files: Run 'make update-copyright'.
Problem reported by Mosè Giordano in:
http://lists.gnu.org/archive/html/bug-gnulib/2016-05/msg00012.html
* build-aux/git-version-gen: Avoid undefined behavior if invoked
with --prefix or --fallback but without a later argument. While
we're at it, omit unnecessary quotes.
* build-aux/announce-gen, build-aux/bootstrap:
* build-aux/do-release-commit-and-tag, build-aux/git-version-gen:
* build-aux/gitlog-to-changelog, build-aux/gnu-web-doc-update:
* build-aux/gnupload, build-aux/mkinstalldirs:
* build-aux/move-if-change, build-aux/prefix-gnulib-mk:
* build-aux/update-copyright, build-aux/useless-if-before-free:
* build-aux/vc-list-files, tests/test-strftime.c:
Use TZ="UTC0", not TZ="UTC". Either works on GNU platforms,
but POSIX says the behavior of TZ="UTC" is undefined.
* build-aux/gendocs.sh (version):
* doc/gendocs_template:
* doc/gendocs_template_min:
* doc/gnulib.texi:
* lib/version-etc.c (COPYRIGHT_YEAR):
Update copyright dates by hand in templates and the like.
* all files: Run 'make update-copyright'.
Revert commit bedd7833 as it breaks `make dist` in Inetutils
at least, due to the interdependencies with top/GNUMakefile,
which depend on the tag prefixes. This results in `make dist`
inducing a new call to autoconf where a simple tar-ball build
would be expected.
* build-aux/git-version-gen: If fallback string is empty,
but git is available, use "git describe --always" to extract
a revision, and prefix it with "g". This is much better than
responding "UNKNOWN" and it applies to shallow clones!
On platforms with CRLF endings (such as OS/2), use of 'echo' may
leave behind an unwanted CR.
* build-aux/git-version-gen: Use printf instead of echo and tr.
Signed-off-by: Eric Blake <eblake@redhat.com>
Autoconf warns that there are some broken shells where 'test -z "$x"'
gives 0 exit status if $x is ')'. Since some of our strings come
from command-line arguments, and since git-version-gen is run on
end-user machines where sh might be broken, we should be robust to
abuse. Some of the instances replaced here are provably safe,
and could not confuse even broken 'test', but it is easier to
replace all instances of test -[nz].
* build-aux/git-version-gen: Prefer portable test spelling, since
git-version-gen is run on more than just developer machines.
Signed-off-by: Eric Blake <eblake@redhat.com>
When building in a git checkout, but from a system lacking git, it
is useful to fall back to the version determined when the git
checkout was last used from a system sporting git.
* build-aux/git-version-gen: Add support for the new option --fallback,
which comes into play when there is no $tarball_version_file and
git is not working.
(scriptversion): Update.
Copyright-paperwork-exempt: yes
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* build-aux/git-version-gen: In the how-to-use comment, document
that EXTRA_DIST must include .version. Otherwise, "make distcheck"
will fail when run from an unpacked distribution tarball.
* build-aux/git-version-gen: Don't run any git commands when the
version string comes from .tarball-version. Prior to this, we
would run git update-index --refresh even from a just-unpacked
tarball directory, and that could affect a .git/ directory in a
parent of the build directory. Reported by Mike Frysinger.
* build-aux/git-version-gen: Rather than leaking a "fatal" error
from git and proceeding as if it had succeeded but printed no SHA1
checksums, suppress the diagnostic and handle the failure.
Reported by Bruce Korb in http://marc.info/?l=git&m=129399145930450&w=2
* build-aux/git-version-gen: When the required .tarball-version file
was missing or unreadable, you might see the diagnostic from "cat",
but no trace of the name of the invoking script. Now, you still see
the diagnostic from cat, but also get one from "git-version-gen: ".
Inspired by a patch from Bruce Korb.
* build-aux/git-version-gen: Reject a git version string
if there are no commits associated with the current directory.
This avoids an unlikely false-positive (unrelated dir whose parent
repository also contains a tag matching v*), as pointed out
by Giuseppe Scrivano in
http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/21843/focus=23664
* build-aux/git-version-gen (tag_sed_script): New variable. Use it to
transform the output of "git describe" to the canonical form.
* top/GNUmakefile (_curr-ver): Pass $(git-version-gen-tag-sed-script) as
a second argument to `git-version-gen'.
* build-aux/git-version-gen (dirty): Use literal rather than tying
ourselves to ascii.
Reported by Steve Goetze.
Signed-off-by: Eric Blake <eblake@redhat.com>
* build-aux/git-version-gen: Use git update-index --refresh, not
"git status". With some versions of git, "git status" would fail
to update the index and result in an unwarranted "-dirty" suffix.
Timestamps are useful, particularly for files copied into other
packages, to see how long since a file has forked.
* build-aux/git-version-gen (scriptversion): Force UTC.
* build-aux/bootstrap (scriptversion): New variable.
Signed-off-by: Eric Blake <eblake@redhat.com>
* top/GNUmakefile (_dummy): Also delete .version when rebuilding
version string.
* build-aux/git-version-gen: Improve documentation.
Signed-off-by: Eric Blake <ebb9@byu.net>
* build-aux/git-version-gen: If using the older two part flavor of
git version then recreate the third part now present in the
newer three part flavor of git describe.
* build-aux/git-version-gen: Add comments.
Change the first '-' to '.' in the snapshot version string,
e.g., 6.9-377-08144 -> 6.9.377-08144
Remove first parameter.
Don't declare a version "-dirty" merely because a time
stamp has changed.