Merge pull request #11577 from JosJuice/android-armeabi-v7a

Android: Fix armeabi-v7a build
This commit is contained in:
Markus Wick 2023-02-17 17:57:38 +01:00 committed by GitHub
commit b381df700c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 10 deletions

View File

@ -502,12 +502,15 @@ if(ENABLE_HEADLESS)
set(USE_DISCORD_PRESENCE 0)
endif()
# Set file offset size to 64 bits.
# Set file offset size to 64 bits. On modern Unixes, this is typically already the case. Exceptions:
#
# On modern Unixes, this is typically already the case. The lone exception is
# glibc, which may default to 32 bits. glibc allows this to be configured
# by setting _FILE_OFFSET_BITS.
if(NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
# glibc may default to 32 bits. This can be configured by setting _FILE_OFFSET_BITS=64.
#
# bionic (Android) defaults to 32 bits for 32-bit ABIs. Here too we can use _FILE_OFFSET_BITS=64,
# but only on API 25 and up. Since we're currently supporting older API levels and 32-bit Android
# isn't a build configuration we officially support, let's leave this as it is for now.
# More details: https://android.googlesource.com/platform/bionic/+/master/docs/32-bit-abi.md
if(NOT ANDROID AND NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
add_definitions(-D_FILE_OFFSET_BITS=64)
add_definitions(-D_LARGEFILE_SOURCE)
endif()

View File

@ -216,15 +216,15 @@ static u32 fmix32(u32 h)
static void bmix32(u32& h1, u32& h2, u32& k1, u32& k2, u32& c1, u32& c2)
{
k1 *= c1;
k1 = Common::RotateLeft(k1, 11);
k1 = std::rotl(k1, 11);
k1 *= c2;
h1 ^= k1;
h1 += h2;
h2 = Common::RotateLeft(h2, 17);
h2 = std::rotl(h2, 17);
k2 *= c2;
k2 = Common::RotateLeft(k2, 11);
k2 = std::rotl(k2, 11);
k2 *= c1;
h2 ^= k2;
h2 += h1;

View File

@ -780,7 +780,7 @@ std::pair<VkImage, VmaAllocation> VKStagingTexture::CreateLinearImage(StagingTex
if (res != VK_SUCCESS)
{
LOG_VULKAN_ERROR(res, "Linear images are not supported for the staging texture: ");
return std::make_pair(VK_NULL_HANDLE, VK_NULL_HANDLE);
return std::make_pair<VkImage, VmaAllocation>(VK_NULL_HANDLE, VK_NULL_HANDLE);
}
VmaAllocationCreateInfo alloc_create_info = {};
@ -799,7 +799,7 @@ std::pair<VkImage, VmaAllocation> VKStagingTexture::CreateLinearImage(StagingTex
if (res != VK_SUCCESS)
{
LOG_VULKAN_ERROR(res, "vmaCreateImage failed: ");
return std::make_pair(VK_NULL_HANDLE, VK_NULL_HANDLE);
return std::make_pair<VkImage, VmaAllocation>(VK_NULL_HANDLE, VK_NULL_HANDLE);
}
return std::make_pair(image, alloc);
}