PhysX: Skip the packing check on 32-bit x86 with GCC
PhysX checks that the application has not set the pack value below 8 by
asserting that a long long follows a char at offset 8 in a struct. On
32-bit x86 the System V ABI aligns 8 byte types in structs to 4 bytes,
so the offset is 4 without any packing having been changed, and since
the assertion is in PxPreprocessor.h, it fails in every translation
unit of a GCC build for i686, as the Yocto builds for core2-32 do.
PhysX already skips the check for clang there; GCC lays the struct out
the same way, and -malign-double, which would make it pass, changes the
ABI.
The PhysX 4.1 copy had the check removed altogether, which the update
to PhysX 5 did not carry over. Skip it for both compilers on 32-bit x86
only, as patch 0020, so that every other target keeps it.
Amends 7533abcc02b7f9bd7953203c489ee86d55e8c909
Task-number: QTBUG-151314
Assisted-by: Claude Code
Change-Id: Ie22e3982e7281621e1ec4846778be8a4d7801af0
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>