aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Evers <kristianevers@gmail.com>2019-03-12 09:30:29 +0100
committerGitHub <noreply@github.com>2019-03-12 09:30:29 +0100
commit5dc01e985e86b441ba2a671b712d3b211c8a2b33 (patch)
treee36489b854581f65d701b19f8019559d0b5ac4b7
parentab49a9308b604a5c94507e02100af1aa8d16642a (diff)
parentc1520bb2e60a2e934b51074827cc2c74b2b31747 (diff)
downloadPROJ-5dc01e985e86b441ba2a671b712d3b211c8a2b33.tar.gz
PROJ-5dc01e985e86b441ba2a671b712d3b211c8a2b33.zip
Merge pull request #1316 from seanwarren/master
Fix cross-compilation detection
-rw-r--r--cmake/CMakeLists.txt6
-rw-r--r--cmake/project-config-version.cmake.in10
2 files changed, 15 insertions, 1 deletions
diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
index 7073b7b4..da586343 100644
--- a/cmake/CMakeLists.txt
+++ b/cmake/CMakeLists.txt
@@ -4,6 +4,12 @@
# be relocated.)
file(RELATIVE_PATH PROJECT_ROOT_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKECONFIGDIR} ${CMAKE_INSTALL_PREFIX})
+if (CMAKE_CROSSCOMPILING)
+ set (CMAKE_CROSSCOMPILING_STR "ON")
+else ()
+ set (CMAKE_CROSSCOMPILING_STR "OFF")
+endif ()
+
string(TOLOWER "${PROJECT_NAME}" PROJECT_NAME_LOWER)
configure_file (project-config.cmake.in project-config.cmake @ONLY)
configure_file (project-config-version.cmake.in
diff --git a/cmake/project-config-version.cmake.in b/cmake/project-config-version.cmake.in
index ce2820cb..7dc90ddc 100644
--- a/cmake/project-config-version.cmake.in
+++ b/cmake/project-config-version.cmake.in
@@ -5,6 +5,12 @@ set (PACKAGE_VERSION_MAJOR "@PROJ_VERSION_MAJOR@")
set (PACKAGE_VERSION_MINOR "@PROJ_VERSION_MINOR@")
set (PACKAGE_VERSION_PATCH "@PROJ_VERSION_PATCH@")
+if (CMAKE_CROSSCOMPILING)
+ set (CMAKE_CROSSCOMPILING_STR "ON")
+else ()
+ set (CMAKE_CROSSCOMPILING_STR "OFF")
+endif ()
+
if (NOT PACKAGE_FIND_NAME STREQUAL "@PROJECT_NAME@")
# Check package name (in particular, because of the way cmake finds
# package config files, the capitalization could easily be "wrong").
@@ -22,7 +28,7 @@ elseif (MSVC AND NOT MSVC_VERSION STREQUAL "@MSVC_VERSION@")
# Reject if there's a mismatch in MSVC compiler versions
set (REASON "_MSC_VER = @MSVC_VERSION@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
-elseif (NOT CMAKE_CROSSCOMPILING STREQUAL "@CMAKE_CROSSCOMPILING@")
+elseif (NOT CMAKE_CROSSCOMPILING_STR STREQUAL "@CMAKE_CROSSCOMPILING_STR@")
# Reject if there's a mismatch in ${CMAKE_CROSSCOMPILING}
set (REASON "cross-compiling = @CMAKE_CROSSCOMPILING@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
@@ -46,3 +52,5 @@ endif ()
if (PACKAGE_VERSION_UNSUITABLE)
set (PACKAGE_VERSION "${PACKAGE_VERSION} (${REASON})")
endif ()
+
+unset(CMAKE_CROSSCOMPILING_STR) \ No newline at end of file