Attached Files | vc11_arm.patch [^] (5,968 bytes) 2012-04-06 06:21 [Show Content] [Hide Content]diff -r b871595fced7 -r 6e41ff9c5165 Modules/CMakeGenericSystem.cmake
--- a/Modules/CMakeGenericSystem.cmake Fri Apr 06 18:14:13 2012 +0800
+++ b/Modules/CMakeGenericSystem.cmake Fri Apr 06 18:17:25 2012 +0800
@@ -75,6 +75,8 @@
#
if("${CMAKE_GENERATOR}" MATCHES "(Win64|IA64)")
set(arch_hint "x64")
+ elif("${CMAKE_GENERATOR}" MATCHES "ARM")
+ set(arch_hint "ARM")
elseif("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
set(arch_hint "x64")
elseif("$ENV{LIB}" MATCHES "(amd64|ia64)")
diff -r b871595fced7 -r 6e41ff9c5165 Modules/Platform/Windows-cl.cmake
--- a/Modules/Platform/Windows-cl.cmake Fri Apr 06 18:14:13 2012 +0800
+++ b/Modules/Platform/Windows-cl.cmake Fri Apr 06 18:17:25 2012 +0800
@@ -135,6 +135,9 @@
IF(CMAKE_FORCE_WIN64 OR CMAKE_FORCE_IA64)
SET(CMAKE_CL_64 1)
ENDIF(CMAKE_FORCE_WIN64 OR CMAKE_FORCE_IA64)
+IF(CMAKE_FORCE_ARM)
+ SET(CMAKE_CL_ARM 1)
+ENDIF(CMAKE_FORCE_ARM)
IF("${MSVC_VERSION}" GREATER 1599)
SET(MSVC_INCREMENTAL_DEFAULT ON)
diff -r b871595fced7 -r 6e41ff9c5165 Source/CMakeLists.txt
--- a/Source/CMakeLists.txt Fri Apr 06 18:14:13 2012 +0800
+++ b/Source/CMakeLists.txt Fri Apr 06 18:17:25 2012 +0800
@@ -335,6 +335,8 @@
cmGlobalVisualStudio11Generator.cxx
cmGlobalVisualStudio11Win64Generator.h
cmGlobalVisualStudio11Win64Generator.cxx
+ cmGlobalVisualStudio11ARMGenerator.h
+ cmGlobalVisualStudio11ARMGenerator.cxx
cmGlobalVisualStudioGenerator.cxx
cmGlobalVisualStudioGenerator.h
cmGlobalWatcomWMakeGenerator.cxx
diff -r b871595fced7 -r 6e41ff9c5165 Source/cmGlobalVisualStudio11ARMGenerator.cxx
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Source/cmGlobalVisualStudio11ARMGenerator.cxx Fri Apr 06 18:17:25 2012 +0800
@@ -0,0 +1,33 @@
+/*============================================================================
+ CMake - Cross Platform Makefile Generator
+ Copyright 2000-2011 Kitware, Inc., Insight Software Consortium
+
+ Distributed under the OSI-approved BSD License (the "License");
+ see accompanying file Copyright.txt for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even the
+ implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the License for more information.
+============================================================================*/
+#include "cmGlobalVisualStudio11ARMGenerator.h"
+#include "cmMakefile.h"
+#include "cmake.h"
+
+//----------------------------------------------------------------------------
+void cmGlobalVisualStudio11ARMGenerator
+::GetDocumentation(cmDocumentationEntry& entry) const
+{
+ entry.Name = this->GetName();
+ entry.Brief = "Generates Visual Studio 11 ARM project files.";
+ entry.Full = "";
+}
+
+//----------------------------------------------------------------------------
+void cmGlobalVisualStudio11ARMGenerator
+::AddPlatformDefinitions(cmMakefile* mf)
+{
+ this->cmGlobalVisualStudio11Generator::AddPlatformDefinitions(mf);
+ mf->AddDefinition("CMAKE_FORCE_ARM", "TRUE");
+ mf->AddDefinition("MSVC_C_ARCHITECTURE_ID", "ARM");
+ mf->AddDefinition("MSVC_CXX_ARCHITECTURE_ID", "ARM");
+}
diff -r b871595fced7 -r 6e41ff9c5165 Source/cmGlobalVisualStudio11ARMGenerator.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Source/cmGlobalVisualStudio11ARMGenerator.h Fri Apr 06 18:17:25 2012 +0800
@@ -0,0 +1,37 @@
+/*============================================================================
+ CMake - Cross Platform Makefile Generator
+ Copyright 2000-2011 Kitware, Inc., Insight Software Consortium
+
+ Distributed under the OSI-approved BSD License (the "License");
+ see accompanying file Copyright.txt for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even the
+ implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the License for more information.
+============================================================================*/
+#ifndef cmGlobalVisualStudio11ARMGenerator_h
+#define cmGlobalVisualStudio11ARMGenerator_h
+
+#include "cmGlobalVisualStudio11Generator.h"
+
+class cmGlobalVisualStudio11ARMGenerator :
+ public cmGlobalVisualStudio11Generator
+{
+public:
+ cmGlobalVisualStudio11ARMGenerator() {}
+ static cmGlobalGenerator* New() {
+ return new cmGlobalVisualStudio11ARMGenerator; }
+
+ ///! Get the name for the generator.
+ virtual const char* GetName() const {
+ return cmGlobalVisualStudio11ARMGenerator::GetActualName();}
+ static const char* GetActualName() {return "Visual Studio 11 ARM";}
+
+ virtual const char* GetPlatformName() const {return "ARM";}
+
+ /** Get the documentation entry for this generator. */
+ virtual void GetDocumentation(cmDocumentationEntry& entry) const;
+
+ virtual void AddPlatformDefinitions(cmMakefile* mf);
+};
+#endif
diff -r b871595fced7 -r 6e41ff9c5165 Source/cmake.cxx
--- a/Source/cmake.cxx Fri Apr 06 18:14:13 2012 +0800
+++ b/Source/cmake.cxx Fri Apr 06 18:17:25 2012 +0800
@@ -70,6 +70,7 @@
# include "cmGlobalVisualStudio10Win64Generator.h"
# include "cmGlobalVisualStudio11Generator.h"
# include "cmGlobalVisualStudio11Win64Generator.h"
+# include "cmGlobalVisualStudio11ARMGenerator.h"
# include "cmGlobalVisualStudio8Win64Generator.h"
# include "cmGlobalBorlandMakefileGenerator.h"
# include "cmGlobalNMakeMakefileGenerator.h"
@@ -2586,6 +2587,8 @@
&cmGlobalVisualStudio11Generator::New;
this->Generators[cmGlobalVisualStudio11Win64Generator::GetActualName()] =
&cmGlobalVisualStudio11Win64Generator::New;
+ this->Generators[cmGlobalVisualStudio11ARMGenerator::GetActualName()] =
+ &cmGlobalVisualStudio11ARMGenerator::New;
this->Generators[cmGlobalVisualStudio71Generator::GetActualName()] =
&cmGlobalVisualStudio71Generator::New;
this->Generators[cmGlobalVisualStudio8Generator::GetActualName()] =
vc11_arm_new.patch [^] (5,318 bytes) 2012-05-09 04:08 [Show Content] [Hide Content]diff -r c64234fb2c01 -r f2ab3f9957b4 Modules/CMakeGenericSystem.cmake
--- a/Modules/CMakeGenericSystem.cmake Wed May 09 15:33:01 2012 +0800
+++ b/Modules/CMakeGenericSystem.cmake Wed May 09 16:05:08 2012 +0800
@@ -77,6 +77,8 @@
#
if("${CMAKE_GENERATOR}" MATCHES "(Win64|IA64)")
set(arch_hint "x64")
+ elif("${CMAKE_GENERATOR}" MATCHES "ARM")
+ set(arch_hint "ARM")
elseif("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
set(arch_hint "x64")
elseif("$ENV{LIB}" MATCHES "(amd64|ia64)")
diff -r c64234fb2c01 -r f2ab3f9957b4 Source/CMakeLists.txt
--- a/Source/CMakeLists.txt Wed May 09 15:33:01 2012 +0800
+++ b/Source/CMakeLists.txt Wed May 09 16:05:08 2012 +0800
@@ -337,6 +337,8 @@
cmGlobalVisualStudio11Generator.cxx
cmGlobalVisualStudio11Win64Generator.h
cmGlobalVisualStudio11Win64Generator.cxx
+ cmGlobalVisualStudio11ARMGenerator.h
+ cmGlobalVisualStudio11ARMGenerator.cxx
cmGlobalVisualStudioGenerator.cxx
cmGlobalVisualStudioGenerator.h
cmGlobalWatcomWMakeGenerator.cxx
diff -r c64234fb2c01 -r f2ab3f9957b4 Source/cmGlobalVisualStudio11ARMGenerator.cxx
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Source/cmGlobalVisualStudio11ARMGenerator.cxx Wed May 09 16:05:08 2012 +0800
@@ -0,0 +1,32 @@
+/*============================================================================
+ CMake - Cross Platform Makefile Generator
+ Copyright 2000-2011 Kitware, Inc., Insight Software Consortium
+
+ Distributed under the OSI-approved BSD License (the "License");
+ see accompanying file Copyright.txt for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even the
+ implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the License for more information.
+============================================================================*/
+#include "cmGlobalVisualStudio11ARMGenerator.h"
+#include "cmMakefile.h"
+#include "cmake.h"
+
+//----------------------------------------------------------------------------
+void cmGlobalVisualStudio11ARMGenerator
+::GetDocumentation(cmDocumentationEntry& entry) const
+{
+ entry.Name = this->GetName();
+ entry.Brief = "Generates Visual Studio 11 ARM project files.";
+ entry.Full = "";
+}
+
+//----------------------------------------------------------------------------
+void cmGlobalVisualStudio11ARMGenerator
+::AddPlatformDefinitions(cmMakefile* mf)
+{
+ this->cmGlobalVisualStudio11Generator::AddPlatformDefinitions(mf);
+ mf->AddDefinition("MSVC_C_ARCHITECTURE_ID", "ARM");
+ mf->AddDefinition("MSVC_CXX_ARCHITECTURE_ID", "ARM");
+}
diff -r c64234fb2c01 -r f2ab3f9957b4 Source/cmGlobalVisualStudio11ARMGenerator.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Source/cmGlobalVisualStudio11ARMGenerator.h Wed May 09 16:05:08 2012 +0800
@@ -0,0 +1,37 @@
+/*============================================================================
+ CMake - Cross Platform Makefile Generator
+ Copyright 2000-2011 Kitware, Inc., Insight Software Consortium
+
+ Distributed under the OSI-approved BSD License (the "License");
+ see accompanying file Copyright.txt for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even the
+ implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the License for more information.
+============================================================================*/
+#ifndef cmGlobalVisualStudio11ARMGenerator_h
+#define cmGlobalVisualStudio11ARMGenerator_h
+
+#include "cmGlobalVisualStudio11Generator.h"
+
+class cmGlobalVisualStudio11ARMGenerator :
+ public cmGlobalVisualStudio11Generator
+{
+public:
+ cmGlobalVisualStudio11ARMGenerator() {}
+ static cmGlobalGenerator* New() {
+ return new cmGlobalVisualStudio11ARMGenerator; }
+
+ ///! Get the name for the generator.
+ virtual const char* GetName() const {
+ return cmGlobalVisualStudio11ARMGenerator::GetActualName();}
+ static const char* GetActualName() {return "Visual Studio 11 ARM";}
+
+ virtual const char* GetPlatformName() const {return "ARM";}
+
+ /** Get the documentation entry for this generator. */
+ virtual void GetDocumentation(cmDocumentationEntry& entry) const;
+
+ virtual void AddPlatformDefinitions(cmMakefile* mf);
+};
+#endif
diff -r c64234fb2c01 -r f2ab3f9957b4 Source/cmake.cxx
--- a/Source/cmake.cxx Wed May 09 15:33:01 2012 +0800
+++ b/Source/cmake.cxx Wed May 09 16:05:08 2012 +0800
@@ -70,6 +70,7 @@
# include "cmGlobalVisualStudio10Win64Generator.h"
# include "cmGlobalVisualStudio11Generator.h"
# include "cmGlobalVisualStudio11Win64Generator.h"
+# include "cmGlobalVisualStudio11ARMGenerator.h"
# include "cmGlobalVisualStudio8Win64Generator.h"
# include "cmGlobalBorlandMakefileGenerator.h"
# include "cmGlobalNMakeMakefileGenerator.h"
@@ -2569,6 +2570,8 @@
&cmGlobalVisualStudio11Generator::New;
this->Generators[cmGlobalVisualStudio11Win64Generator::GetActualName()] =
&cmGlobalVisualStudio11Win64Generator::New;
+ this->Generators[cmGlobalVisualStudio11ARMGenerator::GetActualName()] =
+ &cmGlobalVisualStudio11ARMGenerator::New;
this->Generators[cmGlobalVisualStudio71Generator::GetActualName()] =
&cmGlobalVisualStudio71Generator::New;
this->Generators[cmGlobalVisualStudio8Generator::GetActualName()] =
|