[llvm] 9447077 - [CMAKE] Fix cross-compilation build
Vladislav Vinogradov via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 23 03:23:48 PDT 2021
Author: Vladislav Vinogradov
Date: 2021-03-23T13:24:08+03:00
New Revision: 94470777af8bdd77017ad43c88c1b876d1d8a398
URL: https://github.com/llvm/llvm-project/commit/94470777af8bdd77017ad43c88c1b876d1d8a398
DIFF: https://github.com/llvm/llvm-project/commit/94470777af8bdd77017ad43c88c1b876d1d8a398.diff
LOG: [CMAKE] Fix cross-compilation build
Call `get_errc_messages` only if `LLVM_INCLUDE_TESTS` was set.
Reviewed By: zero9178, abhina.sreeskantharajan, jhenderson
Differential Revision: https://reviews.llvm.org/D98861
Added:
Modified:
llvm/CMakeLists.txt
llvm/cmake/modules/GetErrcMessages.cmake
Removed:
################################################################################
diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt
index 51ed113f58c5f..ddd81d608caef 100644
--- a/llvm/CMakeLists.txt
+++ b/llvm/CMakeLists.txt
@@ -507,9 +507,6 @@ if (MSVC_IDE OR XCODE)
endif()
set(LLVM_LIT_ARGS "${LIT_ARGS_DEFAULT}" CACHE STRING "Default options for lit")
-include(GetErrcMessages)
-get_errc_messages(LLVM_LIT_ERRC_MESSAGES)
-
# On Win32 hosts, provide an option to specify the path to the GnuWin32 tools.
if( WIN32 AND NOT CYGWIN )
set(LLVM_LIT_TOOLS_DIR "" CACHE PATH "Path to GnuWin32 tools")
@@ -762,6 +759,11 @@ set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/bin )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} )
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} )
+if(LLVM_INCLUDE_TESTS)
+ include(GetErrcMessages)
+ get_errc_messages(LLVM_LIT_ERRC_MESSAGES)
+endif()
+
# For up-to-date instructions for installing the Tensorflow dependency, refer to
# the bot setup script: https://github.com/google/ml-compiler-opt/blob/master/buildbot/buildbot_init.sh
# In this case, the latest C API library is available for download from
diff --git a/llvm/cmake/modules/GetErrcMessages.cmake b/llvm/cmake/modules/GetErrcMessages.cmake
index 2db1e0304ba09..b04f269d79d24 100644
--- a/llvm/cmake/modules/GetErrcMessages.cmake
+++ b/llvm/cmake/modules/GetErrcMessages.cmake
@@ -4,6 +4,11 @@
# Messages are semi colon separated.
# Keep amount, order and tested error codes in sync with llvm/utils/lit/lit/llvm/config.py.
function(get_errc_messages outvar)
+ if(CMAKE_CROSSCOMPILING AND NOT CMAKE_CROSSCOMPILING_EMULATOR AND NOT DEFINED errc_exit_code)
+ set(${outvar} "" PARENT_SCOPE)
+ message(STATUS "Can't get errc messages in cross-compilation mode")
+ return()
+ endif()
set(errc_test_code ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/getErrc.cpp)
More information about the llvm-commits
mailing list