1 # Mesa 3-D graphics library
3 # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
4 # Copyright (C) 2010-2011 LunarG Inc.
6 # Permission is hereby granted, free of charge, to any person obtaining a
7 # copy of this software and associated documentation files (the "Software"),
8 # to deal in the Software without restriction, including without limitation
9 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 # and/or sell copies of the Software, and to permit persons to whom the
11 # Software is furnished to do so, subject to the following conditions:
13 # The above copyright notice and this permission notice shall be included
14 # in all copies or substantial portions of the Software.
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 # DEALINGS IN THE SOFTWARE.
24 # included by glsl Android.mk for source generation
26 ifeq ($(LOCAL_MODULE_CLASS
),)
27 LOCAL_MODULE_CLASS
:= STATIC_LIBRARIES
30 intermediates
:= $(call local-generated-sources-dir
)
32 LOCAL_SRC_FILES
:= $(LOCAL_SRC_FILES
)
35 $(intermediates
)/nir \
36 $(MESA_TOP
)/src
/compiler
/nir
38 LOCAL_EXPORT_C_INCLUDE_DIRS
+= \
39 $(intermediates
)/nir \
40 $(MESA_TOP
)/src
/compiler \
41 $(MESA_TOP
)/src
/compiler
/nir
43 LOCAL_GENERATED_SOURCES
+= $(addprefix $(intermediates
)/, \
44 $(NIR_GENERATED_FILES
) $(SPIRV_GENERATED_FILES
))
46 # Modules using libmesa_nir must set LOCAL_GENERATED_SOURCES to this
47 MESA_GEN_NIR_H
:= $(addprefix $(call local-generated-sources-dir
)/, \
49 nir
/nir_intrinsics.h \
50 nir
/nir_builder_opcodes.h
)
52 nir_builder_opcodes_gen
:= $(LOCAL_PATH
)/nir
/nir_builder_opcodes_h.py
53 nir_builder_opcodes_deps
:= \
54 $(LOCAL_PATH
)/nir
/nir_opcodes.py \
55 $(LOCAL_PATH
)/nir
/nir_intrinsics.py \
56 $(LOCAL_PATH
)/nir
/nir_builder_opcodes_h.py
58 $(intermediates
)/nir
/nir_builder_opcodes.h
: $(nir_builder_opcodes_deps
)
60 $(hide
) $(MESA_PYTHON2
) $(nir_builder_opcodes_gen
) $< > $@
62 nir_constant_expressions_gen
:= $(LOCAL_PATH
)/nir
/nir_constant_expressions.py
63 nir_constant_expressions_deps
:= \
64 $(LOCAL_PATH
)/nir
/nir_opcodes.py \
65 $(LOCAL_PATH
)/nir
/nir_constant_expressions.py
67 $(intermediates
)/nir
/nir_constant_expressions.c
: $(nir_constant_expressions_deps
)
69 $(hide
) $(MESA_PYTHON2
) $(nir_constant_expressions_gen
) $< > $@
71 nir_opcodes_h_gen
:= $(LOCAL_PATH
)/nir
/nir_opcodes_h.py
72 nir_opcodes_h_deps
:= \
73 $(LOCAL_PATH
)/nir
/nir_opcodes.py \
74 $(LOCAL_PATH
)/nir
/nir_opcodes_h.py
76 $(intermediates
)/nir
/nir_opcodes.h
: $(nir_opcodes_h_deps
)
78 $(hide
) $(MESA_PYTHON2
) $(nir_opcodes_h_gen
) $< > $@
80 nir_opcodes_c_gen
:= $(LOCAL_PATH
)/nir
/nir_opcodes_c.py
81 nir_opcodes_c_deps
:= \
82 $(LOCAL_PATH
)/nir
/nir_opcodes.py \
83 $(LOCAL_PATH
)/nir
/nir_opcodes_c.py
85 $(intermediates
)/nir
/nir_opcodes.c
: $(nir_opcodes_c_deps
)
87 $(hide
) $(MESA_PYTHON2
) $(nir_opcodes_c_gen
) $< > $@
89 nir_opt_algebraic_gen
:= $(LOCAL_PATH
)/nir
/nir_opt_algebraic.py
90 nir_opt_algebraic_deps
:= \
91 $(LOCAL_PATH
)/nir
/nir_opt_algebraic.py \
92 $(LOCAL_PATH
)/nir
/nir_algebraic.py
94 $(intermediates
)/nir
/nir_opt_algebraic.c
: $(nir_opt_algebraic_deps
)
96 $(hide
) $(MESA_PYTHON2
) $(nir_opt_algebraic_gen
) $< > $@
98 $(intermediates
)/spirv
/spirv_info.c
: $(LOCAL_PATH
)/spirv
/spirv_info_c.py
$(LOCAL_PATH
)/spirv
/spirv.core.grammar.json
100 $(hide
) $(MESA_PYTHON2
) $^
$@ ||
($(RM
) $@
; false
)
102 $(intermediates
)/spirv
/vtn_gather_types.c
:: $(LOCAL_PATH
)/spirv
/vtn_gather_types_c.py
$(LOCAL_PATH
)/spirv
/spirv.core.grammar.json
104 $(hide
) $(MESA_PYTHON2
) $^
$@ ||
($(RM
) $@
; false
)
106 nir_intrinsics_h_gen
:= $(LOCAL_PATH
)/nir
/nir_intrinsics_h.py
107 $(intermediates
)/nir
/nir_intrinsics.h
: $(LOCAL_PATH
)/nir
/nir_intrinsics.py
$(nir_intrinsics_h_gen
)
109 $(hide
) $(MESA_PYTHON2
) $(nir_intrinsics_h_gen
) --outdir
$(dir $@
) ||
($(RM
) $@
; false
)
111 nir_intrinsics_c_gen
:= $(LOCAL_PATH
)/nir
/nir_intrinsics_c.py
112 $(intermediates
)/nir
/nir_intrinsics.c
: $(LOCAL_PATH
)/nir
/nir_intrinsics.py
$(nir_intrinsics_c_gen
)
114 $(hide
) $(MESA_PYTHON2
) $(nir_intrinsics_c_gen
) --outdir
$(dir $@
) ||
($(RM
) $@
; false
)