[Mesa-dev] [PATCH mesa] build systems: uniformize git_sha1.h generation
Matt Turner
mattst88 at gmail.com
Tue Jun 27 17:11:14 UTC 2017
On Tue, Jun 27, 2017 at 5:47 AM, Eric Engestrom
<eric.engestrom at imgtec.com> wrote:
> Signed-off-by: Eric Engestrom <eric.engestrom at imgtec.com>
> ---
> Note: Autotools and SCons are tested, but Android isn't.
> ---
> git_sha1_gen.sh | 13 +++++++++++++
> src/Makefile.am | 13 +------------
> src/SConscript | 28 ++++++++--------------------
> src/mesa/Android.libmesa_git_sha1.mk | 7 +------
> 4 files changed, 23 insertions(+), 38 deletions(-)
> create mode 100755 git_sha1_gen.sh
>
> diff --git a/git_sha1_gen.sh b/git_sha1_gen.sh
> new file mode 100755
> index 0000000000..9630067be0
> --- /dev/null
> +++ b/git_sha1_gen.sh
> @@ -0,0 +1,13 @@
> +#!/usr/bin/env bash
> +set -eu
> +
> +# run git from the sources directory
> +cd "$(dirname "${BASH_SOURCE[0]}")"
> +
> +# don't print anything if git fails
> +if ! git_sha1=$(git rev-parse --short=10 HEAD)
> +then
> + exit
> +fi
> +
> +printf '#define MESA_GIT_SHA1 "git-%s"\n' "$git_sha1"
> diff --git a/src/Makefile.am b/src/Makefile.am
> index df912c442a..e49b3bd9cf 100644
> --- a/src/Makefile.am
> +++ b/src/Makefile.am
> @@ -21,18 +21,7 @@
>
> .PHONY: git_sha1.h.tmp
> git_sha1.h.tmp:
> - @# Don't assume that $(top_srcdir)/.git is a directory. It may be
> - @# a gitlink file if $(top_srcdir) is a submodule checkout or a linked
> - @# worktree.
> - @# If we are building from a release tarball copy the bundled header.
> - @touch git_sha1.h.tmp
> - @if test -e $(top_srcdir)/.git; then \
> - if which git > /dev/null; then \
> - printf '#define MESA_GIT_SHA1 "git-%s"\n' \
> - `git --git-dir=$(top_srcdir)/.git rev-parse --short=10 HEAD` \
> - > git_sha1.h.tmp ; \
> - fi \
> - fi
The purpose of the .tmp file is to prevent unnecessary rebuilds (and
relinks) when the SHA1 doesn't change.
It looks like you're removing that?
More information about the mesa-dev
mailing list