Message ID | 1406212830-22393-1-git-send-email-tim.gore@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
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. >
> -----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 --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)