X-Git-Url: https://git.libre-soc.org/?p=mesa.git;a=blobdiff_plain;f=src%2Fgallium%2Fmeson.build;h=1f81fcf1fd5ddca2ee9f4088713d448845ede054;hp=581f701b30bbb7bd91808bbed394e88a3ac3a407;hb=36aed70b591f7f4f642b26f46f7928be6d137e7b;hpb=9169dde94149abe519cf1d1da7e388d0e200fa3f diff --git a/src/gallium/meson.build b/src/gallium/meson.build index 581f701b30b..1f81fcf1fd5 100644 --- a/src/gallium/meson.build +++ b/src/gallium/meson.build @@ -1,4 +1,5 @@ # Copyright © 2017 Dylan Baker +# Copyright © 2017-2018 Intel Corporation # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -20,89 +21,207 @@ inc_gallium_drivers = include_directories('drivers') inc_gallium_winsys = include_directories('winsys') +inc_gallium_winsys_sw = include_directories('winsys/sw') subdir('auxiliary') subdir('auxiliary/pipe-loader') -subdir('drivers/ddebug') -subdir('drivers/noop') -subdir('drivers/trace') -subdir('drivers/rbug') subdir('winsys/sw/null') -subdir('winsys/sw/dri') -subdir('winsys/sw/kms-dri') +if with_dri + subdir('winsys/sw/dri') +else + libswdri = [] +endif +if with_gallium_drisw_kms + subdir('winsys/sw/kms-dri') +else + libswkmsdri = [] +endif +if with_platform_windows + subdir('winsys/sw/gdi') +else + libwsgdi = null_dep +endif subdir('winsys/sw/wrapper') +if with_platform_haiku + subdir('winsys/sw/hgl') +endif +if with_gallium_swr + subdir('drivers/swr') +else + driver_swr = declare_dependency() +endif if with_gallium_softpipe subdir('drivers/softpipe') if with_llvm subdir('drivers/llvmpipe') endif +else + driver_swrast = declare_dependency() endif -if with_gallium_radeonsi - # TODO: some of these are needed by r300 and r600 - subdir('drivers/radeon') - subdir('drivers/radeonsi') +if with_gallium_r300 or with_gallium_radeonsi or with_gallium_r600 subdir('winsys/radeon/drm') +endif +if with_gallium_r300 + subdir('drivers/r300') +else + driver_r300 = declare_dependency() +endif +if with_gallium_r600 + subdir('drivers/r600') +else + driver_r600 = declare_dependency() +endif +if with_gallium_radeonsi subdir('winsys/amdgpu/drm') + subdir('drivers/radeonsi') +else + driver_radeonsi = declare_dependency() endif if with_gallium_nouveau - subdir('drivers/nouveau') subdir('winsys/nouveau/drm') + subdir('drivers/nouveau') +else + driver_nouveau = declare_dependency() endif if with_gallium_freedreno - subdir('drivers/freedreno') subdir('winsys/freedreno/drm') -endif -if with_gallium_pl111 - subdir('winsys/pl111/drm') + subdir('drivers/freedreno') +else + driver_freedreno = declare_dependency() endif if with_gallium_vc4 - subdir('drivers/vc4') subdir('winsys/vc4/drm') + subdir('drivers/vc4') +else + driver_vc4 = declare_dependency() endif -if with_gallium_vc5 - subdir('drivers/vc5') - subdir('winsys/vc5/drm') +if with_gallium_panfrost + subdir('winsys/panfrost/drm') + subdir('drivers/panfrost') +else + driver_panfrost = declare_dependency() endif if with_gallium_etnaviv - subdir('drivers/etnaviv') subdir('winsys/etnaviv/drm') -endif -if with_gallium_imx - subdir('winsys/imx/drm') + subdir('drivers/etnaviv') +else + driver_etnaviv = declare_dependency() +endif +if with_gallium_kmsro + subdir('winsys/kmsro/drm') +else + driver_kmsro = declare_dependency() +endif +if with_gallium_v3d + subdir('winsys/v3d/drm') + subdir('drivers/v3d') +else + driver_v3d = declare_dependency() +endif +if with_gallium_tegra + subdir('winsys/tegra/drm') + subdir('drivers/tegra') +else + driver_tegra = declare_dependency() +endif +if with_gallium_iris + subdir('winsys/iris/drm') + subdir('drivers/iris') +else + driver_iris = declare_dependency() endif if with_gallium_i915 subdir('winsys/i915/drm') subdir('drivers/i915') +else + driver_i915 = declare_dependency() +endif +if with_gallium_svga + subdir('winsys/svga/drm') + subdir('drivers/svga') +else + driver_svga = declare_dependency() +endif +if with_gallium_virgl + subdir('winsys/virgl/common') + subdir('winsys/virgl/drm') + subdir('winsys/virgl/vtest') + subdir('drivers/virgl') +else + driver_virgl = declare_dependency() +endif +if with_gallium_lima + subdir('winsys/lima/drm') + subdir('drivers/lima') +else + driver_lima = declare_dependency() +endif + +if with_gallium_zink + subdir('drivers/zink') +else + driver_zink = declare_dependency() +endif + +if with_gallium_opencl + # TODO: this isn't really clover specific, but ATM clover is the only + # consumer + subdir('targets/pipe-loader') + + subdir('state_trackers/clover') + subdir('targets/opencl') endif if with_dri subdir('state_trackers/dri') + subdir('targets/dri') endif if with_osmesa == 'gallium' subdir('state_trackers/osmesa') + subdir('targets/osmesa') endif if with_glx == 'gallium-xlib' subdir('winsys/sw/xlib') subdir('state_trackers/glx/xlib') + subdir('targets/libgl-xlib') endif -# TODO: SVGA -# TODO: r300 -# TODO: r600 -# TODO: SWR -# TODO: virgl -# TODO: clover -if with_dri - subdir('targets/dri') +if with_gallium_vdpau + subdir('state_trackers/vdpau') + subdir('targets/vdpau') endif -if with_osmesa == 'gallium' - subdir('targets/osmesa') +if with_gallium_xvmc + subdir('state_trackers/xvmc') + subdir('targets/xvmc') endif -if with_glx == 'gallium-xlib' - subdir('targets/libgl-xlib') +if with_gallium_omx != 'disabled' + subdir('state_trackers/omx') + subdir('targets/omx') +endif +if with_gallium_va + subdir('state_trackers/va') + subdir('targets/va') +endif +if with_gallium_xa + subdir('state_trackers/xa') + subdir('targets/xa') +endif +if with_platform_haiku + subdir('state_trackers/hgl') + subdir('targets/haiku-softpipe') +endif +if with_gallium_st_nine + subdir('state_trackers/nine') + subdir('targets/d3dadapter9') +endif +if with_platform_windows + subdir('state_trackers/wgl') + subdir('targets/libgl-gdi') +endif +if with_tests + subdir('targets/graw-null') + if with_platform_windows + subdir('targets/graw-gdi') + elif with_glx == 'gallium-xlib' + subdir('targets/graw-xlib') + endif + subdir('tests') endif -# TODO: OMX -# TODO: VA -# TODO: vdpau -# TODO: xa -# TODO: xvmc -# TODO: nine -# TODO: tests