On 12/28/2012 03:13 PM, Peter Rosin wrote: > 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.
You didn't really document how to wire up makefiles to properly inject a decent --fallback option into the script; but I'm at least satisfied that this patch in isolation doesn't break existing packages that don't use the --falback option, while leaving the door open for packages that DO want to support the use of --fallback. As I understand it, the idea is that you have a shared folder that can be accessed via multiple machines; on some machines, you have git, and can therefore do a git checkout that populates Makefile with the right information for use as a fallback. On other machines you lack git but can see the .git directory in the shared directory; since it is still a development build and you never ran 'make dist', you still want to have the effect of a devel checkout, rather than building from a tarball, and if all that git was needed for can be injected from the machine that has git installed, then the other machine can benefit from the --falback. I just now noticed v5, so I'll check that out before pushing anything. I will point out that your script introduces yet another instance of a non-portable construct: test -z "$fallback" Per the Autoconf manual: Posix also says that `test ! "STRING"', `test -n "STRING"' and `test -z "STRING"' work with any string, but many shells (such as Solaris, AIX 3.2, UNICOS 10.0.0.6, Digital Unix 4, etc.) get confused if STRING looks like an operator: $ test -n = test: argument expected $ test ! -n test: argument expected $ test -z ")"; echo $? 0 However, this idiom is already in use elsewhere in git-version-gen, so it should be fixed in an independent patch. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature