Initial commit.
[CMakeLuaTailorHgBridge.git] / CMakeLua / Source / cmGlobalBorlandMakefileGenerator.cxx
blobddbe2192985940a53e49c0ce611dad779fc0d599
1 /*=========================================================================
3 Program: CMake - Cross-Platform Makefile Generator
4 Module: $RCSfile: cmGlobalBorlandMakefileGenerator.cxx,v $
5 Language: C++
6 Date: $Date: 2007/10/22 16:48:39 $
7 Version: $Revision: 1.28 $
9 Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
10 See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
17 #include "cmGlobalBorlandMakefileGenerator.h"
18 #include "cmLocalUnixMakefileGenerator3.h"
19 #include "cmMakefile.h"
20 #include "cmake.h"
22 cmGlobalBorlandMakefileGenerator::cmGlobalBorlandMakefileGenerator()
24 this->EmptyRuleHackDepends = "NUL";
25 this->FindMakeProgramFile = "CMakeBorlandFindMake.cmake";
26 this->ForceUnixPaths = false;
27 this->ToolSupportsColor = true;
28 this->UseLinkScript = false;
32 void cmGlobalBorlandMakefileGenerator
33 ::EnableLanguage(std::vector<std::string>const& l,
34 cmMakefile *mf,
35 bool optional)
37 std::string outdir = this->CMakeInstance->GetStartOutputDirectory();
38 mf->AddDefinition("BORLAND", "1");
39 mf->AddDefinition("CMAKE_GENERATOR_CC", "bcc32");
40 mf->AddDefinition("CMAKE_GENERATOR_CXX", "bcc32");
41 this->cmGlobalUnixMakefileGenerator3::EnableLanguage(l, mf, optional);
44 ///! Create a local generator appropriate to this Global Generator
45 cmLocalGenerator *cmGlobalBorlandMakefileGenerator::CreateLocalGenerator()
47 cmLocalUnixMakefileGenerator3* lg = new cmLocalUnixMakefileGenerator3;
48 lg->SetIncludeDirective("!include");
49 lg->SetWindowsShell(true);
50 lg->SetDefineWindowsNULL(true);
51 lg->SetMakefileVariableSize(32);
52 lg->SetPassMakeflags(true);
53 lg->SetGlobalGenerator(this);
54 lg->SetUnixCD(false);
55 lg->SetMakeCommandEscapeTargetTwice(true);
56 lg->SetBorlandMakeCurlyHack(true);
57 return lg;
61 //----------------------------------------------------------------------------
62 void cmGlobalBorlandMakefileGenerator
63 ::GetDocumentation(cmDocumentationEntry& entry) const
65 entry.Name = this->GetName();
66 entry.Brief = "Generates Borland makefiles.";
67 entry.Full = "";