forked from OpenMathLib/OpenBLAS
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add template for OpenBLASConfig.cmake
- Loading branch information
1 parent
0bea6bb
commit 02634b5
Showing
1 changed file
with
79 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
# OpenBLASConfig.cmake | ||
# -------------------- | ||
# | ||
# OpenBLAS cmake module. | ||
# This module sets the following variables in your project:: | ||
# | ||
# OpenBLAS_FOUND - true if OpenBLAS and all required components found on the system | ||
# OpenBLAS_VERSION - OpenBLAS version in format Major.Minor.Release | ||
# OpenBLAS_INCLUDE_DIRS - Directory where OpenBLAS header is located. | ||
# OpenBLAS_INCLUDE_DIR - same as DIRS | ||
# OpenBLAS_LIBRARIES - OpenBLAS library to link against. | ||
# OpenBLAS_LIBRARY - same as LIBRARIES | ||
# | ||
# | ||
# Available components:: | ||
# | ||
## shared - search for only shared library | ||
## static - search for only static library | ||
# serial - search for unthreaded library | ||
# pthread - search for native pthread threaded library | ||
# openmp - search for OpenMP threaded library | ||
# | ||
# | ||
# Exported targets:: | ||
# | ||
# If OpenBLAS is found, this module defines the following :prop_tgt:`IMPORTED` | ||
## target. Target is shared _or_ static, so, for both, use separate, not | ||
## overlapping, installations. :: | ||
# | ||
# OpenBLAS::OpenBLAS - the main OpenBLAS library #with header & defs attached. | ||
# | ||
# | ||
# Suggested usage:: | ||
# | ||
# find_package(OpenBLAS) | ||
# find_package(OpenBLAS 0.2.20 EXACT CONFIG REQUIRED COMPONENTS pthread) | ||
# | ||
# | ||
# The following variables can be set to guide the search for this package:: | ||
# | ||
# OpenBLAS_DIR - CMake variable, set to directory containing this Config file | ||
# CMAKE_PREFIX_PATH - CMake variable, set to root directory of this package | ||
# PATH - environment variable, set to bin directory of this package | ||
# CMAKE_DISABLE_FIND_PACKAGE_OpenBLAS - CMake variable, disables | ||
# find_package(OpenBLAS) when not REQUIRED, perhaps to force internal build | ||
|
||
@PACKAGE_INIT@ | ||
|
||
set(PN OpenBLAS) | ||
|
||
# need to check that the @USE_*@ evaluate to something cmake can perform boolean logic upon | ||
if(@USE_OPENMP@) | ||
set(${PN}_openmp_FOUND 1) | ||
elseif(@USE_THREAD@) | ||
set(${PN}_pthread_FOUND 1) | ||
else() | ||
set(${PN}_serial_FOUND 1) | ||
endif() | ||
|
||
check_required_components(${PN}) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Don't include targets if this file is being picked up by another | ||
# project which has already built this as a subproject | ||
#----------------------------------------------------------------------------- | ||
if(NOT TARGET ${PN}::OpenBLAS) | ||
include("${CMAKE_CURRENT_LIST_DIR}/${PN}Targets.cmake") | ||
|
||
get_property(_loc TARGET ${PN}::OpenBLAS PROPERTY LOCATION) | ||
set(${PN}_LIBRARY ${_loc}) | ||
get_property(_ill TARGET ${PN}::OpenBLAS PROPERTY INTERFACE_LINK_LIBRARIES) | ||
set(${PN}_LIBRARIES ${_ill}) | ||
|
||
get_property(_id TARGET ${PN}::OpenBLAS PROPERTY INCLUDE_DIRECTORIES) | ||
set(${PN}_INCLUDE_DIR ${_id}) | ||
get_property(_iid TARGET ${PN}::OpenBLAS PROPERTY INTERFACE_INCLUDE_DIRECTORIES) | ||
set(${PN}_INCLUDE_DIRS ${_iid}) | ||
endif() | ||
|