| # Copyright (c) 2015-2016 The Khronos Group Inc. |
| # |
| # Permission is hereby granted, free of charge, to any person obtaining a |
| # copy of this software and/or associated documentation files (the |
| # "Materials"), to deal in the Materials without restriction, including |
| # without limitation the rights to use, copy, modify, merge, publish, |
| # distribute, sublicense, and/or sell copies of the Materials, and to |
| # permit persons to whom the Materials are furnished to do so, subject to |
| # the following conditions: |
| # |
| # The above copyright notice and this permission notice shall be included |
| # in all copies or substantial portions of the Materials. |
| # |
| # MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS |
| # KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS |
| # SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT |
| # https://www.khronos.org/registry/ |
| # |
| # THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
| # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
| # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
| # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
| # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
| # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
| # MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. |
| |
| if (DEFINED SPIRV-Headers_SOURCE_DIR) |
| # This allows flexible position of the SPIRV-Headers repo. |
| set(SPIRV_HEADER_DIR ${SPIRV-Headers_SOURCE_DIR}) |
| else() |
| set(SPIRV_HEADER_DIR ${CMAKE_CURRENT_SOURCE_DIR}/spirv-headers) |
| endif() |
| |
| if (IS_DIRECTORY ${SPIRV_HEADER_DIR}) |
| set(SPIRV_HEADER_INCLUDE_DIR ${SPIRV_HEADER_DIR}/include PARENT_SCOPE) |
| else() |
| message(FATAL_ERROR |
| "SPIRV-Headers was not found - please checkout a copy under external/.") |
| endif() |
| |
| if (NOT ${SPIRV_SKIP_EXECUTABLES}) |
| # Find gmock if we can. If it's not already configured, then try finding |
| # it in external/googletest. |
| if (TARGET gmock) |
| message(STATUS "Google Mock already configured") |
| else() |
| set(GMOCK_DIR ${CMAKE_CURRENT_SOURCE_DIR}/googletest/googlemock) |
| if(EXISTS ${GMOCK_DIR}) |
| if(WIN32) |
| option(gtest_force_shared_crt |
| "Use shared (DLL) run-time lib even when Google Test is built as static lib." |
| ON) |
| endif() |
| add_subdirectory(${GMOCK_DIR}) |
| endif() |
| endif() |
| endif() |