aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src
diff options
context:
space:
mode:
authorAlexander Karatarakis <alkarata@microsoft.com>2017-05-04 15:19:22 -0700
committerAlexander Karatarakis <alkarata@microsoft.com>2017-05-04 15:19:22 -0700
commit05b47002ebbf99561476564cb9dfe1869cb79c7c (patch)
treed087bbd7cf5ee058f56f9ab93c0e89835216f5ab /toolsrc/src
parent7bdf189a921fdee47044e907a3ff48ce8c880fe2 (diff)
downloadvcpkg-05b47002ebbf99561476564cb9dfe1869cb79c7c.tar.gz
vcpkg-05b47002ebbf99561476564cb9dfe1869cb79c7c.zip
Introduce Strings::case_insensitive_ascii_compare()
Diffstat (limited to 'toolsrc/src')
-rw-r--r--toolsrc/src/PostBuildLint.cpp3
-rw-r--r--toolsrc/src/commands_install.cpp3
-rw-r--r--toolsrc/src/vcpkg_Strings.cpp5
-rw-r--r--toolsrc/src/vcpkg_System.cpp10
4 files changed, 14 insertions, 7 deletions
diff --git a/toolsrc/src/PostBuildLint.cpp b/toolsrc/src/PostBuildLint.cpp
index befbf1e45..294645e82 100644
--- a/toolsrc/src/PostBuildLint.cpp
+++ b/toolsrc/src/PostBuildLint.cpp
@@ -700,7 +700,8 @@ namespace vcpkg::PostBuildLint
std::vector<fs::path> misplaced_files = fs.get_files_non_recursive(dir);
Util::unstable_keep_if(misplaced_files, [&fs](const fs::path& path) {
const std::string filename = path.filename().generic_string();
- if (_stricmp(filename.c_str(), "CONTROL") == 0 || _stricmp(filename.c_str(), "BUILD_INFO") == 0)
+ if (Strings::case_insensitive_ascii_compare(filename.c_str(), "CONTROL") == 0 ||
+ Strings::case_insensitive_ascii_compare(filename.c_str(), "BUILD_INFO") == 0)
return false;
return !fs.is_directory(path);
});
diff --git a/toolsrc/src/commands_install.cpp b/toolsrc/src/commands_install.cpp
index 2260b067e..bebe6a3a2 100644
--- a/toolsrc/src/commands_install.cpp
+++ b/toolsrc/src/commands_install.cpp
@@ -69,7 +69,8 @@ namespace vcpkg::Commands::Install
const std::string filename = file.filename().generic_string();
if (fs::is_regular_file(status) &&
- (_stricmp(filename.c_str(), "CONTROL") == 0 || _stricmp(filename.c_str(), "BUILD_INFO") == 0))
+ (Strings::case_insensitive_ascii_compare(filename.c_str(), "CONTROL") == 0 ||
+ Strings::case_insensitive_ascii_compare(filename.c_str(), "BUILD_INFO") == 0))
{
// Do not copy the control file
continue;
diff --git a/toolsrc/src/vcpkg_Strings.cpp b/toolsrc/src/vcpkg_Strings.cpp
index 0d7fbe804..9ba9eb700 100644
--- a/toolsrc/src/vcpkg_Strings.cpp
+++ b/toolsrc/src/vcpkg_Strings.cpp
@@ -68,6 +68,11 @@ namespace vcpkg::Strings
[](const char a, const char b) { return details::tolower_char(a) == b; });
}
+ int case_insensitive_ascii_compare(const CStringView left, const CStringView right)
+ {
+ return _stricmp(left, right);
+ }
+
std::string ascii_to_lowercase(const std::string& input)
{
std::string output(input);
diff --git a/toolsrc/src/vcpkg_System.cpp b/toolsrc/src/vcpkg_System.cpp
index 17632f043..00f4a091b 100644
--- a/toolsrc/src/vcpkg_System.cpp
+++ b/toolsrc/src/vcpkg_System.cpp
@@ -25,11 +25,11 @@ namespace vcpkg::System
Optional<CPUArchitecture> to_cpu_architecture(CStringView arch)
{
- if (_stricmp(arch, "x86") == 0) return CPUArchitecture::X86;
- if (_stricmp(arch, "x64") == 0) return CPUArchitecture::X64;
- if (_stricmp(arch, "amd64") == 0) return CPUArchitecture::X64;
- if (_stricmp(arch, "arm") == 0) return CPUArchitecture::ARM;
- if (_stricmp(arch, "arm64") == 0) return CPUArchitecture::ARM64;
+ if (Strings::case_insensitive_ascii_compare(arch, "x86") == 0) return CPUArchitecture::X86;
+ if (Strings::case_insensitive_ascii_compare(arch, "x64") == 0) return CPUArchitecture::X64;
+ if (Strings::case_insensitive_ascii_compare(arch, "amd64") == 0) return CPUArchitecture::X64;
+ if (Strings::case_insensitive_ascii_compare(arch, "arm") == 0) return CPUArchitecture::ARM;
+ if (Strings::case_insensitive_ascii_compare(arch, "arm64") == 0) return CPUArchitecture::ARM64;
return nullopt;
}