Add VisualStudio 9 and 10 generators for Itanium platform
This commit is contained in:
parent
d44c68f39e
commit
aed92ccea6
|
@ -73,7 +73,7 @@ function(GetDefaultWindowsPrefixBase var)
|
||||||
# the architecture of the targets being built to choose the right
|
# the architecture of the targets being built to choose the right
|
||||||
# default value for CMAKE_INSTALL_PREFIX.
|
# default value for CMAKE_INSTALL_PREFIX.
|
||||||
#
|
#
|
||||||
if("${CMAKE_GENERATOR}" MATCHES "Win64")
|
if("${CMAKE_GENERATOR}" MATCHES "(Win64|IA64)")
|
||||||
set(arch_hint "x64")
|
set(arch_hint "x64")
|
||||||
elseif("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
|
elseif("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
|
||||||
set(arch_hint "x64")
|
set(arch_hint "x64")
|
||||||
|
|
|
@ -132,9 +132,9 @@ IF(MSVC_C_ARCHITECTURE_ID MATCHES 64)
|
||||||
ELSE(MSVC_C_ARCHITECTURE_ID MATCHES 64)
|
ELSE(MSVC_C_ARCHITECTURE_ID MATCHES 64)
|
||||||
SET(CMAKE_CL_64 0)
|
SET(CMAKE_CL_64 0)
|
||||||
ENDIF(MSVC_C_ARCHITECTURE_ID MATCHES 64)
|
ENDIF(MSVC_C_ARCHITECTURE_ID MATCHES 64)
|
||||||
IF(CMAKE_FORCE_WIN64)
|
IF(CMAKE_FORCE_WIN64 OR CMAKE_FORCE_IA64)
|
||||||
SET(CMAKE_CL_64 1)
|
SET(CMAKE_CL_64 1)
|
||||||
ENDIF(CMAKE_FORCE_WIN64)
|
ENDIF(CMAKE_FORCE_WIN64 OR CMAKE_FORCE_IA64)
|
||||||
|
|
||||||
IF("${MSVC_VERSION}" GREATER 1599)
|
IF("${MSVC_VERSION}" GREATER 1599)
|
||||||
SET(MSVC_INCREMENTAL_DEFAULT ON)
|
SET(MSVC_INCREMENTAL_DEFAULT ON)
|
||||||
|
|
|
@ -308,6 +308,8 @@ IF (WIN32)
|
||||||
cmGlobalVisualStudio8Win64Generator.h
|
cmGlobalVisualStudio8Win64Generator.h
|
||||||
cmGlobalVisualStudio9Win64Generator.cxx
|
cmGlobalVisualStudio9Win64Generator.cxx
|
||||||
cmGlobalVisualStudio9Win64Generator.h
|
cmGlobalVisualStudio9Win64Generator.h
|
||||||
|
cmGlobalVisualStudio9IA64Generator.cxx
|
||||||
|
cmGlobalVisualStudio9IA64Generator.h
|
||||||
cmVisualStudioGeneratorOptions.h
|
cmVisualStudioGeneratorOptions.h
|
||||||
cmVisualStudioGeneratorOptions.cxx
|
cmVisualStudioGeneratorOptions.cxx
|
||||||
cmVisualStudio10TargetGenerator.h
|
cmVisualStudio10TargetGenerator.h
|
||||||
|
@ -318,6 +320,8 @@ IF (WIN32)
|
||||||
cmGlobalVisualStudio10Generator.cxx
|
cmGlobalVisualStudio10Generator.cxx
|
||||||
cmGlobalVisualStudio10Win64Generator.h
|
cmGlobalVisualStudio10Win64Generator.h
|
||||||
cmGlobalVisualStudio10Win64Generator.cxx
|
cmGlobalVisualStudio10Win64Generator.cxx
|
||||||
|
cmGlobalVisualStudio10IA64Generator.h
|
||||||
|
cmGlobalVisualStudio10IA64Generator.cxx
|
||||||
cmGlobalVisualStudioGenerator.cxx
|
cmGlobalVisualStudioGenerator.cxx
|
||||||
cmGlobalVisualStudioGenerator.h
|
cmGlobalVisualStudioGenerator.h
|
||||||
cmGlobalWatcomWMakeGenerator.cxx
|
cmGlobalWatcomWMakeGenerator.cxx
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
/*============================================================================
|
||||||
|
CMake - Cross Platform Makefile Generator
|
||||||
|
Copyright 2000-2009 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 "cmGlobalVisualStudio10IA64Generator.h"
|
||||||
|
#include "cmMakefile.h"
|
||||||
|
#include "cmake.h"
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
cmGlobalVisualStudio10IA64Generator::cmGlobalVisualStudio10IA64Generator()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
void cmGlobalVisualStudio10IA64Generator
|
||||||
|
::GetDocumentation(cmDocumentationEntry& entry) const
|
||||||
|
{
|
||||||
|
entry.Name = this->GetName();
|
||||||
|
entry.Brief = "Generates Visual Studio 10 Itanium project files.";
|
||||||
|
entry.Full = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
void cmGlobalVisualStudio10IA64Generator
|
||||||
|
::AddPlatformDefinitions(cmMakefile* mf)
|
||||||
|
{
|
||||||
|
this->cmGlobalVisualStudio10Generator::AddPlatformDefinitions(mf);
|
||||||
|
mf->AddDefinition("CMAKE_FORCE_IA64", "TRUE");
|
||||||
|
mf->AddDefinition("MSVC_C_ARCHITECTURE_ID", "x64");
|
||||||
|
mf->AddDefinition("MSVC_CXX_ARCHITECTURE_ID", "x64");
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
void cmGlobalVisualStudio10IA64Generator
|
||||||
|
::EnableLanguage(std::vector<std::string> const& languages,
|
||||||
|
cmMakefile* mf, bool optional)
|
||||||
|
{
|
||||||
|
if(this->IsExpressEdition() && !this->Find64BitTools(mf))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this->cmGlobalVisualStudio10Generator
|
||||||
|
::EnableLanguage(languages, mf, optional);
|
||||||
|
}
|
|
@ -0,0 +1,40 @@
|
||||||
|
/*============================================================================
|
||||||
|
CMake - Cross Platform Makefile Generator
|
||||||
|
Copyright 2000-2009 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 cmGlobalVisualStudio10IA64Generator_h
|
||||||
|
#define cmGlobalVisualStudio10IA64Generator_h
|
||||||
|
|
||||||
|
#include "cmGlobalVisualStudio10Generator.h"
|
||||||
|
|
||||||
|
class cmGlobalVisualStudio10IA64Generator :
|
||||||
|
public cmGlobalVisualStudio10Generator
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
cmGlobalVisualStudio10IA64Generator();
|
||||||
|
static cmGlobalGenerator* New() {
|
||||||
|
return new cmGlobalVisualStudio10IA64Generator; }
|
||||||
|
|
||||||
|
///! Get the name for the generator.
|
||||||
|
virtual const char* GetName() const {
|
||||||
|
return cmGlobalVisualStudio10IA64Generator::GetActualName();}
|
||||||
|
static const char* GetActualName() {return "Visual Studio 10 IA64";}
|
||||||
|
|
||||||
|
virtual const char* GetPlatformName() const {return "Itanium";}
|
||||||
|
|
||||||
|
/** Get the documentation entry for this generator. */
|
||||||
|
virtual void GetDocumentation(cmDocumentationEntry& entry) const;
|
||||||
|
|
||||||
|
virtual void AddPlatformDefinitions(cmMakefile* mf);
|
||||||
|
|
||||||
|
virtual void EnableLanguage(std::vector<std::string>const& languages,
|
||||||
|
cmMakefile *, bool optional);
|
||||||
|
};
|
||||||
|
#endif
|
|
@ -0,0 +1,48 @@
|
||||||
|
/*============================================================================
|
||||||
|
CMake - Cross Platform Makefile Generator
|
||||||
|
Copyright 2000-2009 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 "cmGlobalVisualStudio9IA64Generator.h"
|
||||||
|
#include "cmLocalVisualStudio7Generator.h"
|
||||||
|
#include "cmMakefile.h"
|
||||||
|
|
||||||
|
|
||||||
|
cmGlobalVisualStudio9IA64Generator::cmGlobalVisualStudio9IA64Generator()
|
||||||
|
{
|
||||||
|
this->ArchitectureId = "Itanium";
|
||||||
|
}
|
||||||
|
|
||||||
|
///! Create a local generator appropriate to this Global Generator
|
||||||
|
cmLocalGenerator *cmGlobalVisualStudio9IA64Generator::CreateLocalGenerator()
|
||||||
|
{
|
||||||
|
cmLocalVisualStudio7Generator *lg = new cmLocalVisualStudio7Generator;
|
||||||
|
lg->SetVersion9();
|
||||||
|
lg->SetPlatformName(this->GetPlatformName());
|
||||||
|
lg->SetExtraFlagTable(this->GetExtraFlagTableVS8());
|
||||||
|
lg->SetGlobalGenerator(this);
|
||||||
|
return lg;
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
void cmGlobalVisualStudio9IA64Generator
|
||||||
|
::GetDocumentation(cmDocumentationEntry& entry) const
|
||||||
|
{
|
||||||
|
entry.Name = this->GetName();
|
||||||
|
entry.Brief = "Generates Visual Studio 9 2008 Itanium project files.";
|
||||||
|
entry.Full = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------------
|
||||||
|
void cmGlobalVisualStudio9IA64Generator
|
||||||
|
::AddPlatformDefinitions(cmMakefile* mf)
|
||||||
|
{
|
||||||
|
cmGlobalVisualStudio9Generator::AddPlatformDefinitions(mf);
|
||||||
|
mf->AddDefinition("CMAKE_FORCE_IA64", "TRUE");
|
||||||
|
}
|
|
@ -0,0 +1,50 @@
|
||||||
|
/*============================================================================
|
||||||
|
CMake - Cross Platform Makefile Generator
|
||||||
|
Copyright 2000-2009 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 cmGlobalVisualStudio9IA64Generator_h
|
||||||
|
#define cmGlobalVisualStudio9IA64Generator_h
|
||||||
|
|
||||||
|
#include "cmGlobalVisualStudio9Generator.h"
|
||||||
|
|
||||||
|
|
||||||
|
/** \class cmGlobalVisualStudio8IA64Generator
|
||||||
|
* \brief Write a Unix makefiles.
|
||||||
|
*
|
||||||
|
* cmGlobalVisualStudio8IA64Generator manages UNIX build process for a tree
|
||||||
|
*/
|
||||||
|
class cmGlobalVisualStudio9IA64Generator :
|
||||||
|
public cmGlobalVisualStudio9Generator
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
cmGlobalVisualStudio9IA64Generator();
|
||||||
|
static cmGlobalGenerator* New() {
|
||||||
|
return new cmGlobalVisualStudio9IA64Generator; }
|
||||||
|
|
||||||
|
///! Get the name for the generator.
|
||||||
|
virtual const char* GetName() const {
|
||||||
|
return cmGlobalVisualStudio9IA64Generator::GetActualName();}
|
||||||
|
static const char* GetActualName() {return "Visual Studio 9 2008 IA64";}
|
||||||
|
|
||||||
|
virtual const char* GetPlatformName() const {return "Itanium";}
|
||||||
|
|
||||||
|
/** Get the documentation entry for this generator. */
|
||||||
|
virtual void GetDocumentation(cmDocumentationEntry& entry) const;
|
||||||
|
|
||||||
|
///! create the correct local generator
|
||||||
|
virtual cmLocalGenerator *CreateLocalGenerator();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Try to determine system infomation such as shared library
|
||||||
|
* extension, pthreads, byte order etc.
|
||||||
|
*/
|
||||||
|
virtual void AddPlatformDefinitions(cmMakefile *);
|
||||||
|
};
|
||||||
|
#endif
|
|
@ -62,8 +62,10 @@
|
||||||
# include "cmGlobalVisualStudio71Generator.h"
|
# include "cmGlobalVisualStudio71Generator.h"
|
||||||
# include "cmGlobalVisualStudio8Generator.h"
|
# include "cmGlobalVisualStudio8Generator.h"
|
||||||
# include "cmGlobalVisualStudio9Generator.h"
|
# include "cmGlobalVisualStudio9Generator.h"
|
||||||
|
# include "cmGlobalVisualStudio9IA64Generator.h"
|
||||||
# include "cmGlobalVisualStudio9Win64Generator.h"
|
# include "cmGlobalVisualStudio9Win64Generator.h"
|
||||||
# include "cmGlobalVisualStudio10Generator.h"
|
# include "cmGlobalVisualStudio10Generator.h"
|
||||||
|
# include "cmGlobalVisualStudio10IA64Generator.h"
|
||||||
# include "cmGlobalVisualStudio10Win64Generator.h"
|
# include "cmGlobalVisualStudio10Win64Generator.h"
|
||||||
# include "cmGlobalVisualStudio8Win64Generator.h"
|
# include "cmGlobalVisualStudio8Win64Generator.h"
|
||||||
# include "cmGlobalBorlandMakefileGenerator.h"
|
# include "cmGlobalBorlandMakefileGenerator.h"
|
||||||
|
@ -2440,6 +2442,8 @@ void cmake::AddDefaultGenerators()
|
||||||
&cmGlobalVisualStudio7Generator::New;
|
&cmGlobalVisualStudio7Generator::New;
|
||||||
this->Generators[cmGlobalVisualStudio10Generator::GetActualName()] =
|
this->Generators[cmGlobalVisualStudio10Generator::GetActualName()] =
|
||||||
&cmGlobalVisualStudio10Generator::New;
|
&cmGlobalVisualStudio10Generator::New;
|
||||||
|
this->Generators[cmGlobalVisualStudio10IA64Generator::GetActualName()] =
|
||||||
|
&cmGlobalVisualStudio10IA64Generator::New;
|
||||||
this->Generators[cmGlobalVisualStudio10Win64Generator::GetActualName()] =
|
this->Generators[cmGlobalVisualStudio10Win64Generator::GetActualName()] =
|
||||||
&cmGlobalVisualStudio10Win64Generator::New;
|
&cmGlobalVisualStudio10Win64Generator::New;
|
||||||
this->Generators[cmGlobalVisualStudio71Generator::GetActualName()] =
|
this->Generators[cmGlobalVisualStudio71Generator::GetActualName()] =
|
||||||
|
@ -2448,6 +2452,8 @@ void cmake::AddDefaultGenerators()
|
||||||
&cmGlobalVisualStudio8Generator::New;
|
&cmGlobalVisualStudio8Generator::New;
|
||||||
this->Generators[cmGlobalVisualStudio9Generator::GetActualName()] =
|
this->Generators[cmGlobalVisualStudio9Generator::GetActualName()] =
|
||||||
&cmGlobalVisualStudio9Generator::New;
|
&cmGlobalVisualStudio9Generator::New;
|
||||||
|
this->Generators[cmGlobalVisualStudio9IA64Generator::GetActualName()] =
|
||||||
|
&cmGlobalVisualStudio9IA64Generator::New;
|
||||||
this->Generators[cmGlobalVisualStudio9Win64Generator::GetActualName()] =
|
this->Generators[cmGlobalVisualStudio9Win64Generator::GetActualName()] =
|
||||||
&cmGlobalVisualStudio9Win64Generator::New;
|
&cmGlobalVisualStudio9Win64Generator::New;
|
||||||
this->Generators[cmGlobalVisualStudio8Win64Generator::GetActualName()] =
|
this->Generators[cmGlobalVisualStudio8Win64Generator::GetActualName()] =
|
||||||
|
|
Loading…
Reference in New Issue