Lines Matching +full:shared +full:- +full:glapi
1 # Copyright © 2017-2020 Intel Corporation
30 default_options : ['buildtype=debugoptimized', 'b_ndebug=if-release', 'c_std=c11', 'cpp_std=c++14']
54 '-D__STDC_CONSTANT_MACROS',
55 '-D__STDC_FORMAT_MACROS',
56 '-D__STDC_LIMIT_MACROS',
57 '-DPACKAGE_VERSION="@0@"'.format(meson.project_version()),
58 '-DPACKAGE_BUGREPORT="https://gitlab.freedesktop.org/mesa/mesa/-/issues"',
63 with_moltenvk_dir = get_option('moltenvk-dir')
64 with_vulkan_icd_dir = get_option('vulkan-icd-dir')
65 with_tests = get_option('build-tests')
66 with_aco_tests = get_option('build-aco-tests')
67 with_glx_read_only_text = get_option('glx-read-only-text')
68 with_glx_direct = get_option('glx-direct')
70 with_vulkan_overlay_layer = get_option('vulkan-layers').contains('overlay')
71 with_vulkan_device_select_layer = get_option('vulkan-layers').contains('device-select')
75 'drm-shim',
76 'dlclose-skip',
81 'intel-ui',
91 with_any_vulkan_layers = get_option('vulkan-layers').length() != 0
92 with_intel_tools = with_tools.contains('intel') or with_tools.contains('intel-ui')
95 dri_drivers_path = get_option('dri-drivers-path')
99 dri_search_path = get_option('dri-search-path')
104 gbm_backends_path = get_option('gbm-backends-path')
135 # Default shared glapi off for windows, on elsewhere.
136 _sg = get_option('shared-glapi')
139 warning('shared-glapi option "true" deprecated, please use "enabled" instead.')
142 warning('shared-glapi option "false" deprecated, please use "disabled" instead.')
150 # shared-glapi is required if at least two OpenGL APIs are being built
155 error('shared-glapi required for building two or more of OpenGL, OpenGL ES 1.x, OpenGL ES 2.x')
178 dri_drivers = get_option('dri-drivers')
185 gallium_drivers = get_option('gallium-drivers')
204 error('Unknown architecture @0@. Please pass -Dgallium-drivers to set driver options. Patches gladly accepted to fix this.'.format(
210 error('Unknown OS @0@. Please pass -Dgallium-drivers to set driver options. Patches gladly accepted to fix this.'.format(
235 pre_args += '-DHAVE_@0@'.format(gallium_driver.to_upper())
249 _vulkan_drivers = get_option('vulkan-drivers')
259 error('Unknown architecture @0@. Please pass -Dvulkan-drivers to set driver options. Patches gladly accepted to fix this.'.format(
266 error('Unknown OS @0@. Please pass -Dvulkan-drivers to set driver options. Patches gladly accepted to fix this.'.format(
276 with_virtio_vk = _vulkan_drivers.contains('virtio-experimental')
277 with_freedreno_kgsl = get_option('freedreno-kgsl')
278 with_freedreno_virtio = get_option('freedreno-virtio')
280 with_imagination_vk = _vulkan_drivers.contains('imagination-experimental')
281 with_imagination_srv = get_option('imagination-srv')
282 with_microsoft_vk = _vulkan_drivers.contains('microsoft-experimental')
298 with_microsoft_clc = get_option('microsoft-clc').enabled()
299 with_intel_clc = get_option('intel-clc').enabled()
302 with_spirv_to_dxil = get_option('spirv-to-dxil')
306 pre_args += '-DBUILDING_MESA'
318 with_vulkan_beta = get_option('vulkan-beta')
320 pre_args += '-DVK_ENABLE_BETA_EXTENSIONS'
323 _codecs = get_option('video-codecs')
325 pre_args += '-DVIDEO_CODEC_@0@=@1@'.format(c.to_upper(), _codecs.contains(c).to_int())
339 error('Unknown OS @0@. Please pass -Dplatforms to set platforms. Patches gladly accepted to fix this.'.format(
403 _xlib_lease = get_option('xlib-lease')
418 c_args += '-DVK_USE_PLATFORM_WAYLAND_KHR'
420 #cpp_args += '-DVK_USE_PLATFORM_WAYLAND_KHR'
423 c_args += ['-DVK_USE_PLATFORM_XCB_KHR', '-DVK_USE_PLATFORM_XLIB_KHR']
425 #cpp_args += ['-DVK_USE_PLATFORM_XCB_KHR', '-DVK_USE_PLATFORM_XLIB_KHR']
428 c_args += '-DVK_USE_PLATFORM_WIN32_KHR'
430 #cpp_args += '-DVK_USE_PLATFORM_WIN32_KHR'
433 c_args += '-DVK_USE_PLATFORM_ANDROID_KHR'
434 cpp_args += '-DVK_USE_PLATFORM_ANDROID_KHR'
437 c_args += '-DVK_USE_PLATFORM_XLIB_XRANDR_EXT'
439 #cpp_args += '-DVK_USE_PLATFORM_XLIB_XRANDR_EXT'
442 c_args += '-DVK_USE_PLATFORM_DISPLAY_KHR'
443 cpp_args += '-DVK_USE_PLATFORM_DISPLAY_KHR'
446 c_args += '-DVK_USE_PLATFORM_MACOS_MVK'
447 cpp_args += '-DVK_USE_PLATFORM_MACOS_MVK'
448 c_args += '-DVK_USE_PLATFORM_METAL_EXT'
449 cpp_args += '-DVK_USE_PLATFORM_METAL_EXT'
451 c_args += '-DVK_ENABLE_BETA_EXTENSIONS'
452 cpp_args += '-DVK_ENABLE_BETA_EXTENSIONS'
473 error('EGL requires shared-glapi')
490 egl_native_platform = get_option('egl-native-platform')
497 error('-Degl-native-platform does not specify an enabled platform')
505 pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper())
508 if with_platform_android and get_option('platform-sdk-version') >= 29
512 c_args += '-fno-emulated-tls'
513 cpp_args += '-fno-emulated-tls'
516 # -mtls-dialect=gnu2 speeds up non-initial-exec TLS significantly but requires
520 if c_arg.startswith('-mtls-dialect=')
527 # cross-compiling, but because this is just an optimization we can skip it
529 warning('cannot auto-detect -mtls-dialect when cross-compiling, using compiler default')
531 # -fpic to force dynamic tls, otherwise TLS relaxation defeats check
533 args: ['-mtls-dialect=gnu2', '-fpic'],
534 name: '-mtls-dialect=gnu2')
536 # check for lld 13 bug: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5665
538 # get_linker_id misses LDFLAGS=-fuse-ld=lld: https://github.com/mesonbuild/meson/issues/6377
545 c_args += '-mtls-dialect=gnu2'
546 cpp_args += '-mtls-dialect=gnu2'
564 error('dri based GLX requires shared-glapi')
570 glvnd_vendor_name = get_option('glvnd-vendor-name')
579 if get_option('egl-lib-suffix') != ''
620 dep_dxheaders = dependency('directx-headers', required : false)
622 dep_dxheaders = dependency('DirectX-Headers',
624 fallback : ['DirectX-Headers', 'dep_dxheaders'],
630 _with_gallium_d3d12_video = get_option('gallium-d3d12-video')
634 pre_args += '-DHAVE_GALLIUM_D3D12_VIDEO'
637 _vdpau = get_option('gallium-vdpau')
640 warning('gallium-vdpau option "true" deprecated, please use "enabled" instead.')
643 warning('gallium-vdpau option "false" deprecated, please use "disabled" instead.')
647 error('VDPAU state tracker can only be build on unix-like OSes.')
660 error('VDPAU state tracker requires at least one of the following gallium drivers: r300, r600, radeonsi, nouveau, d3d12 (with option gallium-d3d12-video).')
676 pre_args += '-DHAVE_ST_VDPAU'
678 vdpau_drivers_path = get_option('vdpau-libs-path')
685 if run_command(prog_glslang, [ '--quiet', '--version' ], check : false).returncode() == 0
686 glslang_quiet = ['--quiet']
692 _xvmc = get_option('gallium-xvmc')
695 warning('gallium-xvmc option "true" deprecated, please use "enabled" instead.')
698 warning('gallium-xvmc option "false" deprecated, please use "disabled" instead.')
702 error('XVMC state tracker can only be build on unix-like OSes.')
728 xvmc_drivers_path = get_option('xvmc-libs-path')
733 _omx = get_option('gallium-omx')
738 error('OMX state tracker can only be built on unix-like OSes.')
752 'libomxil-bellagio', required : _omx == 'bellagio'
772 error('OMX-Tizonia state tracker requires dri and egl')
782 '-DENABLE_ST_OMX_BELLAGIO=' + (with_gallium_omx == 'bellagio' ? '1' : '0'),
783 '-DENABLE_ST_OMX_TIZONIA=' + (with_gallium_omx == 'tizonia' ? '1' : '0'),
787 omx_drivers_path = get_option('omx-libs-path')
813 _va = get_option('gallium-va')
816 warning('gallium-va option "true" deprecated, please use "enabled" instead.')
819 warning('gallium-va option "false" deprecated, please use "disabled" instead.')
823 error('VA state tracker can only be built on unix-like OSes.')
829 error('VA state tracker requires at least one of the following gallium drivers: r600, radeonsi, nouveau, d3d12 (with option gallium-d3d12-video).')
843 pre_args += '-DHAVE_VA_SURFACE_ATTRIB_DRM_FORMAT_MODIFIERS'
848 va_drivers_path = get_option('va-libs-path')
853 _xa = get_option('gallium-xa')
856 warning('gallium-xa option "true" deprecated, please use "enabled" instead.')
859 warning('gallium-xa option "false" deprecated, please use "disabled" instead.')
863 error('XA state tracker can only be built on unix-like OSes.')
877 d3d_drivers_path = get_option('d3d-drivers-path')
882 with_gallium_st_nine = get_option('gallium-nine')
889 error('The nine state tracker requires at least one non-swrast gallium driver.')
895 with_gallium_st_d3d10umd = get_option('gallium-d3d10umd')
922 args : '-mpower8-vector',
924 pre_args += ['-D_ARCH_PWR8', '-mpower8-vector']
931 if get_option('vmware-mks-stats')
933 error('vmware-mks-stats requires gallium VMware/svga driver.')
935 pre_args += '-DVMX86_STATS=1'
938 _opencl = get_option('gallium-opencl')
963 if with_glx == 'xlib' or with_glx == 'gallium-xlib'
964 pre_args += '-DUSE_XSHM'
966 pre_args += '-DGLX_INDIRECT_RENDERING'
968 pre_args += '-DGLX_DIRECT_RENDERING'
971 pre_args += '-DGLX_USE_DRM'
973 pre_args += '-DGLX_USE_APPLEGL'
975 pre_args += '-DGLX_USE_WINDOWSGL'
979 pre_args += '-DEGL_NO_X11'
980 gl_pkgconfig_c_flags += '-DEGL_NO_X11'
983 with_android_stub = get_option('android-stub')
985 error('`-D android-stub=true` makes no sense without `-D platforms=android`')
997 if get_option('platform-sdk-version') >= 26
1000 if get_option('platform-sdk-version') >= 30
1005 '-DANDROID',
1006 '-DANDROID_API_LEVEL=' + get_option('platform-sdk-version').to_string()
1011 pre_args += '-DHAVE_OHOS_PLATFORM'
1016 c_args += '-I../ohos'
1023 prog_python, '-c',
1039 pre_args += '-DETIME=ETIMEDOUT'
1044 pre_args += '-DDEBUG'
1048 _shader_cache = get_option('shader-cache')
1062 pre_args += '-DENABLE_SHADER_CACHE'
1063 if not get_option('shader-cache-default')
1064 pre_args += '-DSHADER_CACHE_DISABLE_BY_DEFAULT'
1071 shader_cache_max_size = get_option('shader-cache-max-size')
1073 pre_args += '-DMESA_SHADER_CACHE_MAX_SIZE="@0@"'.format(shader_cache_max_size)
1081 pre_args += '-DHAVE___BUILTIN_@0@'.format(b.to_upper())
1091 pre_args += '-DHAVE_FUNC_ATTRIBUTE_@0@'.format(a.to_upper())
1094 pre_args += '-DHAVE_FUNC_ATTRIBUTE_VISIBILITY'
1098 pre_args += '-DHAVE_UINT128'
1102 pre_args += '-DHAVE_REALLOCARRAY'
1107 pre_args += '-D_GNU_SOURCE'
1109 pre_args += '-D__EXTENSIONS__'
1112 '-D_WINDOWS', '-D_WIN32_WINNT=0x0A00', '-DWINVER=0x0A00',
1113 '-DPIPE_SUBSYSTEM_WINDOWS_USER',
1114 '-D_USE_MATH_DEFINES', # XXX: scons didn't use this for mingw
1118 '-DVC_EXTRALEAN',
1119 '-D_CRT_SECURE_NO_WARNINGS',
1120 '-D_CRT_SECURE_NO_DEPRECATE',
1121 '-D_SCL_SECURE_NO_WARNINGS',
1122 '-D_SCL_SECURE_NO_DEPRECATE',
1123 '-D_ALLOW_KEYWORD_MACROS',
1124 '-D_HAS_EXCEPTIONS=0', # Tell C++ STL to not use exceptions
1125 '-DNOMINMAX',
1138 pre_args += ['-D__MSVCRT_VERSION__=0x0700']
1142 pre_args += '-D_ISOC11_SOURCE'
1152 '/wd4056', # overflow in floating-point constant arithmetic
1162 '/wd4200', # nonstandard extension used: zero-sized array in struct/union
1175 '-Werror=implicit-function-declaration',
1176 '-Werror=missing-prototypes',
1177 '-Werror=return-type',
1178 '-Werror=empty-body',
1179 '-Werror=incompatible-pointer-types',
1180 '-Werror=int-conversion',
1181 '-Wimplicit-fallthrough',
1182 '-Wno-missing-field-initializers',
1183 '-Wno-format-truncation',
1184 '-fno-math-errno',
1185 '-fno-trapping-math',
1186 '-Qunused-arguments',
1187 '-fno-common',
1189 '-Wno-microsoft-enum-value',
1190 '-Wno-unused-function',
1193 '-Werror=return-type',
1194 '-Werror=empty-body',
1195 '-Wno-non-virtual-dtor',
1196 '-Wno-missing-field-initializers',
1197 '-Wno-format-truncation',
1198 '-fno-math-errno',
1199 '-fno-trapping-math',
1200 '-Qunused-arguments',
1202 # gcc does aggressive dead-store elimination which threats all writes
1205 '-flifetime-dse=1',
1207 '-Wno-microsoft-enum-value',
1212 _trial_c += ['-Werror=format', '-Wformat-security']
1213 _trial_cpp += ['-Werror=format', '-Wformat-security']
1218 _trial_c += ['-Werror=thread-safety']
1223 # drop shared code unused by that specific driver (particularly
1225 if cc.has_link_argument('-Wl,--gc-sections')
1226 _trial_c += ['-ffunction-sections', '-fdata-sections']
1227 _trial_cpp += ['-ffunction-sections', '-fdata-sections']
1231 # builds. Don't treat this as an error, since we build with -Werror even for
1234 _trial_c += ['-Wno-unused-variable', '-Wno-unused-but-set-variable']
1235 _trial_cpp += ['-Wno-unused-variable', '-Wno-unused-but-set-variable']
1242 ['-Wno-override-init', '-Wno-initializer-overrides']
1248 _trial_msvc = ['-Werror=pointer-arith', '-Werror=vla', '-Werror=gnu-empty-initializer']
1271 '-Wl,--nxcompat',
1272 '-Wl,--dynamicbase',
1273 '-static-libgcc',
1274 '-static-libstdc++',
1280 '-Wl,--nxcompat',
1281 '-Wl,--dynamicbase',
1282 '-static-libgcc',
1283 '-static-libstdc++',
1291 pre_args += '-DUSE_SSE41'
1293 sse41_args = ['-msse4.1']
1301 # produce shared objects, and have no control over the stack
1303 # -mstackrealign or -mincoming-stack-boundary=2.
1305 # XXX: We could have SSE without -mstackrealign if we always used
1308 c_args += ['-msse2', '-mfpmath=sse', '-mstackrealign']
1310 # GCC on x86 (not x86_64) with -msse* assumes a 16 byte aligned stack, but
1312 sse41_args += '-mstackrealign'
1333 pre_args += '-DUSE_GCC_ATOMIC_BUILTINS'
1335 # Not all atomic calls can be turned into lock-free instructions, in which
1337 # link with -latomic.
1339 # This can happen for 64-bit atomic operations on 32-bit architectures such
1349 name : 'GCC atomic builtins required -latomic')
1360 pre_args += '-DMISSING_64BIT_ATOMICS'
1365 # TODO: shared/static? Is this even worth doing?
1371 pre_args += ['-DUSE_X86_ASM', '-DUSE_MMX_ASM', '-DUSE_3DNOW_ASM',
1372 '-DUSE_SSE_ASM']
1375 pre_args += ['-DGLX_X86_READONLY_TEXT']
1381 pre_args += ['-DUSE_X86_64_ASM']
1386 pre_args += ['-DUSE_ARM_ASM']
1391 pre_args += ['-DUSE_AARCH64_ASM']
1396 pre_args += ['-DUSE_SPARC_ASM']
1401 pre_args += ['-DUSE_PPC64LE_ASM']
1406 pre_args += ['-DUSE_MIPS64EL_ASM']
1414 pre_args += '-DMAJOR_IN_SYSMACROS'
1419 pre_args += '-DMAJOR_IN_MKDEV'
1423 pre_args += '-DHAS_SCHED_H'
1425 pre_args += '-DHAS_SCHED_GETAFFINITY'
1432 pre_args += '-DHAVE_SYS_SYSCTL_H'
1438 pre_args += '-DHAVE_@0@'.format(h.to_upper().underscorify())
1457 pre_args += '-DHAVE_@0@'.format(f.to_upper())
1462 pre_args += '-DHAVE_STRUCT_TIMESPEC'
1469 pre_args += '-DHAVE_THRD_CREATE'
1475 args : '-D_GNU_SOURCE')
1476 pre_args += '-DHAVE_PROGRAM_INVOCATION_NAME'
1482 args : '-D_GNU_SOURCE')
1483 pre_args += '-DHAVE_ISSIGNALING'
1489 # non-windows platforms.
1492 pre_args += '-DHAVE_POSIX_MEMALIGN'
1498 pre_args += '-DHAVE_DIRENT_D_TYPE'
1520 pre_args += '-DHAVE_STRTOD_L'
1525 if cc.links('int main() { return 0; }', args : '-Wl,-Bsymbolic', name : 'Bsymbolic')
1526 ld_args_bsymbolic += '-Wl,-Bsymbolic'
1530 args : '-Wl,--gc-sections', name : 'gc-sections')
1531 ld_args_gc_sections += '-Wl,--gc-sections'
1535 args : '-Wl,--version-script=@0@'.format(
1536 join_paths(meson.source_root(), 'build-support/conftest.map')),
1537 name : 'version-script')
1542 args : '-Wl,--dynamic-list=@0@'.format(
1543 join_paths(meson.source_root(), 'build-support/conftest.dyn')),
1544 name : 'dynamic-list')
1548 ld_args_build_id = cc.get_supported_link_arguments('-Wl,--build-id=sha1')
1558 pre_args += '-DHAVE_DLADDR'
1563 pre_args += '-DHAVE_DL_ITERATE_PHDR'
1579 pre_args += '-DHAVE_ZLIB'
1593 pre_args += '-DHAVE_ZSTD'
1601 pre_args += '-DHAVE_COMPRESSION'
1608 pre_args += '-DHAVE_PTHREAD'
1613 args : '-D_GNU_SOURCE')
1614 pre_args += '-DHAVE_PTHREAD_SETAFFINITY'
1632 dep_regex = declare_dependency(compile_args : ['-DNO_REGEX'])
1644 if (get_option('min-windows-version') < 8)
1645 pre_args += '-DWINDOWS_NO_FUTEX'
1708 pre_args += '-DHAVE_LIBDRM'
1715 pre_args += '-DHAVE_DRI'
1718 pre_args += '-DHAVE_DRI2'
1721 pre_args += '-DHAVE_DRISW_KMS'
1726 pre_args += '-DHAVE_LIBUDEV'
1742 llvm_optional_modules += ['all-targets', 'frontendopenmp']
1746 llvm_optional_modules += ['all-targets']
1748 draw_with_llvm = get_option('draw-use-llvm')
1763 _shared_llvm = get_option('shared-llvm')
1786 # want to link dynamically. Before 0.54.0 meson will try cmake even when shared
1787 # linking is requested, so we need to force the config-tool method to be used
1788 # in that case, but in 0.54.0 meson won't try the cmake method if shared
1792 _llvm_method = 'config-tool'
1815 pre_args += '-DLLVM_AVAILABLE'
1816 pre_args += '-DMESA_LLVM_VERSION_STRING="@0@"'.format(dep_llvm.version())
1817 pre_args += '-DLLVM_IS_SHARED=@0@'.format(_shared_llvm.to_int())
1820 pre_args += '-DDRAW_LLVM_AVAILABLE'
1833 # The CMake finder will return 'ON', the llvm-config will return 'YES'
1834 _llvm_rtti = ['ON', 'YES'].contains(dep_llvm.get_variable(cmake : 'LLVM_ENABLE_RTTI', configtool: 'has-rtti'))
1864 with_opencl_spirv = (_opencl != 'disabled' and get_option('opencl-spirv')) or with_clc
1870 # Require an SPIRV-LLVM-Translator version compatible with the chosen LLVM
1874 # we do not want to accept SPIRV-LLVM-Translator 8.0.0.1 as that version does
1881 dep_spirv_tools = dependency('SPIRV-Tools', required : true, version : '>= 2018.0')
1882 # LLVMSPIRVLib is available at https://github.com/KhronosGroup/SPIRV-LLVM-Translator
1893 dep_clang = cpp.find_library('clang-cpp', dirs : llvm_libdir, required : false)
1917 with_opencl_native = _opencl != 'disabled' and get_option('opencl-native')
1933 pre_args += '-DUSE_LIBGLVND=1'
1947 pre_args += '-DHAVE_VALGRIND'
1957 asan_c_args = ['-DBUILT_WITH_ASAN=1']
1959 asan_c_args = ['-DBUILT_WITH_ASAN=0']
1972 prog_flex = [prog_flex, '--wincompat']
1978 prog_flex += '-DYY_USE_CONST='
1985 prog_flex_cpp += '-D__STDC_VERSION__=199901'
2000 # old-bison compat. See discussion in
2003 prog_bison = [prog_bison, '-Wno-deprecated']
2016 pre_args += '-DMESA_SELINUX'
2020 pre_args += '-DMESA_EXECMEM'
2038 pre_args += '-DHAVE_LIBUNWIND'
2053 osmesa_bits = get_option('osmesa-bits')
2055 warning('osmesa-bits option is deprecated and have no effect, please remove it.')
2062 dep_wl_scanner = dependency('wayland-scanner', native: true)
2065 wl_scanner_arg = 'private-code'
2069 dep_wl_protocols = dependency('wayland-protocols', version : '>= 1.24')
2070 dep_wayland_client = dependency('wayland-client', version : '>=1.18')
2071 dep_wayland_server = dependency('wayland-server', version : '>=1.18')
2073 dep_wayland_egl = dependency('wayland-egl-backend', version : '>= 3')
2078 'linux-dmabuf', 'linux-dmabuf-unstable-v1.xml'
2080 pre_args += '-DWL_HIDE_DEPRECATED'
2108 pre_args += ['-DHAVE_OPENMP']
2113 if with_glx == 'xlib' or with_glx == 'gallium-xlib'
2121 dep_xcb_glx = dependency('xcb-glx', version : '>= 1.8.1')
2122 dep_xcb_shm = dependency('xcb-shm')
2128 dep_x11_xcb = dependency('x11-xcb')
2134 dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8')
2137 pre_args += '-DHAVE_DRI3'
2138 dep_xcb_dri3 = dependency('xcb-dri3')
2139 dep_xcb_present = dependency('xcb-present')
2140 # until xcb-dri3 has been around long enough to make a hard-dependency:
2143 pre_args += '-DHAVE_DRI3_MODIFIERS'
2145 dep_xcb_shm = dependency('xcb-shm')
2146 dep_xcb_sync = dependency('xcb-sync')
2150 if with_glx == 'dri' or with_glx == 'xlib' or with_glx == 'gallium-xlib'
2165 dep_xcb_xfixes = dependency('xcb-xfixes')
2168 dep_xcb_xrandr = dependency('xcb-randr')
2175 if get_option('gallium-extra-hud')
2176 pre_args += '-DHAVE_GALLIUM_EXTRA_HUD=1'
2190 pre_args += '-DHAVE_LIBSENSORS=1'
2196 _shader_replacement = get_option('custom-shader-replacement')
2199 pre_args += '-DCUSTOM_SHADER_REPLACEMENT'
2207 pre_args += '-DHAVE_PERFETTO'
2216 if with_glx == 'xlib' or with_glx == 'gallium-xlib'
2220 'x11', 'xext', 'xfixes', 'x11-xcb', 'xcb',
2221 'xcb-glx >= 1.8.1']
2223 gl_priv_reqs += 'xcb-dri2 >= 1.8'
2235 gl_priv_libs += ['-lpthread', '-pthread']
2238 gl_priv_libs += '-lm'
2241 gl_priv_libs += '-ldl'
2247 gbm_priv_libs += '-ldl'
2256 symbols_check_args = ['--dumpbin', prog_dumpbin.path()]
2261 symbols_check_args = ['--nm', prog_nm.path()]
2266 gcc_lto_quirk = (cc.get_id() == 'gcc') ? ['-fno-lto'] : []
2309 lines += 'GLX: DRI-based'
2311 lines += 'GLX: Xlib-based'
2348 lines += 'Vulkan layers: ' + ' '.join(get_option('vulkan-layers'))
2357 lines += 'llvm-version: ' + dep_llvm.version()
2395 lines += 'Shared-glapi: ' + (with_shared_glapi ? 'yes' : 'no')