1nvk_classes = [ 2 'cl902d', 3 'cl9039', 4 'cl906f', 5 'cl9097', 6 'cl90b5', 7 'cl90c0', 8 'cla0b5', 9 'cla097', 10 'clb097', 11 'clb0c0', 12 'clb197', 13 'clb1c0', 14 'clc097', 15 'clc1b5', 16 'cla0c0', 17 'clc0c0', 18 'clc397', 19 'clc3c0', 20 'clc597', 21 'clc5c0', 22 'clc697', 23 'clc6c0', 24 'clc7c0', 25] 26 27nvk_cl_header_depend_files = [ 28 files('class_parser.py') 29] 30 31cl_generated = [] 32foreach cl : nvk_classes 33 cl_generated += custom_target( 34 cl + '.h', 35 input : ['class_parser.py', 'nvidia/classes/'+cl+'.h'], 36 output : ['nvk_'+cl+'.h', 'nvk_'+cl+'.c'], 37 command : [prog_python, '@INPUT0@', '--in_h', '@INPUT1@', 38 '--out_h', '@OUTPUT0@', '--out_c', '@OUTPUT1@'], 39 depend_files: nvk_cl_header_depend_files, 40 ) 41endforeach 42 43_libnvidia_headers = static_library( 44 'nvidia_headers', 45 ['nv_push.c', cl_generated], 46 include_directories : ['.', 'nvidia/classes', inc_include, inc_src], 47 c_args : [no_override_init_args], 48 gnu_symbol_visibility : 'hidden', 49) 50 51idep_nvidia_headers = declare_dependency( 52 include_directories : include_directories('.', 'nvidia/classes'), 53 sources : cl_generated, 54 link_with : _libnvidia_headers, 55) 56 57executable( 58 'nv_push_dump', 59 'nv_push_dump.c', 60 dependencies : [ idep_mesautil, idep_nvidia_headers ], 61 build_by_default : with_tools.contains('nouveau'), 62 install : with_tools.contains('nouveau'), 63) 64