Path: blob/21.2-virgl/src/gallium/drivers/nouveau/meson.build
4570 views
# Copyright © 2017 Dylan Baker12# Permission is hereby granted, free of charge, to any person obtaining a copy3# of this software and associated documentation files (the "Software"), to deal4# in the Software without restriction, including without limitation the rights5# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell6# copies of the Software, and to permit persons to whom the Software is7# furnished to do so, subject to the following conditions:89# The above copyright notice and this permission notice shall be included in10# all copies or substantial portions of the Software.1112# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR13# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,14# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE15# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER16# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,17# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE18# SOFTWARE.1920files_libnouveau = files(21'nouveau_buffer.c',22'nouveau_buffer.h',23'nouveau_context.h',24'nouveau_debug.h',25'nouveau_fence.c',26'nouveau_fence.h',27'nouveau_gldefs.h',28'nouveau_heap.c',29'nouveau_heap.h',30'nouveau_mm.c',31'nouveau_mm.h',32'nouveau_screen.c',33'nouveau_screen.h',34'nouveau_video.c',35'nouveau_video.h',36'nouveau_vp3_video_bsp.c',37'nouveau_vp3_video.c',38'nouveau_vp3_video.h',39'nouveau_vp3_video_vp.c',40'nouveau_winsys.h',41'nv17_mpeg.xml.h',42'nv31_mpeg.xml.h',43'nv_m2mf.xml.h',44'nv_object.xml.h',45'nv30/nv01_2d.xml.h',46'nv30/nv30-40_3d.xml.h',47'nv30/nv30_clear.c',48'nv30/nv30_context.c',49'nv30/nv30_context.h',50'nv30/nv30_draw.c',51'nv30/nv30_format.c',52'nv30/nv30_format.h',53'nv30/nv30_fragprog.c',54'nv30/nv30_fragtex.c',55'nv30/nv30_miptree.c',56'nv30/nv30_push.c',57'nv30/nv30_query.c',58'nv30/nv30_resource.c',59'nv30/nv30_resource.h',60'nv30/nv30_screen.c',61'nv30/nv30_screen.h',62'nv30/nv30_state.c',63'nv30/nv30_state.h',64'nv30/nv30_state_validate.c',65'nv30/nv30_texture.c',66'nv30/nv30_transfer.c',67'nv30/nv30_transfer.h',68'nv30/nv30_vbo.c',69'nv30/nv30_vertprog.c',70'nv30/nv30_vertprog.h',71'nv30/nv30_winsys.h',72'nv30/nv40_vertprog.h',73'nv30/nv40_verttex.c',74'nv30/nvfx_fragprog.c',75'nv30/nvfx_shader.h',76'nv30/nvfx_vertprog.c',77'nv50/g80_defs.xml.h',78'nv50/g80_texture.xml.h',79'nv50/nv50_2d.xml.h',80'nv50/nv50_3ddefs.xml.h',81'nv50/nv50_3d.xml.h',82'nv50/nv50_blit.h',83'nv50/nv50_compute.c',84'nv50/nv50_compute.xml.h',85'nv50/nv50_context.c',86'nv50/nv50_context.h',87'nv50/nv50_formats.c',88'nv50/nv50_miptree.c',89'nv50/nv50_program.c',90'nv50/nv50_program.h',91'nv50/nv50_push.c',92'nv50/nv50_query.c',93'nv50/nv50_query.h',94'nv50/nv50_query_hw.c',95'nv50/nv50_query_hw.h',96'nv50/nv50_query_hw_metric.c',97'nv50/nv50_query_hw_metric.h',98'nv50/nv50_query_hw_sm.c',99'nv50/nv50_query_hw_sm.h',100'nv50/nv50_resource.c',101'nv50/nv50_resource.h',102'nv50/nv50_screen.c',103'nv50/nv50_screen.h',104'nv50/nv50_shader_state.c',105'nv50/nv50_state.c',106'nv50/nv50_stateobj.h',107'nv50/nv50_stateobj_tex.h',108'nv50/nv50_state_validate.c',109'nv50/nv50_surface.c',110'nv50/nv50_tex.c',111'nv50/nv50_transfer.c',112'nv50/nv50_transfer.h',113'nv50/nv50_vbo.c',114'nv50/nv50_winsys.h',115'nv50/nv84_video_bsp.c',116'nv50/nv84_video.c',117'nv50/nv84_video.h',118'nv50/nv84_video_vp.c',119'nv50/nv98_video_bsp.c',120'nv50/nv98_video.c',121'nv50/nv98_video.h',122'nv50/nv98_video_ppp.c',123'nv50/nv98_video_vp.c',124'codegen/nv50_ir.cpp',125'codegen/nv50_ir_bb.cpp',126'codegen/nv50_ir_build_util.cpp',127'codegen/nv50_ir_build_util.h',128'codegen/nv50_ir_driver.h',129'codegen/nv50_ir_emit_nv50.cpp',130'codegen/nv50_ir_from_common.cpp',131'codegen/nv50_ir_from_common.h',132'codegen/nv50_ir_from_nir.cpp',133'codegen/nv50_ir_from_tgsi.cpp',134'codegen/nv50_ir_graph.cpp',135'codegen/nv50_ir_graph.h',136'codegen/nv50_ir.h',137'codegen/nv50_ir_inlines.h',138'codegen/nv50_ir_lowering_helper.cpp',139'codegen/nv50_ir_lowering_helper.h',140'codegen/nv50_ir_lowering_nv50.cpp',141'codegen/nv50_ir_peephole.cpp',142'codegen/nv50_ir_print.cpp',143'codegen/nv50_ir_ra.cpp',144'codegen/nv50_ir_serialize.cpp',145'codegen/nv50_ir_ssa.cpp',146'codegen/nv50_ir_target.cpp',147'codegen/nv50_ir_target.h',148'codegen/nv50_ir_target_nv50.cpp',149'codegen/nv50_ir_target_nv50.h',150'codegen/nv50_ir_util.cpp',151'codegen/nv50_ir_util.h',152'codegen/unordered_set.h',153'codegen/nv50_ir_emit_gv100.cpp',154'codegen/nv50_ir_emit_gv100.h',155'codegen/nv50_ir_emit_gk110.cpp',156'codegen/nv50_ir_emit_gm107.cpp',157'codegen/nv50_ir_emit_nvc0.cpp',158'codegen/nv50_ir_lowering_gv100.cpp',159'codegen/nv50_ir_lowering_gv100.h',160'codegen/nv50_ir_lowering_gm107.cpp',161'codegen/nv50_ir_lowering_gm107.h',162'codegen/nv50_ir_lowering_nvc0.cpp',163'codegen/nv50_ir_lowering_nvc0.h',164'codegen/nv50_ir_target_gv100.cpp',165'codegen/nv50_ir_target_gv100.h',166'codegen/nv50_ir_target_gm107.cpp',167'codegen/nv50_ir_target_gm107.h',168'codegen/nv50_ir_target_nvc0.cpp',169'codegen/nv50_ir_target_nvc0.h',170'nvc0/cla0c0qmd.h',171'nvc0/clc0c0qmd.h',172'nvc0/clc3c0qmd.h',173'nvc0/drf.h',174'nvc0/qmd.h',175'nvc0/qmda0c0.c',176'nvc0/qmdc0c0.c',177'nvc0/qmdc3c0.c',178'nvc0/gm107_texture.xml.h',179'nvc0/nvc0_3d.xml.h',180'nvc0/nvc0_compute.c',181'nvc0/nvc0_compute.xml.h',182'nvc0/nvc0_context.c',183'nvc0/nvc0_context.h',184'nvc0/nvc0_formats.c',185'nvc0/nvc0_m2mf.xml.h',186'nvc0/nvc0_macros.h',187'nvc0/nvc0_miptree.c',188'nvc0/nvc0_program.c',189'nvc0/nvc0_program.h',190'nvc0/nvc0_query.c',191'nvc0/nvc0_query.h',192'nvc0/nvc0_query_hw.c',193'nvc0/nvc0_query_hw.h',194'nvc0/nvc0_query_hw_metric.c',195'nvc0/nvc0_query_hw_metric.h',196'nvc0/nvc0_query_hw_sm.c',197'nvc0/nvc0_query_hw_sm.h',198'nvc0/nvc0_query_sw.c',199'nvc0/nvc0_query_sw.h',200'nvc0/nvc0_resource.c',201'nvc0/nvc0_resource.h',202'nvc0/nvc0_screen.c',203'nvc0/nvc0_screen.h',204'nvc0/nvc0_shader_state.c',205'nvc0/nvc0_state.c',206'nvc0/nvc0_stateobj.h',207'nvc0/nvc0_state_validate.c',208'nvc0/nvc0_surface.c',209'nvc0/nvc0_tex.c',210'nvc0/nvc0_transfer.c',211'nvc0/nvc0_vbo.c',212'nvc0/nvc0_vbo_translate.c',213'nvc0/nvc0_video_bsp.c',214'nvc0/nvc0_video.c',215'nvc0/nvc0_video.h',216'nvc0/nvc0_video_ppp.c',217'nvc0/nvc0_video_vp.c',218'nvc0/nvc0_winsys.h',219'nvc0/nve4_compute.c',220'nvc0/nve4_compute.h',221'nvc0/nve4_compute.xml.h',222'nvc0/nve4_copy.xml.h',223'nvc0/nve4_p2mf.xml.h',224)225226libnouveau = static_library(227'nouveau',228files_libnouveau,229include_directories : [230inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_mapi, inc_mesa,231],232gnu_symbol_visibility : 'hidden',233dependencies : [dep_libdrm, dep_libdrm_nouveau, idep_mesautil, idep_nir_headers],234)235236nouveau_compiler = executable(237'nouveau_compiler',238'nouveau_compiler.c',239include_directories : [inc_src, inc_include, inc_gallium, inc_gallium_aux],240dependencies : [dep_libdrm, dep_libdrm_nouveau, idep_mesautil, idep_nir],241link_with : [libnouveau, libgallium],242build_by_default : with_tools.contains('nouveau'),243install : with_tools.contains('nouveau'),244)245246driver_nouveau = declare_dependency(247compile_args : '-DGALLIUM_NOUVEAU',248dependencies : idep_nir,249link_with : [libnouveauwinsys, libnouveau],250)251252253