zstd
zstd copied to clipboard
Test playTests fails on ppc64 (openSUSE Tumbleweed)
I was trying to use cmake for building the RPM for openSUSE and the test playTests fails on ppc64. Here is the log of the test and here is the full build log, from https://build.opensuse.org/package/live_build_log/home:jaimeMF:branches:Archiving/zstd/openSUSE_Factory_PowerPC/ppc64 . The test pass on ppc64le and ppc ( https://build.opensuse.org/package/show/home:jaimeMF:branches:Archiving/zstd ).
I don't have a ppc machine, but I algo get the error using qemu.
The following log lines are suspicious :
[ 374s] test: check if binary has executable stack (#2963)
[ 374s] zstd binary has executable stack!
though why would this test fail on ppc64 only, and not ppc64le, is a mystery ...
edit : maybe the ppc64le version does not employ cmake ?
edit : maybe the
ppc64leversion does not employcmake?
In the modified RPM all are built with cmake and they all seem to run the same tests.
Basically, I've found out that on ppc64 with ELFv1 gcc doesn't emit stack notes by default. But in ELFv2 it does. See
https://patches.linaro.org/project/binutils/patch/[email protected]/
So this is likely a test issue, not a build issue.
However, it seems prudent to mark as noexecstack anways, so I've put up a PR that adds the noexecstack compiler flags that we use in make to cmake.
Thank you for the fix.