[Mesa-dev] [android-x86-devel] [PATCH 3/3] isl: add support for Android libmesa_isl static library
Mauro Rossi
issor.oruam at gmail.com
Wed Jun 1 00:25:32 UTC 2016
2016-06-01 2:22 GMT+02:00 Mauro Rossi <issor.oruam at gmail.com>:
>
>
> 2016-05-31 16:33 GMT+02:00 Emil Velikov <emil.l.velikov at gmail.com>:
>
>> Hi Mauro,
>>
>> A couple of questions, nothing serious imho.
>>
>> On 30 May 2016 at 23:20, Mauro Rossi <issor.oruam at gmail.com> wrote:
>> > isl library is needed to build i965, libmesa_isl static library is added
>> > to fix related Android building errors.
>> >
>> > Any attempt to build libmesa_genxml as phony package module failed to
>> deliver
>> > gen{7,75,8,9}_pack.h autogenerated headers, needed to build
>> libmesa_isl_gen{7,75,8,9}
>> >
>> > Due to constraints in the Android Build System, libmesa_genxml is built
>> as static library
>> > and at least one source file needs to be compiled, so dummy.c is
>> autogenerated for this scope.
>> >
>> > libmesa_isl_gen{7,75,8,9} dependencies on libmesa_genxml are declared
>> using LOCAL_WHOLE_STATIC_LIBRARIES,
>> > in order to avoid building errors due to missing
>> genxml/gen{7,75,8,9}_pack.h headers
>> >
>> > Cc: <mesa-stable at lists.freedesktop.org>
>> > ---
>> > Android.mk | 3 +
>> > src/intel/genxml/Android.mk | 82 ++++++++++++++++++
>> > src/intel/isl/Android.mk | 157
>> +++++++++++++++++++++++++++++++++++
>> > src/mesa/drivers/dri/i965/Android.mk | 3 +-
>> > 4 files changed, 244 insertions(+), 1 deletion(-)
>> > create mode 100644 src/intel/genxml/Android.mk
>> > create mode 100644 src/intel/isl/Android.mk
>> >
>> > diff --git a/Android.mk b/Android.mk
>> > index 6a5596b..8ab80f3 100644
>> > --- a/Android.mk
>> > +++ b/Android.mk
>> > @@ -48,6 +48,7 @@ MESA_DRI_MODULE_UNSTRIPPED_PATH :=
>> $(TARGET_OUT_SHARED_LIBRARIES_UNSTRIPPED)/$(M
>> >
>> > MESA_COMMON_MK := $(MESA_TOP)/Android.common.mk
>> > MESA_PYTHON2 := python
>> > +MESA_PYTHON3 := python3
>>
>
> I've just seen that while a few days ago python3 was necessary to build
> gen%_pack.h headers,
> now the .py scripts just require python2, so this MESA_PYTHON3 definition
> is not needed anymore.
>
>
>> > new file mode 100644
>> > index 0000000..e0137d5
>> > --- /dev/null
>> > +++ b/src/intel/genxml/Android.mk
>> > @@ -0,0 +1,82 @@
>> > +# Copyright © 2016 Intel Corporation
>> > +# Copyright © 2016 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.
>> > +
>> > +LOCAL_PATH := $(call my-dir)
>> > +
>> > +# Import variable GENERATED_FILES.
>> > +include $(LOCAL_PATH)/Makefile.sources
>> > +
>> > +include $(CLEAR_VARS)
>> > +
>> > +LOCAL_MODULE := libmesa_genxml
>> > +
>> > +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 $@
>> > +
>> > +# This is the list of auto-generated files headers
>> > +LOCAL_GENERATED_SOURCES += $(addprefix $(intermediates)/genxml/,
>> $(GENXML_GENERATED_FILES))
>> > +
>> > +define header-gen
>> > + @mkdir -p $(dir $@)
>> > + @echo "Gen Header: $(PRIVATE_MODULE) <= $(notdir $(@))"
>> > + $(hide) $(PRIVATE_SCRIPT) $(PRIVATE_XML) > $@
>> > +endef
>> > +
>> > +$(intermediates)/genxml/gen6_pack.h: PRIVATE_SCRIPT := $(MESA_PYTHON3)
>> $(LOCAL_PATH)/gen_pack_header.py
>> > +$(intermediates)/genxml/gen6_pack.h: PRIVATE_XML :=
>> $(LOCAL_PATH)/gen6.xml
>> > +$(intermediates)/genxml/gen6_pack.h: $(LOCAL_PATH)/gen6.xml
>> $(LOCAL_PATH)/gen_pack_header.py
>> > + $(call header-gen)
>> > +
>> > +$(intermediates)/genxml/gen7_pack.h: PRIVATE_SCRIPT := $(MESA_PYTHON3)
>> $(LOCAL_PATH)/gen_pack_header.py
>> > +$(intermediates)/genxml/gen7_pack.h: PRIVATE_XML :=
>> $(LOCAL_PATH)/gen7.xml
>> > +$(intermediates)/genxml/gen7_pack.h: $(LOCAL_PATH)/gen7.xml
>> $(LOCAL_PATH)/gen_pack_header.py
>> > + $(call header-gen)
>> > +
>> > +$(intermediates)/genxml/gen75_pack.h: PRIVATE_SCRIPT :=
>> $(MESA_PYTHON3) $(LOCAL_PATH)/gen_pack_header.py
>> > +$(intermediates)/genxml/gen75_pack.h: PRIVATE_XML :=
>> $(LOCAL_PATH)/gen75.xml
>> > +$(intermediates)/genxml/gen75_pack.h: $(LOCAL_PATH)/gen75.xml
>> $(LOCAL_PATH)/gen_pack_header.py
>> > + $(call header-gen)
>> > +
>> > +$(intermediates)/genxml/gen8_pack.h: PRIVATE_SCRIPT := $(MESA_PYTHON3)
>> $(LOCAL_PATH)/gen_pack_header.py
>> > +$(intermediates)/genxml/gen8_pack.h: PRIVATE_XML :=
>> $(LOCAL_PATH)/gen8.xml
>> > +$(intermediates)/genxml/gen8_pack.h: $(LOCAL_PATH)/gen8.xml
>> $(LOCAL_PATH)/gen_pack_header.py
>> > + $(call header-gen)
>> > +
>> > +$(intermediates)/genxml/gen9_pack.h: PRIVATE_SCRIPT := $(MESA_PYTHON3)
>> $(LOCAL_PATH)/gen_pack_header.py
>> > +$(intermediates)/genxml/gen9_pack.h: PRIVATE_XML :=
>> $(LOCAL_PATH)/gen9.xml
>> > +$(intermediates)/genxml/gen9_pack.h: $(LOCAL_PATH)/gen9.xml
>> $(LOCAL_PATH)/gen_pack_header.py
>> > + $(call header-gen)
>>
>
> ...and these PRIVATE SCRIPTS will use use $(MESA_PYTHON) as
$(MESA_PYTHON3) not needed anymore
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160601/439b9aab/attachment.html>
More information about the mesa-dev
mailing list