aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include
diff options
context:
space:
mode:
authorAlexander Karatarakis <alkarata@microsoft.com>2016-11-09 01:27:49 -0800
committerAlexander Karatarakis <alkarata@microsoft.com>2016-11-09 01:27:49 -0800
commit89447c156d3b99ba63499aa4b8f23b985ccd6474 (patch)
tree7d0214bdd00ed16eca1dbbd0fc394b93a9a1f725 /toolsrc/include
parenta9d732f206936c82d07f8d4b5ef0aaa461bb2073 (diff)
downloadvcpkg-89447c156d3b99ba63499aa4b8f23b985ccd6474.tar.gz
vcpkg-89447c156d3b99ba63499aa4b8f23b985ccd6474.zip
Add checks for crt linkage (currently disabled)
Diffstat (limited to 'toolsrc/include')
-rw-r--r--toolsrc/include/BuildInfo.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/toolsrc/include/BuildInfo.h b/toolsrc/include/BuildInfo.h
index 2801cf49d..870001474 100644
--- a/toolsrc/include/BuildInfo.h
+++ b/toolsrc/include/BuildInfo.h
@@ -16,6 +16,42 @@ namespace vcpkg
LinkageType linkage_type_value_of(const std::string& as_string);
+ std::string to_string(const LinkageType& build_info);
+
+ enum class ConfigurationType
+ {
+ DEBUG = 1,
+ RELEASE = 2
+ };
+
+ std::string to_string(const ConfigurationType& conf);
+
+ struct BuildType
+ {
+ static BuildType value_of(const ConfigurationType& config, const LinkageType& linkage);
+
+ static const BuildType DEBUG_STATIC;
+ static const BuildType DEBUG_DYNAMIC;
+ static const BuildType RELEASE_STATIC;
+ static const BuildType RELEASE_DYNAMIC;
+
+ const ConfigurationType config;
+ const LinkageType linkage;
+
+ BuildType() = delete;
+
+ std::string toString() const;
+
+ private:
+ BuildType(const ConfigurationType& config, const LinkageType& linkage) : config(config), linkage(linkage)
+ {
+ }
+ };
+
+ bool operator ==(const BuildType& lhs, const BuildType& rhs);
+
+ bool operator !=(const BuildType& lhs, const BuildType& rhs);
+
struct BuildInfo
{
static BuildInfo create(const std::unordered_map<std::string, std::string>& pgh);