https://bugzilla.redhat.com/show_bug.cgi?id=2085444
--- Comment #29 from xiangquan.liu(a)intel.com ---
(In reply to Miro Hrončok from comment #28)
(In reply to xiangquan.liu from comment #27)
> (In reply to Miro Hrončok from comment #26)
> > I've been asked to provide some feedback on the specfile.
> >
> >
> >
> > > %undefine _auto_set_build_flags
> > > %undefine __brp_mangle_shebangs
> >
> > This absolutely deserves an explanation in the spec file. Why is this
> > needed? For the shebangs mangling, have you considered explicit opt-out for
> > some files instead? IDeally, you want to get rid of this.
>
> I would like to explain these two lines.
> %undefine _auto_set_build_flags - To avoid additional compile options from
> rpmbuild since it may cause some compile errors for the package build.
What exact flags cause what exact errors? There is no "may cause some
compile errors". Either there are errors or there are not not.
If there are errors, either some specific flags need to be disabled/changed
with a rationale (a rationale is not "it may error" but rather "flag XY
cannot be used because the code does ABC in GHJ") or the errors need to be
fixed. Simple disabling all flags entirely does not make sense.
If there are no errors, simply disabling the flags as prevention makes no
sense.
Considering the spec file compiles stuff with %make_build I am not even sure
disabling auto_set_build_flags actually makes a difference.
I just don't understand why do we need to use the default compile/link options
as below since we have our own compile/link options. Just want to make sure it
is a must rule we need to follow?
Thanks!
$ rpmbuild --eval %set_build_flags
CFLAGS="${CFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g
-grecord-gcc-switches -pipe -Wall -Werror=format-security
-Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection}" ;
export CFLAGS ;
CXXFLAGS="${CXXFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g
-grecord-gcc-switches -pipe -Wall -Werror=format-security
-Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection}" ;
export CXXFLAGS ;
FFLAGS="${FFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g
-grecord-gcc-switches -pipe -Wall -Werror=format-security
-Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
-I/usr/lib64/gfortran/modules}" ; export FFLAGS ;
FCFLAGS="${FCFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g
-grecord-gcc-switches -pipe -Wall -Werror=format-security
-Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
-I/usr/lib64/gfortran/modules}" ; export FCFLAGS ;
LDFLAGS="${LDFLAGS:--Wl,-z,relro -Wl,--as-needed -Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld }" ; export LDFLAGS ;
LT_SYS_LIBRARY_PATH="${LT_SYS_LIBRARY_PATH:-/usr/lib64:}" ; export
LT_SYS_LIBRARY_PATH ;
CC="${CC:-gcc}" ; export CC ;
CXX="${CXX:-g++}" ; export CXX
--
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
https://bugzilla.redhat.com/show_bug.cgi?id=2085444