[Intel-gfx] [PATCH v2] intel-gpu-tools: fix version.h creation in android

Thomas Wood thomas.wood at intel.com
Fri Jul 25 13:33:19 CEST 2014


On 24 July 2014 17:38,  <tim.gore at intel.com> wrote:
> From: Tim Gore <tim.gore at intel.com>
>
> commit 743dc7997aa9f5210055896940d87c88983dcda6
> breaks the build under Android because version.h
> is not created. This happens because the android
> make executes from the ANDROID_BUILD_TOP directory
> rather than from the directory containing the source
> files, so we need to differentiate between Android
> and linux builds. This is V2 of this patch based on
> Thomas Wood's suggestion.
>
> Signed-off-by: Tim Gore <tim.gore at intel.com>
> ---
>  lib/Android.mk       |  3 ++-
>  lib/Makefile.am      |  3 +++
>  lib/Makefile.sources | 20 +++++++++++---------
>  3 files changed, 16 insertions(+), 10 deletions(-)
>
> diff --git a/lib/Android.mk b/lib/Android.mk
> index 6f444a0..5739c80 100644
> --- a/lib/Android.mk
> +++ b/lib/Android.mk
> @@ -1,6 +1,7 @@
>  LOCAL_PATH := $(call my-dir)
>
>  GPU_TOOLS_PATH := $(LOCAL_PATH)/..
> +IGT_LIB_PATH := $(LOCAL_PATH)
>
>  # FIXME: autogenerate this info #
>  $(GPU_TOOLS_PATH)/config.h:
> @@ -13,7 +14,7 @@ include $(LOCAL_PATH)/Makefile.sources
>  include $(CLEAR_VARS)
>
>  LOCAL_GENERATED_SOURCES :=       \
> -       $(GPU_TOOLS_PATH)/lib/version.h  \
> +       $(IGT_LIB_PATH)/version.h  \
>         $(GPU_TOOLS_PATH)/config.h
>
>  LOCAL_C_INCLUDES +=              \
> diff --git a/lib/Makefile.am b/lib/Makefile.am
> index 4d4efe4..9f6a021 100644
> --- a/lib/Makefile.am
> +++ b/lib/Makefile.am
> @@ -1,3 +1,6 @@
> +IGT_LIB_PATH := .
> +GPU_TOOLS_PATH := ..
> +

Automake supports out-of-tree builds and this is tested during
distcheck, so relative paths don't work. The above two lines need to
be:

IGT_LIB_PATH := $(top_builddir)/lib
GPU_TOOLS_PATH := $(top_srcdir)



>  include Makefile.sources
>
>  noinst_LTLIBRARIES = libintel_tools.la
> diff --git a/lib/Makefile.sources b/lib/Makefile.sources
> index 2d971c5..96786e0 100644
> --- a/lib/Makefile.sources
> +++ b/lib/Makefile.sources
> @@ -48,12 +48,14 @@ libintel_tools_la_SOURCES =         \
>         $(NULL)
>
>  .PHONY: version.h.tmp
> -version.h.tmp:
> +
> +$(IGT_LIB_PATH)/version.h.tmp:
>         @touch $@
> -       @if test -d $(top_srcdir)/.git; then \
> -               if which git > /dev/null 2>&1; then git log -n 1 --oneline | \
> +       @if test -d $(GPU_TOOLS_PATH)/.git; then \
> +               if which git > /dev/null 2>&1; then cd $(@D); \
> +                       git log -n 1 --oneline | \
>                         sed 's/^\([^ ]*\) .*/#define IGT_GIT_SHA1 "g\1"/' \
> -                       >> $@ ; \
> +                       >> $(@F) ; \
>                 else \
>                         echo '#define IGT_GIT_SHA1 "NO-GIT"' >> $@ ; \
>                 fi \
> @@ -61,12 +63,12 @@ version.h.tmp:
>                 echo '#define IGT_GIT_SHA1 "NOT-GIT"' >> $@ ; \
>         fi
>
> -version.h: version.h.tmp
> -       @if ! cmp -s version.h.tmp version.h; then \
> -               echo "updating version.h"; \
> -               mv version.h.tmp version.h ;\
> +
> +$(IGT_LIB_PATH)/version.h: $(IGT_LIB_PATH)/version.h.tmp
> +       @if ! cmp -s $(IGT_LIB_PATH)/version.h.tmp $(IGT_LIB_PATH)/version.h; then \
> +               mv $(IGT_LIB_PATH)/version.h.tmp $(IGT_LIB_PATH)/version.h ; \
>         else \
> -               rm version.h.tmp ;\
> +               rm $(IGT_LIB_PATH)/version.h.tmp ; \
>         fi
>
>  BUILT_SOURCES = version.h

This now needs to match the rule above (i.e. $(IGT_LIB_PATH)/version.h).

> --
> 1.9.2
>



More information about the Intel-gfx mailing list