https://git.reactos.org/?p=reactos.git;a=commitdiff;h=995e4c829ad16ab58f1fdb116597eec6c9c5c613

commit 995e4c829ad16ab58f1fdb116597eec6c9c5c613
Author:     Timo Kreuzer <timo.kreu...@reactos.org>
AuthorDate: Sun Dec 15 10:23:50 2024 +0200
Commit:     Timo Kreuzer <timo.kreu...@reactos.org>
CommitDate: Wed Jan 15 08:29:53 2025 +0200

    [WIDL] Properly pass architecture flag instead of modifying the code
    
    This reverts commit 73c776c744f26b294a5e6bc7e1fc11b374b05c17 "[WIDL] Fix 
non-x86 builds".
---
 CMakeLists.txt               |  4 ++++
 sdk/cmake/widl-support.cmake |  6 +++---
 sdk/tools/widl/widl.c        | 11 +++++------
 3 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 13916a9362a..38f70b17f63 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -140,6 +140,10 @@ if(NOT CMAKE_CROSSCOMPILING)
             add_definitions(/D_X86_ /D__i386__ /DWIN32 /D_WINDOWS)
         elseif(ARCH STREQUAL "amd64")
             add_definitions(-D_AMD64_ -D__x86_64__ /DWIN32 -D_WINDOWS)
+        elseif(ARCH STREQUAL "arm")
+            add_definitions(-D__arm__)
+        elseif(ARCH STREQUAL "arm64")
+            add_definitions(-D__aarch64__)
         endif()
         if(MSVC_VERSION GREATER 1699)
             add_definitions(/D_ALLOW_KEYWORD_MACROS)
diff --git a/sdk/cmake/widl-support.cmake b/sdk/cmake/widl-support.cmake
index a8e926614a0..1b291dfa5b3 100644
--- a/sdk/cmake/widl-support.cmake
+++ b/sdk/cmake/widl-support.cmake
@@ -1,11 +1,11 @@
 
 #idl files support
 if(ARCH STREQUAL "i386")
-    set(IDL_FLAGS -m32 --win32)
+    set(IDL_FLAGS -m32 --win32 -b i386-x-y)
 elseif(ARCH STREQUAL "amd64")
-    set(IDL_FLAGS -m64 --win64)
+    set(IDL_FLAGS -m64 --win64 -b amd64-x-y)
 else()
-    set(IDL_FLAGS "")
+    set(IDL_FLAGS -b ${ARCH}-x-y)
 endif()
 
 function(add_typelib)
diff --git a/sdk/tools/widl/widl.c b/sdk/tools/widl/widl.c
index ec1e61e22a8..77d4b7750a9 100644
--- a/sdk/tools/widl/widl.c
+++ b/sdk/tools/widl/widl.c
@@ -92,16 +92,15 @@ static const char usage[] =
 static const char version_string[] = "Wine IDL Compiler version " 
PACKAGE_VERSION "\n"
                        "Copyright 2002 Ove Kaaven\n";
 
-// __REACTOS__!! We must use TARGET_ macros here!
-#ifdef TARGET_i386
+#ifdef __i386__
 enum target_cpu target_cpu = CPU_x86;
-#elif defined(TARGET_amd64)
+#elif defined(__x86_64__)
 enum target_cpu target_cpu = CPU_x86_64;
-#elif defined(TARGET_ppc)
+#elif defined(__powerpc__)
 enum target_cpu target_cpu = CPU_POWERPC;
-#elif defined(TARGET_arm)
+#elif defined(__arm__)
 enum target_cpu target_cpu = CPU_ARM;
-#elif defined(TARGET_arm64)
+#elif defined(__aarch64__)
 enum target_cpu target_cpu = CPU_ARM64;
 #else
 #error Unsupported CPU

Reply via email to