[Mesa-dev] [RFC PATCH mesa 5/5] WIP - meson: add a message block at the end of the configuration stage
Dylan Baker
dylan at pnwbakers.com
Sat Feb 24 00:49:14 UTC 2018
Quoting Eric Engestrom (2018-02-23 10:08:48)
> The messages are basically the same as the ones in configure.ac
>
> Signed-off-by: Eric Engestrom <eric.engestrom at imgtec.com>
> ---
> Sent out because it's as much as I could do before the weekend, and
> before I try to figure out the last bits I'd love some confirmation that
> this is what we want :)
> ---
> meson.build | 128 ++++++++++++++++++++++++++++++++++++++++++++++++
> src/gallium/meson.build | 13 +++++
> 2 files changed, 141 insertions(+)
>
> diff --git a/meson.build b/meson.build
> index 770fdc7e50653bcfa7c2..0c84d09c02322ed7a80b 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1263,3 +1263,131 @@ env_test.set('NM', find_program('nm').path())
> subdir('include')
> subdir('bin')
> subdir('src')
> +
> +
> +#
> +# Output some configuration info for the user
> +#
> +message('')
> +message(' prefix: ' + get_option('prefix'))
> +message(' libdir: ' + join_paths(get_option('prefix'), get_option('libdir')))
> +message(' includedir: ' + join_paths(get_option('prefix'), get_option('includedir')))
I'd really like to avoid having millions of message() calls, what about:
messsage('''
prefix: @0@
libdir: @1@
includedir: @2@
...
'''.format(
...
))
Dylan
> +
> +# API info
> +message('')
> +message(' OpenGL: @0@ (ES1: @1@ ES2: @2@)'.format(with_opengl, with_gles1, with_gles2))
> +
> +# Driver info
> +message('')
> +if with_osmesa == 'gallium'
> + message(' OSMesa: lib at 0@ (Gallium)'.format(osmesa_lib_name))
> +elif with_osmesa == 'classic'
> + message(' OSMesa: lib at 0@'.format(osmesa_lib_name))
> +elif with_osmesa == 'none'
> + message(' OSMesa: no')
> +endif
> +
> +message('')
> +if with_dri
> + message(' DRI platform: ' + with_dri_platform)
> + if false #DRI_DIRS
> + message(' DRI drivers: no')
> + else
> + message(' DRI drivers: ' + _dri_drivers)
> + endif
> + message(' DRI driver dir: ' + join_paths(get_option('prefix'), dri_drivers_path))
> +endif
> +
> +if with_glx == 'dri'
> + message(' GLX: DRI-based')
> +elif with_glx == 'xlib'
> + message(' GLX: Xlib-based')
> +elif with_glx == 'gallium-xlib'
> + message(' GLX: Xlib-based (Gallium)')
> +else
> + message(' GLX: @0@'.format(with_glx))
> +endif
> +
> +# EGL
> +message('')
> +message(' EGL: @0@'.format(with_egl))
> +if with_egl
> + #message(' EGL drivers: @0@ @1@'.format(
> + #with_dri ? 'builtin:egl_dri2' : '',
> + #with_dri3 ? 'builtin:egl_dri3' : ''))
> +endif
> +message(' GBM: @0@'.format(with_gbm))
> +
> +message(' EGL/Vulkan/VL platforms: @0@'.format(_platforms))
> +
> +# Vulkan
> +message('')
> +if with_any_vk
> + message(' Vulkan drivers: ' + _vulkan_drivers)
> + message(' Vulkan ICD dir: ' + join_paths(get_option('prefix'), with_vulkan_icd_dir))
> +else
> + message(' Vulkan drivers: no')
> +endif
> +
> +message('')
> +if with_llvm
> + message(' llvm: yes')
> +# message(' llvm-config: ' + _llvm_config) #TODO
> + message(' llvm-version: ' + '.'.join(_llvm_version))
> +else
> + message(' llvm: no')
> +endif
> +
> +message('')
> +if with_gallium
> + message(' Gallium drivers: ' + _gallium_drivers)
> + message(' Gallium st: ' + ','.join(with_st))
> +else
> + message(' Gallium: no')
> +endif
> +
> +message('')
> +message(' HUD extra stats: @0@'.format(with_gallium_extra_hud))
> +message(' HUD lmsensors: @0@'.format(with_lmsensors))
> +
> +if with_gallium_swr
> + message('')
> + if false # TODO: with_swr_builtin
> + message(' SWR archs: @0@ (builtin)'.format(get_option('swr-arches')))
> + else
> + message(' SWR archs: @0@'.format(get_option('swr-arches')))
> + endif
> +endif
> +
> +# Libraries
> +message('')
> +#message(' Shared libs: @0@'.format(with_shared)) #TODO
> +#message(' Static libs: @0@'.format(with_static)) #TODO
> +message(' Shared-glapi: @0@'.format(with_shared_glapi))
> +
> +# Compiler options
> +message('')
> +message(' CFLAGS: ' + ' '.join(c_args))
> +message(' CXXFLAGS: ' + ' '.join(cpp_args))
> +#message(' LDFLAGS: ' + ' '.join(c_link_args)) #XXX: doesn't really make sense in meson
> +message(' Macros: ' + ' '.join(pre_args))
> +message('')
> +
> +if with_llvm and false #TODO
> + message(' LLVM_CFLAGS: $LLVM_CFLAGS')
> + message(' LLVM_CXXFLAGS: $LLVM_CXXFLAGS')
> + message(' LLVM_CPPFLAGS: $LLVM_CPPFLAGS')
> + message(' LLVM_LDFLAGS: $LLVM_LDFLAGS')
> + message('')
> +endif
> +
> +message(' PYTHON2: @0@'.format(prog_python2.path()))
> +
> +message('')
> +if meson.backend() == 'ninja'
> + message(' Run `ninja` to build Mesa')
> +else
> + message(' You can now build Mesa using @0@'.format(meson.backend()))
> +endif
> +
> +message('')
> diff --git a/src/gallium/meson.build b/src/gallium/meson.build
> index 320fc0176e9ab6f95322..d0d542fd526a76c5d0f0 100644
> --- a/src/gallium/meson.build
> +++ b/src/gallium/meson.build
> @@ -22,6 +22,8 @@
> inc_gallium_drivers = include_directories('drivers')
> inc_gallium_winsys = include_directories('winsys')
>
> +with_st = []
> +
> subdir('auxiliary')
> subdir('auxiliary/pipe-loader')
> subdir('drivers/ddebug')
> @@ -140,24 +142,31 @@ else
> endif
> if with_gallium_vdpau
> subdir('state_trackers/vdpau')
> + with_st += 'vdpau'
> endif
> if with_gallium_xvmc
> subdir('state_trackers/xvmc')
> + with_st += 'xvmc'
> endif
> if with_gallium_omx
> subdir('state_trackers/omx_bellagio')
> + with_st += 'omx_bellagio'
> endif
> if with_gallium_va
> subdir('state_trackers/va')
> + with_st += 'va'
> endif
> if with_gallium_xa
> subdir('state_trackers/xa')
> + with_st += 'xa'
> endif
> if with_gallium_st_nine
> subdir('state_trackers/nine')
> + with_st += 'nine'
> endif
> if with_platform_haiku
> subdir('state_trackers/hgl')
> + with_st += 'hgl'
> endif
> if with_gallium_opencl
> # TODO: this isn't really clover specific, but ATM clover is the only
> @@ -168,19 +177,23 @@ if with_gallium_opencl
> error('OpenCL requires meson 0.44.0 or greater.')
> endif
> subdir('state_trackers/clover')
> + with_st += 'clover'
> subdir('targets/opencl')
> endif
> if with_dri
> subdir('state_trackers/dri')
> + with_st += 'dri'
> subdir('targets/dri')
> endif
> if with_osmesa == 'gallium'
> subdir('state_trackers/osmesa')
> + with_st += 'osmesa'
> subdir('targets/osmesa')
> endif
> if with_glx == 'gallium-xlib'
> subdir('winsys/sw/xlib')
> subdir('state_trackers/glx/xlib')
> + with_st += 'glx/xlib'
> subdir('targets/libgl-xlib')
> endif
> if with_gallium_vdpau
> --
> Cheers,
> Eric
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: signature
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180223/d0563bc3/attachment-0001.sig>
More information about the mesa-dev
mailing list