[cmake] enable clang-cl and WoA builds (#348)

Compilation and CMake fixes for both Windows on ARM and clang-cl, meaning Windows can now be built on both MSVC and clang on both amd64 and aarch64.

Compiling on clang is *dramatically* faster so this should be useful for CI.

Co-authored-by: crueter <crueter@eden-emu.dev>
Co-authored-by: crueter <crueter@crueter.xyz>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/348
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: crueter <crueter@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
This commit is contained in:
lizzie
2025-09-09 20:47:49 +02:00
committed by crueter
parent 428f136a75
commit 9d2681ecc9
276 changed files with 973 additions and 1010 deletions
@@ -16,7 +16,7 @@ GestureHandler::~GestureHandler() {}
void GestureHandler::SetTouchState(std::span<TouchState> touch_state, u32 count, s64 timestamp) {
gesture = {};
gesture.active_points = std::min(MaxPoints, static_cast<std::size_t>(count));
gesture.active_points = (std::min)(MaxPoints, static_cast<std::size_t>(count));
for (size_t id = 0; id < gesture.active_points; ++id) {
const auto& [active_x, active_y] = touch_state[id].position;
@@ -25,8 +25,8 @@ TouchResource::~TouchResource() {
};
Result TouchResource::ActivateTouch() {
if (global_ref_counter == std::numeric_limits<s32>::max() - 1 ||
touch_ref_counter == std::numeric_limits<s32>::max() - 1) {
if (global_ref_counter == (std::numeric_limits<s32>::max)() - 1 ||
touch_ref_counter == (std::numeric_limits<s32>::max)() - 1) {
return ResultTouchOverflow;
}
@@ -91,8 +91,8 @@ Result TouchResource::ActivateTouch(u64 aruid) {
}
Result TouchResource::ActivateGesture() {
if (global_ref_counter == std::numeric_limits<s32>::max() - 1 ||
gesture_ref_counter == std::numeric_limits<s32>::max() - 1) {
if (global_ref_counter == (std::numeric_limits<s32>::max)() - 1 ||
gesture_ref_counter == (std::numeric_limits<s32>::max)() - 1) {
return ResultGestureOverflow;
}