[Mesa-dev] [PATCH v10 12/20] configure.ac, meson: Check for SPIRV-Tools and llvm-spirv
Dylan Baker
dylan at pnwbakers.com
Tue Jan 8 23:18:25 UTC 2019
Quoting Pierre Moreau (2019-01-08 13:11:01)
> Reviewed-by: Dylan Baker <dylan at pnwbakers.com>
>
> Changes since:
> * v7:
> - Properly align LLVMSPIRVLib comment (Dylan Baker)
> - Only define CLOVER_ALLOW_SPIRV when **both** dependencies are found:
> autotools was only requiring one or the other.
> * v6: Replace the llvm-spirv repository by the new official
> SPIRV-LLVM-Translator.
> * v4: Add a comment saying where to find llvm-spirv (Karol Herbst).
> * v3:
> - make SPIRV-Tools and llvm-spirv optional (Francisco Jerez);
> - bump requirement for llvm-spirv to version 0.2
> * v2:
> - Bump the required version of SPIRV-Tools to the latest release;
> - Add a dependency on llvm-spirv.
>
> Signed-off-by: Pierre Moreau <pierre.morrow at free.fr>
> ---
> configure.ac | 18 ++++++++++++++++++
> meson.build | 8 ++++++++
> 2 files changed, 26 insertions(+)
>
> diff --git a/configure.ac b/configure.ac
> index e4d20054d5f..799246e8319 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -2513,6 +2513,24 @@ AM_CONDITIONAL(HAVE_CLOVER_ICD, test "x$enable_opencl_icd" = xyes)
> AC_SUBST([OPENCL_LIBNAME])
> AC_SUBST([CLANG_RESOURCE_DIR])
>
> +AS_IF([test "x$enable_opencl" = xyes], [
> + PKG_CHECK_MODULES([SPIRV_TOOLS], [SPIRV-Tools >= 2018.0],
> + [have_spirv_tools=yes], [have_spirv_tools=no])])
> +AC_SUBST([SPIRV_TOOLS_CFLAGS])
> +AC_SUBST([SPIRV_TOOLS_LIBS])
> +
> +# LLVMSPIRVLib is available at https://github.com/KhronosGroup/SPIRV-LLVM-Translator
> +AS_IF([test "x$enable_opencl" = xyes], [
> + PKG_CHECK_MODULES([LLVMSPIRVLIB], [LLVMSPIRVLib >= 0.2.1],
> + [have_llvmspirvlib=yes], [have_llvmspirvlib=no])])
> +AC_SUBST([LLVMSPIRVLIB_CFLAGS])
> +AC_SUBST([LLVMSPIRVLIB_LIBS])
> +
> +if test "x$have_spirv_tools" = xyes -a \
> + "x$have_llvmspirvlib" = xyes; then
> + DEFINES="$DEFINES -DCLOVER_ALLOW_SPIRV"
> +fi
> +
> dnl
> dnl Gallium configuration
> dnl
> diff --git a/meson.build b/meson.build
> index 709f77a9c7a..7f63d6c84cc 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -655,6 +655,12 @@ if _opencl != 'disabled'
> endif
>
> dep_clc = dependency('libclc')
> + dep_spirv_tools = dependency('SPIRV-Tools', required : false, version : '>= 2018.0')
> + # LLVMSPIRVLib is available at https://github.com/KhronosGroup/SPIRV-LLVM-Translator
> + dep_llvmspirvlib = dependency('LLVMSPIRVLib', required : false, version : '>= 0.2.1')
> + if dep_spirv_tools.found() and dep_llvmspirvlib.found()
> + pre_args += '-DCLOVER_ALLOW_SPIRV'
> + endif
As-is this is what distros call "automagical", and they don't like it :). There
is a case like this is for xlib-lease as well, I'd really like this to have an
option to control it, something similar to the way that xlib-lease works.
Dylan
> with_gallium_opencl = true
> with_opencl_icd = _opencl == 'icd'
>
> @@ -667,6 +673,8 @@ if _opencl != 'disabled'
> endif
> else
> dep_clc = null_dep
> + dep_spirv_tools = null_dep
> + dep_llvmspirvlib = null_dep
> with_gallium_opencl = false
> with_gallium_icd = false
> endif
> --
> 2.20.1
>
-------------- 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/20190108/ed3e2edd/attachment-0001.sig>
More information about the mesa-dev
mailing list