mirror of
https://github.com/reactos/CMake.git
synced 2024-12-05 02:06:34 +00:00
3b880a0741
Refactor the local generator creation API to accept a cmState::Snapshot. Adjust MakeLocalGenerator to use the 'current' snapshot in cases where there is no parent. Create the snapshot for subdirectories in cmMakefile::AddSubdirectory. This means that snapshots are now created at the point of extending the tree, as appropriate, and independently of the cmLocalGenerator and cmMakefile they represent the state for.
54 lines
2.0 KiB
C++
54 lines
2.0 KiB
C++
/*============================================================================
|
|
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 cmGlobalBorlandMakefileGenerator_h
|
|
#define cmGlobalBorlandMakefileGenerator_h
|
|
|
|
#include "cmGlobalNMakeMakefileGenerator.h"
|
|
|
|
/** \class cmGlobalBorlandMakefileGenerator
|
|
* \brief Write a Borland makefiles.
|
|
*
|
|
* cmGlobalBorlandMakefileGenerator manages nmake build process for a tree
|
|
*/
|
|
class cmGlobalBorlandMakefileGenerator : public cmGlobalUnixMakefileGenerator3
|
|
{
|
|
public:
|
|
cmGlobalBorlandMakefileGenerator(cmake* cm);
|
|
static cmGlobalGeneratorFactory* NewFactory() {
|
|
return new cmGlobalGeneratorSimpleFactory
|
|
<cmGlobalBorlandMakefileGenerator>(); }
|
|
|
|
///! Get the name for the generator.
|
|
virtual std::string GetName() const {
|
|
return cmGlobalBorlandMakefileGenerator::GetActualName();}
|
|
static std::string GetActualName() {return "Borland Makefiles";}
|
|
|
|
/** Get the documentation entry for this generator. */
|
|
static void GetDocumentation(cmDocumentationEntry& entry);
|
|
|
|
///! Create a local generator appropriate to this Global Generator
|
|
virtual cmLocalGenerator *CreateLocalGenerator(cmLocalGenerator* parent,
|
|
cmState::Snapshot snapshot);
|
|
|
|
/**
|
|
* Try to determine system information such as shared library
|
|
* extension, pthreads, byte order etc.
|
|
*/
|
|
virtual void EnableLanguage(std::vector<std::string>const& languages,
|
|
cmMakefile *, bool optional);
|
|
|
|
virtual bool AllowNotParallel() const { return false; }
|
|
virtual bool AllowDeleteOnError() const { return false; }
|
|
};
|
|
|
|
#endif
|