summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDylan Baker <[email protected]>2017-10-12 09:47:30 -0700
committerDylan Baker <[email protected]>2017-10-16 16:32:43 -0700
commit02cf3a8f39ebdc7f7cbf0b2960744cae1a865f46 (patch)
tree9081eb7a7ea9420f3faea79cf5c4d4fc9eeef06b
parent8e611878c4dfaa4157e14e356ea7b5f9ecf44364 (diff)
meson: Add option to toggle LLVM
Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r--meson.build35
-rw-r--r--meson_options.txt1
2 files changed, 21 insertions, 15 deletions
diff --git a/meson.build b/meson.build
index 17187f3d909..ff2ce55e924 100644
--- a/meson.build
+++ b/meson.build
@@ -38,6 +38,7 @@ with_vulkan_icd_dir = get_option('vulkan-icd-dir')
with_tests = get_option('build-tests')
with_valgrind = get_option('valgrind')
with_asm = get_option('asm')
+with_llvm = get_option('llvm')
if get_option('texture-float')
pre_args += '-DTEXTURE_FLOAT_ENABLED'
message('WARNING: Floating-point texture enabled. Please consult docs/patents.txt and your lawyer before building mesa.')
@@ -506,22 +507,26 @@ endif
dep_llvm = dependency(
'llvm', version : '>= 3.9.0', required : false, modules : llvm_modules,
)
-if not dep_llvm.found()
- if with_amd_vk
- error('Radv requires llvm.')
- endif
-else
- _llvm_version = dep_llvm.version().split('.')
- # Development versions of LLVM have an 'svn' suffix, we don't want that for
- # our version checks.
- _llvm_patch = _llvm_version[2]
- if _llvm_patch.endswith('svn')
- _llvm_patch = _llvm_patch.split('s')[0]
+if with_llvm
+ if dep_llvm.found()
+ _llvm_version = dep_llvm.version().split('.')
+ # Development versions of LLVM have an 'svn' suffix, we don't want that for
+ # our version checks.
+ _llvm_patch = _llvm_version[2]
+ if _llvm_patch.endswith('svn')
+ _llvm_patch = _llvm_patch.split('s')[0]
+ endif
+ pre_args += [
+ '-DHAVE_LLVM=0x0@0@@1@@2@'.format(_llvm_version[0], _llvm_version[1], _llvm_patch),
+ '-DMESA_LLVM_VERSION_PATCH=@0@'.format(_llvm_patch),
+ ]
+ else
+ if with_amd_vk
+ error('The following drivers requires LLVM: Radv. One of these is enabled, but LLVM was not found.')
+ endif
endif
- pre_args += [
- '-DHAVE_LLVM=0x0@0@@1@@2@'.format(_llvm_version[0], _llvm_version[1], _llvm_patch),
- '-DMESA_LLVM_VERSION_PATCH=@0@'.format(_llvm_patch),
- ]
+elif with_amd_vk
+ error('The following drivers requires LLVM: Radv. One of these is enabled, but LLVM is disabled.')
endif
dep_glvnd = []
diff --git a/meson_options.txt b/meson_options.txt
index e0a162a0b82..21cf07ea934 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -48,6 +48,7 @@ option('glvnd', type : 'boolean', value : false,
description : 'Enable GLVND support.')
option('asm', type : 'boolean', value : true,
description : 'Build assembly code if possible')
+option('llvm', type : 'boolean', value : true, description : 'Build with LLVM support.')
option('valgrind', type : 'boolean', value : true,
description : 'Build with valgrind support if possible')
option('build-tests', type : 'boolean', value : false,