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:
parent
8950772c1a
commit
70c239aa70
33
pypy3.9.spec
33
pypy3.9.spec
@ -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}
|
||||
|
Loading…
Reference in New Issue
Block a user