101e04c3fSmrg# Copyright © 2017 Intel Corporation 201e04c3fSmrg 301e04c3fSmrg# Permission is hereby granted, free of charge, to any person obtaining a copy 401e04c3fSmrg# of this software and associated documentation files (the "Software"), to deal 501e04c3fSmrg# in the Software without restriction, including without limitation the rights 601e04c3fSmrg# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 701e04c3fSmrg# copies of the Software, and to permit persons to whom the Software is 801e04c3fSmrg# furnished to do so, subject to the following conditions: 901e04c3fSmrg 1001e04c3fSmrg# The above copyright notice and this permission notice shall be included in 1101e04c3fSmrg# all copies or substantial portions of the Software. 1201e04c3fSmrg 1301e04c3fSmrg# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 1401e04c3fSmrg# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 1501e04c3fSmrg# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 1601e04c3fSmrg# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 1701e04c3fSmrg# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 1801e04c3fSmrg# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 1901e04c3fSmrg# SOFTWARE. 2001e04c3fSmrg 2101e04c3fSmrgfiles_etnaviv = files( 2201e04c3fSmrg 'hw/cmdstream.xml.h', 2301e04c3fSmrg 'hw/common.xml.h', 2401e04c3fSmrg 'hw/common_3d.xml.h', 2501e04c3fSmrg 'hw/isa.xml.h', 2601e04c3fSmrg 'hw/state_3d.xml.h', 2701e04c3fSmrg 'hw/state_blt.xml.h', 2801e04c3fSmrg 'hw/state.xml.h', 2901e04c3fSmrg 'hw/texdesc_3d.xml.h', 3001e04c3fSmrg 'etnaviv_asm.c', 3101e04c3fSmrg 'etnaviv_asm.h', 3201e04c3fSmrg 'etnaviv_blend.c', 3301e04c3fSmrg 'etnaviv_blend.h', 3401e04c3fSmrg 'etnaviv_blt.c', 3501e04c3fSmrg 'etnaviv_blt.h', 3601e04c3fSmrg 'etnaviv_clear_blit.c', 3701e04c3fSmrg 'etnaviv_clear_blit.h', 3801e04c3fSmrg 'etnaviv_compiler.c', 3901e04c3fSmrg 'etnaviv_compiler.h', 407ec681f3Smrg 'etnaviv_compiler_nir.c', 417ec681f3Smrg 'etnaviv_compiler_nir_emit.c', 427ec681f3Smrg 'etnaviv_compiler_nir_liveness.c', 437ec681f3Smrg 'etnaviv_compiler_nir_ra.c', 447ec681f3Smrg 'etnaviv_compiler_tgsi.c', 4501e04c3fSmrg 'etnaviv_context.c', 4601e04c3fSmrg 'etnaviv_context.h', 4701e04c3fSmrg 'etnaviv_debug.h', 4801e04c3fSmrg 'etnaviv_disasm.c', 4901e04c3fSmrg 'etnaviv_disasm.h', 507ec681f3Smrg 'etnaviv_disk_cache.c', 517ec681f3Smrg 'etnaviv_disk_cache.h', 5201e04c3fSmrg 'etnaviv_emit.c', 5301e04c3fSmrg 'etnaviv_emit.h', 549f464c52Smaya 'etnaviv_etc2.c', 559f464c52Smaya 'etnaviv_etc2.h', 5601e04c3fSmrg 'etnaviv_fence.c', 5701e04c3fSmrg 'etnaviv_fence.h', 5801e04c3fSmrg 'etnaviv_format.c', 5901e04c3fSmrg 'etnaviv_format.h', 6001e04c3fSmrg 'etnaviv_internal.h', 617ec681f3Smrg 'etnaviv_nir_lower_ubo_to_uniform.c', 627ec681f3Smrg 'etnaviv_nir.c', 637ec681f3Smrg 'etnaviv_nir.h', 647ec681f3Smrg 'etnaviv_perfmon.c', 657ec681f3Smrg 'etnaviv_perfmon.h', 6601e04c3fSmrg 'etnaviv_query.c', 6701e04c3fSmrg 'etnaviv_query.h', 687ec681f3Smrg 'etnaviv_query_acc_occlusion.c', 697ec681f3Smrg 'etnaviv_query_acc_perfmon.c', 707ec681f3Smrg 'etnaviv_query_acc.c', 717ec681f3Smrg 'etnaviv_query_acc.h', 7201e04c3fSmrg 'etnaviv_query_sw.c', 7301e04c3fSmrg 'etnaviv_query_sw.h', 7401e04c3fSmrg 'etnaviv_rasterizer.c', 7501e04c3fSmrg 'etnaviv_rasterizer.h', 7601e04c3fSmrg 'etnaviv_resource.c', 7701e04c3fSmrg 'etnaviv_resource.h', 7801e04c3fSmrg 'etnaviv_rs.c', 7901e04c3fSmrg 'etnaviv_rs.h', 8001e04c3fSmrg 'etnaviv_screen.c', 8101e04c3fSmrg 'etnaviv_screen.h', 8201e04c3fSmrg 'etnaviv_shader.c', 8301e04c3fSmrg 'etnaviv_shader.h', 8401e04c3fSmrg 'etnaviv_state.c', 8501e04c3fSmrg 'etnaviv_state.h', 8601e04c3fSmrg 'etnaviv_surface.c', 8701e04c3fSmrg 'etnaviv_surface.h', 8801e04c3fSmrg 'etnaviv_texture.c', 8901e04c3fSmrg 'etnaviv_texture.h', 907ec681f3Smrg 'etnaviv_texture_desc.c', 917ec681f3Smrg 'etnaviv_texture_desc.h', 9201e04c3fSmrg 'etnaviv_texture_state.c', 9301e04c3fSmrg 'etnaviv_texture_state.h', 9401e04c3fSmrg 'etnaviv_tiling.c', 9501e04c3fSmrg 'etnaviv_tiling.h', 9601e04c3fSmrg 'etnaviv_transfer.c', 9701e04c3fSmrg 'etnaviv_transfer.h', 9801e04c3fSmrg 'etnaviv_translate.h', 9901e04c3fSmrg 'etnaviv_uniforms.c', 10001e04c3fSmrg 'etnaviv_uniforms.h', 10101e04c3fSmrg 'etnaviv_util.h', 10201e04c3fSmrg 'etnaviv_zsa.c', 10301e04c3fSmrg 'etnaviv_zsa.h', 10401e04c3fSmrg) 10501e04c3fSmrg 10601e04c3fSmrglibetnaviv = static_library( 10701e04c3fSmrg 'etnaviv', 10801e04c3fSmrg files_etnaviv, 1097ec681f3Smrg gnu_symbol_visibility : 'hidden', 1107ec681f3Smrg include_directories : [ 1117ec681f3Smrg inc_include, inc_src, inc_gallium, inc_gallium_aux, inc_etnaviv, 1127ec681f3Smrg ], 1137ec681f3Smrg link_with: libetnaviv_drm, 1147ec681f3Smrg dependencies : [dep_libdrm, idep_nir_headers, idep_mesautil], 11501e04c3fSmrg) 11601e04c3fSmrg 11701e04c3fSmrgetnaviv_compiler = executable( 11801e04c3fSmrg 'etnaviv_compiler', 11901e04c3fSmrg 'etnaviv_compiler_cmdline.c', 1207ec681f3Smrg include_directories : [ 1217ec681f3Smrg inc_include, inc_src, inc_gallium, inc_gallium_aux, inc_etnaviv, 1227ec681f3Smrg ], 1237ec681f3Smrg link_with : [libgallium, libetnaviv, libetnaviv_drm], 1249f464c52Smaya build_by_default : with_tools.contains('etnaviv'), 1259f464c52Smaya install : with_tools.contains('etnaviv'), 1267ec681f3Smrg dependencies : [idep_mesautil, dep_libdrm], 12701e04c3fSmrg) 12801e04c3fSmrg 12901e04c3fSmrgdriver_etnaviv = declare_dependency( 13001e04c3fSmrg compile_args : '-DGALLIUM_ETNAVIV', 13101e04c3fSmrg link_with : [libetnaviv, libetnavivdrm], 1327ec681f3Smrg dependencies : idep_nir, 13301e04c3fSmrg) 1347ec681f3Smrg 1357ec681f3Smrgif with_tests 1367ec681f3Smrg test( 1377ec681f3Smrg 'lower_ubo', 1387ec681f3Smrg executable( 1397ec681f3Smrg 'nir_lower_ubo_test', 1407ec681f3Smrg files('tests/lower_ubo_tests.cpp'), 1417ec681f3Smrg cpp_args : [cpp_msvc_compat_args], 1427ec681f3Smrg gnu_symbol_visibility : 'hidden', 1437ec681f3Smrg include_directories : [inc_include, inc_src, inc_gallium], 1447ec681f3Smrg link_with : [libetnaviv], 1457ec681f3Smrg dependencies : [idep_gtest, idep_nir], 1467ec681f3Smrg ), 1477ec681f3Smrg suite : ['compiler', 'etnaviv'], 1487ec681f3Smrg ) 1497ec681f3Smrgendif 150