diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2017-12-14 14:31:16 -0800 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2017-12-14 14:31:28 -0800 |
| commit | 63a23cf0cad4da12eed69883f37c21d319461187 (patch) | |
| tree | 39ae91f7d6aa38d8265e1cc1bf356af0b48126a7 | |
| parent | 7b7e7dac3b5518a263053fcc2fd25bca5f71d031 (diff) | |
| download | vcpkg-63a23cf0cad4da12eed69883f37c21d319461187.tar.gz vcpkg-63a23cf0cad4da12eed69883f37c21d319461187.zip | |
[vcpkg] Fix regressions in WSL build.
| -rw-r--r-- | toolsrc/CMakeLists.txt | 4 | ||||
| -rw-r--r-- | toolsrc/include/vcpkg/base/optional.h | 6 | ||||
| -rw-r--r-- | toolsrc/src/vcpkg/base/chrono.cpp | 22 | ||||
| -rw-r--r-- | toolsrc/src/vcpkg/commands.upgrade.cpp (renamed from toolsrc/src/commands.upgrade.cpp) | 0 | ||||
| -rw-r--r-- | toolsrc/src/vcpkg/userconfig.cpp | 7 | ||||
| -rw-r--r-- | toolsrc/vcpkglib/vcpkglib.vcxproj | 2 | ||||
| -rw-r--r-- | toolsrc/vcpkglib/vcpkglib.vcxproj.filters | 2 |
7 files changed, 27 insertions, 16 deletions
diff --git a/toolsrc/CMakeLists.txt b/toolsrc/CMakeLists.txt index 51578e4e4..0168e2de2 100644 --- a/toolsrc/CMakeLists.txt +++ b/toolsrc/CMakeLists.txt @@ -3,10 +3,12 @@ project(vcpkg CXX) add_compile_options(-std=c++1z)
-if(CMAKE_COMPILER_IS_GNUXX)
+if(CMAKE_COMPILER_IS_GNUXX OR CMAKE_CXX_COMPILER_ID MATCHES "GNU")
set(GCC 1)
elseif(CMAKE_CXX_COMPILER_ID MATCHES "[Cc]lang")
set(CLANG 1)
+else()
+ message(FATAL_ERROR "Unknown compiler: ${CMAKE_CXX_COMPILER_ID}")
endif()
file(GLOB_RECURSE VCPKGLIB_SOURCES src/vcpkg/*.cpp)
diff --git a/toolsrc/include/vcpkg/base/optional.h b/toolsrc/include/vcpkg/base/optional.h index aa9e480fd..af2d297a6 100644 --- a/toolsrc/include/vcpkg/base/optional.h +++ b/toolsrc/include/vcpkg/base/optional.h @@ -53,10 +53,8 @@ namespace vcpkg // Constructors are intentionally implicit constexpr Optional(NullOpt) {} - Optional(const T& t) : m_base(t) {} - - template<class = std::enable_if_t<!std::is_reference<T>::value>> - Optional(T&& t) : m_base(std::move(t)) + template<class U> + Optional(U&& t) : m_base(std::forward<U>(t)) { } diff --git a/toolsrc/src/vcpkg/base/chrono.cpp b/toolsrc/src/vcpkg/base/chrono.cpp index 03c1ecce9..00f8ba3f1 100644 --- a/toolsrc/src/vcpkg/base/chrono.cpp +++ b/toolsrc/src/vcpkg/base/chrono.cpp @@ -92,14 +92,20 @@ namespace vcpkg::Chrono Optional<CTime> CTime::parse(CStringView str) { CTime ret; - auto assigned = sscanf_s(str.c_str(), - "%d-%d-%dT%d:%d:%d.", - &ret.m_tm.tm_year, - &ret.m_tm.tm_mon, - &ret.m_tm.tm_mday, - &ret.m_tm.tm_hour, - &ret.m_tm.tm_min, - &ret.m_tm.tm_sec); + auto assigned = +#if defined(_WIN32) + sscanf_s +#else + sscanf +#endif + (str.c_str(), + "%d-%d-%dT%d:%d:%d.", + &ret.m_tm.tm_year, + &ret.m_tm.tm_mon, + &ret.m_tm.tm_mday, + &ret.m_tm.tm_hour, + &ret.m_tm.tm_min, + &ret.m_tm.tm_sec); if (assigned != 6) return nullopt; if (ret.m_tm.tm_year < 1900) return nullopt; ret.m_tm.tm_year -= 1900; diff --git a/toolsrc/src/commands.upgrade.cpp b/toolsrc/src/vcpkg/commands.upgrade.cpp index d2c868870..d2c868870 100644 --- a/toolsrc/src/commands.upgrade.cpp +++ b/toolsrc/src/vcpkg/commands.upgrade.cpp diff --git a/toolsrc/src/vcpkg/userconfig.cpp b/toolsrc/src/vcpkg/userconfig.cpp index d13a46f41..906594691 100644 --- a/toolsrc/src/vcpkg/userconfig.cpp +++ b/toolsrc/src/vcpkg/userconfig.cpp @@ -5,6 +5,7 @@ #include <vcpkg/paragraphs.h> #include <vcpkg/userconfig.h> +#if defined(_WIN32) namespace { static vcpkg::Lazy<fs::path> s_localappdata; @@ -24,13 +25,14 @@ namespace }); } } +#endif namespace vcpkg { UserConfig UserConfig::try_read_data(const Files::Filesystem& fs) { UserConfig ret; - +#if defined(_WIN32) try { auto maybe_pghs = Paragraphs::get_paragraphs(fs, get_localappdata() / "vcpkg" / "config"); @@ -56,12 +58,14 @@ namespace vcpkg catch (...) { } +#endif return ret; } void UserConfig::try_write_data(Files::Filesystem& fs) const { +#if defined(_WIN32) try { std::error_code ec; @@ -79,5 +83,6 @@ namespace vcpkg catch (...) { } +#endif } } diff --git a/toolsrc/vcpkglib/vcpkglib.vcxproj b/toolsrc/vcpkglib/vcpkglib.vcxproj index 68345ca85..455891f85 100644 --- a/toolsrc/vcpkglib/vcpkglib.vcxproj +++ b/toolsrc/vcpkglib/vcpkglib.vcxproj @@ -185,7 +185,6 @@ <ClInclude Include="..\include\vcpkg\versiont.h" /> </ItemGroup> <ItemGroup> - <ClCompile Include="..\src\commands.upgrade.cpp" /> <ClCompile Include="..\src\pch.cpp"> <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader> <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader> @@ -221,6 +220,7 @@ <ClCompile Include="..\src\vcpkg\commands.owns.cpp" /> <ClCompile Include="..\src\vcpkg\commands.portsdiff.cpp" /> <ClCompile Include="..\src\vcpkg\commands.search.cpp" /> + <ClCompile Include="..\src\vcpkg\commands.upgrade.cpp" /> <ClCompile Include="..\src\vcpkg\commands.version.cpp" /> <ClCompile Include="..\src\vcpkg\dependencies.cpp" /> <ClCompile Include="..\src\vcpkg\export.cpp" /> diff --git a/toolsrc/vcpkglib/vcpkglib.vcxproj.filters b/toolsrc/vcpkglib/vcpkglib.vcxproj.filters index dfbcf0c7e..f8f517ad7 100644 --- a/toolsrc/vcpkglib/vcpkglib.vcxproj.filters +++ b/toolsrc/vcpkglib/vcpkglib.vcxproj.filters @@ -195,7 +195,7 @@ <ClCompile Include="..\src\vcpkg\userconfig.cpp"> <Filter>Source Files\vcpkg</Filter> </ClCompile> - <ClCompile Include="..\src\commands.upgrade.cpp"> + <ClCompile Include="..\src\vcpkg\commands.upgrade.cpp"> <Filter>Source Files\vcpkg</Filter> </ClCompile> </ItemGroup> |
