There are two ways to build a package for aarch32 on an aarch64 machine:
either by cross compiling as normal, or by adding armv6l/armv7l to
extraPlatforms and doing a non-cross compile.
Previously, NSS failed to build with both methods: when using
extraPlatforms, things failed because NSS includes an armv8-specific
file (presumably based on the result of uname); when cross compiling,
NSS's build system expects to receive an architecture name of arm (not
armv6l or whatever), so was failing to include some arch-specific code
and failed with a linker error.
This commit fixes those things by a) always passing the arch, even when
not cross-compiling, and b) special-casing aarch32 to always pass in an
arch of arm.
They fail to build with protobuf 3.8:
In file included from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol/message.h:24,
from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol_encoder.h:23,
from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/client_session.h:24,
from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_session.h:25,
from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_plugin.cc:23:
/build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs_common/protocol_protobuf.h:32:10: fatal error: google/protobuf/wire_format_lite_inl.h: No such file or directory
32 | #include <google/protobuf/wire_format_lite_inl.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [rapid/plugin/x/CMakeFiles/mysqlx.dir/build.make:203: rapid/plugin/x/CMakeFiles/mysqlx.dir/src/xpl_plugin.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
The HTML page changed and the update script was no longer finding the latest version.
I changed it to query for the latest version using dedicated URL:
https://forum.sublimetext.com/t/fixed-download-url-for-latest-version/23763/7
Also terminated the update sooner if we detect no update available.
update-source-version handles that normally but we are cleaning the version
so that we can update both platforms at the same time.