summaryrefslogtreecommitdiffstats
path: root/meson.build
diff options
context:
space:
mode:
authorErik Faye-Lund <[email protected]>2019-04-12 17:51:30 +0200
committerErik Faye-Lund <[email protected]>2019-05-02 18:30:29 +0000
commitd30ce03bc07562d2f694dbe94cbf9c1875a25c4d (patch)
tree06237cf18372db597e83c28c09b0b4e4d3424813 /meson.build
parent2127403439bec84ed6bdcd64ca4eca8548f9f77a (diff)
meson: add build-summary
This roughly mirrors what we get from autotools. There's a few differences, though: 1. The "exec_prefix" output has been dropped. Meson doesn't support this, so it makes no sense here. 2. The "llvm-config" output has been dropped. Meson abstracts dependency discovery a bit more than our autotools build-system does, so it's not easy to get this information as-is. 3. HUD extra stats, SWR archs, Shared/Static libs and CFLAGS / CXXFLAGS / LDFLAGS has been dropped. These can be inspected by "meson configure". 4. How we set defines works quite differently in our Meson build-system, and the result isn't quite the same. In particular, the DEFINES output has been dropped, to avoid having to refactor the code too much. Signed-off-by: Erik Faye-Lund <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109326 Reviewed-by: Eric Engestrom <[email protected]> Acked-by: Dylan Baker <[email protected]>
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build127
1 files changed, 127 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index 8d83feb41f7..2df33f26100 100644
--- a/meson.build
+++ b/meson.build
@@ -1482,3 +1482,130 @@ gcc_lto_quirk = (cc.get_id() == 'gcc') ? ['-fno-lto'] : []
subdir('include')
subdir('bin')
subdir('src')
+
+# Meson 0.49 and earlier seems to have a bug that fails to evaluate the string-
+# formatting below unless the first argument is passed as a variable. This has
+# been fixed in Meson 0.50 and beyond, but we need to keep it like this for now
+# for backwards compatibility.
+_with_opengl_string = with_opengl ? 'yes' : 'no'
+
+lines = ['',
+ 'prefix: ' + get_option('prefix'),
+ 'libdir: ' + get_option('libdir'),
+ 'includedir: ' + get_option('includedir'),
+ '',
+ 'OpenGL: @0@ (ES1: @1@ ES2: @2@)'.format(_with_opengl_string,
+ with_gles1 ? 'yes' : 'no',
+ with_gles2 ? 'yes' : 'no'),
+]
+
+lines += ''
+if with_osmesa != 'none'
+ suffix = ''
+ if with_osmesa == 'gallium'
+ suffix = '(Gallium)'
+ endif
+ lines += 'OSMesa: lib' + osmesa_lib_name + suffix
+else
+ lines += 'OSMesa: no'
+endif
+
+lines += ''
+if with_dri
+ lines += 'DRI platform: ' + with_dri_platform
+ if dri_drivers.length() != 0 and dri_drivers != ['']
+ lines += 'DRI drivers: ' + ' '.join(dri_drivers)
+ else
+ lines += 'DRI drivers: no'
+ endif
+ lines += 'DRI driver dir: ' + dri_drivers_path
+endif
+
+lines += ''
+if with_glx != 'disabled'
+ if with_glx == 'dri'
+ lines += 'GLX: DRI-based'
+ elif with_glx == 'xlib'
+ lines += 'GLX: Xlib-based'
+ elif with_glx == 'gallium-xlib'
+ lines += 'GLX: Xlib-based (Gallium)'
+ else
+ lines += 'GLX: ' + with_glx
+ endif
+endif
+
+lines += ''
+lines += 'EGL: ' + (with_egl ? 'yes' : 'no')
+if with_egl
+ egl_drivers = []
+ if with_dri
+ egl_drivers += 'builtin:egl_dri2'
+ endif
+ if with_dri3
+ egl_drivers += 'builtin:egl_dri3'
+ endif
+ lines += 'EGL drivers: ' + ' '.join(egl_drivers)
+endif
+lines += 'GBM: ' + (with_gbm ? 'yes' : 'no')
+if with_platforms
+ lines += 'EGL/Vulkan/VL platforms: ' + ' '.join(_platforms)
+endif
+
+lines += ''
+if with_any_vk
+ lines += 'Vulkan drivers: ' + ' '.join(_vulkan_drivers)
+ lines += 'Vulkan ICD dir: ' + with_vulkan_icd_dir
+else
+ lines += 'Vulkan drivers: no'
+endif
+
+lines += ''
+if with_llvm
+ lines += 'llvm: yes'
+ lines += 'llvm-version: ' + dep_llvm.version()
+else
+ lines += 'llvm: no'
+endif
+
+lines += ''
+if with_gallium
+ lines += 'Gallium drivers: ' + ' '.join(gallium_drivers)
+ gallium_st = ['mesa']
+ if with_gallium_xa
+ gallium_st += 'xa'
+ endif
+ if with_gallium_xvmc
+ gallium_st += 'xvmc'
+ endif
+ if with_gallium_xvmc
+ gallium_st += 'xvmc'
+ endif
+ if with_gallium_vdpau
+ gallium_st += 'vdpau'
+ endif
+ if with_gallium_omx != 'disabled'
+ gallium_st += 'omx' + with_gallium_omx
+ endif
+ if with_gallium_va
+ gallium_st += 'va'
+ endif
+ if with_gallium_st_nine
+ gallium_st += 'nine'
+ endif
+ if with_gallium_opencl
+ gallium_st += 'clover'
+ endif
+ lines += 'Gallium st: ' + ' '.join(gallium_st)
+else
+ lines += 'Gallium: no'
+endif
+
+lines += 'HUD lmsensors: ' + (dep_lmsensors.found() ? 'yes' : 'no')
+
+lines += ''
+lines += 'Shared-glapi: ' + (with_shared_glapi ? 'yes' : 'no')
+
+
+indent = ' '
+summary = indent + ('\n' + indent).join(lines)
+message('Configuration summary:\n@0@\n'.format(summary))