466497 Update systeminformation_p.h to handle ARM64 on Windows
The Surface Pro X and Surface Pro 9 (ARM64 variant) are awesome devices for using Krita. Krita is already being built for Windows on ARM and it's running successfully https://github.com/msys2/MINGW-packages/pull/15901 Bellow is the information report from a Krita instance running on a Windows on ARM64 device. Please advise if anything needs testing or tunning. I'll gladly help.
Fixes https://bugs.kde.org/show_bug.cgi?id=466497
OS Information
Build ABI: arm64-little_endian-llp64
Build CPU: arm64
CPU: arm64
Kernel Type: winnt
Kernel Version: 10.0.22621
Pretty Productname: Windows 11 Version 2009
Product Type: windows
Product Version: 11
OpenGL Info
Vendor: "Microsoft Corporation"
Renderer: "D3D12 (Qualcomm(R) Adreno(TM) 8cx Gen 3)"
Version: "4.1 (Compatibility Profile) Mesa 23.1.0-devel (git-fbc637faa5)"
Shading language: "4.10"
Requested format: QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CompatibilityProfile)
Current format: QSurfaceFormat(version 4.1, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples 0, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CompatibilityProfile)
Version: 4.1
Supports deprecated functions true
is OpenGL ES: false
supportsBufferMapping: true
supportsBufferInvalidation: true
forceDisableTextureBuffers: false
Test Plan
Build Krita for Windows on ARM using MSYS2's CLANGARM64 https://github.com/msys2/MINGW-packages/pull/15901
Formalities Checklist
-
I confirmed this builds. -
I confirmed Krita ran and the relevant functions work. -
I tested the relevant unit tests and can confirm they are not broken. (If not possible, don't hesitate to ask for help!) -
I made sure my commits build individually and have good descriptions as per KDE guidelines. -
I made sure my code conforms to the standards set in the HACKING file. -
I can confirm the code is licensed and attributed appropriately, and that unattributed code is mine, as per KDE Licensing Policy.
Reminder: the reviewer is responsible for merging the patch, this is to ensure at the least two people can build the patch. In case a patch breaks the build, both the author and the reviewer should be contacted to fix the build. If this is not possible, the commits shall be reverted, and a notification with the reasoning and any relevant logs shall be sent to the mailing list, kimageshop@kde.org.