[Mesa-dev] [PATCH 01/10] compiler: Move glsl_to_nir to libglsl.la

Emil Velikov emil.l.velikov at gmail.com
Thu May 26 13:21:43 UTC 2016


On 26 May 2016 at 13:39, Rob Herring <robh at kernel.org> wrote:
> On Thu, May 26, 2016 at 6:59 AM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>> Hi Jason,
>>
>> On 26 May 2016 at 02:52, Jason Ekstrand <jason at jlekstrand.net> wrote:
>>> Right now libglsl.la depends on libnir.la so putting it in libnir.la
>>> adds a dependency on libglsl.la that goes the wrong direction.
>>> ---
>>>  src/compiler/Makefile.am                  |    2 +
>>>  src/compiler/Makefile.nir.am              |    5 -
>>>  src/compiler/Makefile.sources             |    4 +-
>>>  src/compiler/glsl/glsl_to_nir.cpp         | 2026 +++++++++++++++++++++++++++++
>>>  src/compiler/glsl/glsl_to_nir.h           |   42 +
>>>  src/compiler/nir/glsl_to_nir.cpp          | 2026 -----------------------------
>>>  src/compiler/nir/glsl_to_nir.h            |   42 -
>>>  src/mesa/drivers/dri/i965/brw_nir.c       |    2 +-
>>>  src/mesa/state_tracker/st_glsl_to_nir.cpp |    2 +-
>>>  9 files changed, 2074 insertions(+), 2077 deletions(-)
>>>  create mode 100644 src/compiler/glsl/glsl_to_nir.cpp
>>>  create mode 100644 src/compiler/glsl/glsl_to_nir.h
>>>  delete mode 100644 src/compiler/nir/glsl_to_nir.cpp
>>>  delete mode 100644 src/compiler/nir/glsl_to_nir.h
>>>
>>> diff --git a/src/compiler/Makefile.am b/src/compiler/Makefile.am
>>> index dc30f90..710ac5a 100644
>>> --- a/src/compiler/Makefile.am
>>> +++ b/src/compiler/Makefile.am
>>> @@ -31,6 +31,8 @@ AM_CPPFLAGS = \
>>>         -I$(top_builddir)/src/compiler/glsl\
>>>         -I$(top_srcdir)/src/compiler/glsl\
>>>         -I$(top_srcdir)/src/compiler/glsl/glcpp\
>>> +       -I$(top_builddir)/src/compiler/nir\
>>> +       -I$(top_srcdir)/src/compiler/nir\
>> These should be moved and/or duplicated in Makefile.glsl.am shouldn't
>> they ? Please add space before \, as Matt suggested.
>>
>> On the SCons side you'll likely need something like the following. If
>> it doesn't work out, please cc Jose so that he's aware of things going
>> crazy.
>
> Android too will need something similar.
>
The android side is way to messy (from a quick thought) because of the
same reasons affecting genxml file generation. The quick hack that
(may or maynot) work is is below, while a better one will be to create
a dummy target used solely for generating the headers and using it
instead.

--- a/src/compiler/Android.glsl.mk
+++ b/src/compiler/Android.glsl.mk
@@ -43,7 +43,9 @@ LOCAL_C_INCLUDES := \
       $(MESA_TOP)/src/gallium/include \
       $(MESA_TOP)/src/gallium/auxiliary

-LOCAL_STATIC_LIBRARIES := libmesa_compiler
+# Adding nir, triggers generation of its headers (used by glsl_to_nir)
+# and expands the includes list, via its EXPORT_C_INCLUDES.
+LOCAL_STATIC_LIBRARIES := libmesa_compiler libmesa_nir

LOCAL_MODULE := libmesa_glsl

^^ Is obviously untested.

-Emil


More information about the mesa-dev mailing list