Files
pytorch/cmake/Modules/FindMIOpen.cmake
Edward Yang 48a35135fb Convert all tabs to spaces, add CI. (#18959)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/18959
ghimport-source-id: a934163fa34cb2019732d5f49dc7290c376bf156

Differential Revision: D14831246

Pulled By: ezyang

fbshipit-source-id: beb92dc4ee8c82f4c8259c081dd72e477fe7a9d0
2019-04-09 08:12:26 -07:00

64 lines
2.6 KiB
CMake

# - Try to find MIOpen
#
# The following variables are optionally searched for defaults
# MIOPEN_ROOT_DIR: Base directory where all MIOpen components are found
#
# The following are set after configuration is done:
# MIOPEN_FOUND
# MIOPEN_INCLUDE_DIRS
# MIOPEN_LIBRARIES
# MIOPEN_LIBRARY_DIRS
#
# Borrowed from https://github.com/caffe2/caffe2/blob/master/cmake/Modules/FindCuDNN.cmake
include(FindPackageHandleStandardArgs)
set(MIOPEN_ROOT_DIR "" CACHE PATH "Folder contains MIOpen")
if($ENV{MIOPEN_INCLUDE_DIR})
SET(MIOPEN_INCLUDE_DIR $ENV{MIOPEN_INCLUDE_DIR})
else($ENV{MIOPEN_INCLUDE_DIR})
find_path(MIOPEN_INCLUDE_DIR miopen.h
HINTS ${MIOPEN_ROOT_DIR}
PATH_SUFFIXES include include/miopen)
endif($ENV{MIOPEN_INCLUDE_DIR})
if($ENV{MIOPEN_LIBRARY})
SET(MIOPEN_LIBRARY $ENV{MIOPEN_LIBRARY})
else($ENV{MIOPEN_LIBRARY})
find_library(MIOPEN_LIBRARY MIOpen
HINTS ${MIOPEN_LIB_DIR} ${MIOPEN_ROOT_DIR}
PATH_SUFFIXES lib)
endif($ENV{MIOPEN_LIBRARY})
find_package_handle_standard_args(
MIOPEN DEFAULT_MSG MIOPEN_INCLUDE_DIR MIOPEN_LIBRARY)
if(MIOPEN_FOUND)
# get MIOpen version
file(READ ${MIOPEN_INCLUDE_DIR}/version.h MIOPEN_HEADER_CONTENTS)
string(REGEX MATCH "define MIOPEN_VERSION_MAJOR * +([0-9]+)"
MIOPEN_VERSION_MAJOR "${MIOPEN_HEADER_CONTENTS}")
string(REGEX REPLACE "define MIOPEN_VERSION_MAJOR * +([0-9]+)" "\\1"
MIOPEN_VERSION_MAJOR "${MIOPEN_VERSION_MAJOR}")
string(REGEX MATCH "define MIOPEN_VERSION_MINOR * +([0-9]+)"
MIOPEN_VERSION_MINOR "${MIOPEN_HEADER_CONTENTS}")
string(REGEX REPLACE "define MIOPEN_VERSION_MINOR * +([0-9]+)" "\\1"
MIOPEN_VERSION_MINOR "${MIOPEN_VERSION_MINOR}")
string(REGEX MATCH "define MIOPEN_VERSION_PATCH * +([0-9]+)"
MIOPEN_VERSION_PATCH "${MIOPEN_HEADER_CONTENTS}")
string(REGEX REPLACE "define MIOPEN_VERSION_PATCH * +([0-9]+)" "\\1"
MIOPEN_VERSION_PATCH "${MIOPEN_VERSION_PATCH}")
# Assemble MIOpen version
if(NOT MIOPEN_VERSION_MAJOR)
set(MIOPEN_VERSION "?")
else()
set(MIOPEN_VERSION "${MIOPEN_VERSION_MAJOR}.${MIOPEN_VERSION_MINOR}.${MIOPEN_VERSION_PATCH}")
endif()
set(MIOPEN_INCLUDE_DIRS ${MIOPEN_INCLUDE_DIR})
set(MIOPEN_LIBRARIES ${MIOPEN_LIBRARY})
message(STATUS "Found MIOpen: v${MIOPEN_VERSION} (include: ${MIOPEN_INCLUDE_DIR}, library: ${MIOPEN_LIBRARY})")
mark_as_advanced(MIOPEN_ROOT_DIR MIOPEN_LIBRARY MIOPEN_INCLUDE_DIR)
endif()