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

Igor Gnatenko i.gnatenko.brain at gmail.com
Mon Jan 13 23:18:42 PST 2014


On Mon, 2014-01-13 at 15:17 -0800, Matt Turner wrote:
> 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.
Unfortunately ocl-icd HARDLY defined /etc. Resending new patch.

-- 
-Igor Gnatenko



More information about the mesa-dev mailing list