Bug #121119 MySQL Shell currently fails to build on big-endian architectures
Submitted: 18 Aug 18:23
Reporter: Lena Voytek (OCA) Email Updates:
Status: Open Impact on me:
None 
Category:Shell General / Core Client Severity:S3 (Non-critical)
Version:9.7.0+ OS:Ubuntu (26.10 upcoming)
Assigned to: CPU Architecture:Other (s390x)

[18 Aug 18:23] Lena Voytek
Description:
I understand there are no officially supported big-endian architectures for MySQL Shell, however:

When attempting to build MySQL Shell for s390x, it fails with 

mysqlshdk/libs/db/mysql/binary_log.cc: error: ‘A’ was not declared in this scope
return static_cast<uint32_t>(A[0]) | (static_cast<uint32_t>(A[1]) << 8)

and

mysqlshdk/libs/db/mysql/binary_log.cc: error: unused parameter ‘ptr’ [-Werror=unused-parameter]
inline uint32_t uint4korr(const unsigned char *ptr) {

How to repeat:
Build MySQL Shell for s390x or another big-endian architecture

Suggested fix:
https://github.com/mysql/mysql-shell/pull/31
[19 Aug 17:04] OCA Admin
Contribution submitted via Github - Bug #121119 - Fix big-endian build failure due to incorrect variable name 
(*) Contribution by Lena Voytek (Github lvoytek, https://github.com/mysql/mysql-shell/pull/31#issuecomment-5341789363): I confirm the code being submitted is offered under the terms of the OCA, and that I am authorized to contribute it.

Contribution: git_patch_4307273729.txt (text/plain), 1.34 KiB.