[Mesa-dev] [PATCH] opencl: improved auto-gen .icd

Matt Turner mattst88 at gmail.com
Mon Jan 13 15:17:02 PST 2014


On Mon, Jan 13, 2014 at 11:12 AM, Tom Stellard <tom at stellard.net> wrote:
> On Sun, Jan 12, 2014 at 03:08:56AM +0400, Igor Gnatenko wrote:
>> From 5b2bf87f1238e44150492a39f5db0ae90d59459b Mon Sep 17 00:00:00 2001
>> From: Igor Gnatenko <i.gnatenko.brain at gmail.com>
>> Date: Sun, 12 Jan 2014 02:09:16 +0400
>> Subject: [PATCH] opencl: improved auto-gen .icd
>>
>> v2: Use @OPENCL_VERSION@:0 for library
>>     replace /etc with @sysconfdir@ macros
>>
>> Reported-by: Fabian Deutsch <fabian.deutsch at gmx.de>
>> Reference: https://bugs.freedesktop.org/show_bug.cgi?id=73512
>> Signed-off-by: Igor Gnatenko <i.gnatenko.brain at gmail.com>
>> ---
>>  configure.ac                           | 3 +++
>>  src/gallium/targets/opencl/Makefile.am | 4 ++--
>>  src/gallium/targets/opencl/mesa.icd    | 1 -
>>  src/gallium/targets/opencl/mesa.icd.in | 1 +
>>  4 files changed, 6 insertions(+), 3 deletions(-)
>>  delete mode 100644 src/gallium/targets/opencl/mesa.icd
>>  create mode 100644 src/gallium/targets/opencl/mesa.icd.in
>>
>> diff --git a/configure.ac b/configure.ac
>> index 4b55140..3452e15 100644
>> --- a/configure.ac
>> +++ b/configure.ac
>> @@ -25,6 +25,8 @@ m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
>>  dnl Set internal versions
>>  OSMESA_VERSION=8
>>  AC_SUBST([OSMESA_VERSION])
>> +OPENCL_VERSION=1
>> +AC_SUBST([OPENCL_VERSION])
>>
>>  dnl Versions for external dependencies
>>  LIBDRM_REQUIRED=2.4.24
>> @@ -2023,6 +2025,7 @@ AC_CONFIG_FILES([Makefile
>>               src/gallium/targets/egl-static/Makefile
>>               src/gallium/targets/gbm/Makefile
>>               src/gallium/targets/opencl/Makefile
>> +             src/gallium/targets/opencl/mesa.icd
>>               src/gallium/targets/osmesa/Makefile
>>               src/gallium/targets/osmesa/osmesa.pc
>>               src/gallium/targets/pipe-loader/Makefile
>> diff --git a/src/gallium/targets/opencl/Makefile.am b/src/gallium/targets/opencl/Makefile.am
>> index 653302c..923316c 100644
>> --- a/src/gallium/targets/opencl/Makefile.am
>> +++ b/src/gallium/targets/opencl/Makefile.am
>> @@ -4,7 +4,7 @@ lib_LTLIBRARIES = lib at OPENCL_LIBNAME@.la
>>
>>  lib at OPENCL_LIBNAME@_la_LDFLAGS = \
>>       $(LLVM_LDFLAGS) \
>> -     -version-number 1:0
>> +     -version-number @OPENCL_VERSION@:0
>>
>>  lib at OPENCL_LIBNAME@_la_LIBADD = \
>>       $(top_builddir)/src/gallium/auxiliary/pipe-loader/libpipe_loader.la \
>> @@ -34,7 +34,7 @@ lib at OPENCL_LIBNAME@_la_SOURCES =
>>  nodist_EXTRA_lib at OPENCL_LIBNAME@_la_SOURCES = dummy.cpp
>>
>>  if HAVE_CLOVER_ICD
>> -icddir = /etc/OpenCL/vendors/
>> +icddir = @sysconfdir@/OpenCL/vendors/
>
> As I mentioned in the bug report, the ICD spec says that OpenCL/vendors/
> should be in /etc/  I don't think we can change this and still be spec
> compliant.  Why do you want to install the *.icd files in sysconfdir?

sysconfdir basically is etc. This hunk would allow you to install into
a prefix and not have this file installed into /etc outside of your
prefix.


More information about the mesa-dev mailing list