From b297c596e95ff83f064c78d14b266bf7fabbf5fd Mon Sep 17 00:00:00 2001 From: smallmodel <15067410+smallmodel@users.noreply.github.com> Date: Fri, 15 Aug 2025 23:10:48 +0200 Subject: [PATCH] Add Windows ARM platform --- cmake/compilers/msvc.cmake | 12 +++++++----- code/qcommon/q_platform.h | 11 ++++++++--- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/cmake/compilers/msvc.cmake b/cmake/compilers/msvc.cmake index 55935403..00320049 100644 --- a/cmake/compilers/msvc.cmake +++ b/cmake/compilers/msvc.cmake @@ -6,12 +6,14 @@ endif() include(utils/arch) -enable_language(ASM_MASM) +if(ARCH MATCHES "x86" OR ARCH MATCHES "x86_64") + enable_language(ASM_MASM) -set(ASM_SOURCES - ${SOURCE_DIR}/asm/snapvector.asm - ${SOURCE_DIR}/asm/ftola.asm -) + set(ASM_SOURCES + ${SOURCE_DIR}/asm/snapvector.asm + ${SOURCE_DIR}/asm/ftola.asm + ) +endif() if(ARCH MATCHES "x86_64") list(APPEND ASM_SOURCES ${SOURCE_DIR}/asm/vm_x86_64.asm) diff --git a/code/qcommon/q_platform.h b/code/qcommon/q_platform.h index f442f844..1af21825 100644 --- a/code/qcommon/q_platform.h +++ b/code/qcommon/q_platform.h @@ -79,9 +79,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #if defined(_WIN64) || defined(__WIN64__) -#undef idx64 -#define idx64 1 - #undef QDECL #define QDECL __cdecl @@ -98,7 +95,12 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #define PATH_SEP '\\' #if defined(__x86_64__) || defined(_M_X64) +#undef idx64 +#define idx64 1 #define ARCH_STRING "x86_64" +#elif defined(__aarch64__) || defined(__ARM64__) || defined (_M_ARM64) +#define ARCH_STRING "arm64" +#define NO_VM_COMPILED #endif #define Q3_LITTLE_ENDIAN @@ -124,6 +126,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #if defined( _M_IX86 ) || defined( __i386__ ) #define ARCH_STRING "x86" +#elif defined(__arm__) || defined(_M_ARM) +#define ARCH_STRING "arm" +#define NO_VM_COMPILED #endif #define Q3_LITTLE_ENDIAN