[cmake-developers] [PATCH] Fix FindOpenCL on Mac OS
jerry.c.t at web.de
jerry.c.t at web.de
Mon Aug 1 15:04:44 EDT 2016
Hi,
> The version is not listed as a required variable, so that's why it
> passes through. If you pass in a version into your find_package call, it
> should bail out if no version is specified.
Sadly not. The current version in master does not fail when invoked with
"find_package(OpenCL 1.2 REQUIRED)". My first email shows exactly the
output. You see that it says "Required is at least version "1.2""
while also saying "Found OpenCL:..." while also no version was found. The
patch now fails if invoked for example with find_package(OpenCL 2.0 REQUIRED).
It seems that find_package_handle_standard does not work as expected when
OpenCL_VERSION_STRING is empty.
> I assume this was from testing, not
> because that changed something on macOS?
You are right _DIR and _DIRS are working.
I think I only changed it because for example FindGLUT uses it, for the
library the singular variant LIBRARY is used and I
don't understand the difference of _DIR and _DIRS :)
Jerry
On 01.08.2016 14:32, Matthäus G. Chajdas wrote:
> Hi Jerry,
>
> thanks for giving it a spin :)
>
> I don't have a Mac to test myself - as your changes are confined to
> macOS, they look safe to me.
>
> The version is not listed as a required variable, so that's why it
> passes through. If you pass in a version into your find_package call, it
> should bail out if no version is specified.
>
> I only got one minor nit-pick: Why did you change the line
> INTERFACE_INCLUDE_DIRECTORIES "${OpenCL_INCLUDE_DIR}")
> to use _DIR instead of _DIRS? I assume this was from testing, not
> because that changed something on macOS?
>
> Other than that, the patch looks good to me. I'll apply it this week.
>
> Cheers,
> Matthäus
>
More information about the cmake-developers
mailing list