diff --git a/sdk/identity/azure-identity/CMakeLists.txt b/sdk/identity/azure-identity/CMakeLists.txt index bbf9ee69d..740e42e19 100644 --- a/sdk/identity/azure-identity/CMakeLists.txt +++ b/sdk/identity/azure-identity/CMakeLists.txt @@ -101,7 +101,7 @@ target_include_directories( target_link_libraries(azure-identity PUBLIC Azure::azure-core) -if(WIN32) +if(WIN32 AND NOT CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") find_package(wil CONFIG REQUIRED) target_link_libraries(azure-identity PRIVATE WIL::WIL bcrypt crypt32) else() diff --git a/sdk/identity/azure-identity/src/client_certificate_credential.cpp b/sdk/identity/azure-identity/src/client_certificate_credential.cpp index 5c478be81..1599bd456 100644 --- a/sdk/identity/azure-identity/src/client_certificate_credential.cpp +++ b/sdk/identity/azure-identity/src/client_certificate_credential.cpp @@ -21,6 +21,7 @@ #if defined(AZ_PLATFORM_WINDOWS) #include +#if !defined(WINAPI_PARTITION_DESKTOP) || WINAPI_PARTITION_DESKTOP // not UWP #pragma warning(push) #pragma warning(disable : 6553) #pragma warning(disable : 6001) // Using uninitialized memory 'pNode'. @@ -29,7 +30,11 @@ #include #include #pragma warning(pop) -#else +#endif // UWP +#endif + +#if !defined(AZ_PLATFORM_WINDOWS) \ + || (defined(WINAPI_PARTITION_DESKTOP) && !WINAPI_PARTITION_DESKTOP) #include #include #include @@ -71,7 +76,7 @@ using CertificateThumbprint = std::vector; using UniquePrivateKey = Azure::Identity::_detail::UniquePrivateKey; using PrivateKey = decltype(std::declval().get()); -#if defined(AZ_PLATFORM_WINDOWS) +#if defined(AZ_PLATFORM_WINDOWS) && (!defined(WINAPI_PARTITION_DESKTOP) || WINAPI_PARTITION_DESKTOP) enum PrivateKeyType { Rsa, @@ -360,7 +365,7 @@ std::vector SignPkcs1Sha256(PrivateKey key, const uint8_t* data, void Azure::Identity::_detail::FreePrivateKeyImpl(void* pkey) { -#if defined(AZ_PLATFORM_WINDOWS) +#if defined(AZ_PLATFORM_WINDOWS) && (!defined(WINAPI_PARTITION_DESKTOP) || WINAPI_PARTITION_DESKTOP) BCryptDestroyKey(static_cast(pkey)); #else EVP_PKEY_free(static_cast(pkey)); diff --git a/sdk/identity/azure-identity/vcpkg.json b/sdk/identity/azure-identity/vcpkg.json index a8811d221..d78f57c06 100644 --- a/sdk/identity/azure-identity/vcpkg.json +++ b/sdk/identity/azure-identity/vcpkg.json @@ -9,7 +9,7 @@ }, { "name": "wil", - "platform": "windows" + "platform": "windows & !uwp" } ] } diff --git a/sdk/identity/azure-identity/vcpkg/Config.cmake.in b/sdk/identity/azure-identity/vcpkg/Config.cmake.in index ef47e86ba..0ce4475a6 100644 --- a/sdk/identity/azure-identity/vcpkg/Config.cmake.in +++ b/sdk/identity/azure-identity/vcpkg/Config.cmake.in @@ -6,7 +6,7 @@ include(CMakeFindDependencyMacro) find_dependency(azure-core-cpp) -if (WIN32) +if(WIN32 AND NOT CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") find_dependency(wil) else() find_dependency(OpenSSL) diff --git a/sdk/identity/azure-identity/vcpkg/vcpkg.json b/sdk/identity/azure-identity/vcpkg/vcpkg.json index 00cc878be..e620dd99d 100644 --- a/sdk/identity/azure-identity/vcpkg/vcpkg.json +++ b/sdk/identity/azure-identity/vcpkg/vcpkg.json @@ -22,7 +22,7 @@ }, { "name": "wil", - "platform": "windows" + "platform": "windows & !uwp" }, { "name": "vcpkg-cmake",