1bf215546Sopenharmony_ci# Copyright © 2022 Imagination Technologies Ltd. 2bf215546Sopenharmony_ci 3bf215546Sopenharmony_ci# Permission is hereby granted, free of charge, to any person obtaining a copy 4bf215546Sopenharmony_ci# of this software and associated documentation files (the "Software"), to deal 5bf215546Sopenharmony_ci# in the Software without restriction, including without limitation the rights 6bf215546Sopenharmony_ci# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7bf215546Sopenharmony_ci# copies of the Software, and to permit persons to whom the Software is 8bf215546Sopenharmony_ci# furnished to do so, subject to the following conditions: 9bf215546Sopenharmony_ci 10bf215546Sopenharmony_ci# The above copyright notice and this permission notice (including the next 11bf215546Sopenharmony_ci# paragraph) shall be included in all copies or substantial portions of the 12bf215546Sopenharmony_ci# Software. 13bf215546Sopenharmony_ci 14bf215546Sopenharmony_ci# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15bf215546Sopenharmony_ci# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16bf215546Sopenharmony_ci# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17bf215546Sopenharmony_ci# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18bf215546Sopenharmony_ci# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19bf215546Sopenharmony_ci# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20bf215546Sopenharmony_ci# SOFTWARE. 21bf215546Sopenharmony_ci 22bf215546Sopenharmony_ciwith_imagination_tools = with_tools.contains('imagination') 23bf215546Sopenharmony_ci 24bf215546Sopenharmony_cilibpowervr_rogue_files = files( 25bf215546Sopenharmony_ci 'nir/rogue_nir_constreg.c', 26bf215546Sopenharmony_ci 'nir/rogue_nir_lower_io.c', 27bf215546Sopenharmony_ci 'nir/rogue_nir_pfo.c', 28bf215546Sopenharmony_ci 29bf215546Sopenharmony_ci 'rogue.c', 30bf215546Sopenharmony_ci 'rogue_build_data.c', 31bf215546Sopenharmony_ci 'rogue_compiler.c', 32bf215546Sopenharmony_ci 'rogue_constreg.c', 33bf215546Sopenharmony_ci 'rogue_dump.c', 34bf215546Sopenharmony_ci 'rogue_encode.c', 35bf215546Sopenharmony_ci 'rogue_encoders.c', 36bf215546Sopenharmony_ci 'rogue_instr.c', 37bf215546Sopenharmony_ci 'rogue_nir.c', 38bf215546Sopenharmony_ci 'rogue_operand.c', 39bf215546Sopenharmony_ci 'rogue_regalloc.c', 40bf215546Sopenharmony_ci 'rogue_shader.c', 41bf215546Sopenharmony_ci 'rogue_util.c', 42bf215546Sopenharmony_ci 'rogue_validate.c', 43bf215546Sopenharmony_ci) 44bf215546Sopenharmony_ci 45bf215546Sopenharmony_cilibpowervr_rogue = shared_library( 46bf215546Sopenharmony_ci 'powervr_rogue', 47bf215546Sopenharmony_ci libpowervr_rogue_files, 48bf215546Sopenharmony_ci include_directories : [ 49bf215546Sopenharmony_ci inc_imagination, 50bf215546Sopenharmony_ci inc_include, 51bf215546Sopenharmony_ci inc_compiler, 52bf215546Sopenharmony_ci inc_src, 53bf215546Sopenharmony_ci inc_mapi, 54bf215546Sopenharmony_ci inc_mesa, 55bf215546Sopenharmony_ci inc_gallium, 56bf215546Sopenharmony_ci inc_gallium_aux, 57bf215546Sopenharmony_ci ], 58bf215546Sopenharmony_ci c_args : [no_override_init_args], 59bf215546Sopenharmony_ci gnu_symbol_visibility : 'hidden', 60bf215546Sopenharmony_ci dependencies : [idep_mesautil, idep_nir, dep_csbgen], 61bf215546Sopenharmony_ci install : true, 62bf215546Sopenharmony_ci) 63bf215546Sopenharmony_ci 64bf215546Sopenharmony_cirogue_compiler = executable( 65bf215546Sopenharmony_ci 'rogue_compiler', 66bf215546Sopenharmony_ci 'tools/offline_compiler.c', 67bf215546Sopenharmony_ci link_with : [libpowervr_rogue], 68bf215546Sopenharmony_ci dependencies : [idep_mesautil, idep_nir], 69bf215546Sopenharmony_ci include_directories : [ 70bf215546Sopenharmony_ci inc_mesa, 71bf215546Sopenharmony_ci inc_include, 72bf215546Sopenharmony_ci inc_src, 73bf215546Sopenharmony_ci inc_mapi, 74bf215546Sopenharmony_ci inc_gallium, 75bf215546Sopenharmony_ci inc_gallium_aux, 76bf215546Sopenharmony_ci inc_compiler, 77bf215546Sopenharmony_ci ], 78bf215546Sopenharmony_ci build_by_default : with_imagination_tools, 79bf215546Sopenharmony_ci install : with_imagination_tools, 80bf215546Sopenharmony_ci) 81