diff --git a/gcc_secure.spec b/gcc_secure.spec index f76a4f99e9bab4155f95fa31e1326c59cc397c21..16de4b53a3bc5f8264f66786621800c0c83f5880 100644 --- a/gcc_secure.spec +++ b/gcc_secure.spec @@ -1,39 +1,29 @@ Name: gcc_secure -Summary: Build with gcov -License: GPL +Summary: Enforcing secure compile options for abuild +License: NA Group: System/Management Version: 1.0 -Release: 0.10 +Release: 0.11 BuildRoot: %{_tmppath}/%{name}-%{version} -#Source: %{name}-%{version}.tar.bz2 BuildRequires: util-linux coreutils -BuildRequires: -custom_build_tool-nocheck -BuildRequires: -obs-env -BuildRequires: -gcc_secure -BuildRequires: -custom_build_tool-sign -BuildRequires: -bep-env - Requires: util-linux rpm grep binutils gcc coreutils rpm-build -#expect grep sudo kernel-default kernel-default-base openssh + %description -Build with gcov +Enforcing secure compile option for abuild %prep -#%setup -cT %install -mkdir -p %{buildroot}/opt/needgcov - %pre %post -echo -e '*cc1_options:\n+ %{!D__KERNEL__:%{!nostdlib:%{!nodefaultlibs:%{!fno-stack-protector:%{!fstack-protector-all:-fstack-protector-strong}}}}}' >/tmp/gcc-specs-fs-cc1 +echo -e '*cc1_options:\n+ %{!D__KERNEL__:%{!nostdlib:%{!nodefaultlibs:%{!fno-stack-protector:%{!fstack-protector-all:-fstack-protector-strong}}}}}' >/opt/gcc-specs-fs-cc1 -echo -e '*cc1_options:\n+ %{!r:%{!D__KERNEL__:%{!pie:%{!fpic:%{!fPIC:%{!fpie:%{!fPIE:%{!fno-pic:%{!fno-PIC:%{!fno-pie:%{!fno-PIE:%{!shared:%{!static:%{!nostdlib:%{!nostartfiles:-fPIE}}}}}}}}}}}}}}}' >/tmp/gcc-specs-pie-cc1 +echo -e '*cc1_options:\n+ %{!r:%{!D__KERNEL__:%{!pie:%{!fpic:%{!fPIC:%{!fpie:%{!fPIE:%{!fno-pic:%{!fno-PIC:%{!fno-pie:%{!fno-PIE:%{!shared:%{!static:%{!nostdlib:%{!nostartfiles:-fPIE}}}}}}}}}}}}}}}' >/opt/gcc-specs-pie-cc1 -echo -e '*self_spec:\n+ %{!D__KERNEL__:%{!pie:%{!A:%{!fno-pie:%{!fno-PIE:%{!fno-pic:%{!fno-PIC:%{!shared:%{!static:%{!r:%{!nostdlib:%{!nostartfiles:-pie}}}}}}}}}}}}' >/tmp/gcc-specs-pie-ld +echo -e '*self_spec:\n+ %{!D__KERNEL__:%{!pie:%{!A:%{!fno-pie:%{!fno-PIE:%{!fno-pic:%{!fno-PIC:%{!shared:%{!static:%{!r:%{!nostdlib:%{!nostartfiles:-pie}}}}}}}}}}}}' >/opt/gcc-specs-pie-ld old_gcc=/usr/bin/gcc mv $old_gcc $old_gcc"_old" @@ -68,9 +58,9 @@ if ! cat /.build.command | egrep "\$gcc_secure_exclude" &>/dev/null; then if [[ x\$rpm_name = "xglibc" ]] || [[ x\$rpm_name = "xcompat-glibc" ]];then #glibc supply fs define, can not add fs for glibc self - /usr/bin/gcc_old \$sec_opt "\$@" \$fs_opt --specs=/tmp/gcc-specs-pie-cc1 --specs=/tmp/gcc-specs-pie-ld + /usr/bin/gcc_old \$sec_opt "\$@" \$fs_opt --specs=/opt/gcc-specs-pie-cc1 --specs=/opt/gcc-specs-pie-ld else - /usr/bin/gcc_old \$sec_opt "\$@" \$fs_opt --specs=/tmp/gcc-specs-pie-cc1 --specs=/tmp/gcc-specs-pie-ld --specs=/tmp/gcc-specs-fs-cc1 + /usr/bin/gcc_old \$sec_opt "\$@" \$fs_opt --specs=/opt/gcc-specs-pie-cc1 --specs=/opt/gcc-specs-pie-ld --specs=/opt/gcc-specs-fs-cc1 fi else @@ -110,7 +100,7 @@ if ! cat /.build.command | egrep "\$gcc_secure_exclude" &>/dev/null; then #libtool use g++ -v for test compile env,if add Wl opt, it will make g++ -v fail $old_gplus"_old" "\$@" else - /usr/bin/g++_old \$sec_opt "\$@" \$fs_opt --specs=/tmp/gcc-specs-pie-cc1 --specs=/tmp/gcc-specs-pie-ld --specs=/tmp/gcc-specs-fs-cc1 + /usr/bin/g++_old \$sec_opt "\$@" \$fs_opt --specs=/opt/gcc-specs-pie-cc1 --specs=/opt/gcc-specs-pie-ld --specs=/opt/gcc-specs-fs-cc1 fi else $old_gplus"_old" "\$@" @@ -146,7 +136,7 @@ if ! cat /.build.command | egrep "\$gcc_secure_exclude" &>/dev/null; then fs_opt=\`cat \$configfile| grep fs_opt| awk -F: '{print \$NF}'\` fi - /usr/bin/c++_old \$sec_opt "\$@" \$fs_opt --specs=/tmp/gcc-specs-pie-cc1 --specs=/tmp/gcc-specs-pie-ld --specs=/tmp/gcc-specs-fs-cc1 + /usr/bin/c++_old \$sec_opt "\$@" \$fs_opt --specs=/opt/gcc-specs-pie-cc1 --specs=/opt/gcc-specs-pie-ld --specs=/opt/gcc-specs-fs-cc1 else $old_cpp"_old" "\$@" @@ -162,9 +152,6 @@ fi %files %defattr(-,root,root) -%dir /opt/needgcov - - %clean rm -rf $RPM_BUILD_ROOT/* @@ -172,6 +159,12 @@ rm -rf %{_tmppath}/%{name}-%{version} rm -rf $RPM_BUILD_DIR/%{name}-%{version} %changelog +* Thu Apr 28 2022 zhangchenfeng - 1.0-0.11 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC: clean spec + * Wed Dec 29 2021 wangjie - 1.0-0.10 - Type:enhancement - ID:NA