Disable rwx segment linker error

An update on the linker will now refuse to create binaries with a
loadable memory segment that has read, write and execute permissions
set.
mesa creates one unless "glx-read-only-text" is enabled, however, the
documentation for "glx-read-only-text" reads:

  "Disable writable .text section on x86 (decreases performance)"

In order to avoid possible performance regressions, disable the linker
error.

Fix: https://bugzilla.redhat.com/show_bug.cgi?id=2250927
This commit is contained in:
José Expósito 2023-11-23 12:50:44 +01:00
parent 0c855a11ab
commit e2acc882a1

View file

@ -368,6 +368,19 @@ cp %{SOURCE1} docs/
# ensure standard Rust compiler flags are set # ensure standard Rust compiler flags are set
export RUSTFLAGS="%build_rustflags" export RUSTFLAGS="%build_rustflags"
# An update on the linker will now refuse to create binaries with a loadable
# memory segment that has read, write and execute permissions set.
# mesa creates one unless "glx-read-only-text" is enabled, however, the
# documentation for "glx-read-only-text" reads:
#
# "Disable writable .text section on x86 (decreases performance)"
#
# In order to avoid possible performance regressions, disable the linker error:
# https://bugzilla.redhat.com/show_bug.cgi?id=2250927
%ifarch %{ix86}
LDFLAGS=-Wl,--no-error-rwx-segments
%endif
# We've gotten a report that enabling LTO for mesa breaks some games. See # We've gotten a report that enabling LTO for mesa breaks some games. See
# https://bugzilla.redhat.com/show_bug.cgi?id=1862771 for details. # https://bugzilla.redhat.com/show_bug.cgi?id=1862771 for details.
# Disable LTO for now # Disable LTO for now