]> TLD Linux GIT Repositories - packages/gcc.git/blobdiff - gcc.spec
- release 5
[packages/gcc.git] / gcc.spec
index 18136301e5e4281b27af3b1e902f305f452f1635..392be42c8a7528b3d727711c972d3a7a1e86ee11 100644 (file)
--- a/gcc.spec
+++ b/gcc.spec
@@ -86,6 +86,9 @@
 %define                with_lsan_m2    1
 %define                with_tsan_m2    1
 %endif
+%ifarch aarch64
+%define                with_hwasan     1
+%endif
 %ifarch %{ix86} %{x8664} x32
 %define                with_vtv        1
 %endif
@@ -95,7 +98,7 @@
 
 # Stable is: any major_ver and minor_ver >= 1.0
 # For TLD we usually use gcc when minor_ver >= 2.0 (first bugfix release or later)
-%define                major_ver       10
+%define                major_ver       11
 %define                minor_ver       2.0
 
 Summary:       GNU Compiler Collection: the C compiler and shared files
@@ -104,19 +107,19 @@ Summary(pl.UTF-8):        Kolekcja kompilatorów GNU: kompilator C i pliki współdziel
 Summary(pt_BR.UTF-8):  Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
 Name:          gcc
 Version:       %{major_ver}.%{minor_ver}
-Release:       0.1
+Release:       5
 Epoch:         6
 License:       GPL v3+
 Group:         Development/Languages
 Source0:       https://gcc.gnu.org/pub/gcc/releases/%{name}-%{version}/%{name}-%{version}.tar.xz
-# Source0-md5: e9fd9b1789155ad09bcf3ae747596b50
+# Source0-md5: 31c86f2ced76acac66992eeedce2fce2
 Source1:       %{name}-optimize-la.pl
 # check libffi version with libffi/configure.ac
 Source3:       libffi.pc.in
 Source4:       branch.sh
 # use branch.sh to update gcc-branch.diff
 Patch100:      %{name}-branch.diff
-# Patch100-md5:        3629b023e2dbf2ab7f0b49e1bf864f21
+# Patch100-md5:        b87420dd46c41e2398444f2c06e29276
 Patch0:                %{name}-info.patch
 Patch2:                %{name}-nodebug.patch
 Patch3:                %{name}-ada-link.patch
@@ -144,13 +147,13 @@ BuildRequires:    gettext-tools >= 0.14.5
 BuildRequires: glibc-devel >= 6:2.4-1
 %if %{with multilib}
 # Formerly known as gcc(multilib)
-BuildRequires: gcc(multilib)
+BuildRequires: gcc(multilib-32)
 %ifarch %{x8664}
 %if %{with multilibx32}
 BuildRequires: gcc(multilib-x32)
 BuildRequires: glibc-devel(x32)
 %endif
-#BuildRequires:        glibc-devel(ix86)
+BuildRequires: glibc-devel(ix86)
 %endif
 %ifarch x32
 BuildRequires: gcc(multilib-64)
@@ -176,7 +179,7 @@ BuildRequires:      isl-devel >= 0.15
 BuildRequires: libmpc-devel >= 0.8.1
 BuildRequires: mpfr-devel >= 3.1.0
 %if %{with python}
-BuildRequires: python-devel
+BuildRequires: python3-devel
 BuildRequires: rpm-pythonprov
 %endif
 BuildRequires: rpmbuild(macros) >= 1.211
@@ -184,6 +187,7 @@ BuildRequires:      tar >= 1:1.22
 BuildRequires: texinfo >= 4.7
 BuildRequires: xz
 BuildRequires: zlib-devel
+BuildRequires: zstd-devel
 BuildConflicts:        pdksh < 5.2.14-50
 Requires:      binutils >= 3:2.30
 Requires:      gmp >= 4.3.2
@@ -237,7 +241,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 # receiving non constant format strings
 %define                Werror_cflags   %{nil}
 
-%define                skip_post_check_so      '.*(libasan|libcc1plugin|libcp1plugin|libgo|libitm|libxmlj|libubsan|lib-gnu-awt-xlib)\.so.*'
+%define                skip_post_check_so      '.*(libasan|libcc1plugin|libcp1plugin|libgnat-%{major_ver}|libgo|libitm|libxmlj|libubsan|lib-gnu-awt-xlib)\.so.*'
 # private symbols
 %define                _noautoreq              .*\(GLIBC_PRIVATE\)
 
@@ -943,9 +947,7 @@ Summary:    C++ standard library API documentation
 Summary(pl.UTF-8):     Dokumentacja API biblioteki standardowej C++
 License:       FDL v1.3 (mainly), GPL v3+ (doxygen generated parts)
 Group:         Documentation
-%if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
-%endif
 
 %description -n libstdc++-apidocs
 API and internal documentation for C++ standard library.
@@ -1896,6 +1898,52 @@ library.
 Ten pakiet zawiera wersję %{m2_desc} statycznej biblioteki Address
 Sanitizer.
 
+%package -n libhwasan
+Summary:       The Hardware-Assisted Address Sanitizer library
+Summary(pl.UTF-8):     Biblioteka Hardware-Assisted Address Sanitizer do kontroli adresów
+License:       BSD-like or MIT
+Group:         Libraries
+Requires:      libstdc++ = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan
+This package contains the Hardware-Assisted Address Sanitizer library
+which is used for -fsanitize=hwaddress instrumented programs.
+
+%description -n libhwasan -l pl.UTF-8
+Ten pakiet zawiera bibliotekę Hardware-Assisted Address Sanitizer,
+służącą do kontroli adresów w programach kompilowanych z opcją
+-fsanitize=hwaddress.
+
+%package -n libhwasan-devel
+Summary:       Development files for the Hardware-Assisted Address Sanitizer library
+Summary(pl.UTF-8):     Pliki programistyczne biblioteki Hardware-Assisted Address Sanitizer
+License:       BSD-like or MIT
+Group:         Development/Libraries
+Requires:      libhwasan = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan-devel
+This package contains development files for the Hardware-Assisted
+Address Sanitizer library.
+
+%description -n libhwasan-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne biblioteki Hardware-Assisted
+Address Sanitizer.
+
+%package -n libhwasan-static
+Summary:       The Hardware-Assisted Address Sanitizer static library
+Summary(pl.UTF-8):     Statyczna biblioteka Hardware-Assisted Address Sanitizer
+License:       BSD-like or MIT
+Group:         Development/Libraries
+Requires:      libhwasan-devel = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan-static
+This package contains Hardware-Assisted Address Sanitizer static
+library.
+
+%description -n libhwasan-static -l pl.UTF-8
+Ten pakiet zawiera statyczną bibliotekę Hardware-Assisted Address
+Sanitizer.
+
 %package -n liblsan
 Summary:       The Leak Sanitizer library
 Summary(pl.UTF-8):     Biblioteka Leak Sanitizer do kontroli wycieków
@@ -2620,11 +2668,30 @@ TEXCONFIG=false \
 %endif
        --with-system-zlib \
        --without-x \
+%ifarch armv6l
+       --with-arch=armv6 \
+%endif
 %ifarch armv6hl
        --with-arch=armv6 \
        --with-float=hard \
        --with-fpu=vfp \
 %endif
+%ifarch armv7l
+       --with-arch=armv7 \
+       --with-mode=thumb \
+%endif
+%ifarch armv7hl
+       --with-arch=armv7-a \
+       --with-float=hard \
+       --with-fpu=vfpv3-d16 \
+       --with-mode=thumb \
+%endif
+%ifarch armv7hnl
+       --with-arch=armv7-a \
+       --with-float=hard \
+       --with-fpu=neon-vfpv3 \
+       --with-mode=thumb \
+%endif
 %if %{with cxx}
        --enable-__cxa_atexit \
        --enable-libstdcxx-allocator=new \
@@ -2817,6 +2884,7 @@ for f in libitm.la libssp.la libssp_nonshared.la \
        %{?with_fortran:libgfortran.la %{?with_quadmath:libquadmath.la}} \
        %{?with_gomp:libgomp.la} \
        %{?with_Xsan:libasan.la libubsan.la} \
+       %{?with_hwasan:libhwasan.la} \
        %{?with_lsan_m0:liblsan.la} \
        %{?with_tsan_m0:libtsan.la} \
        %{?with_atomic:libatomic.la} \
@@ -2880,11 +2948,10 @@ for LIBDIR in %{_libdir} %{?with_multilib:%{_libdir32}} %{?with_multilib2:%{_lib
          < libstdc++-v3/python/hook.in \
          > $LIBPATH/$(basename $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libstdc++.so.*.*.*)-gdb.py
 done
-install -d $RPM_BUILD_ROOT%{py_sitescriptdir}
-%{__mv} $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_postclean
+install -d $RPM_BUILD_ROOT%{py3_sitescriptdir}
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx $RPM_BUILD_ROOT%{py3_sitescriptdir}
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
+%py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
 %else
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx
 %endif
@@ -3020,6 +3087,8 @@ rm -rf $RPM_BUILD_ROOT
 %postun        -p /sbin/ldconfig -n libasan-multilib-32
 %post  -p /sbin/ldconfig -n libasan-multilib-%{multilib2}
 %postun        -p /sbin/ldconfig -n libasan-multilib-%{multilib2}
+%post  -p /sbin/ldconfig -n libhwasan
+%postun        -p /sbin/ldconfig -n libhwasan
 %post  -p /sbin/ldconfig -n liblsan
 %postun        -p /sbin/ldconfig -n liblsan
 %post  -p /sbin/ldconfig -n liblsan-multilib-%{multilib2}
@@ -3127,6 +3196,9 @@ rm -rf $RPM_BUILD_ROOT
 %ifarch %{ix86} %{x8664} x32
 %{gcclibdir}/include/adxintrin.h
 %{gcclibdir}/include/ammintrin.h
+%{gcclibdir}/include/amxbf16intrin.h
+%{gcclibdir}/include/amxint8intrin.h
+%{gcclibdir}/include/amxtileintrin.h 
 %{gcclibdir}/include/avx2intrin.h
 %{gcclibdir}/include/avx5124fmapsintrin.h
 %{gcclibdir}/include/avx5124vnniwintrin.h
@@ -3155,6 +3227,7 @@ rm -rf $RPM_BUILD_ROOT
 %{gcclibdir}/include/avx512vpopcntdqintrin.h
 %{gcclibdir}/include/avx512vpopcntdqvlintrin.h
 %{gcclibdir}/include/avxintrin.h
+%{gcclibdir}/include/avxvnniintrin.h
 %{gcclibdir}/include/bmi2intrin.h
 %{gcclibdir}/include/bmiintrin.h
 %{gcclibdir}/include/bmmintrin.h
@@ -3173,14 +3246,17 @@ rm -rf $RPM_BUILD_ROOT
 %{gcclibdir}/include/fmaintrin.h
 %{gcclibdir}/include/fxsrintrin.h
 %{gcclibdir}/include/gfniintrin.h
+%{gcclibdir}/include/hresetintrin.h
 %{gcclibdir}/include/ia32intrin.h
 %{gcclibdir}/include/immintrin.h
+%{gcclibdir}/include/keylockerintrin.h
 %{gcclibdir}/include/lwpintrin.h
 %{gcclibdir}/include/lzcntintrin.h
 %{gcclibdir}/include/mm3dnow.h
 %{gcclibdir}/include/mmintrin.h
 %{gcclibdir}/include/mm_malloc.h
 %{gcclibdir}/include/movdirintrin.h
+%{gcclibdir}/include/mwaitintrin.h
 %{gcclibdir}/include/mwaitxintrin.h
 %{gcclibdir}/include/nmmintrin.h
 %{gcclibdir}/include/pconfigintrin.h
@@ -3190,16 +3266,20 @@ rm -rf $RPM_BUILD_ROOT
 %{gcclibdir}/include/prfchwintrin.h
 %{gcclibdir}/include/rdseedintrin.h
 %{gcclibdir}/include/rtmintrin.h
+%{gcclibdir}/include/serializeintrin.h
 %{gcclibdir}/include/sgxintrin.h
 %{gcclibdir}/include/shaintrin.h
 %{gcclibdir}/include/smmintrin.h
 %{gcclibdir}/include/tbmintrin.h
 %{gcclibdir}/include/tmmintrin.h
+%{gcclibdir}/include/tsxldtrkintrin.h
+%{gcclibdir}/include/uintrintrin.h
 %{gcclibdir}/include/vaesintrin.h
 %{gcclibdir}/include/vpclmulqdqintrin.h
 %{gcclibdir}/include/waitpkgintrin.h
 %{gcclibdir}/include/wbnoinvdintrin.h
 %{gcclibdir}/include/wmmintrin.h
+%{gcclibdir}/include/x86gprintrin.h
 %{gcclibdir}/include/x86intrin.h
 %{gcclibdir}/include/xmmintrin.h
 %{gcclibdir}/include/xopintrin.h
@@ -3509,12 +3589,13 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with cxx}
 %files c++
 %defattr(644,root,root,755)
-%doc gcc/cp/{ChangeLog,NEWS}
+%doc gcc/cp/ChangeLog
 %attr(755,root,root) %{_bindir}/g++
 %attr(755,root,root) %{_bindir}/*-g++
 %attr(755,root,root) %{_bindir}/c++
 %attr(755,root,root) %{_bindir}/*-c++
 %attr(755,root,root) %{gcclibdir}/cc1plus
+%attr(755,root,root) %{gcclibdir}/g++-mapper-server
 %{_libdir}/libsupc++.la
 %{_libdir}/libsupc++.a
 %{_mandir}/man1/g++.1*
@@ -3547,7 +3628,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libstdc++fs.la
 %dir %{_includedir}/c++
 %{_includedir}/c++/%{version}
-%{_includedir}/expc++.h
 %{_includedir}/extc++.h
 %{_includedir}/stdc++.h
 %{_includedir}/stdtr1c++.h
@@ -3595,10 +3675,12 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with python}
 %files -n libstdc++-gdb
 %defattr(644,root,root,755)
-%dir %{py_sitescriptdir}/libstdcxx
-%{py_sitescriptdir}/libstdcxx/*.py[co]
-%dir %{py_sitescriptdir}/libstdcxx/v6
-%{py_sitescriptdir}/libstdcxx/v6/*.py[co]
+%dir %{py3_sitescriptdir}/libstdcxx
+%{py3_sitescriptdir}/libstdcxx/*.py
+%{py3_sitescriptdir}/libstdcxx/__pycache__
+%dir %{py3_sitescriptdir}/libstdcxx/v6
+%{py3_sitescriptdir}/libstdcxx/v6/*.py
+%{py3_sitescriptdir}/libstdcxx/v6/__pycache__
 %{_datadir}/gdb/auto-load%{_libdir}/libstdc++.so.%{cxx_sover}.*.*-gdb.py
 %if %{with multilib}
 %{_datadir}/gdb/auto-load%{_libdir32}/libstdc++.so.%{cxx_sover}.*.*-gdb.py
@@ -3899,7 +3981,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc libgo/{LICENSE,PATENTS,README}
 %attr(755,root,root) %{_libdir}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgo.so.16
+%attr(755,root,root) %ghost %{_libdir}/libgo.so.19
 
 %files -n libgo-devel
 %defattr(644,root,root,755)
@@ -3916,7 +3998,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libgo-multilib-32
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir32}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libgo.so.16
+%attr(755,root,root) %ghost %{_libdir32}/libgo.so.19
 
 %files -n libgo-multilib-32-devel
 %defattr(644,root,root,755)
@@ -3934,7 +4016,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libgo-multilib-%{multilib2}
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdirm2}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.16
+%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.19
 
 %files -n libgo-multilib-%{multilib2}-devel
 %defattr(644,root,root,755)
@@ -4002,6 +4084,23 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %endif
 
+%if %{with hwasan}
+%files -n libhwasan
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhwasan.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhwasan.so.0
+
+%files -n libhwasan-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhwasan.so
+%{_libdir}/libhwasan.la
+%{gcclibdir}/include/sanitizer/hwasan_interface.h
+
+%files -n libhwasan-static
+%defattr(644,root,root,755)
+%{_libdir}/libhwasan.a
+%endif
+
 %if %{with lsan_m0}
 %files -n liblsan
 %defattr(644,root,root,755)