mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-01-22 05:33:55 +08:00
meson: Don't confuse the install and search paths for dri drivers
Currently there is not a separate option for setting the search path of
DRI drivers in meson, like there is in scons and autotools. This is an
oversight and needs to be fixed. This adds an extra option
`dri-search-path`, which will default to the value of
`dri-drivers-path`, like autotools does.
v2: - Split input list before joining.
v3: - use : instead of ; as the delimiter. The autotools help string
incorrectly says ; but the code uses :
v4: - Take list in pre : delimited form (Ilia)
- Ensure that the dri-search-path is absolute when using
dri_drivers_path
Fixes: db9788420d
("meson: Add support for configuring dri drivers directory.")
Reported-by: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Dylan Baker <dylan.c.baker@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net> (v2)
Reviewed-by: Eric Engestrom <eric@engestrom.ch> (v3)
This commit is contained in:
parent
847d0a393d
commit
d7235ef83b
@ -57,6 +57,10 @@ dri_drivers_path = get_option('dri-drivers-path')
|
||||
if dri_drivers_path == ''
|
||||
dri_drivers_path = join_paths(get_option('libdir'), 'dri')
|
||||
endif
|
||||
dri_search_path = get_option('dri-search-path')
|
||||
if dri_search_path == ''
|
||||
dri_search_path = join_paths(get_option('prefix'), dri_drivers_path)
|
||||
endif
|
||||
|
||||
with_gles1 = get_option('gles1')
|
||||
with_gles2 = get_option('gles2')
|
||||
|
@ -41,7 +41,13 @@ option(
|
||||
'dri-drivers-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'Location of dri drivers. Default: $libdir/dri.'
|
||||
description : 'Location to install dri drivers. Default: $libdir/dri.'
|
||||
)
|
||||
option(
|
||||
'dri-search-path',
|
||||
type : 'string',
|
||||
value : '',
|
||||
description : 'Locations to search for dri drivers, passed as colon separated list. Default: dri-drivers-path.'
|
||||
)
|
||||
option(
|
||||
'gallium-drivers',
|
||||
|
@ -160,7 +160,7 @@ libegl = shared_library(
|
||||
c_args : [
|
||||
c_vis_args,
|
||||
c_args_for_egl,
|
||||
'-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_driver_dir),
|
||||
'-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_search_path),
|
||||
'-D_EGL_BUILT_IN_DRIVER_DRI2',
|
||||
'-D_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_@0@'.format(egl_native_platform.to_upper()),
|
||||
],
|
||||
|
@ -38,7 +38,7 @@ incs_gbm = [
|
||||
if with_dri2
|
||||
files_gbm += files('backends/dri/gbm_dri.c', 'backends/dri/gbm_driint.h')
|
||||
deps_gbm += dep_libdrm # TODO: pthread-stubs
|
||||
args_gbm += '-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_driver_dir)
|
||||
args_gbm += '-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_search_path)
|
||||
endif
|
||||
if with_platform_wayland
|
||||
deps_gbm += dep_wayland_server
|
||||
|
@ -113,7 +113,6 @@ elif with_dri_platform == 'windows'
|
||||
extra_ld_args_libgl = '-Wl,--disable-stdcall-fixup'
|
||||
endif
|
||||
|
||||
dri_driver_dir = join_paths(get_option('prefix'), dri_drivers_path)
|
||||
if not with_glvnd
|
||||
gl_lib_name = 'GL'
|
||||
gl_lib_version = '1.2.0'
|
||||
@ -130,7 +129,8 @@ else
|
||||
endif
|
||||
|
||||
gl_lib_cargs = [
|
||||
'-D_REENTRANT', '-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_driver_dir),
|
||||
'-D_REENTRANT',
|
||||
'-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_search_path),
|
||||
]
|
||||
|
||||
if dep_xxf86vm != [] and dep_xxf86vm.found()
|
||||
|
Loading…
Reference in New Issue
Block a user