diff options
author | Florian Maushart <FloriansGit@online.ms> | 2018-04-14 20:50:19 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2018-05-25 13:42:20 (GMT) |
commit | 1ab3881ec9e809ac5f6cad5cd84048310b8683e2 (patch) | |
tree | 2b5c7c5a9ad2e38a584de50b5f019056883c3877 /Source/cmGlobalWatcomWMakeGenerator.cxx | |
parent | dfc692342831186053bd385605c8a21239e2e77d (diff) | |
download | CMake-1ab3881ec9e809ac5f6cad5cd84048310b8683e2.zip CMake-1ab3881ec9e809ac5f6cad5cd84048310b8683e2.tar.gz CMake-1ab3881ec9e809ac5f6cad5cd84048310b8683e2.tar.bz2 |
cmake: Add options for parallel builds to --build mode
While we already support `cmake --build . -- -j`, the options after `--`
are specific to the native build tool. Add new options `--parallel
[<N>]` and `-j [<N>]` to abstract this and map to the proper option
for the native build tool.
Diffstat (limited to 'Source/cmGlobalWatcomWMakeGenerator.cxx')
-rw-r--r-- | Source/cmGlobalWatcomWMakeGenerator.cxx | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Source/cmGlobalWatcomWMakeGenerator.cxx b/Source/cmGlobalWatcomWMakeGenerator.cxx index 94cdb38..558ef15 100644 --- a/Source/cmGlobalWatcomWMakeGenerator.cxx +++ b/Source/cmGlobalWatcomWMakeGenerator.cxx @@ -7,6 +7,8 @@ #include "cmState.h" #include "cmake.h" +#include <ostream> + cmGlobalWatcomWMakeGenerator::cmGlobalWatcomWMakeGenerator(cmake* cm) : cmGlobalUnixMakefileGenerator3(cm) { @@ -47,3 +49,31 @@ void cmGlobalWatcomWMakeGenerator::GetDocumentation( entry.Name = cmGlobalWatcomWMakeGenerator::GetActualName(); entry.Brief = "Generates Watcom WMake makefiles."; } + +void cmGlobalWatcomWMakeGenerator::GenerateBuildCommand( + std::vector<std::string>& makeCommand, const std::string& makeProgram, + const std::string& projectName, const std::string& projectDir, + const std::string& targetName, const std::string& config, bool fast, + int /*jobs*/, bool verbose, std::vector<std::string> const& makeOptions) +{ + this->cmGlobalUnixMakefileGenerator3::GenerateBuildCommand( + makeCommand, makeProgram, projectName, projectDir, targetName, config, + fast, cmake::NO_BUILD_PARALLEL_LEVEL, verbose, makeOptions); +} + +void cmGlobalWatcomWMakeGenerator::PrintBuildCommandAdvice(std::ostream& os, + int jobs) const +{ + if (jobs != cmake::NO_BUILD_PARALLEL_LEVEL) { + // wmake does not support parallel build level + + /* clang-format off */ + os << + "Warning: Watcom's WMake does not support parallel builds. " + "Ignoring parallel build command line option.\n"; + /* clang-format on */ + } + + this->cmGlobalUnixMakefileGenerator3::PrintBuildCommandAdvice( + os, cmake::NO_BUILD_PARALLEL_LEVEL); +} |