On Sat, May 02, 2015 at 01:31:41PM -0400, Ilia Mirkin wrote: > On Sat, May 2, 2015 at 1:19 PM, EdB <edb+m...@sigluy.net> wrote: > > The standard ICD file path is /etc/OpenCL/vendor/. > > However it doesn't fit well with custom build. > > This option allow ICD vendor file installation path override > > --- > > configure.ac | 6 ++++++ > > src/gallium/targets/opencl/Makefile.am | 2 +- > > 2 files changed, 7 insertions(+), 1 deletion(-) > > > > diff --git a/configure.ac b/configure.ac > > index 095e23e..bf08d76 100644 > > --- a/configure.ac > > +++ b/configure.ac > > @@ -2005,6 +2005,12 @@ AC_ARG_WITH([d3d-libdir], > > [D3D_DRIVER_INSTALL_DIR="$withval"], > > [D3D_DRIVER_INSTALL_DIR="${libdir}/d3d"]) > > AC_SUBST([D3D_DRIVER_INSTALL_DIR]) > > +AC_ARG_WITH([icd-file-dir], > > + [AS_HELP_STRING([--with-icd-file-dir=DIR], > > + [directory for the OpenCL ICD vendor file > > @<:@/etc/OpenCL/vendors@:>@])], > > + [ICD_FILE_INSTALL_DIR="$withval"], > > + [ICD_FILE_INSTALL_DIR="/etc/OpenCL/vendors"]) > > What about making this default to ${sysconfdir}/OpenCL/vendors ? That > way using --prefix should auto-make it go into the prefix instead of > unexpectedly installing things outside of the specified prefix? That > way a distro build which specifies --sysconfdir as /etc will get it in > the right place, while by default it'll go into /usr/local/etc and a > user can override the icd loader's default behaviour with > OPENCL_VENDOR_PATH? >
I would prefer not to make this the default behavior, because it violates the spec and there could potentially be multiple icd implementations, which may or may not have the overrides. I think the best solution would be to rename the option to something like --enable-ocl-icd-respect-prefix (suggestions for other names encouraged). and have the option enable the behavior that Ilia is describing. This will give distros and advanced users a way to setup their system the way they want. -Tom > > +AC_SUBST([ICD_FILE_INSTALL_DIR]) > > > > dnl > > dnl Gallium helper functions > > diff --git a/src/gallium/targets/opencl/Makefile.am > > b/src/gallium/targets/opencl/Makefile.am > > index 5daf327..9f0e58e 100644 > > --- a/src/gallium/targets/opencl/Makefile.am > > +++ b/src/gallium/targets/opencl/Makefile.am > > @@ -47,7 +47,7 @@ EXTRA_lib@OPENCL_LIBNAME@_la_DEPENDENCIES = opencl.sym > > EXTRA_DIST = mesa.icd opencl.sym > > > > if HAVE_CLOVER_ICD > > -icddir = /etc/OpenCL/vendors/ > > +icddir = $(ICD_FILE_INSTALL_DIR) > > icd_DATA = mesa.icd > > endif > > > > -- > > 2.1.0 > > > > _______________________________________________ > > mesa-dev mailing list > > mesa-dev@lists.freedesktop.org > > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev