diff options
| author | Jacob Zhong <cmpute@qq.com> | 2018-02-17 13:17:07 +0800 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2018-02-16 21:17:07 -0800 |
| commit | ea2e5d7b006fc5bf6adc8789c5929d638bbf3e97 (patch) | |
| tree | b4584c5fbb1ea83a047b7d1a67c6579e8ff6f7c5 | |
| parent | a144a32fb2a11b5cd03f9577564aec03b4ada68d (diff) | |
| download | vcpkg-ea2e5d7b006fc5bf6adc8789c5929d638bbf3e97.tar.gz vcpkg-ea2e5d7b006fc5bf6adc8789c5929d638bbf3e97.zip | |
[mkl] Add port MKL (#2806)
| -rw-r--r-- | ports/intel-mkl/CONTROL | 3 | ||||
| -rw-r--r-- | ports/intel-mkl/portfile.cmake | 32 |
2 files changed, 35 insertions, 0 deletions
diff --git a/ports/intel-mkl/CONTROL b/ports/intel-mkl/CONTROL new file mode 100644 index 000000000..f0b7f12a8 --- /dev/null +++ b/ports/intel-mkl/CONTROL @@ -0,0 +1,3 @@ +Source: intel-mkl +Version: 2018.0.1 +Description: Intel® Math Kernel Library (Intel® MKL) accelerates math processing routines, increases application performance, and reduces development time on Intel® processors.
\ No newline at end of file diff --git a/ports/intel-mkl/portfile.cmake b/ports/intel-mkl/portfile.cmake new file mode 100644 index 000000000..be54f0ec4 --- /dev/null +++ b/ports/intel-mkl/portfile.cmake @@ -0,0 +1,32 @@ +# Due to the complexity involved, this package doesn't install MKL. It instead verifies that MKL is installed. +# Other packages can depend on this package to declare a dependency on MKL. +# If this package is installed, we assume that MKL is properly installed. + +set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + +set(MKL_REQUIRED_VERSION "20180000") + +set(ProgramFilesx86 "ProgramFiles(x86)") +set(INTEL_ROOT $ENV{${ProgramFilesx86}}/IntelSWTools/compilers_and_libraries/windows) + +find_path(MKL_ROOT include/mkl.h PATHS $ENV{MKLROOT} ${INTEL_ROOT}/mkl DOC "Folder contains MKL") + +if (MKL_ROOT STREQUAL "MKL_ROOT-NOTFOUND") + message(FATAL_ERROR "Could not find MKL. Before continuing, please download and install MKL (${MKL_REQUIRED_VERSION} or higher) from:" + "\n https://registrationcenter.intel.com/en/products/download/3178/\n" + "\nAlso ensure vcpkg has been rebuilt with the latest version (v0.0.104 or later)") +endif() + +# file(STRINGS ${MKL_ROOT}/include/mkl_version.h MKL_VERSION_DEFINITION REGEX "__INTEL_MKL((_MINOR)|(_UPDATE))?__") +# string(REGEX MATCHALL "([0-9]+)" MKL_VERSION ${MKL_VERSION_DEFINITION}) +# list(GET MKL_VERSION 0 MKL_VERSION_MAJOR) +# list(GET MKL_VERSION 1 MKL_VERSION_MINOR) +# list(GET MKL_VERSION 2 MKL_VERSION_UPDATE) + +file(STRINGS ${MKL_ROOT}/include/mkl_version.h MKL_VERSION_DEFINITION REGEX "INTEL_MKL_VERSION") +string(REGEX MATCH "([0-9]+)" MKL_VERSION ${MKL_VERSION_DEFINITION}) + +if (MKL_VERSION LESS MKL_REQUIRED_VERSION) + message(FATAL_ERROR "MKL ${MKL_VERSION} is found but ${MKL_REQUIRED_VERSION} is required. Please download and install a more recent version of MKL from:" + "\n https://registrationcenter.intel.com/en/products/download/3178/\n") +endif() |
