[HIPIFY][cmake] Minor refactoring
1. Fix setting std c++ (11|14) 2. Get rid of WIN32, use MSVC instead 3. Use VERSION_GREATER_EQUAL and VERSION_MAJOR instead of logical expressions
This commit is contained in:
@@ -65,24 +65,31 @@ target_link_libraries(hipify-clang PRIVATE
|
||||
LLVMOption
|
||||
LLVMCore)
|
||||
|
||||
if(WIN32)
|
||||
target_link_libraries(hipify-clang PRIVATE version)
|
||||
endif()
|
||||
|
||||
if ((LLVM_PACKAGE_VERSION VERSION_EQUAL "7") OR (LLVM_PACKAGE_VERSION VERSION_GREATER "7"))
|
||||
if (LLVM_PACKAGE_VERSION VERSION_GREATER_EQUAL "7")
|
||||
target_link_libraries(hipify-clang PRIVATE clangToolingInclusions)
|
||||
endif()
|
||||
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -std=c++14")
|
||||
if(MSVC)
|
||||
if (MSVC)
|
||||
target_link_libraries(hipify-clang PRIVATE version)
|
||||
target_compile_options(hipify-clang PRIVATE "/Od /GR- /EHs- /EHc-")
|
||||
set(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} /SUBSYSTEM:WINDOWS")
|
||||
set(StdCpp "/std:c++")
|
||||
else()
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread -fno-rtti -fvisibility-inlines-hidden")
|
||||
set(StdCpp "-std=c++")
|
||||
endif()
|
||||
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DHIPIFY_CLANG_RES=\\\"${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}\\\"")
|
||||
if (LLVM_PACKAGE_VERSION VERSION_GREATER_EQUAL "10.0")
|
||||
string(APPEND StdCpp "14")
|
||||
# MSVC starting from 1900 (VS 2015) supports only the following c++ std values: c++14|c++17|c++latest
|
||||
elseif (MSVC)
|
||||
set(StdCpp "")
|
||||
else()
|
||||
string(APPEND StdCpp "11")
|
||||
endif()
|
||||
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} ${StdCpp} -DHIPIFY_CLANG_RES=\\\"${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}\\\"")
|
||||
|
||||
install(TARGETS hipify-clang DESTINATION bin)
|
||||
|
||||
@@ -111,15 +118,15 @@ if (HIPIFY_CLANG_TESTS)
|
||||
(CUDA_VERSION VERSION_GREATER "9.2" AND LLVM_PACKAGE_VERSION VERSION_LESS "8.0") OR
|
||||
(CUDA_VERSION VERSION_GREATER "10.0" AND LLVM_PACKAGE_VERSION VERSION_LESS "9.0"))
|
||||
message(SEND_ERROR "CUDA ${CUDA_VERSION} is not supported by clang ${LLVM_PACKAGE_VERSION}.")
|
||||
if (CUDA_VERSION VERSION_LESS "7.0")
|
||||
if (CUDA_VERSION_MAJOR VERSION_LESS "7")
|
||||
message(STATUS "Please install CUDA 7.0 or higher.")
|
||||
elseif ((CUDA_VERSION VERSION_EQUAL "7.0") OR (CUDA_VERSION VERSION_EQUAL "7.5"))
|
||||
elseif (CUDA_VERSION_MAJOR VERSION_LESS "8")
|
||||
message(STATUS "Please install clang 3.8 or higher.")
|
||||
elseif (CUDA_VERSION VERSION_EQUAL "8.0")
|
||||
elseif (CUDA_VERSION_MAJOR VERSION_LESS "9")
|
||||
message(STATUS "Please install clang 4.0 or higher.")
|
||||
elseif (CUDA_VERSION VERSION_EQUAL "9.0")
|
||||
message(STATUS "Please install clang 6.0 or higher.")
|
||||
elseif ((CUDA_VERSION VERSION_EQUAL "9.1") OR (CUDA_VERSION VERSION_EQUAL "9.2"))
|
||||
elseif (CUDA_VERSION_MAJOR VERSION_LESS "10")
|
||||
message(STATUS "Please install clang 7.0 or higher.")
|
||||
elseif (CUDA_VERSION VERSION_EQUAL "10.0")
|
||||
message(STATUS "Please install clang 8.0 or higher.")
|
||||
|
||||
مرجع در شماره جدید
Block a user