rbutilqt: Switch to a Qt API to get macOS version number, get system architecture using a compiler macro

rockbox-gerrit-noreply--- via rockbox-cvs <[email protected]> Mon, 29 Jun 2026 16:55:52 -0400
Newsgroups gmane.comp.systems.archos.rockbox.cvs
Message-ID <[email protected]>
commit dcc997e4e414cc03596eec6435bd8b2760c3db8f
Author: Vencislav Atanasov <[email protected]>
Date:   Mon Jun 29 22:05:39 2026 +0300

    rbutilqt: Switch to a Qt API to get macOS version number, get system architecture using a compiler macro
    
    This removes usage of the deprecated macOS Gestalt() API (2/2)
    
    Co-authored-by: ChatGPT (GPT-5.3 Mini) <[email protected]>
    Change-Id: Id10386285469c06f082a7dcdcc3284b97519b10a

diff --git a/utils/rbutilqt/base/system.cpp b/utils/rbutilqt/base/system.cpp
index 1b787f1915..7bd4f5006c 100644
--- a/utils/rbutilqt/base/system.cpp
+++ b/utils/rbutilqt/base/system.cpp
@@ -192,33 +192,22 @@ QString System::osVersionString(void)
         result = QString("(Error when retrieving system information)");
     }
 #if defined(Q_OS_MACOS)
-    SInt32 major;
-    SInt32 minor;
-    SInt32 bugfix;
-    Gestalt(gestaltSystemVersionMajor, &major);
-    Gestalt(gestaltSystemVersionMinor, &minor);
-    Gestalt(gestaltSystemVersionBugFix, &bugfix);
-
-    result += QString("<br/>OS X %1.%2.%3 ").arg(major).arg(minor).arg(bugfix);
-    // 1: 86k, 2: ppc, 10: i386
-    SInt32 arch;
-    Gestalt(gestaltSysArchitecture, &arch);
-    switch(arch) {
-        case 1:
-            result.append("(86k)");
-            break;
-        case 2:
-            result.append("(ppc)");
-            break;
-        case 10:
-            result.append("(x86)");
-            break;
-        default:
-            result.append("(unknown)");
-            break;
-    }
-#endif
+    auto ver = QOperatingSystemVersion::current();
+
+    result += QString("<br/>macOS %1.%2.%3")
+        .arg(ver.majorVersion())
+        .arg(ver.minorVersion())
+        .arg(ver.microVersion());
+
+#if defined(__arm64__)
+    result += " (arm64)";
+#elif defined(__x86_64__)
+    result += " (x86_64)";
+#else
+    result += " (unknown)";
 #endif
+#endif /* defined(Q_OS_MACOS) */
+#endif /* defined(Q_OS_LINUX) || defined(Q_OS_MACOS) */
     result += QString("<br/>Qt version %1").arg(qVersion());
     return result;
 }
-- 
rockbox-cvs mailing list
[email protected]
https://lists.haxx.se/mailman/listinfo/rockbox-cvs