Paweł Bylica
8 years ago
6 changed files with 11 additions and 204 deletions
@ -1,35 +0,0 @@ |
|||||
# Find ethereum |
|
||||
# |
|
||||
# Find the ethereum includes and library |
|
||||
# |
|
||||
# This module defines |
|
||||
# ETH_CORE_LIBRARIES, the libraries needed to use ethereum. |
|
||||
# ETH_FOUND, If false, do not try to use ethereum. |
|
||||
# TODO: ETH_INCLUDE_DIRS |
|
||||
|
|
||||
set(CORE_LIBS web3jsonrpc;webthree;whisper;ethereum;evm;ethcore;lll;p2p;evmasm;devcrypto;evmcore;natspec;devcore;ethash-cl;ethash;secp256k1;scrypt;jsqrc) |
|
||||
set(ALL_LIBS ${CORE_LIBS};evmjit;solidity;secp256k1) |
|
||||
|
|
||||
set(ETH_INCLUDE_DIRS ${ETH_INCLUDE_DIR}) |
|
||||
set(ETH_CORE_LIBRARIES ${ETH_LIBRARY}) |
|
||||
|
|
||||
foreach (l ${ALL_LIBS}) |
|
||||
string(TOUPPER ${l} L) |
|
||||
find_library(ETH_${L}_LIBRARY |
|
||||
NAMES ${l} |
|
||||
PATH_SUFFIXES "lib${l}" "${l}" |
|
||||
) |
|
||||
endforeach() |
|
||||
|
|
||||
foreach (l ${CORE_LIBS}) |
|
||||
string(TOUPPER ${l} L) |
|
||||
list(APPEND ETH_CORE_LIBRARIES ${ETH_${L}_LIBRARY}) |
|
||||
endforeach() |
|
||||
|
|
||||
# handle the QUIETLY and REQUIRED arguments and set ETH_FOUND to TRUE |
|
||||
# if all listed variables are TRUE, hide their existence from configuration view |
|
||||
include(FindPackageHandleStandardArgs) |
|
||||
find_package_handle_standard_args(ethereum DEFAULT_MSG |
|
||||
ETH_CORE_LIBRARIES) |
|
||||
mark_as_advanced (ETH_CORE_LIBRARIES) |
|
||||
|
|
@ -1,154 +0,0 @@ |
|||||
#.rst: |
|
||||
# FindOpenCL |
|
||||
# ---------- |
|
||||
# |
|
||||
# Try to find OpenCL |
|
||||
# |
|
||||
# Once done this will define:: |
|
||||
# |
|
||||
# OpenCL_FOUND - True if OpenCL was found |
|
||||
# OpenCL_INCLUDE_DIRS - include directories for OpenCL |
|
||||
# OpenCL_LIBRARIES - link against this library to use OpenCL |
|
||||
# OpenCL_VERSION_STRING - Highest supported OpenCL version (eg. 1.2) |
|
||||
# OpenCL_VERSION_MAJOR - The major version of the OpenCL implementation |
|
||||
# OpenCL_VERSION_MINOR - The minor version of the OpenCL implementation |
|
||||
# |
|
||||
# The module will also define two cache variables:: |
|
||||
# |
|
||||
# OpenCL_INCLUDE_DIR - the OpenCL include directory |
|
||||
# OpenCL_LIBRARY - the path to the OpenCL library |
|
||||
# |
|
||||
|
|
||||
#============================================================================= |
|
||||
# Copyright 2014 Matthaeus G. Chajdas |
|
||||
# |
|
||||
# Distributed under the OSI-approved BSD License (the "License"); |
|
||||
# see accompanying file Copyright.txt for details. |
|
||||
# |
|
||||
# This software is distributed WITHOUT ANY WARRANTY; without even the |
|
||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
|
||||
# See the License for more information. |
|
||||
#============================================================================= |
|
||||
# (To distribute this file outside of CMake, substitute the full |
|
||||
# License text for the above reference.) |
|
||||
|
|
||||
function(_FIND_OPENCL_VERSION) |
|
||||
include(CheckSymbolExists) |
|
||||
include(CMakePushCheckState) |
|
||||
set(CMAKE_REQUIRED_QUIET ${OpenCL_FIND_QUIETLY}) |
|
||||
|
|
||||
CMAKE_PUSH_CHECK_STATE() |
|
||||
foreach(VERSION "2_0" "1_2" "1_1" "1_0") |
|
||||
set(CMAKE_REQUIRED_INCLUDES "${OpenCL_INCLUDE_DIR}") |
|
||||
|
|
||||
if(APPLE) |
|
||||
CHECK_SYMBOL_EXISTS( |
|
||||
CL_VERSION_${VERSION} |
|
||||
"${OpenCL_INCLUDE_DIR}/OpenCL/cl.h" |
|
||||
OPENCL_VERSION_${VERSION}) |
|
||||
else() |
|
||||
CHECK_SYMBOL_EXISTS( |
|
||||
CL_VERSION_${VERSION} |
|
||||
"${OpenCL_INCLUDE_DIR}/CL/cl.h" |
|
||||
OPENCL_VERSION_${VERSION}) |
|
||||
endif() |
|
||||
|
|
||||
if(OPENCL_VERSION_${VERSION}) |
|
||||
string(REPLACE "_" "." VERSION "${VERSION}") |
|
||||
set(OpenCL_VERSION_STRING ${VERSION} PARENT_SCOPE) |
|
||||
string(REGEX MATCHALL "[0-9]+" version_components "${VERSION}") |
|
||||
list(GET version_components 0 major_version) |
|
||||
list(GET version_components 1 minor_version) |
|
||||
set(OpenCL_VERSION_MAJOR ${major_version} PARENT_SCOPE) |
|
||||
set(OpenCL_VERSION_MINOR ${minor_version} PARENT_SCOPE) |
|
||||
break() |
|
||||
endif() |
|
||||
endforeach() |
|
||||
CMAKE_POP_CHECK_STATE() |
|
||||
endfunction() |
|
||||
|
|
||||
find_path(OpenCL_INCLUDE_DIR |
|
||||
NAMES |
|
||||
CL/cl.h OpenCL/cl.h |
|
||||
PATHS |
|
||||
ENV "PROGRAMFILES(X86)" |
|
||||
ENV AMDAPPSDKROOT |
|
||||
ENV INTELOCLSDKROOT |
|
||||
ENV NVSDKCOMPUTE_ROOT |
|
||||
ENV CUDA_PATH |
|
||||
ENV ATISTREAMSDKROOT |
|
||||
PATH_SUFFIXES |
|
||||
include |
|
||||
OpenCL/common/inc |
|
||||
"AMD APP/include") |
|
||||
|
|
||||
_FIND_OPENCL_VERSION() |
|
||||
|
|
||||
if(WIN32) |
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 4) |
|
||||
find_library(OpenCL_LIBRARY |
|
||||
NAMES OpenCL |
|
||||
PATHS |
|
||||
ENV "PROGRAMFILES(X86)" |
|
||||
ENV AMDAPPSDKROOT |
|
||||
ENV INTELOCLSDKROOT |
|
||||
ENV CUDA_PATH |
|
||||
ENV NVSDKCOMPUTE_ROOT |
|
||||
ENV ATISTREAMSDKROOT |
|
||||
PATH_SUFFIXES |
|
||||
"AMD APP/lib/x86" |
|
||||
lib/x86 |
|
||||
lib/Win32 |
|
||||
OpenCL/common/lib/Win32) |
|
||||
elseif(CMAKE_SIZEOF_VOID_P EQUAL 8) |
|
||||
find_library(OpenCL_LIBRARY |
|
||||
NAMES OpenCL |
|
||||
PATHS |
|
||||
ENV "PROGRAMFILES(X86)" |
|
||||
ENV AMDAPPSDKROOT |
|
||||
ENV INTELOCLSDKROOT |
|
||||
ENV CUDA_PATH |
|
||||
ENV NVSDKCOMPUTE_ROOT |
|
||||
ENV ATISTREAMSDKROOT |
|
||||
PATH_SUFFIXES |
|
||||
"AMD APP/lib/x86_64" |
|
||||
lib/x86_64 |
|
||||
lib/x64 |
|
||||
OpenCL/common/lib/x64) |
|
||||
endif() |
|
||||
else() |
|
||||
find_library(OpenCL_LIBRARY |
|
||||
NAMES OpenCL libOpenCL.so.1) |
|
||||
endif() |
|
||||
|
|
||||
set(OpenCL_LIBRARIES ${OpenCL_LIBRARY}) |
|
||||
set(OpenCL_INCLUDE_DIRS ${OpenCL_INCLUDE_DIR}) |
|
||||
|
|
||||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") |
|
||||
|
|
||||
find_library( |
|
||||
OpenCL_LIBRARY_DEBUG |
|
||||
NAMES OpenCL_d |
|
||||
) |
|
||||
|
|
||||
set(OpenCL_LIBRARIES optimized ${OpenCL_LIBRARY} debug ${OpenCL_LIBRARY_DEBUG}) |
|
||||
|
|
||||
# prepare dlls |
|
||||
string(REPLACE ".lib" ".dll" OpenCL_DLL ${OpenCL_LIBRARY}) |
|
||||
string(REPLACE "/lib/" "/bin/" OpenCL_DLL ${OpenCL_DLL}) |
|
||||
string(REPLACE ".lib" ".dll" OpenCL_DLL_DEBUG ${OpenCL_LIBRARY_DEBUG}) |
|
||||
string(REPLACE "/lib/" "/bin/" OpenCL_DLL_DEBUG ${OpenCL_DLL_DEBUG}) |
|
||||
set(OpenCL_DLLS optimized ${OpenCL_DLL} debug ${OpenCL_DLL_DEBUG}) |
|
||||
|
|
||||
endif() |
|
||||
|
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) |
|
||||
find_package_handle_standard_args( |
|
||||
OpenCL |
|
||||
FOUND_VAR OpenCL_FOUND |
|
||||
REQUIRED_VARS OpenCL_LIBRARY OpenCL_INCLUDE_DIR |
|
||||
VERSION_VAR OpenCL_VERSION_STRING) |
|
||||
|
|
||||
mark_as_advanced( |
|
||||
OpenCL_INCLUDE_DIR |
|
||||
OpenCL_LIBRARY) |
|
Loading…
Reference in new issue