Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On 8 May 2015 at 03:10, Michel Dänzer mic...@daenzer.net wrote: On 08.05.2015 03:24, Tom Stellard wrote: For this particular situation, I'm happy with any solution that: 1. Allows a user to install the icd file to /etc if he or she wants to. --sysconfdir=/etc That covers drirc as well. 2. Does not require the user to read the spec to know that /etc is the correct place to install it. I think the above is pretty standard for autotools projects. I think it would be better to document this in the appropriate place(s) for OpenCL users than to add another convoluted option which doesn't really add any flexibility. Very well said Michel. I'm suspecting that the latest approach will lead to quite a bit of confusion. Even amongst experienced package maintainers. If in doubt one can ping the debian, arch and/or fedora guys (i.e the ones shipping opencl) for their 2c :-) -Emil ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On 05.05.2015 01:47, Tom Stellard wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. I guess I haven't hit this yet because there's no OpenCL support in nouveau or freedreno, but I made the same stink about vdpau when Emil tried to make it install to some system location by default. At least a few people seemed to agree with me back then... Does the vdpau spec also require installation to a specific system director (e.g. /etc/) ? Tom, I think ensuring that the OpenCL ICD loader can pick up the mesa.icd file is something for the distributor / administrator / user to worry about, not Mesa upstream. There's a similar situation with the drirc file, which is installed inside the prefix by default but only read from /etc/. -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Thu, May 07, 2015 at 04:59:41PM +0900, Michel Dänzer wrote: On 05.05.2015 01:47, Tom Stellard wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. I guess I haven't hit this yet because there's no OpenCL support in nouveau or freedreno, but I made the same stink about vdpau when Emil tried to make it install to some system location by default. At least a few people seemed to agree with me back then... Does the vdpau spec also require installation to a specific system director (e.g. /etc/) ? Tom, I think ensuring that the OpenCL ICD loader can pick up the mesa.icd file is something for the distributor / administrator / user to worry about, not Mesa upstream. I don't really disagree with this in general. My position is that when there is a situation where it is impossible to follow both the API spec and build system best practices that it is more important to follow the API spec. I realize some people disagree with this, and I completely understand their rationale. For this particular situation, I'm happy with any solution that: 1. Allows a user to install the icd file to /etc if he or she wants to. and 2. Does not require the user to read the spec to know that /etc is the correct place to install it. I think EdB's latest patch is a good solution: http://lists.freedesktop.org/archives/mesa-dev/2015-May/083661.html -Tom There's a similar situation with the drirc file, which is installed inside the prefix by default but only read from /etc/. -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On 08.05.2015 03:24, Tom Stellard wrote: For this particular situation, I'm happy with any solution that: 1. Allows a user to install the icd file to /etc if he or she wants to. --sysconfdir=/etc That covers drirc as well. 2. Does not require the user to read the spec to know that /etc is the correct place to install it. I think the above is pretty standard for autotools projects. I think it would be better to document this in the appropriate place(s) for OpenCL users than to add another convoluted option which doesn't really add any flexibility. -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Thu, May 7, 2015 at 3:59 AM, Michel Dänzer mic...@daenzer.net wrote: On 05.05.2015 01:47, Tom Stellard wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. I guess I haven't hit this yet because there's no OpenCL support in nouveau or freedreno, but I made the same stink about vdpau when Emil tried to make it install to some system location by default. At least a few people seemed to agree with me back then... Does the vdpau spec also require installation to a specific system director (e.g. /etc/) ? Tom, I think ensuring that the OpenCL ICD loader can pick up the mesa.icd file is something for the distributor / administrator / user to worry about, not Mesa upstream. There's a similar situation with the drirc file, which is installed inside the prefix by default but only read from /etc/. FTR, I fully agree with this assessment (it's the distributor's problem), but my main priority was making sure make install works. Cheers, -ilia ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On 4 May 2015 at 18:11, Ilia Mirkin imir...@alum.mit.edu wrote: On Mon, May 4, 2015 at 12:47 PM, Tom Stellard t...@stellard.net wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. Oh, does this only happen when I supply some option? I.e. if I just do ./configure --prefix=... it'll still work, I have to do --enable-opencl-icd and only *then* does it install the other thing? That might be more acceptable, although still not really. Fwiw I second Ilia's suggestion. Why ? - Overwriting system files (by default), when you want to install to a custom location is not a good idea. - Package maintainers have sufficient knowledge which file should be placed where on the specific distribution. For example distro A may have a policy that the file must be in /usr/foo, with a symlink to it in /etc. - This is not an OpenCL only problem. DRI, VAAPI, VDPAU, XvMC and OMX exhibit similar behaviour. Ilia's suggestion brings OpenCL alongside the rest. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. If one does not use the distribution provided package then they either install to a custom prefix or system wide. Either of which has its caveats. In the case of a custom prefix they can use an env var. Alternatively the file will be installed in the correct place. If one changes sysconfdir, then they should be fully aware that things are bound to explode at any moment. I know exceedingly little about OpenCL. I'm just coming at this from a generic build shouldn't try to install things outside the prefix perspective. Make install shouldn't fail, and users shouldn't be tempted into accidentally overwriting their system installs even though they set a prefix but then foolishly ran 'sudo make install'. Autoconf is a pretty common build helper, nearly every sane package with a unix build target uses it, and I think people are used to how it works. One of the cool things is that you can do ./configure --prefix=/home/user/install; make install and expect it to work (as in, things landing in /home/user/install/..., not in /). Or perhaps you use a system like 'stow' which takes
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Tue, May 05, 2015 at 03:48:29PM +0100, Emil Velikov wrote: On 4 May 2015 at 18:11, Ilia Mirkin imir...@alum.mit.edu wrote: On Mon, May 4, 2015 at 12:47 PM, Tom Stellard t...@stellard.net wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. Oh, does this only happen when I supply some option? I.e. if I just do ./configure --prefix=... it'll still work, I have to do --enable-opencl-icd and only *then* does it install the other thing? That might be more acceptable, although still not really. Fwiw I second Ilia's suggestion. Why ? - Overwriting system files (by default), when you want to install to a custom location is not a good idea. - Package maintainers have sufficient knowledge which file should be placed where on the specific distribution. For example distro A may have a policy that the file must be in /usr/foo, with a symlink to it in /etc. - This is not an OpenCL only problem. DRI, VAAPI, VDPAU, XvMC and OMX exhibit similar behaviour. Ilia's suggestion brings OpenCL alongside the rest. Can you explain why the DRI, VAAPI, VDPAU, XvMC, and OMX situation is the same as OpenCL. My understanding the install locations for these are configurable. Whereas the OpenCL spec forces you to install to /etc. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. If one does not use the distribution provided package then they either install to a custom prefix or system wide. Either of which has its caveats. In the case of a custom prefix they can use an env var. Alternatively the file will be installed in the correct place. If one changes sysconfdir, then they should be fully aware that things are bound to explode at any moment. I know exceedingly little about OpenCL. I'm just coming at this from a generic build shouldn't try to install things outside the prefix perspective. Make install shouldn't fail, and users shouldn't be tempted into accidentally overwriting their system installs even though they set a prefix but then foolishly ran 'sudo make install'.
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Tue, May 5, 2015 at 11:42 AM, Tom Stellard t...@stellard.net wrote: How about this -- get rid of --enable-opencl-icd and change it to --with-opencl-icd-dir where you must supply a directory if you want to use it. That way if you want the system one, you'd say /etc/OpenCL/vendors, if you want your own custom dir, then put that in. This sounds like a very clever solution, but it is not intuitive if you lack prior knowledge about its workings. I can add For distribution maintainers note as 10.6 comes out, though not too sure how many people actually read these :-\ I'm fine with it either way, so I'll be up-to Tom and others to make the call. I am in favor of some variant of this solution. I personally prefer having two options one to use /etc and one to use $sysconfdif, which I think is more intuitive. So actually, --with-foo-dir is usually for build, not install (i.e. what directory is foo located in). Not sure what the standard is for install to random other directory is with autoconf, but how about --install-opencl-icd-system --install-opencl-icd-dir With the appropriate information in the configure help, and error out if both are specified. Does that make everyone happy? It should be noted that the contents of the icd file aren't particularly groundbreaking -- just a text file with libMesaOpenCL.so in it -- so even if you have one from your system install, and stick mesa elsewhere and its icd file goes to that other wrong location, you will still have a mesa icd file there, and things will work (provided you supply a LD_LIBRARY_PATH). -ilia ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On 5 May 2015 at 16:42, Tom Stellard t...@stellard.net wrote: On Tue, May 05, 2015 at 03:48:29PM +0100, Emil Velikov wrote: On 4 May 2015 at 18:11, Ilia Mirkin imir...@alum.mit.edu wrote: On Mon, May 4, 2015 at 12:47 PM, Tom Stellard t...@stellard.net wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. Oh, does this only happen when I supply some option? I.e. if I just do ./configure --prefix=... it'll still work, I have to do --enable-opencl-icd and only *then* does it install the other thing? That might be more acceptable, although still not really. Fwiw I second Ilia's suggestion. Why ? - Overwriting system files (by default), when you want to install to a custom location is not a good idea. - Package maintainers have sufficient knowledge which file should be placed where on the specific distribution. For example distro A may have a policy that the file must be in /usr/foo, with a symlink to it in /etc. - This is not an OpenCL only problem. DRI, VAAPI, VDPAU, XvMC and OMX exhibit similar behaviour. Ilia's suggestion brings OpenCL alongside the rest. Can you explain why the DRI, VAAPI, VDPAU, XvMC, and OMX situation is the same as OpenCL. My understanding the install locations for these are configurable. Whereas the OpenCL spec forces you to install to /etc. All of these have hardcoded path into the loader library. Mostly the path is fixed, but in some cases one can change it at build time (via a configure option). The loaders also provide (officially or not) a way of overriding the said path. I guess the difference here is that not all OpenCL loaders honour OPENCL_VENDOR_PATH :-\ How about this -- get rid of --enable-opencl-icd and change it to --with-opencl-icd-dir where you must supply a directory if you want to use it. That way if you want the system one, you'd say /etc/OpenCL/vendors, if you want your own custom dir, then put that in. This sounds like a very clever solution, but it is not intuitive if you lack prior knowledge about its workings. I can add For distribution maintainers note as 10.6 comes out, though not too sure how many people actually read these :-\ I'm fine with it either way, so I'll
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
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
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. I guess I haven't hit this yet because there's no OpenCL support in nouveau or freedreno, but I made the same stink about vdpau when Emil tried to make it install to some system location by default. At least a few people seemed to agree with me back then... -ilia ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. I guess I haven't hit this yet because there's no OpenCL support in nouveau or freedreno, but I made the same stink about vdpau when Emil tried to make it install to some system location by default. At least a few people seemed to agree with me back then... Does the vdpau spec also require installation to a specific system director (e.g. /etc/) ? -Tom -ilia ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Mon, May 4, 2015 at 12:47 PM, Tom Stellard t...@stellard.net wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. Oh, does this only happen when I supply some option? I.e. if I just do ./configure --prefix=... it'll still work, I have to do --enable-opencl-icd and only *then* does it install the other thing? That might be more acceptable, although still not really. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. I know exceedingly little about OpenCL. I'm just coming at this from a generic build shouldn't try to install things outside the prefix perspective. Make install shouldn't fail, and users shouldn't be tempted into accidentally overwriting their system installs even though they set a prefix but then foolishly ran 'sudo make install'. Autoconf is a pretty common build helper, nearly every sane package with a unix build target uses it, and I think people are used to how it works. One of the cool things is that you can do ./configure --prefix=/home/user/install; make install and expect it to work (as in, things landing in /home/user/install/..., not in /). Or perhaps you use a system like 'stow' which takes care of all the symlinking/etc and allows you to easily have multiple versions of the same software. Having things go outside of the configured directories goes against the autoconf standard... perhaps it'd be OK if you added some giant warning at the end of configure output saying DANGER DANGER DANGER will do unexpected things by default!. I guess I haven't hit this yet because there's no OpenCL support in nouveau or freedreno, but I made the same stink about vdpau when Emil tried to make it install to some system location by default. At least a few people seemed to agree with me back then... Does the vdpau spec also require installation to a specific system director (e.g. /etc/) ? The vdpau loader (libvdpau) loads from a fixed (and arbitrarily configurable at build-time, and practically speaking set differently on different distributions) library directory, much like (the mesa) libGL does. However there's (now) a VDPAU_DRIVER_PATH or something
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
On Mon, May 4, 2015 at 12:11 PM, Ilia Mirkin imir...@alum.mit.edu wrote: On Mon, May 4, 2015 at 12:47 PM, Tom Stellard t...@stellard.net wrote: On Mon, May 04, 2015 at 10:13:19AM -0400, Ilia Mirkin wrote: On Mon, May 4, 2015 at 10:04 AM, Tom Stellard t...@stellard.net wrote: 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. It's just a very anti-autoconf thing to do to have make install fail by default unless you specify some hey, i actually want make install to work option. I think it's crazy to expect that, by default, people will want to write over their system installs, and having things go outside of the specified --prefix is very surprising (unless you force some other option). And asking the user to run make install as root is even crazier. My expectation is that, by default, when people specify --enable-opencl-icd they want an implementation that conforms to the specification. Unfortunately, this means installing icd files to /etc. Oh, does this only happen when I supply some option? I.e. if I just do ./configure --prefix=... it'll still work, I have to do --enable-opencl-icd and only *then* does it install the other thing? That might be more acceptable, although still not really. There is no good solution here, but I'd rather have users specify a flag to get a sane build system, than requiring them to set a flag and set an environment variable just to get working OpenCL with the ICD loader. I know exceedingly little about OpenCL. I'm just coming at this from a generic build shouldn't try to install things outside the prefix perspective. Make install shouldn't fail, and users shouldn't be tempted into accidentally overwriting their system installs even though they set a prefix but then foolishly ran 'sudo make install'. Autoconf is a pretty common build helper, nearly every sane package with a unix build target uses it, and I think people are used to how it works. One of the cool things is that you can do ./configure --prefix=/home/user/install; make install and expect it to work (as in, things landing in /home/user/install/..., not in /). Or perhaps you use a system like 'stow' which takes care of all the symlinking/etc and allows you to easily have multiple versions of the same software. Having things go outside of the configured directories goes against the autoconf standard... perhaps it'd be OK if you added some giant warning at the end of configure output saying DANGER DANGER DANGER will do unexpected things by default!. I guess I haven't hit this yet because there's no OpenCL support in nouveau or freedreno, but I made the same stink about vdpau when Emil tried to make it install to some system location by default. At least a few people seemed to agree with me back then... Does the vdpau spec also require installation to a specific system director (e.g. /etc/) ? The vdpau loader (libvdpau) loads from a fixed (and arbitrarily configurable at build-time, and
[Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
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]) +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
Re: [Mesa-dev] [PATCH] clover: add --with-icd-file-dir option
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? +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