[Mesa-dev] [PATCH] svga: fix git_sha1.h include path in Android.mk

Mauro Rossi issor.oruam at gmail.com
Tue Jun 6 21:28:33 UTC 2017


And here is last (v3) version tested by building nougat-x86

>From 052df48ae71b82b04ed8f634101d0ec919b497e5 Mon Sep 17 00:00:00 2001
From: Mauro Rossi <issor.oruam at gmail.com>
Date: Tue, 6 Jun 2017 23:15:05 +0200
Subject: [PATCH 1/5] svga: fix git_sha1.h include path in Android.mk (v3)

Adds libmesa_git_sha1 static (dummy) library to generate git_sha1.h
with some polishing to header dependency on .git/HEAD and scripted rules.

The now redundant generation rules are removed from Android.gen.mk
libmesa_git_sha1 whole static depedency is added to libmesa_pipe_svga,
libmesa_dricore and libmesa_st_mesa modules

Fixes the following building error:

external/mesa/src/gallium/drivers/svga/svga_screen.c:26:10:
fatal error: 'git_sha1.h' file not found
         ^
1 error generated.

Fixes: 1ce3a27 ("svga: Add the ability to log messages to
vmware.log on the host.")
---
 src/gallium/drivers/svga/Android.mk  |  2 ++
 src/mesa/Android.gen.mk              | 12 --------
 src/mesa/Android.libmesa_dricore.mk  |  3 +-
 src/mesa/Android.libmesa_git_sha1.mk | 59 ++++++++++++++++++++++++++++++++++++
 src/mesa/Android.libmesa_st_mesa.mk  |  3 +-
 src/mesa/Android.mk                  |  1 +
 6 files changed, 66 insertions(+), 14 deletions(-)
 create mode 100644 src/mesa/Android.libmesa_git_sha1.mk

diff --git a/src/gallium/drivers/svga/Android.mk
b/src/gallium/drivers/svga/Android.mk
index c50743d509..9ed837fb22 100644
--- a/src/gallium/drivers/svga/Android.mk
+++ b/src/gallium/drivers/svga/Android.mk
@@ -34,6 +34,8 @@ LOCAL_C_INCLUDES := $(LOCAL_PATH)/include

 LOCAL_MODULE := libmesa_pipe_svga

+LOCAL_STATIC_LIBRARIES += libmesa_git_sha1
+
 include $(GALLIUM_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)

diff --git a/src/mesa/Android.gen.mk b/src/mesa/Android.gen.mk
index 5f1c7ebaf9..366a6b1036 100644
--- a/src/mesa/Android.gen.mk
+++ b/src/mesa/Android.gen.mk
@@ -53,8 +53,6 @@ LOCAL_C_INCLUDES += $(intermediates)/x86
 endif
 endif

-sources += main/git_sha1.h
-
 sources := $(addprefix $(intermediates)/, $(sources))

 LOCAL_GENERATED_SOURCES += $(sources)
@@ -71,16 +69,6 @@ define es-gen
  $(hide) $(PRIVATE_SCRIPT) $(1) $(PRIVATE_XML) > $@
 endef

-$(intermediates)/main/git_sha1.h:
- @mkdir -p $(dir $@)
- @echo "GIT-SHA1: $(PRIVATE_MODULE) <= git"
- $(hide) touch $@
- $(hide) if which git > /dev/null; then \
- git --git-dir $(PRIVATE_PATH)/../../.git log -n 1 --oneline | \
- sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
- > $@; \
- fi
-
 matypes_deps := \
  $(BUILD_OUT_EXECUTABLES)/mesa_gen_matypes$(BUILD_EXECUTABLE_SUFFIX) \
  $(LOCAL_PATH)/main/mtypes.h \
diff --git a/src/mesa/Android.libmesa_dricore.mk
b/src/mesa/Android.libmesa_dricore.mk
index 599b9ccd71..c7715a50c9 100644
--- a/src/mesa/Android.libmesa_dricore.mk
+++ b/src/mesa/Android.libmesa_dricore.mk
@@ -65,7 +65,8 @@ LOCAL_GENERATED_SOURCES += \
  $(MESA_GEN_GLSL_H)

 LOCAL_WHOLE_STATIC_LIBRARIES += \
- libmesa_program
+ libmesa_program \
+ libmesa_git_sha1

 include $(LOCAL_PATH)/Android.gen.mk
 include $(MESA_COMMON_MK)
diff --git a/src/mesa/Android.libmesa_git_sha1.mk
b/src/mesa/Android.libmesa_git_sha1.mk
new file mode 100644
index 0000000000..0fd176bf7d
--- /dev/null
+++ b/src/mesa/Android.libmesa_git_sha1.mk
@@ -0,0 +1,59 @@
+# Mesa 3-D graphics library
+#
+# Copyright (C) 2017 Mauro Rossi <issor.oruam at gmail.com>
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+# DEALINGS IN THE SOFTWARE.
+
+# ----------------------------------------------------------------------
+# libmesa_git_sha1
+# ----------------------------------------------------------------------
+
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libmesa_git_sha1
+
+LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+intermediates := $(call local-generated-sources-dir)
+
+# dummy.c source file is generated to meet the build system's rules.
+LOCAL_GENERATED_SOURCES += $(intermediates)/dummy.c
+
+$(intermediates)/dummy.c:
+ @mkdir -p $(dir $@)
+ @echo "Gen Dummy: $(PRIVATE_MODULE) <= $(notdir $(@))"
+ $(hide) touch $@
+
+LOCAL_GENERATED_SOURCES += $(addprefix $(intermediates)/, git_sha1.h)
+
+$(intermediates)/git_sha1.h: $(wildcard $(MESA_TOP)/.git/logs/HEAD)
+ @mkdir -p $(dir $@)
+ @echo "GIT-SHA1: $(PRIVATE_MODULE) <= git"
+ $(hide) touch $@
+ $(hide) if which git > /dev/null; then \
+ git --git-dir $(MESA_TOP)/.git log -n 1 --oneline | \
+ sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
+ > $@; \
+ fi
+
+LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
+
+include $(MESA_COMMON_MK)
+include $(BUILD_STATIC_LIBRARY)
diff --git a/src/mesa/Android.libmesa_st_mesa.mk
b/src/mesa/Android.libmesa_st_mesa.mk
index de2a60a70e..ddfd03059c 100644
--- a/src/mesa/Android.libmesa_st_mesa.mk
+++ b/src/mesa/Android.libmesa_st_mesa.mk
@@ -63,7 +63,8 @@ LOCAL_C_INCLUDES := \
  $(MESA_TOP)/src/gallium/include

 LOCAL_WHOLE_STATIC_LIBRARIES += \
- libmesa_program
+ libmesa_program \
+ libmesa_git_sha1

 LOCAL_STATIC_LIBRARIES += libmesa_nir libmesa_glsl

diff --git a/src/mesa/Android.mk b/src/mesa/Android.mk
index 9a1aef8b28..e89de82f4e 100644
--- a/src/mesa/Android.mk
+++ b/src/mesa/Android.mk
@@ -25,5 +25,6 @@ include $(LOCAL_PATH)/Android.libmesa_glsl_utils.mk
 include $(LOCAL_PATH)/Android.libmesa_dricore.mk
 include $(LOCAL_PATH)/Android.libmesa_st_mesa.mk
 include $(LOCAL_PATH)/Android.libmesa_sse41.mk
+include $(LOCAL_PATH)/Android.libmesa_git_sha1.mk

 include $(LOCAL_PATH)/program/Android.mk
-- 
2.11.0
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-svga-fix-git_sha1.h-include-path-in-Android.mk-v3.patch
Type: text/x-patch
Size: 6387 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170606/64dadb0c/attachment.bin>


More information about the mesa-dev mailing list