[PATCH] [CMake] Fix MinGW cross-compilation

Akihiko Odaki via llvm-commits llvm-commits at lists.llvm.org
Sun Sep 18 07:50:16 PDT 2016


WIN32 variable is not set when cross-compiling. This changes to check also
MINGW variable, which is set also in such cases.
---
 cmake/modules/HandleLLVMOptions.cmake | 6 +++++-
 lib/Transforms/Hello/CMakeLists.txt   | 2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake
index 0268548..e0bd5e9 100644
--- a/cmake/modules/HandleLLVMOptions.cmake
+++ b/cmake/modules/HandleLLVMOptions.cmake
@@ -75,7 +75,11 @@ if(WIN32)
     set(LLVM_ON_WIN32 1)
     set(LLVM_ON_UNIX 0)
   endif(CYGWIN)
-else(WIN32)
+elseif(MINGW)
+  set(LLVM_HAVE_LINK_VERSION_SCRIPT 0)
+  set(LLVM_ON_WIN32 1)
+  set(LLVM_ON_UNIX 0)
+else()
   if(UNIX)
     set(LLVM_ON_WIN32 0)
     set(LLVM_ON_UNIX 1)
diff --git a/lib/Transforms/Hello/CMakeLists.txt b/lib/Transforms/Hello/CMakeLists.txt
index 4a55dd9..5774d55 100644
--- a/lib/Transforms/Hello/CMakeLists.txt
+++ b/lib/Transforms/Hello/CMakeLists.txt
@@ -6,7 +6,7 @@ if( NOT LLVM_REQUIRES_RTTI )
   endif()
 endif()
 
-if(WIN32 OR CYGWIN)
+if(WIN32 OR CYGWIN OR MINGW)
   set(LLVM_LINK_COMPONENTS Core Support)
 endif()
 
-- 
2.9.3



More information about the llvm-commits mailing list