[Mesa-dev] [PATCH 1/3] android: radeonsi: add nir include paths

Mauro Rossi issor.oruam at gmail.com
Thu Aug 3 12:24:40 UTC 2017


2017-08-03 11:57 GMT+02:00 Emil Velikov <emil.l.velikov at gmail.com>:
> Hi Mauro,
>
> Thanks for the series. I'll pull 2&3 in a second - there's a minor
> suggestion in this patch.
>
> On 3 August 2017 at 01:55, Mauro Rossi <issor.oruam at gmail.com> wrote:
>> Android build changes to avoid the following building error:
>>
>> target  C: libmesa_pipe_radeonsi <= external/mesa/src/gallium/drivers/radeonsi/si_pipe.c
>> ...
>> In file included from external/mesa/src/gallium/drivers/radeonsi/si_pipe.c:38:
>> external/mesa/src/compiler/nir/nir.h:48:10: fatal error: 'nir_opcodes.h' file not found
>> #include "nir_opcodes.h"
>>          ^
>> 1 error generated.
>>
>> Fixes: da62a31c5b "radeonsi: add nir include paths"
>> ---
>>  src/gallium/drivers/radeonsi/Android.mk | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/src/gallium/drivers/radeonsi/Android.mk b/src/gallium/drivers/radeonsi/Android.mk
>> index 6fff91f6f7..452bba3af8 100644
>> --- a/src/gallium/drivers/radeonsi/Android.mk
>> +++ b/src/gallium/drivers/radeonsi/Android.mk
>> @@ -36,7 +36,8 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
>>
>>  LOCAL_C_INCLUDES := \
>>         $(MESA_TOP)/src/amd/common \
>> -       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_amd_common,,)/common
>> +       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_amd_common,,)/common \
>> +       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_nir,,)/nir
> The more robust solution is to add LOCAL_EXPORT_C_INCLUDE_DIRS for libmesa_nir.
>
> With that in place we can drop the existing four instances of the
> $(call generated-sources-dir-for... libmesa_nir... from the codebase.
>
> -Emil

The current patch proposed is in principle already robust and mimiking
automake, but if you prefer other way, I would propose doing this:

 LOCAL_C_INCLUDES := \
-       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_amd_common,,)/common
+       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_amd_common,,)/common
\
+       $(dir $(MESA_GEN_NIR_H))

because LOCAL_EXPORT_C_INCLUDE_DIRS in Android.nir.mk would then
require static linking of libmesa_nir and we would get double symbols
at whole static linking in gallium_dri target due the current
dri/target building rules.

Is that ok for you?

The other places where generated-sourced-dir-for is used for nir could
be replaced the same way, but I'd keep it as a separate change if ok
for you

Please let me know and I'll brew, test build and submit the two pathes
to mesa-dev this evening

Mauro


More information about the mesa-dev mailing list