From 086c20e9a61ab55c66a305e392c4828ef4dae20c Mon Sep 17 00:00:00 2001 From: Jiri Malak Date: Fri, 1 May 2020 05:47:37 -0400 Subject: OpenWatcom: Enable 16-bit targets Up to now CMake used OpenWatcom 32-bit target tools only. This fix enable to use OpenWatcom 16-bit target tools too. If CMAKE_SYSTEM_PROCESSOR(cross-compilation) is 'I86' then OpenWatcom tools for 16-bit targets are used. --- Source/cmGlobalWatcomWMakeGenerator.cxx | 10 ++++++++++ Source/cmGlobalWatcomWMakeGenerator.h | 3 +++ 2 files changed, 13 insertions(+) diff --git a/Source/cmGlobalWatcomWMakeGenerator.cxx b/Source/cmGlobalWatcomWMakeGenerator.cxx index 07e0793..d6a7afa 100644 --- a/Source/cmGlobalWatcomWMakeGenerator.cxx +++ b/Source/cmGlobalWatcomWMakeGenerator.cxx @@ -44,6 +44,16 @@ void cmGlobalWatcomWMakeGenerator::EnableLanguage( this->cmGlobalUnixMakefileGenerator3::EnableLanguage(l, mf, optional); } +bool cmGlobalWatcomWMakeGenerator::SetSystemName(std::string const& s, + cmMakefile* mf) +{ + if (mf->GetSafeDefinition("CMAKE_SYSTEM_PROCESSOR") == "I86") { + mf->AddDefinition("CMAKE_GENERATOR_CC", "wcl"); + mf->AddDefinition("CMAKE_GENERATOR_CXX", "wcl"); + } + return this->cmGlobalUnixMakefileGenerator3::SetSystemName(s, mf); +} + void cmGlobalWatcomWMakeGenerator::GetDocumentation( cmDocumentationEntry& entry) { diff --git a/Source/cmGlobalWatcomWMakeGenerator.h b/Source/cmGlobalWatcomWMakeGenerator.h index c0daf8a..c47127f 100644 --- a/Source/cmGlobalWatcomWMakeGenerator.h +++ b/Source/cmGlobalWatcomWMakeGenerator.h @@ -41,6 +41,9 @@ public: /** Get the documentation entry for this generator. */ static void GetDocumentation(cmDocumentationEntry& entry); + /** Tell the generator about the target system. */ + bool SetSystemName(std::string const& s, cmMakefile* mf) override; + /** * Try to determine system information such as shared library * extension, pthreads, byte order etc. -- cgit v0.12