automake: move the git_sha1.h rule a level up

This way we can reuse the header from other places like -
src/intel/vulkan and src/gallium. Only the former is hooked up atm.

Make sure .gitignore is updated, as well as all the users (the mesa
code does not need any changes).

Also ensure that the file is always created by adding it to the
BUILT_SOURCES target.

Cc: Jason Ekstrand <jason.ekstrand@intel.com>
Cc: Kristian Høgsberg Kristensen <krh@bitplanet.net>
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
This commit is contained in:
Emil Velikov
2016-05-30 12:09:04 +01:00
committed by Emil Velikov
parent 13faddb6b8
commit 4cd9cd6abc
6 changed files with 30 additions and 28 deletions

2
.gitignore vendored
View File

@@ -48,3 +48,5 @@ Makefile
Makefile.in
.install-mesa-links
.install-gallium-links
/src/git_sha1.h
/src/git_sha1.h.tmp

View File

@@ -19,6 +19,31 @@
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.
.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.
@touch git_sha1.h.tmp
@if test -e $(top_srcdir)/.git; then \
if which git > /dev/null; then \
git --git-dir=$(top_srcdir)/.git log -n 1 --oneline | \
sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
> git_sha1.h.tmp ; \
fi \
fi
git_sha1.h: git_sha1.h.tmp
@echo "updating git_sha1.h"
@if ! cmp -s git_sha1.h.tmp git_sha1.h; then \
mv git_sha1.h.tmp git_sha1.h ;\
else \
rm git_sha1.h.tmp ;\
fi
BUILT_SOURCES = git_sha1.h
CLEANFILES = $(BUILT_SOURCES)
SUBDIRS = . gtest util mapi/glapi/gen mapi
# include only conditionally ?

View File

@@ -28,7 +28,7 @@
#include <fcntl.h>
#include "anv_private.h"
#include "mesa/main/git_sha1.h"
#include "git_sha1.h"
#include "util/strtod.h"
#include "util/debug.h"

View File

@@ -36,28 +36,6 @@ endif
gldir = $(includedir)/GL
gl_HEADERS = $(top_srcdir)/include/GL/*.h
.PHONY: main/git_sha1.h.tmp
main/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.
@touch main/git_sha1.h.tmp
@if test -e $(top_srcdir)/.git; then \
if which git > /dev/null; then \
git --git-dir=$(top_srcdir)/.git log -n 1 --oneline | \
sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
> main/git_sha1.h.tmp ; \
fi \
fi
main/git_sha1.h: main/git_sha1.h.tmp
@echo "updating main/git_sha1.h"
@if ! cmp -s main/git_sha1.h.tmp main/git_sha1.h; then \
mv main/git_sha1.h.tmp main/git_sha1.h ;\
else \
rm main/git_sha1.h.tmp ;\
fi
include Makefile.sources
EXTRA_DIST = \
@@ -80,15 +58,13 @@ EXTRA_DIST = \
BUILT_SOURCES = \
main/get_hash.h \
main/format_info.h \
main/git_sha1.h \
main/format_pack.c \
main/format_unpack.c \
program/program_parse.tab.c \
program/lex.yy.c
CLEANFILES = \
$(BUILT_SOURCES) \
program/program_parse.tab.h \
main/git_sha1.h.tmp
program/program_parse.tab.h
PYTHON_GEN = $(AM_V_GEN)$(PYTHON2) $(PYTHON_FLAGS)

View File

@@ -642,6 +642,7 @@ MESA_GALLIUM_FILES = \
INCLUDE_DIRS = \
-I$(top_srcdir)/include \
-I$(top_builddir)/src \
-I$(top_srcdir)/src \
-I$(top_builddir)/src/compiler/nir \
-I$(top_srcdir)/src/mesa \

View File

@@ -1,8 +1,6 @@
api_exec.c
dispatch.h
enums.c
git_sha1.h
git_sha1.h.tmp
remap_helper.h
get_hash.h
get_hash.h.tmp