Compile flags (include paths, preprocessor defines etc.) More...
#include <Build.h>
Public Member Functions | |
bool | disableWarnings (Span< const uint32_t > number) |
Disable a warning for MSVC. More... | |
bool | disableWarnings (Span< const StringView > name) |
Disable a warning for non-MSVC compiler. More... | |
bool | disableClangWarnings (Span< const StringView > name) |
Disable a warning for Clang. More... | |
bool | disableGCCWarnings (Span< const StringView > name) |
Disable a warning for GCC. More... | |
bool | addIncludePaths (Span< const StringView > includePaths) |
Adds paths to include paths list. More... | |
bool | addDefines (Span< const StringView > defines) |
Adds some pre-processor defines. More... | |
Static Public Member Functions | |
static Result | merge (Span< const CompileFlags * > opinions, CompileFlags &flags) |
Merges opinions about flags into target flags. More... | |
Public Attributes | |
Vector< String > | includePaths |
Include search paths list. More... | |
Vector< String > | defines |
Preprocessor defines list. More... | |
Vector< Warning > | warnings |
Warnings list. More... | |
Parameter< Optimization::Type > | optimizationLevel = Optimization::Release |
Optimization level. More... | |
Parameter< bool > | enableASAN = false |
Enable Address Sanitizer. More... | |
Parameter< bool > | enableRTTI = false |
Enable C++ Runtime Type Identification. More... | |
Parameter< bool > | enableExceptions = false |
Enable C++ Exceptions. More... | |
Parameter< bool > | enableStdCpp = false |
Enable and include C++ Standard Library. More... | |
Parameter< bool > | enableCoverage = false |
Enables code coverage instrumentation. More... | |
Friends | |
struct | LinkFlags |
Compile flags (include paths, preprocessor defines etc.)
bool SC::Build::CompileFlags::addDefines | ( | Span< const StringView > | defines | ) |
Adds some pre-processor defines.
bool SC::Build::CompileFlags::addIncludePaths | ( | Span< const StringView > | includePaths | ) |
Adds paths to include paths list.
bool SC::Build::CompileFlags::disableClangWarnings | ( | Span< const StringView > | name | ) |
Disable a warning for Clang.
bool SC::Build::CompileFlags::disableGCCWarnings | ( | Span< const StringView > | name | ) |
Disable a warning for GCC.
bool SC::Build::CompileFlags::disableWarnings | ( | Span< const StringView > | name | ) |
Disable a warning for non-MSVC compiler.
Disable a warning for MSVC.
|
static |
Merges opinions about flags into target flags.
opinions | Opinions about flags from strongest to weakest |
flags | Output flags |
Parameter<bool> SC::Build::CompileFlags::enableASAN = false |
Enable Address Sanitizer.
Parameter<bool> SC::Build::CompileFlags::enableCoverage = false |
Enables code coverage instrumentation.
Parameter<bool> SC::Build::CompileFlags::enableExceptions = false |
Enable C++ Exceptions.
Parameter<bool> SC::Build::CompileFlags::enableRTTI = false |
Enable C++ Runtime Type Identification.
Parameter<bool> SC::Build::CompileFlags::enableStdCpp = false |
Enable and include C++ Standard Library.
Parameter<Optimization::Type> SC::Build::CompileFlags::optimizationLevel = Optimization::Release |
Optimization level.