This is an automated email from the ASF dual-hosted git repository.

leginee pushed a commit to branch win10-msvc-trunk
in repository https://gitbox.apache.org/repos/asf/openoffice.git

commit 7d7814c5569b01d1db49f7eb429e15c54a52ee04
Author: Peter Kovacs <[email protected]>
AuthorDate: Wed Aug 26 23:20:05 2026 +0200

    desktop: an x64 build advertises windows_x86_64, so accept it as a platform
    
    isValidPlatform() answers false for any token it does not recognise, and
    windows_x86_64 was never added -- the Windows entry stops at
    windows_x86.  On a 64-bit Windows build $_OS/$_ARCH expand to
    Windows/X86_64, so no native extension could ever match: an x86 .oxt is
    rejected (correctly), and one rebuilt for x64 is rejected too, because
    there is no token that describes it.  Only platform-independent
    extensions could be installed.
    
    Our own bundled extensions already stamp the right string --
    solenv/inc/settings.mk builds PLATFORMID as $(RTL_OS:l)_$(RTL_ARCH:l),
    which is windows_x86_64 here, and extension_post.mk substitutes it into
    description.xml -- so the two sides simply disagreed, and the office
    side was the one that was wrong.
    
    Mirrors the linux_x86_64 case, which pairs linux_x86_64 with
    checkOSandCPU("Linux", "X86_64") the same way.
    
    Note that the SDK still stamps windows_x86 unconditionally
    (odk/settings/platform.mk, via UNOPKG_PLATFORM=Windows in
    settings.mk, which carries no architecture); an extension built with an
    x64 SDK will therefore still declare the wrong platform.  That needs the
    SDK environment to learn about architecture and is left for separate
    work.
    
    Co-Authored-By: Claude Opus 5 <[email protected]>
    Claude-Session: https://claude.ai/code/session_012NFKmwTogkytKnrTBX5Lax
---
 main/desktop/source/deployment/misc/dp_platform.cxx | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/main/desktop/source/deployment/misc/dp_platform.cxx 
b/main/desktop/source/deployment/misc/dp_platform.cxx
index 102112e38b..b43631d755 100644
--- a/main/desktop/source/deployment/misc/dp_platform.cxx
+++ b/main/desktop/source/deployment/misc/dp_platform.cxx
@@ -33,6 +33,7 @@
 
 #define PLATFORM_ALL                "all"
 #define PLATFORM_WIN_X86            "windows_x86"
+#define PLATFORM_WIN_X86_64         "windows_x86_64"
 #define PLATFORM_LINUX_X86          "linux_x86"
 #define PLATFORM_LINUX_X86_64       "linux_x86_64"
 #define PLATFORM_KFREEBSD_X86       "kfreebsd_x86"
@@ -127,6 +128,8 @@ namespace
             ret = true;
         else if (token.equals(OUSTR(PLATFORM_WIN_X86)))
             ret = checkOSandCPU(OUSTR("Windows"), OUSTR("x86"));
+        else if (token.equals(OUSTR(PLATFORM_WIN_X86_64)))
+            ret = checkOSandCPU(OUSTR("Windows"), OUSTR("X86_64"));
         else if (token.equals(OUSTR(PLATFORM_LINUX_X86)))
             ret = checkOSandCPU(OUSTR("Linux"), OUSTR("x86"));
         else if (token.equals(OUSTR(PLATFORM_LINUX_X86_64)))

Reply via email to