diff mbox

intel-gpu-tools: fix version.h creation in android

Message ID 1406212830-22393-1-git-send-email-tim.gore@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

tim.gore@intel.com July 24, 2014, 2:40 p.m. UTC
From: Tim Gore <tim.gore@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 Android specific make instructions
to generate version.h

Signed-off-by: Tim Gore <tim.gore@intel.com>
---
 lib/Android.mk | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

Comments

Thomas Wood July 24, 2014, 3:27 p.m. UTC | #1
On 24 July 2014 15:40,  <tim.gore@intel.com> wrote:
> From: Tim Gore <tim.gore@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 Android specific make instructions
> to generate version.h

Could this also be fixed by defining the various paths (as below) in
Makefile.am as well and still re-use the same rule from
Makefile.sources, which gets included by both Android.mk and
Makefile.am anyway?



>
> Signed-off-by: Tim Gore <tim.gore@intel.com>
> ---
>  lib/Android.mk | 28 +++++++++++++++++++++++++++-
>  1 file changed, 27 insertions(+), 1 deletion(-)
>
> diff --git a/lib/Android.mk b/lib/Android.mk
> index 6f444a0..d6b181d 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 +=              \
> @@ -45,5 +46,30 @@ endif
>
>  LOCAL_SRC_FILES := $(filter-out $(skip_lib_list),$(libintel_tools_la_SOURCES))
>
> +.PHONY: version.h.tmp
> +
> +$(IGT_LIB_PATH)/version.h.tmp:
> +       @touch $@
> +       @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 \
> +       else \
> +               echo '#define IGT_GIT_SHA1 "NOT-GIT"' >> $@ ; \
> +       fi
> +
> +
> +$(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 $(IGT_LIB_PATH)/version.h.tmp ; \
> +       fi
> +
> +
>  include $(BUILD_STATIC_LIBRARY)
>
> --
> 1.9.2
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> ---------------------------------------------------------------------
> Intel Corporation (UK) Limited
> Registered No. 1134945 (England)
> Registered Office: Pipers Way, Swindon SN3 1RJ
> VAT No: 860 2173 47
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
tim.gore@intel.com July 24, 2014, 3:35 p.m. UTC | #2
> -----Original Message-----
> From: Thomas Wood [mailto:thomas.wood@intel.com]
> Sent: Thursday, July 24, 2014 4:27 PM
> To: Gore, Tim
> Cc: Intel Graphics Development
> Subject: Re: [Intel-gfx] [PATCH] intel-gpu-tools: fix version.h creation in
> android
> 
> On 24 July 2014 15:40,  <tim.gore@intel.com> wrote:
> > From: Tim Gore <tim.gore@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 Android specific make instructions to generate version.h
> 
> Could this also be fixed by defining the various paths (as below) in
> Makefile.am as well and still re-use the same rule from Makefile.sources,
> which gets included by both Android.mk and Makefile.am anyway?
> 
That may be possible, I have not tried it. I'm something of a novice with
Autotools but I'll give it a go.
> 
> >
> > Signed-off-by: Tim Gore <tim.gore@intel.com>
> > ---
> >  lib/Android.mk | 28 +++++++++++++++++++++++++++-
> >  1 file changed, 27 insertions(+), 1 deletion(-)
> >
> > diff --git a/lib/Android.mk b/lib/Android.mk index 6f444a0..d6b181d
> > 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 +=              \
> > @@ -45,5 +46,30 @@ endif
> >
> >  LOCAL_SRC_FILES := $(filter-out
> > $(skip_lib_list),$(libintel_tools_la_SOURCES))
> >
> > +.PHONY: version.h.tmp
> > +
> > +$(IGT_LIB_PATH)/version.h.tmp:
> > +       @touch $@
> > +       @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 \
> > +       else \
> > +               echo '#define IGT_GIT_SHA1 "NOT-GIT"' >> $@ ; \
> > +       fi
> > +
> > +
> > +$(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 $(IGT_LIB_PATH)/version.h.tmp ; \
> > +       fi
> > +
> > +
> >  include $(BUILD_STATIC_LIBRARY)
> >
> > --
> > 1.9.2
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> > ---------------------------------------------------------------------
> > Intel Corporation (UK) Limited
> > Registered No. 1134945 (England)
> > Registered Office: Pipers Way, Swindon SN3 1RJ VAT No: 860 2173 47
> >
> > This e-mail and any attachments may contain confidential material for
> > the sole use of the intended recipient(s). Any review or distribution
> > by others is strictly prohibited. If you are not the intended
> > recipient, please contact the sender and delete all copies.
> >
diff mbox

Patch

diff --git a/lib/Android.mk b/lib/Android.mk
index 6f444a0..d6b181d 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 +=              \
@@ -45,5 +46,30 @@  endif
 
 LOCAL_SRC_FILES := $(filter-out $(skip_lib_list),$(libintel_tools_la_SOURCES))
 
+.PHONY: version.h.tmp
+
+$(IGT_LIB_PATH)/version.h.tmp:
+	@touch $@
+	@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 \
+	else \
+		echo '#define IGT_GIT_SHA1 "NOT-GIT"' >> $@ ; \
+	fi
+
+
+$(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 $(IGT_LIB_PATH)/version.h.tmp ; \
+	fi
+
+
 include $(BUILD_STATIC_LIBRARY)