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.")
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
This commit is contained in:
Mauro Rossi 2017-06-06 23:28:33 +02:00 committed by Emil Velikov
parent 5d87667fed
commit d5523d912c
6 changed files with 66 additions and 14 deletions

View File

@ -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)

View File

@ -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 \

View File

@ -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)

View File

@ -0,0 +1,59 @@
# Mesa 3-D graphics library
#
# Copyright (C) 2017 Mauro Rossi <issor.oruam@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)

View File

@ -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

View File

@ -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