cmake_minimum_required(VERSION 2.6) # Configure set(AMDAPPSDKROOT $ENV{AMDAPPSDKROOT} CACHE FILEPATH "ATI Stream SDK root path") if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE) endif() if(TARGET_PLATFORM EQUAL 32) set(TARGET_PLATFORM "32" CACHE STRING "Target platform type (32-bit or 64-bit)" FORCE) set(_arch "x86" INTERNAL) set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) else() set(TARGET_PLATFORM "64" CACHE STRING "Target platform type (32-bit or 64-bit)" FORCE) set(_arch "x86_64" INTERNAL) set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE) endif() message(STATUS "Target platform: ${TARGET_PLATFORM}-bit") # Find OpenCL SDK find_path(OPENCL_INCLUDE_DIRS CL/cl.h OpenCL/cl.h HINTS $ENV{AMDAPPSDKROOT}/include ${AMDAPPSDKROOT}/include) find_library(OPENCL_LIBRARIES OpenCL HINTS $ENV{AMDAPPSDKROOT}/lib/${_arch} ${AMDAPPSDKROOT}/lib/${_arch}) if(OPENCL_INCLUDE_DIRS AND OPENCL_LIBRARIES) message(STATUS "Found OpenCL: ${OPENCL_LIBRARIES}") else() message(FATAL_ERROR "Cannot find OpenCL SDK") endif() mark_as_advanced(OPENCL_INCLUDE_DIRS OPENCL_LIBRARIES) include_directories(${OPENCL_INCLUDE_DIRS}) # Set the OpenCL library include path depending on target platform if(TARGET_PLATFORM EQUAL 64) link_directories(${ATI_STREAM_SDK_ROOT}/lib/x86_64) else() link_directories(${ATI_STREAM_SDK_ROOT}/lib/x86) endif() # Find AMD APPML SDK if (NOT APPML_ROOT) set (APPML_ROOT $ENV{AMDAPPSDKROOT}/../AMD/clAmdBlas) endif () find_path(APPML_INCLUDE_DIRS clAmdBlas.h HINTS ${APPML_ROOT}/includ find_library(APPML_LIBRARIES clAmdBlas HINTS ${APPML_ROOT}/lib${TARGET_PLATFORM}/import) if (APPML_INCLUDE_DIRS AND APPML_LIBRARIES) message (STATUS "Found APPML BLAS: ${APPML_LIBRARIES}") else () message (FATAL_ERROR "Cannot find APPML BLAS SDK") endif () mark_as_advanced(APPML_INCLUDE_DIRS APPML_LIBRARIES) include_directories(${APPML_INCLUDE_DIRS}) link_directories(${APPML_ROOT}/lib${TARGET_PLATFORM}/import)