Remove the non-shadow_stack option, it has not been used in years

If desired, it can be salvaged from git history.
This commit is contained in:
Miro Hrončok 2022-02-09 13:04:46 +01:00
parent 8950772c1a
commit 70c239aa70

View File

@ -53,10 +53,6 @@ URL: http://pypy.org/
# Should we build the emacs JIT-viewing mode?
%bcond_without emacs
# Forcibly use the shadow-stack option for detecting GC roots, rather than
# relying on hacking up generated assembler with regexps:
%bcond_without shadow_stack
# Easy way to turn off the selftests:
%bcond_without selftests
@ -378,35 +374,8 @@ BuildPyPy() {
# How will we track garbage-collection roots in the generated code?
# http://pypy.readthedocs.org/en/latest/config/translation.gcrootfinder.html
%if %{with shadow_stack}
# This is the most portable option, and avoids a reliance on non-guaranteed
# behaviors within GCC's code generator: use an explicitly-maintained stack
# of root pointers:
%global gcrootfinder_options --gcrootfinder=shadowstack
export CFLAGS=$(echo "$RPM_OPT_FLAGS")
%else
# Go with the default, which is "asmgcc"
%global gcrootfinder_options %{nil}
# https://bugzilla.redhat.com/show_bug.cgi?id=588941#c18
# The generated Makefile compiles the .c files into assembler (.s), rather
# than direct to .o It then post-processes this assembler to locate
# garbage-collection roots (building .lbl.s and .gcmap files, and a
# "gcmaptable.s"). (The modified .lbl.s files have extra code injected
# within them).
# Unfortunately, the code to do this:
# pypy-1.4/pypy/translator/c/gcc/trackgcroot.py
# doesn't interract well with the results of using our standard build flags.
# For now, filter our CFLAGS of everything that could be conflicting with
# pypy. Need to check these and reenable ones that are okay later.
# Filed as https://bugzilla.redhat.com/show_bug.cgi?id=666966
export CFLAGS=$(echo "$RPM_OPT_FLAGS" | sed -e 's/-Wp,-D_FORTIFY_SOURCE=2//' -e 's/-fexceptions//' -e 's/-fstack-protector//' -e 's/--param=ssp-buffer-size=4//' -e 's/-O2//' -e 's/-fasynchronous-unwind-tables//' -e 's/-march=i686//' -e 's/-mtune=atom//')
%endif
# The generated C code leads to many thousands of warnings of the form:
# warning: variable 'l_v26003' set but not used [-Wunused-but-set-variable]
# Suppress them:
@ -429,7 +398,7 @@ BuildPyPy() {
PYPY_USESSION_DIR=$(pwd) \
PYPY_USESSION_BASENAME=$ExeName \
$INTERP ../../rpython/bin/rpython \
%{gcrootfinder_options} \
--gcrootfinder=shadowstack \
$Options \
targetpypystandalone \
--platlibdir=%{_lib}