add options to abort build if plugin dependencies aren't found

This commit is contained in:
Jussi Kuokkanen
2023-11-12 20:57:00 +02:00
parent 49fea845f8
commit a0304107af
2 changed files with 12 additions and 6 deletions

View File

@@ -6,3 +6,7 @@ option('library', type: 'boolean', value: 'true', description: 'Build library')
option('gui', type: 'boolean', value: 'true', description: 'Build Qt GUI') option('gui', type: 'boolean', value: 'true', description: 'Build Qt GUI')
option('require-python-hwdata', type: 'boolean', value: 'false', option('require-python-hwdata', type: 'boolean', value: 'false',
description: 'Require python-hwdata for prettier AMD GPU names') description: 'Require python-hwdata for prettier AMD GPU names')
option('require-amd', type: 'boolean', value: 'false',
description: 'Require AMD plugin')
option('require-nvidia', type: 'boolean', value: 'false',
description: 'Require NVIDIA plugin')

View File

@@ -1,8 +1,9 @@
patterns_inc = include_directories('../include/deps/patterns/include/mpark') patterns_inc = include_directories('../include/deps/patterns/include/mpark')
fplus_inc = include_directories('../include/deps/FunctionalPlus/include') fplus_inc = include_directories('../include/deps/FunctionalPlus/include')
libdrm_amdgpu = cc.find_library('drm_amdgpu', required : false) req_amd = get_option('require-amd')
libdrm_dep = dependency('libdrm', required : false) libdrm_amdgpu = cc.find_library('drm_amdgpu', required : req_amd)
libdrm_dep = dependency('libdrm', required : req_amd)
python = import('python') python = import('python')
python_with_hwdata = python.find_installation('python3', python_with_hwdata = python.find_installation('python3',
@@ -35,10 +36,11 @@ if libdrm_dep.found() and libdrm_amdgpu.found()
link_with : libtuxclocker) link_with : libtuxclocker)
endif endif
libnvml = cc.find_library('nvidia-ml', required : false) req_nv = get_option('require-nvidia')
libxext = cc.find_library('Xext', required : false) libnvml = cc.find_library('nvidia-ml', required : req_nv)
libx = cc.find_library('X11', required : false) libxext = cc.find_library('Xext', required : req_nv)
libxnvctrl = cc.find_library('XNVCtrl', required : false) libx = cc.find_library('X11', required : req_nv)
libxnvctrl = cc.find_library('XNVCtrl', required : req_nv)
nvidia_linux_libs = [libnvml, libx, libxext, libxnvctrl] nvidia_linux_libs = [libnvml, libx, libxext, libxnvctrl]