From 94c6a6bb8dc960a8234409468b93c8602fe02a34 Mon Sep 17 00:00:00 2001 From: eastb233 Date: Fri, 27 Aug 2021 11:35:43 +0800 Subject: [PATCH] [RISC-V] Adapts to the RISC-V backend construction Adapts to the RISC-V backend construction. (cherry picked from commit 9c6dd0cd80f60bcfbda119466241ef3bdee41cfc) --- gcc.spec | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/gcc.spec b/gcc.spec index 5422ee7..99619ee 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,4 +1,4 @@ -%global DATE 20210819 +%global DATE 20210827 %global gcc_version 10.3.1 %global gcc_major 10.3.1 @@ -55,11 +55,15 @@ %else %global attr_ifunc 0 %endif +%ifarch riscv64 +%global _lib lib +%global _smp_mflags -j8 +%endif Summary: Various compilers (C, C++, Objective-C, ...) Name: gcc Version: %{gcc_version} -Release: %{DATE}.3 +Release: %{DATE}.4 License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD URL: https://gcc.gnu.org @@ -678,13 +682,14 @@ CC="$CC" CFLAGS="$OPT_FLAGS" \ --with-multilib-list=lp64 %endif %ifarch riscv64 - --with-arch=rv64gc --with-abi=lp64d --with-multilib-list=lp64d + --with-arch=rv64g --with-abi=lp64d \ + --disable-libquadmath --disable-multilib %endif %ifarch sparc sparcv9 sparc64 -make -j32 BOOT_CFLAGS="$OPT_FLAGS" bootstrap +make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" bootstrap %else -make -j32 BOOT_CFLAGS="$OPT_FLAGS" BOOT_LDFLAGS="-pie -Wl,-z,relro,-z,now" +make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" BOOT_LDFLAGS="-pie -Wl,-z,relro,-z,now" %endif # Make generated man pages even if Pod::Man is not new enough @@ -692,14 +697,14 @@ perl -pi -e 's/head3/head2/' ../contrib/texi2pod.pl for i in ../gcc/doc/*.texi; do cp -a $i $i.orig; sed 's/ftable/table/' $i.orig > $i done -make -j -C gcc generated-manpages +make %{?_smp_mflags} -C gcc generated-manpages for i in ../gcc/doc/*.texi; do mv -f $i.orig $i; done # Make generated doxygen pages. %if %{build_libstdcxx_docs} cd %{gcc_target_platform}/libstdc++-v3 -make -j doc-html-doxygen -make -j doc-man-doxygen +make %{?_smp_mflags} doc-html-doxygen +make %{?_smp_mflags} doc-man-doxygen cd ../.. %endif @@ -777,7 +782,7 @@ cd obj-%{gcc_target_platform} TARGET_PLATFORM=%{gcc_target_platform} # There are some MP bugs in libstdc++ Makefiles -make -j -C %{gcc_target_platform}/libstdc++-v3 +make %{?_smp_mflags} -C %{gcc_target_platform}/libstdc++-v3 make prefix=%{buildroot}%{_prefix} mandir=%{buildroot}%{_mandir} \ infodir=%{buildroot}%{_infodir} install @@ -1510,7 +1515,7 @@ cd obj-%{gcc_target_platform} %if %{build_check} # run the tests. -LC_ALL=C make -j32 -k check ALT_CC_UNDER_TEST=gcc ALT_CXX_UNDER_TEST=g++ \ +LC_ALL=C make %{?_smp_mflags} -k check ALT_CC_UNDER_TEST=gcc ALT_CXX_UNDER_TEST=g++ \ RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector-strong}'" || : echo ====================TESTING========================= ( LC_ALL=C ../contrib/test_summary || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}' @@ -2564,6 +2569,12 @@ end %doc rpm.doc/changelogs/libcc1/ChangeLog* %changelog +* Fri Aug 27 2021 eastb233 - 10.3.1-20210827.4 +- Type:RISC-V +- ID:NA +- SUG:NA +- DESC:Adapts to the RISC-V backend construction + * Thu Aug 19 2021 eastb233 - 10.3.1-20210819.3 - Type:Sync - ID:NA -- Gitee