1*61046927SAndroid Build Coastguard Worker# Copyright © 2017 Dylan Baker 2*61046927SAndroid Build Coastguard Worker# Copyright © 2017-2018 Intel Corporation 3*61046927SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT 4*61046927SAndroid Build Coastguard Worker 5*61046927SAndroid Build Coastguard Workersym_config = configuration_data() 6*61046927SAndroid Build Coastguard Worker 7*61046927SAndroid Build Coastguard Workerforeach d : [[with_gallium_r300 or with_gallium_radeonsi or with_gallium_r600, 'radeon_drm_winsys_create'], 8*61046927SAndroid Build Coastguard Worker [with_gallium_radeonsi, 'amdgpu_winsys_create'], 9*61046927SAndroid Build Coastguard Worker [with_gallium_nouveau, 'nouveau_drm_screen_create'], 10*61046927SAndroid Build Coastguard Worker [with_gallium_freedreno, 'fd_drm_screen_create_renderonly'], 11*61046927SAndroid Build Coastguard Worker [amd_with_llvm and with_gallium_radeonsi, 'ac_init_shared_llvm_once']] 12*61046927SAndroid Build Coastguard Worker if d[0] 13*61046927SAndroid Build Coastguard Worker sym_config.set(d[1], d[1] + ';') 14*61046927SAndroid Build Coastguard Worker else 15*61046927SAndroid Build Coastguard Worker sym_config.set(d[1], '') 16*61046927SAndroid Build Coastguard Worker endif 17*61046927SAndroid Build Coastguard Workerendforeach 18*61046927SAndroid Build Coastguard Worker 19*61046927SAndroid Build Coastguard Workerinc_gallium_drivers = include_directories('drivers') 20*61046927SAndroid Build Coastguard Workerinc_gallium_winsys = include_directories('winsys') 21*61046927SAndroid Build Coastguard Workerinc_gallium_winsys_sw = include_directories('winsys/sw') 22*61046927SAndroid Build Coastguard Worker 23*61046927SAndroid Build Coastguard Workersubdir('auxiliary') 24*61046927SAndroid Build Coastguard Workersubdir('auxiliary/pipe-loader') 25*61046927SAndroid Build Coastguard Workersubdir('winsys/sw/null') 26*61046927SAndroid Build Coastguard Workerif with_dri 27*61046927SAndroid Build Coastguard Worker subdir('winsys/sw/dri') 28*61046927SAndroid Build Coastguard Workerelse 29*61046927SAndroid Build Coastguard Worker libswdri = [] 30*61046927SAndroid Build Coastguard Workerendif 31*61046927SAndroid Build Coastguard Workerif with_gallium_drisw_kms 32*61046927SAndroid Build Coastguard Worker subdir('winsys/sw/kms-dri') 33*61046927SAndroid Build Coastguard Workerelse 34*61046927SAndroid Build Coastguard Worker libswkmsdri = [] 35*61046927SAndroid Build Coastguard Workerendif 36*61046927SAndroid Build Coastguard Workerif with_platform_windows 37*61046927SAndroid Build Coastguard Worker subdir('winsys/sw/gdi') 38*61046927SAndroid Build Coastguard Workerelse 39*61046927SAndroid Build Coastguard Worker libwsgdi = null_dep 40*61046927SAndroid Build Coastguard Workerendif 41*61046927SAndroid Build Coastguard Workersubdir('winsys/sw/wrapper') 42*61046927SAndroid Build Coastguard Workerif with_platform_haiku 43*61046927SAndroid Build Coastguard Worker subdir('winsys/sw/hgl') 44*61046927SAndroid Build Coastguard Workerendif 45*61046927SAndroid Build Coastguard Workerif with_gallium_softpipe 46*61046927SAndroid Build Coastguard Worker subdir('drivers/softpipe') 47*61046927SAndroid Build Coastguard Workerelse 48*61046927SAndroid Build Coastguard Worker driver_softpipe = declare_dependency() 49*61046927SAndroid Build Coastguard Workerendif 50*61046927SAndroid Build Coastguard Workerif with_any_llvmpipe 51*61046927SAndroid Build Coastguard Worker subdir('drivers/llvmpipe') 52*61046927SAndroid Build Coastguard Workerelse 53*61046927SAndroid Build Coastguard Worker driver_llvmpipe = declare_dependency() 54*61046927SAndroid Build Coastguard Workerendif 55*61046927SAndroid Build Coastguard Workerif with_any_llvmpipe and with_gallium_softpipe 56*61046927SAndroid Build Coastguard Worker driver_swrast = declare_dependency( 57*61046927SAndroid Build Coastguard Worker dependencies : [ driver_softpipe, driver_llvmpipe ], 58*61046927SAndroid Build Coastguard Worker ) 59*61046927SAndroid Build Coastguard Workerelif with_any_llvmpipe 60*61046927SAndroid Build Coastguard Worker driver_swrast = driver_llvmpipe 61*61046927SAndroid Build Coastguard Workerelif with_gallium_softpipe 62*61046927SAndroid Build Coastguard Worker driver_swrast = driver_softpipe 63*61046927SAndroid Build Coastguard Workerelse 64*61046927SAndroid Build Coastguard Worker driver_swrast = declare_dependency() 65*61046927SAndroid Build Coastguard Workerendif 66*61046927SAndroid Build Coastguard Worker 67*61046927SAndroid Build Coastguard Workerif with_gallium_asahi 68*61046927SAndroid Build Coastguard Worker subdir('winsys/asahi/drm') 69*61046927SAndroid Build Coastguard Worker subdir('drivers/asahi') 70*61046927SAndroid Build Coastguard Workerelse 71*61046927SAndroid Build Coastguard Worker driver_asahi = declare_dependency() 72*61046927SAndroid Build Coastguard Workerendif 73*61046927SAndroid Build Coastguard Workerif with_gallium_r300 or with_gallium_radeonsi or with_gallium_r600 74*61046927SAndroid Build Coastguard Worker subdir('winsys/radeon/drm') 75*61046927SAndroid Build Coastguard Workerendif 76*61046927SAndroid Build Coastguard Workerif with_gallium_r300 77*61046927SAndroid Build Coastguard Worker subdir('drivers/r300') 78*61046927SAndroid Build Coastguard Workerelse 79*61046927SAndroid Build Coastguard Worker driver_r300 = declare_dependency() 80*61046927SAndroid Build Coastguard Workerendif 81*61046927SAndroid Build Coastguard Workerif with_gallium_r600 82*61046927SAndroid Build Coastguard Worker subdir('drivers/r600') 83*61046927SAndroid Build Coastguard Workerelse 84*61046927SAndroid Build Coastguard Worker driver_r600 = declare_dependency() 85*61046927SAndroid Build Coastguard Workerendif 86*61046927SAndroid Build Coastguard Workerif with_gallium_radeonsi 87*61046927SAndroid Build Coastguard Worker subdir('winsys/amdgpu/drm') 88*61046927SAndroid Build Coastguard Worker subdir('drivers/radeonsi') 89*61046927SAndroid Build Coastguard Workerelse 90*61046927SAndroid Build Coastguard Worker driver_radeonsi = declare_dependency() 91*61046927SAndroid Build Coastguard Workerendif 92*61046927SAndroid Build Coastguard Workerif with_gallium_nouveau 93*61046927SAndroid Build Coastguard Worker subdir('winsys/nouveau/drm') 94*61046927SAndroid Build Coastguard Worker subdir('drivers/nouveau') 95*61046927SAndroid Build Coastguard Workerelse 96*61046927SAndroid Build Coastguard Worker driver_nouveau = declare_dependency() 97*61046927SAndroid Build Coastguard Workerendif 98*61046927SAndroid Build Coastguard Workerif with_gallium_freedreno 99*61046927SAndroid Build Coastguard Worker subdir('winsys/freedreno/drm') 100*61046927SAndroid Build Coastguard Worker subdir('drivers/freedreno') 101*61046927SAndroid Build Coastguard Workerelse 102*61046927SAndroid Build Coastguard Worker driver_freedreno = declare_dependency() 103*61046927SAndroid Build Coastguard Workerendif 104*61046927SAndroid Build Coastguard Workerif with_gallium_vc4 105*61046927SAndroid Build Coastguard Worker subdir('winsys/vc4/drm') 106*61046927SAndroid Build Coastguard Worker subdir('drivers/vc4') 107*61046927SAndroid Build Coastguard Workerelse 108*61046927SAndroid Build Coastguard Worker driver_vc4 = declare_dependency() 109*61046927SAndroid Build Coastguard Workerendif 110*61046927SAndroid Build Coastguard Workerif with_gallium_panfrost 111*61046927SAndroid Build Coastguard Worker subdir('winsys/panfrost/drm') 112*61046927SAndroid Build Coastguard Worker subdir('drivers/panfrost') 113*61046927SAndroid Build Coastguard Workerelse 114*61046927SAndroid Build Coastguard Worker driver_panfrost = declare_dependency() 115*61046927SAndroid Build Coastguard Workerendif 116*61046927SAndroid Build Coastguard Workerif with_gallium_etnaviv 117*61046927SAndroid Build Coastguard Worker subdir('winsys/etnaviv/drm') 118*61046927SAndroid Build Coastguard Worker subdir('drivers/etnaviv') 119*61046927SAndroid Build Coastguard Workerelse 120*61046927SAndroid Build Coastguard Worker driver_etnaviv = declare_dependency() 121*61046927SAndroid Build Coastguard Workerendif 122*61046927SAndroid Build Coastguard Workerif with_gallium_kmsro 123*61046927SAndroid Build Coastguard Worker subdir('winsys/kmsro/drm') 124*61046927SAndroid Build Coastguard Workerelse 125*61046927SAndroid Build Coastguard Worker driver_kmsro = declare_dependency() 126*61046927SAndroid Build Coastguard Workerendif 127*61046927SAndroid Build Coastguard Workerif with_gallium_v3d 128*61046927SAndroid Build Coastguard Worker subdir('winsys/v3d/drm') 129*61046927SAndroid Build Coastguard Worker subdir('drivers/v3d') 130*61046927SAndroid Build Coastguard Workerelse 131*61046927SAndroid Build Coastguard Worker driver_v3d = declare_dependency() 132*61046927SAndroid Build Coastguard Workerendif 133*61046927SAndroid Build Coastguard Workerif with_gallium_tegra 134*61046927SAndroid Build Coastguard Worker subdir('winsys/tegra/drm') 135*61046927SAndroid Build Coastguard Worker subdir('drivers/tegra') 136*61046927SAndroid Build Coastguard Workerelse 137*61046927SAndroid Build Coastguard Worker driver_tegra = declare_dependency() 138*61046927SAndroid Build Coastguard Workerendif 139*61046927SAndroid Build Coastguard Workerif with_gallium_crocus 140*61046927SAndroid Build Coastguard Worker subdir('winsys/crocus/drm') 141*61046927SAndroid Build Coastguard Worker subdir('drivers/crocus') 142*61046927SAndroid Build Coastguard Workerelse 143*61046927SAndroid Build Coastguard Worker driver_crocus = declare_dependency() 144*61046927SAndroid Build Coastguard Workerendif 145*61046927SAndroid Build Coastguard Workerif with_gallium_iris 146*61046927SAndroid Build Coastguard Worker subdir('winsys/iris/drm') 147*61046927SAndroid Build Coastguard Worker subdir('drivers/iris') 148*61046927SAndroid Build Coastguard Workerelse 149*61046927SAndroid Build Coastguard Worker driver_iris = declare_dependency() 150*61046927SAndroid Build Coastguard Workerendif 151*61046927SAndroid Build Coastguard Workerif with_gallium_i915 152*61046927SAndroid Build Coastguard Worker subdir('winsys/i915/drm') 153*61046927SAndroid Build Coastguard Worker subdir('drivers/i915') 154*61046927SAndroid Build Coastguard Workerelse 155*61046927SAndroid Build Coastguard Worker driver_i915 = declare_dependency() 156*61046927SAndroid Build Coastguard Workerendif 157*61046927SAndroid Build Coastguard Workerif with_gallium_svga 158*61046927SAndroid Build Coastguard Worker if not with_platform_windows 159*61046927SAndroid Build Coastguard Worker subdir('winsys/svga/drm') 160*61046927SAndroid Build Coastguard Worker endif 161*61046927SAndroid Build Coastguard Worker subdir('drivers/svga') 162*61046927SAndroid Build Coastguard Workerelse 163*61046927SAndroid Build Coastguard Worker driver_svga = declare_dependency() 164*61046927SAndroid Build Coastguard Workerendif 165*61046927SAndroid Build Coastguard Workerif with_gallium_virgl 166*61046927SAndroid Build Coastguard Worker subdir('winsys/virgl/common') 167*61046927SAndroid Build Coastguard Worker if not with_platform_windows 168*61046927SAndroid Build Coastguard Worker subdir('winsys/virgl/drm') 169*61046927SAndroid Build Coastguard Worker subdir('winsys/virgl/vtest') 170*61046927SAndroid Build Coastguard Worker endif 171*61046927SAndroid Build Coastguard Worker subdir('drivers/virgl') 172*61046927SAndroid Build Coastguard Workerelse 173*61046927SAndroid Build Coastguard Worker driver_virgl = declare_dependency() 174*61046927SAndroid Build Coastguard Workerendif 175*61046927SAndroid Build Coastguard Workerif with_gallium_lima 176*61046927SAndroid Build Coastguard Worker subdir('winsys/lima/drm') 177*61046927SAndroid Build Coastguard Worker subdir('drivers/lima') 178*61046927SAndroid Build Coastguard Workerelse 179*61046927SAndroid Build Coastguard Worker driver_lima = declare_dependency() 180*61046927SAndroid Build Coastguard Workerendif 181*61046927SAndroid Build Coastguard Workerif with_gallium_zink 182*61046927SAndroid Build Coastguard Worker subdir('drivers/zink') 183*61046927SAndroid Build Coastguard Workerelse 184*61046927SAndroid Build Coastguard Worker driver_zink = declare_dependency() 185*61046927SAndroid Build Coastguard Workerendif 186*61046927SAndroid Build Coastguard Workerif with_gallium_d3d12 187*61046927SAndroid Build Coastguard Worker subdir('drivers/d3d12') 188*61046927SAndroid Build Coastguard Workerelse 189*61046927SAndroid Build Coastguard Worker driver_d3d12 = declare_dependency() 190*61046927SAndroid Build Coastguard Workerendif 191*61046927SAndroid Build Coastguard Workerif with_gallium_clover or with_tests 192*61046927SAndroid Build Coastguard Worker # At the moment, clover and gallium/tests are the only two consumers 193*61046927SAndroid Build Coastguard Worker # for pipe-loader 194*61046927SAndroid Build Coastguard Worker subdir('targets/pipe-loader') 195*61046927SAndroid Build Coastguard Workerendif 196*61046927SAndroid Build Coastguard Workerif with_gallium_clover 197*61046927SAndroid Build Coastguard Worker subdir('frontends/clover') 198*61046927SAndroid Build Coastguard Worker subdir('targets/opencl') 199*61046927SAndroid Build Coastguard Workerendif 200*61046927SAndroid Build Coastguard Workerif with_gallium_rusticl 201*61046927SAndroid Build Coastguard Worker subdir('frontends/rusticl') 202*61046927SAndroid Build Coastguard Worker subdir('targets/rusticl') 203*61046927SAndroid Build Coastguard Workerendif 204*61046927SAndroid Build Coastguard Workerif with_glx == 'xlib' 205*61046927SAndroid Build Coastguard Worker subdir('winsys/sw/xlib') 206*61046927SAndroid Build Coastguard Worker subdir('frontends/glx/xlib') 207*61046927SAndroid Build Coastguard Worker subdir('targets/libgl-xlib') 208*61046927SAndroid Build Coastguard Workerendif 209*61046927SAndroid Build Coastguard Workerif with_gallium_va 210*61046927SAndroid Build Coastguard Worker subdir('frontends/va') 211*61046927SAndroid Build Coastguard Worker if not with_dri 212*61046927SAndroid Build Coastguard Worker subdir('targets/va') 213*61046927SAndroid Build Coastguard Worker endif 214*61046927SAndroid Build Coastguard Workerendif 215*61046927SAndroid Build Coastguard Workerif with_gallium_vdpau 216*61046927SAndroid Build Coastguard Worker subdir('frontends/vdpau') 217*61046927SAndroid Build Coastguard Worker if not with_dri 218*61046927SAndroid Build Coastguard Worker subdir('targets/vdpau') 219*61046927SAndroid Build Coastguard Worker endif 220*61046927SAndroid Build Coastguard Workerendif 221*61046927SAndroid Build Coastguard Workerif with_dri 222*61046927SAndroid Build Coastguard Worker subdir('frontends/dri') 223*61046927SAndroid Build Coastguard Worker subdir('targets/dri') 224*61046927SAndroid Build Coastguard Workerendif 225*61046927SAndroid Build Coastguard Workerif with_osmesa 226*61046927SAndroid Build Coastguard Worker subdir('frontends/osmesa') 227*61046927SAndroid Build Coastguard Worker subdir('targets/osmesa') 228*61046927SAndroid Build Coastguard Workerendif 229*61046927SAndroid Build Coastguard Workerif with_gallium_xa 230*61046927SAndroid Build Coastguard Worker subdir('frontends/xa') 231*61046927SAndroid Build Coastguard Worker subdir('targets/xa') 232*61046927SAndroid Build Coastguard Workerendif 233*61046927SAndroid Build Coastguard Workerif with_platform_haiku 234*61046927SAndroid Build Coastguard Worker subdir('frontends/hgl') 235*61046927SAndroid Build Coastguard Workerendif 236*61046927SAndroid Build Coastguard Workerif with_gallium_st_nine 237*61046927SAndroid Build Coastguard Worker subdir('frontends/nine') 238*61046927SAndroid Build Coastguard Worker subdir('targets/d3dadapter9') 239*61046927SAndroid Build Coastguard Workerendif 240*61046927SAndroid Build Coastguard Workerif with_gallium_st_d3d10umd 241*61046927SAndroid Build Coastguard Worker subdir('frontends/d3d10umd') 242*61046927SAndroid Build Coastguard Worker subdir('targets/d3d10umd') 243*61046927SAndroid Build Coastguard Workerendif 244*61046927SAndroid Build Coastguard Workerif with_platform_windows 245*61046927SAndroid Build Coastguard Worker if with_opengl 246*61046927SAndroid Build Coastguard Worker subdir('frontends/wgl') 247*61046927SAndroid Build Coastguard Worker if with_gallium_d3d12 248*61046927SAndroid Build Coastguard Worker subdir('winsys/d3d12/wgl') 249*61046927SAndroid Build Coastguard Worker else 250*61046927SAndroid Build Coastguard Worker winsys_d3d12_wgl = declare_dependency() 251*61046927SAndroid Build Coastguard Worker endif 252*61046927SAndroid Build Coastguard Worker subdir('targets/wgl') 253*61046927SAndroid Build Coastguard Worker subdir('targets/libgl-gdi') 254*61046927SAndroid Build Coastguard Worker endif 255*61046927SAndroid Build Coastguard Workerendif 256*61046927SAndroid Build Coastguard Workerif with_tests 257*61046927SAndroid Build Coastguard Worker subdir('tests') 258*61046927SAndroid Build Coastguard Workerendif 259*61046927SAndroid Build Coastguard Workerif with_swrast_vk 260*61046927SAndroid Build Coastguard Worker subdir('frontends/lavapipe') 261*61046927SAndroid Build Coastguard Worker subdir('targets/lavapipe') 262*61046927SAndroid Build Coastguard Workerendif 263*61046927SAndroid Build Coastguard Worker 264*61046927SAndroid Build Coastguard Workerif with_teflon 265*61046927SAndroid Build Coastguard Worker subdir('frontends/teflon') 266*61046927SAndroid Build Coastguard Worker subdir('targets/teflon') 267*61046927SAndroid Build Coastguard Workerendif 268