About Social Code
aboutsummaryrefslogtreecommitdiff
path: root/src/compiler/meson.build
blob: 92e72a44f9a4e495963241186ab5ce5e23e793ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Copyright © 2017 Intel Corporation
# SPDX-License-Identifier: MIT

inc_compiler = include_directories('.')
inc_glsl = include_directories('glsl')
inc_spirv = include_directories('spirv')

builtin_types_h = custom_target(
  'builtin_types.h',
  input : 'builtin_types_h.py',
  output : 'builtin_types.h',
  command : [prog_python, '@INPUT@', '@OUTPUT@'],
  depend_files : files('builtin_types.py'),
  depends : u_format_gen_h,
)

builtin_types_c = custom_target(
  'builtin_types.c',
  input : 'builtin_types_c.py',
  output : 'builtin_types.c',
  command : [prog_python, '@INPUT@', '@OUTPUT@'],
  depend_files : files('builtin_types.py'),
)

float64_glsl_file = files('glsl/float64.glsl')

astc_decoder_glsl_file = files('glsl/astc_decoder.glsl')

files_libcompiler = files(
  'glsl_types.c',
  'glsl_types.h',
  'list.h',
  'shader_enums.c',
  'shader_enums.h',
  'shader_info.h',
)

ir_expression_operation_h = custom_target(
  'ir_expression_operation.h',
  input : 'glsl/ir_expression_operation.py',
  output : 'ir_expression_operation.h',
  command : [prog_python, '@INPUT@', 'enum'],
  capture : true,
)

libcompiler = static_library(
  'compiler',
  [files_libcompiler, ir_expression_operation_h, builtin_types_h, builtin_types_c],
  include_directories : [inc_compiler, inc_include, inc_src],
  c_args : [c_msvc_compat_args, no_override_init_args],
  cpp_args : [cpp_msvc_compat_args],
  gnu_symbol_visibility : 'hidden',
  dependencies : [dep_valgrind],
  build_by_default : false,
)

idep_compiler = declare_dependency(
  sources : [ir_expression_operation_h, builtin_types_h],
  include_directories : inc_compiler,
  link_with : libcompiler,
)

subdir('nir')

subdir('spirv')

if with_clc
  subdir('clc')
endif
if with_gallium
  subdir('glsl')
endif
subdir('isaspec')

if with_nouveau_vk
  subdir('rust')
endif