Skip to content

466497 Update systeminformation_p.h to handle ARM64 on Windows

Hernan Martinez requested to merge hmartinez/krita:aarch64_win into master

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.

Edited by Hernan Martinez

Merge request reports