[packages/gcc-d] - initial: stripped-down gcc.spec from GCC_11 branch for gdc bootstrapping

qboosh qboosh at pld-linux.org
Fri Apr 25 19:13:53 CEST 2025


commit d8b44d2e437a4c5ed907e2e72c2d56269cb47c90
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Fri Apr 25 18:53:47 2025 +0200

    - initial: stripped-down gcc.spec from GCC_11 branch for gdc bootstrapping

 all-library-paths.patch |  20 ++
 gcc-d.spec              | 599 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc-info.patch          | 266 +++++++++++++++++++++
 gcc-nodebug.patch       | 159 +++++++++++++
 4 files changed, 1044 insertions(+)
---
diff --git a/gcc-d.spec b/gcc-d.spec
new file mode 100644
index 0000000..e59f287
--- /dev/null
+++ b/gcc-d.spec
@@ -0,0 +1,599 @@
+# NOTE: spec only for bootstrapping gdc for new architectures; for current gdc see gcc.spec
+#
+# Conditional build:
+# - features:
+%bcond_without	multilib	# 32-bit/64-bit multilib support (which needs glibc[32&64]-devel)
+%bcond_without	multilibx32	# x32 multilib support on x86_64 (needs x32 glibc-devel)
+%bcond_without	profiling	# profiling support
+
+%ifnarch %{x8664} x32 aarch64 ppc64 s390x sparc64
+%undefine	with_multilib
+%endif
+%ifnarch %{x8664}
+%undefine	with_multilibx32
+%endif
+
+# setup internal semi-bconds based on bconds and architecture
+%if %{with multilib}
+%ifarch x32
+%define		with_multilib2	1
+%endif
+%if %{with multilibx32}
+%define		with_multilib2	1
+%endif
+%endif
+%ifarch %{ix86} %{x8664} x32 alpha %{arm} ppc ppc64 sh sparc sparcv9 sparc64 aarch64
+# library for atomic operations not supported by hardware
+%define		with_atomic	1
+%endif
+%ifarch %{ix86} %{x8664} x32 %{arm} ppc ppc64 sparc sparcv9 sparc64 aarch64
+# sanitizer feature (asan and ubsan are common for all supported archs)
+%define		with_Xsan	1
+%endif
+%ifarch %{x8664} aarch64
+# lsan and tsan exist only for primary x86_64 ABI
+%define		with_lsan_m0	1
+%define		with_tsan_m0	1
+%endif
+%ifarch x32
+# lsan and tsan exist only for x86_64 ABI (i.e. our multilib2)
+%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
+%ifarch %{ix86} %{x8664} x32 ia64
+%define		with_quadmath	1
+%endif
+
+# keep 11.x here for now (the only gdc series that don't require itself to build)
+%define		major_ver	11
+%define		minor_ver	5.0
+
+Summary:	GNU Compiler Collection: the D compiler and shared files
+Summary(es.UTF-8):	Colección de compiladores GNU: el compilador D y ficheros compartidos
+Summary(pl.UTF-8):	Kolekcja kompilatorów GNU: kompilator D i pliki współdzielone
+Summary(pt_BR.UTF-8):	Coleção dos compiladores GNU: o compilador C D arquivos compartilhados
+Name:		gcc-d
+Version:	%{major_ver}.%{minor_ver}
+Release:	1
+Epoch:		6
+License:	GPL v3+
+Group:		Development/Languages
+Source0:	https://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.xz
+# Source0-md5:	03473f26c87e05e789a32208f1fe4491
+Patch0:		gcc-info.patch
+Patch1:		all-library-paths.patch
+Patch2:		gcc-nodebug.patch
+URL:		https://gcc.gnu.org/
+BuildRequires:	autoconf >= 2.64
+BuildRequires:	automake >= 1:1.11.1
+BuildRequires:	binutils >= 4:2.30
+BuildRequires:	bison
+BuildRequires:	chrpath >= 0.13-2
+BuildRequires:	elfutils-devel >= 0.145-1
+BuildRequires:	fileutils >= 4.0.41
+BuildRequires:	flex >= 2.5.4
+BuildRequires:	gdb
+BuildRequires:	gettext-tools >= 0.14.5
+BuildRequires:	glibc-devel >= 6:2.4-1
+%if %{with multilib}
+# Formerly known as gcc(multilib)
+BuildRequires:	gcc(multilib-32)
+%ifarch %{x8664}
+%if %{with multilibx32}
+BuildRequires:	gcc(multilib-x32)
+BuildRequires:	glibc-devel(x32)
+%endif
+BuildRequires:	glibc-devel(ix86)
+%endif
+%ifarch x32
+BuildRequires:	gcc(multilib-64)
+BuildRequires:	glibc-devel(ix86)
+BuildRequires:	glibc-devel(x86_64)
+%endif
+%ifarch aarch64
+BuildRequires:	glibc-devel(arm)
+%endif
+%ifarch ppc64
+BuildRequires:	glibc-devel(ppc)
+%endif
+%ifarch s390x
+BuildRequires:	glibc-devel(s390)
+%endif
+%ifarch sparc64
+BuildRequires:	glibc-devel(sparcv9)
+%endif
+%endif
+BuildRequires:	gmp-c++-devel >= 4.3.2
+BuildRequires:	gmp-devel >= 4.3.2
+BuildRequires:	isl-devel >= 0.15
+BuildRequires:	libmpc-devel >= 0.8.1
+BuildRequires:	mpfr-devel >= 3.1.0
+BuildRequires:	rpmbuild(macros) >= 1.211
+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 >= 4:2.30
+Requires:	gmp >= 4.3.2
+Requires:	isl >= 0.15
+Requires:	libmpc >= 0.8.1
+Requires:	mpfr >= 3.1.0
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%define		_slibdir	/%{_lib}
+%if %{with multilib}
+# 32-bit environment on x86-64,aarch64,ppc64,s390x,sparc64
+%define		_slibdir32	/lib
+%define		_libdir32	/usr/lib
+%define		_pkgconfigdir32	%{_libdir32}/pkgconfig
+%if %{with multilib2}
+# x32 environment on x86-64
+%ifarch %{x8664}
+%define		multilib2	x32
+%define		m2_desc		ILP32
+%define		_slibdirm2	/libx32
+%define		_libdirm2	/usr/libx32
+%define		_pkgconfigdirm2	%{_libdirm2}/pkgconfig
+%endif
+# 64-bit environment on x32
+%ifarch x32
+%define		multilib2	64
+%define		m2_desc		LP64
+%define		_slibdirm2	/lib64
+%define		_libdirm2	/usr/lib64
+%define		_pkgconfigdirm2	%{_libdir64}/pkgconfig
+%endif
+%endif
+%endif
+%if %{without multilib} || %{without multilib2}
+# avoid "Possible unexpanded macro" warning
+%define		multilib2	none
+%endif
+%define		gcclibdir	%{_libdir}/gcc/%{_target_platform}/%{version}
+
+%define		filterout	-fwrapv -fno-strict-aliasing -fsigned-char
+%define		filterout_ld	-Wl,--as-needed
+
+# functions with printf format attribute but with special parser and also
+# receiving non constant format strings
+%define		Werror_cflags	%{nil}
+
+%define		skip_post_check_so	'.*(libasan|libcc1plugin|libcp1plugin|libgnat-%{major_ver}|libgo|libxmlj|libubsan|lib-gnu-awt-xlib)\.so.*'
+# private symbols
+%define		_noautoreq		.*\(GLIBC_PRIVATE\)
+
+%description
+A compiler aimed at integrating all the optimizations and features
+necessary for a high-performance and stable development environment.
+
+This package contains the D compiler and some files shared by various
+parts of the GNU Compiler Collection. In order to use another GCC
+compiler you will need to install the appropriate subpackage.
+
+%description -l es.UTF-8
+Un compilador que intenta integrar todas las optimalizaciones y
+características necesarias para un entorno de desarrollo eficaz y
+estable.
+
+Este paquete contiene el compilador de D y unos ficheros compartidos
+por varias partes de la colección de compiladores GNU (GCC). Para usar
+otro compilador de GCC será necesario que instale el subpaquete
+adecuado.
+
+%description -l pl.UTF-8
+Kompilator, posiadający duże możliwości optymalizacyjne niezbędne do
+wyprodukowania szybkiego i stabilnego kodu wynikowego.
+
+Ten pakiet zawiera kompilator D i pliki współdzielone przez różne
+części kolekcji kompilatorów GNU (GCC). Żeby używać innego kompilatora
+z GCC, trzeba zainstalować odpowiedni podpakiet.
+
+%description -l pt_BR.UTF-8
+Este pacote adiciona infraestrutura básica e suporte a linguagem D ao
+GNU Compiler Collection.
+
+%package multilib-32
+Summary:	D language 32-bit binaries support for GCC
+Summary(pl.UTF-8):	Obsługa binariów 32-bitowych w języku D dla GCC
+Group:		Development/Languages
+Requires:	%{name} = %{epoch}:%{version}-%{release}
+Requires:	libgphobos-multilib-32 = %{epoch}:%{version}-%{release}
+
+%description multilib-32
+This package adds support for compiling 32-bit D programs with the GNU
+compiler.
+
+%description multilib-32 -l pl.UTF-8
+Ten pakiet dodaje obsługę 32-bitowych programów w języku D do
+kompilatora GCC.
+
+%package multilib-%{multilib2}
+Summary:	D language %{m2_desc} binaries support for GCC
+Summary(pl.UTF-8):	Obsługa binariów %{m2_desc} w języku D dla GCC
+Group:		Development/Languages
+Requires:	%{name} = %{epoch}:%{version}-%{release}
+Requires:	libgphobos-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description multilib-%{multilib2}
+This package adds support for compiling D programs to %{m2_desc}
+binaries with the GNU compiler.
+
+%description multilib-%{multilib2} -l pl.UTF-8
+Ten pakiet dodaje obsługę binariów %{m2_desc} w języku D do
+kompilatora GCC.
+
+%package -n libgphobos
+Summary:	D language runtime libraries
+Summary(pl.UTF-8):	Biblioteki uruchomieniowe dla języka D
+License:	Boost v1.0
+Group:		Libraries
+
+%description -n libgphobos
+D language runtime libraries.
+
+%description -n libgphobos -l pl.UTF-8
+Biblioteki uruchomieniowe dla języka D.
+
+%package -n libgphobos-static
+Summary:	Static D language runtime libraries
+Summary(pl.UTF-8):	Statyczne biblioteki uruchomieniowe dla języka D
+License:	Boost v1.0
+Group:		Development/Libraries
+Requires:	%{name}-d = %{epoch}:%{version}-%{release}
+
+%description -n libgphobos-static
+Static D language runtime libraries.
+
+%description -n libgphobos-static -l pl.UTF-8
+Statyczne biblioteki uruchomieniowe dla języka D.
+
+%package -n libgphobos-multilib-32
+Summary:	D language runtime libraries - 32-bit version
+Summary(pl.UTF-8):	Biblioteki uruchomieniowe dla języka D - wersja 32-bitowa
+License:	Boost v1.0
+Group:		Libraries
+
+%description -n libgphobos-multilib-32
+D language runtime libraries - 32-bit version.
+
+%description -n libgphobos-multilib-32 -l pl.UTF-8
+Biblioteki uruchomieniowe dla języka D - wersja 32-bitowa.
+
+%package -n libgphobos-multilib-32-static
+Summary:	Static D language runtime libraries - 32-bit version
+Summary(pl.UTF-8):	Statyczne biblioteki uruchomieniowe dla języka D - wersja 32-bitowa
+Group:		Development/Libraries
+License:	Boost v1.0
+Requires:	%{name}-d-multilib-32 = %{epoch}:%{version}-%{release}
+
+%description -n libgphobos-multilib-32-static
+Static D language runtime libraries - 32-bit version.
+
+%description -n libgphobos-multilib-32-static -l pl.UTF-8
+Statyczne biblioteki uruchomieniowe dla języka D - wersja 32-bitowa.
+
+%package -n libgphobos-multilib-%{multilib2}
+Summary:	D language runtime libraries - %{m2_desc} version
+Summary(pl.UTF-8):	Biblioteki uruchomieniowe dla języka D - wersja %{m2_desc}
+License:	Boost v1.0
+Group:		Libraries
+
+%description -n libgphobos-multilib-%{multilib2}
+D language runtime libraries - %{m2_desc} version.
+
+%description -n libgphobos-multilib-%{multilib2} -l pl.UTF-8
+Biblioteki uruchomieniowe dla języka D - wersja 32-bitowa.
+
+%package -n libgphobos-multilib-%{multilib2}-static
+Summary:	Static D language runtime libraries - %{m2_desc} version
+Summary(pl.UTF-8):	Statyczne biblioteki uruchomieniowe dla języka D - wersja %{m2_desc}
+Group:		Development/Libraries
+License:	Boost v1.0
+Requires:	%{name}-d-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description -n libgphobos-multilib-%{multilib2}-static
+Static D language runtime libraries - %{m2_desc} version.
+
+%description -n libgphobos-multilib-%{multilib2}-static -l pl.UTF-8
+Statyczne biblioteki uruchomieniowe dla języka D - wersja %{m2_desc}.
+
+%prep
+%setup -q -n gcc-%{version}
+%patch -P0 -p1
+%patch -P1 -p1
+%patch -P2 -p1
+
+%{__mv} ChangeLog ChangeLog.general
+
+# override snapshot version.
+echo %{version} > gcc/BASE-VER
+echo "release" > gcc/DEV-PHASE
+
+%build
+cd gcc
+#{__autoconf}
+cd ..
+
+rm -rf builddir && install -d builddir && cd builddir
+
+CC="%{__cc}" \
+CFLAGS="%{rpmcflags}" \
+CXXFLAGS="%{rpmcxxflags}" \
+TEXCONFIG=false \
+../configure \
+	--prefix=%{_prefix} \
+	--with-local-prefix=%{_prefix}/local \
+	--libdir=%{_libdir} \
+	--libexecdir=%{_libdir} \
+	--infodir=%{_infodir} \
+	--mandir=%{_mandir} \
+	--enable-bootstrap=no \
+	--disable-build-with-cxx \
+	--disable-build-poststage1-with-cxx \
+	--enable-checking=release \
+%ifarch %{ix86} %{x8664} x32
+	--disable-cld \
+%endif
+	--enable-decimal-float \
+	--enable-gnu-indirect-function \
+	--enable-gnu-unique-object \
+	--enable-initfini-array \
+	--disable-isl-version-check \
+	--enable-languages="d" \
+	--enable-libgomp=no \
+	--enable-linker-build-id \
+	--enable-linux-futex \
+	--enable-long-long \
+	%{!?with_multilib:--disable-multilib} \
+	--enable-nls \
+	--enable-lto \
+%ifarch ppc ppc64
+	--enable-secureplt \
+%endif
+	--enable-shared \
+	--enable-threads=posix \
+	--disable-werror \
+%ifarch x32
+	--with-abi=x32 \
+%endif
+%ifarch %{x8664} x32
+	--with-arch-32=x86-64 \
+%endif
+%ifarch sparc64
+	--with-cpu=ultrasparc \
+%endif
+	--with-demangler-in-ld \
+	--with-gnu-as \
+	--with-gnu-ld \
+	--with-linker-hash-style=gnu \
+	--with-long-double-128 \
+%if %{with multilib}
+%ifarch %{x8664}
+	--with-multilib-list=m32,m64%{?with_multilibx32:,mx32} \
+%endif
+%ifarch x32
+	--with-multilib-list=m32,m64,mx32 \
+%endif
+%endif
+	--with-slibdir=%{_slibdir} \
+%ifnarch ia64
+	--without-system-libunwind \
+%else
+	--with-system-libunwind \
+%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
+	--with-pkgversion="PLD-Linux" \
+	--with-bugurl="http://bugs.pld-linux.org" \
+	--host=%{_target_platform} \
+	--build=%{_target_platform}
+
+cd ..
+
+cat << 'EOF' > Makefile
+all := $(filter-out all Makefile,$(MAKECMDGOALS))
+
+all $(all):
+	$(MAKE) -C builddir $(MAKE_OPTS) $(all) \
+		BOOT_CFLAGS="%{rpmcflags}" \
+		STAGE1_CFLAGS="%{rpmcflags} -O1 -g0" \
+		GNATLIBCFLAGS="%{rpmcflags}" \
+		LDFLAGS_FOR_TARGET="%{rpmldflags}" \
+		mandir=%{_mandir} \
+		infodir=%{_infodir}
+EOF
+
+%{__make}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+cd builddir
+
+%{__make} -j1 install \
+	mandir=%{_mandir} \
+	infodir=%{_infodir} \
+	DESTDIR=$RPM_BUILD_ROOT
+
+cp -p gcc/specs $RPM_BUILD_ROOT%{gcclibdir}
+
+cd ..
+
+# don't package, rely on main gcc
+%{__rm} $RPM_BUILD_ROOT/lib*/libgcc_s.so*
+%{__rm} $RPM_BUILD_ROOT%{_prefix}/lib*/libatomic.*
+%{__rm} $RPM_BUILD_ROOT%{_prefix}/lib*/libquadmath.*
+%{__rm} $RPM_BUILD_ROOT%{_prefix}/lib*/libssp*.*
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/{cpp,*gcc,*gcc-ar,*gcc-nm,*gcc-ranlib,gcov*,lto-dump,*-gcc-%{version}}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libcc1.*
+%{__rm} $RPM_BUILD_ROOT%{_localedir}/*/LC_MESSAGES/{cpplib,gcc}.mo
+%{__rm} $RPM_BUILD_ROOT%{_infodir}/{cpp,cppinternals,gcc,gccinstall,gccint,libquadmath}.info
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{cpp,gcc,gcov*,lto-dump}.1
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/{fsf-funding,gfdl,gpl}.7
+%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/include/ssp
+%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/plugin
+%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/include/*.h
+
+%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/install-tools
+%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/include-fixed
+
+# plugins, .la not needed
+%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/liblto_plugin.la
+
+# always -f, as "dir" is created depending which texlive version is installed
+%{__rm} -f $RPM_BUILD_ROOT%{_infodir}/dir
+
+# svn snap doesn't contain (release does) below files,
+# so let's create dummy entries to satisfy %%files.
+[ ! -f NEWS ] && touch NEWS
+[ ! -f libgfortran/AUTHORS ] && touch libgfortran/AUTHORS
+[ ! -f libgfortran/README ] && touch libgfortran/README
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post	-p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
+%postun	-p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
+%post	-p /sbin/ldconfig -n libgphobos
+%postun	-p /sbin/ldconfig -n libgphobos
+
+%files
+%defattr(644,root,root,755)
+%doc gcc/d/{ChangeLog,README.gcc}
+%attr(755,root,root) %{_bindir}/gdc
+%attr(755,root,root) %{_bindir}/*-gdc
+%attr(755,root,root) %{gcclibdir}/d21
+%attr(755,root,root) %{_libdir}/libgdruntime.so
+%attr(755,root,root) %{_libdir}/libgphobos.so
+%{_libdir}/libgdruntime.la
+%{_libdir}/libgphobos.la
+%{_libdir}/libgphobos.spec
+%{gcclibdir}/include/d
+%{_mandir}/man1/gdc.1*
+%{_infodir}/gdc.info*
+
+# because system gcc is already in greater version
+%dir %{gcclibdir}
+%dir %{gcclibdir}/include
+%attr(755,root,root) %{gcclibdir}/cc1
+%attr(755,root,root) %{gcclibdir}/collect2
+%attr(755,root,root) %{gcclibdir}/g++-mapper-server
+%attr(755,root,root) %{gcclibdir}/lto-wrapper
+%attr(755,root,root) %{gcclibdir}/lto1
+%attr(755,root,root) %{gcclibdir}/liblto_plugin.so*
+%{gcclibdir}/libgcc.a
+%{gcclibdir}/libgcc_eh.a
+%{gcclibdir}/libgcov.a
+%{gcclibdir}/specs
+%{gcclibdir}/crt*.o
+
+
+%if %{with multilib}
+%files multilib-32
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir32}/libgdruntime.so
+%attr(755,root,root) %{_libdir32}/libgphobos.so
+%{_libdir32}/libgdruntime.la
+%{_libdir32}/libgphobos.la
+%{_libdir32}/libgphobos.spec
+
+# because system gcc is already in greater version
+%dir %{gcclibdir}/32
+%{gcclibdir}/32/crt*.o
+%{gcclibdir}/32/libgcc.a
+%{gcclibdir}/32/libgcc_eh.a
+%{gcclibdir}/32/libgcov.a
+%endif
+
+%if %{with multilib2}
+%files multilib-%{multilib2}
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libgdruntime.so
+%attr(755,root,root) %{_libdirm2}/libgphobos.so
+%{_libdirm2}/libgdruntime.la
+%{_libdirm2}/libgphobos.la
+%{_libdirm2}/libgphobos.spec
+
+# because system gcc is already in greater version
+%dir %{gcclibdir}/%{multilib2}
+%{gcclibdir}/%{multilib2}/crt*.o
+%{gcclibdir}/%{multilib2}/libgcc.a
+%{gcclibdir}/%{multilib2}/libgcc_eh.a
+%{gcclibdir}/%{multilib2}/libgcov.a
+%endif
+
+%files -n libgphobos
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libgdruntime.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgdruntime.so.2
+%attr(755,root,root) %{_libdir}/libgphobos.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgphobos.so.2
+
+%files -n libgphobos-static
+%defattr(644,root,root,755)
+%{_libdir}/libgdruntime.a
+%{_libdir}/libgphobos.a
+
+%if %{with multilib}
+%files -n libgphobos-multilib-32
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir32}/libgdruntime.so.2.0.0
+%attr(755,root,root) %ghost %{_libdir32}/libgdruntime.so.2
+%attr(755,root,root) %{_libdir32}/libgphobos.so.2.0.0
+%attr(755,root,root) %ghost %{_libdir32}/libgphobos.so.2
+
+%files -n libgphobos-multilib-32-static
+%defattr(644,root,root,755)
+%{_libdir32}/libgdruntime.a
+%{_libdir32}/libgphobos.a
+%endif
+
+%if %{with multilib2}
+%files -n libgphobos-multilib-%{multilib2}
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libgdruntime.so.2.0.0
+%attr(755,root,root) %ghost %{_libdirm2}/libgdruntime.so.2
+%attr(755,root,root) %{_libdirm2}/libgphobos.so.2.0.0
+%attr(755,root,root) %ghost %{_libdirm2}/libgphobos.so.2
+
+%files -n libgphobos-multilib-%{multilib2}-static
+%defattr(644,root,root,755)
+%{_libdirm2}/libgdruntime.a
+%{_libdirm2}/libgphobos.a
+%endif
diff --git a/all-library-paths.patch b/all-library-paths.patch
new file mode 100644
index 0000000..66d0468
--- /dev/null
+++ b/all-library-paths.patch
@@ -0,0 +1,20 @@
+--- gcc-11.2.0/gcc/gcc.c.orig	2022-04-18 15:40:02.650553155 +0200
++++ gcc-11.2.0/gcc/gcc.c	2022-04-19 09:31:21.340818868 +0200
+@@ -7817,17 +7817,6 @@
+   *cp++ = '.';
+   *cp = '\0';
+ 
+-  /* Exclude directories that the linker is known to search.  */
+-  if (linker
+-      && IS_DIR_SEPARATOR (path[0])
+-      && ((cp - path == 6
+-	   && filename_ncmp (path + 1, "lib", 3) == 0)
+-	  || (cp - path == 10
+-	      && filename_ncmp (path + 1, "usr", 3) == 0
+-	      && IS_DIR_SEPARATOR (path[4])
+-	      && filename_ncmp (path + 5, "lib", 3) == 0)))
+-    return 0;
+-
+   return (stat (path, &st) >= 0 && S_ISDIR (st.st_mode));
+ }
+ 
diff --git a/gcc-info.patch b/gcc-info.patch
new file mode 100644
index 0000000..4687bc3
--- /dev/null
+++ b/gcc-info.patch
@@ -0,0 +1,266 @@
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/ada/gnat-style.texi gcc-10.2.0/gcc/ada/gnat-style.texi
+--- gcc-10.2.0.org/gcc/ada/gnat-style.texi	2020-07-23 08:35:17.120382083 +0200
++++ gcc-10.2.0/gcc/ada/gnat-style.texi	2021-03-21 01:21:39.481335808 +0100
+@@ -29,9 +29,9 @@ Texts.  A copy of the license is include
+ 
+ @include gcc-common.texi
+ 
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* gnat-style: (gnat-style).      GNAT Coding Style
++* gnat-style: (gnat-style).		GNAT Coding Style
+ @end direntry
+ 
+ @macro syntax{element}
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/ada/gnat_rm.texi gcc-10.2.0/gcc/ada/gnat_rm.texi
+--- gcc-10.2.0.org/gcc/ada/gnat_rm.texi	2020-07-23 08:35:17.128382173 +0200
++++ gcc-10.2.0/gcc/ada/gnat_rm.texi	2021-03-21 01:21:39.485335808 +0100
+@@ -10,9 +10,9 @@
+ @paragraphindent 0
+ @exampleindent 4
+ @finalout
+- at dircategory GNU Ada Tools 
++ at dircategory Programming Languages:
+ @direntry
+-* gnat_rm: (gnat_rm.info). gnat_rm
++* gnat_rm: (gnat_rm.info).		gnat_rm
+ @end direntry
+ 
+ @definfoenclose strong,`,'
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/ada/gnat_ugn.texi gcc-10.2.0/gcc/ada/gnat_ugn.texi
+--- gcc-10.2.0.org/gcc/ada/gnat_ugn.texi	2020-07-23 08:35:17.136382261 +0200
++++ gcc-10.2.0/gcc/ada/gnat_ugn.texi	2021-03-21 01:21:39.489335808 +0100
+@@ -10,9 +10,9 @@
+ @paragraphindent 0
+ @exampleindent 4
+ @finalout
+- at dircategory GNU Ada Tools 
++ at dircategory Programming Languages:
+ @direntry
+-* gnat_ugn: (gnat_ugn.info). gnat_ugn
++* gnat_ugn: (gnat_ugn.info).		gnat_ugn
+ @end direntry
+ 
+ @definfoenclose strong,`,'
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/doc/cpp.texi gcc-10.2.0/gcc/doc/cpp.texi
+--- gcc-10.2.0.org/gcc/doc/cpp.texi	2021-03-21 01:21:06.752335808 +0100
++++ gcc-10.2.0/gcc/doc/cpp.texi	2021-03-21 01:21:39.480335808 +0100
+@@ -48,9 +48,9 @@ This manual contains no Invariant Sectio
+ @set cppmanual
+ 
+ @ifinfo
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* Cpp: (cpp).                  The GNU C preprocessor.
++* Cpp: (cpp).				The GNU C preprocessor
+ @end direntry
+ @end ifinfo
+ 
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/doc/cppinternals.texi gcc-10.2.0/gcc/doc/cppinternals.texi
+--- gcc-10.2.0.org/gcc/doc/cppinternals.texi	2020-07-23 08:35:17.560386932 +0200
++++ gcc-10.2.0/gcc/doc/cppinternals.texi	2021-03-21 01:21:39.481335808 +0100
+@@ -5,9 +5,9 @@
+ @include gcc-common.texi
+ 
+ @ifinfo
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* Cpplib: (cppinternals).      Cpplib internals.
++* Cpplib: (cppinternals).		Cpplib internals
+ @end direntry
+ @end ifinfo
+ 
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/doc/gcc.texi gcc-10.2.0/gcc/doc/gcc.texi
+--- gcc-10.2.0.org/gcc/doc/gcc.texi	2020-07-23 08:35:17.564386975 +0200
++++ gcc-10.2.0/gcc/doc/gcc.texi	2021-03-21 01:21:39.481335808 +0100
+@@ -61,15 +61,14 @@ Texts being (a) (see below), and with th
+      funds for GNU development.
+ @end copying
+ @ifnottex
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* gcc: (gcc).                  The GNU Compiler Collection.
+-* g++: (gcc).                  The GNU C++ compiler.
+-* gcov: (gcc) Gcov.            @command{gcov}---a test coverage program.
+-* gcov-tool: (gcc) Gcov-tool.  @command{gcov-tool}---an offline gcda profile processing program.
+-* gcov-dump: (gcc) Gcov-dump.  @command{gcov-dump}---an offline gcda and gcno profile dump tool.
+-* lto-dump: (gcc) lto-dump.    @command{lto-dump}---Tool for
+-dumping LTO object files.
++* gcc: (gcc).				The GNU Compiler Collection
++* g++: (gcc).				The GNU C++ compiler
++* gcov: (gcc) Gcov.			@command{gcov}---a test coverage program
++* gcov-tool: (gcc) Gcov-tool.		@command{gcov-tool}---an offline gcda profile processing program
++* gcov-dump: (gcc) Gcov-dump.		@command{gcov-dump}---an offline gcda and gcno profile dump tool
++* lto-dump: (gcc) lto-dump.		@command{lto-dump}---Tool for dumping LTO object files
+ @end direntry
+ This file documents the use of the GNU compilers.
+ @sp 1
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/doc/gccint.texi gcc-10.2.0/gcc/doc/gccint.texi
+--- gcc-10.2.0.org/gcc/doc/gccint.texi	2020-07-23 08:35:17.564386975 +0200
++++ gcc-10.2.0/gcc/doc/gccint.texi	2021-03-21 01:21:39.481335808 +0100
+@@ -47,9 +47,9 @@ Texts being (a) (see below), and with th
+      funds for GNU development.
+ @end copying
+ @ifnottex
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* gccint: (gccint).            Internals of the GNU Compiler Collection.
++* gccint: (gccint).			Internals of the GNU Compiler Collection
+ @end direntry
+ This file documents the internals of the GNU compilers.
+ @sp 1
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/doc/install.texi gcc-10.2.0/gcc/doc/install.texi
+--- gcc-10.2.0.org/gcc/doc/install.texi	2021-03-21 01:21:15.938335808 +0100
++++ gcc-10.2.0/gcc/doc/install.texi	2021-03-21 01:21:39.491335808 +0100
+@@ -91,9 +91,9 @@ Free Documentation License}''.
+ @ifinfo
+ @insertcopying
+ @end ifinfo
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* gccinstall: (gccinstall).    Installing the GNU Compiler Collection.
++* gccinstall: (gccinstall).		Installing the GNU Compiler Collection
+ @end direntry
+ 
+ @c Part 3 Titlepage and Copyright
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/fortran/gfc-internals.texi gcc-10.2.0/gcc/fortran/gfc-internals.texi
+--- gcc-10.2.0.org/gcc/fortran/gfc-internals.texi	2020-07-23 08:35:17.604387417 +0200
++++ gcc-10.2.0/gcc/fortran/gfc-internals.texi	2021-03-21 01:21:39.494335808 +0100
+@@ -53,9 +53,9 @@ Texts being (a) (see below), and with th
+ @end copying
+ 
+ @ifinfo
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* gfortran: (gfortran).                  The GNU Fortran Compiler.
++* gfortran: (gfortran).			The GNU Fortran Compiler
+ @end direntry
+ This file documents the internals of the GNU Fortran
+ compiler, (@command{gfortran}).
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/fortran/gfortran.texi gcc-10.2.0/gcc/fortran/gfortran.texi
+--- gcc-10.2.0.org/gcc/fortran/gfortran.texi	2020-07-23 08:35:17.604387417 +0200
++++ gcc-10.2.0/gcc/fortran/gfortran.texi	2021-03-21 01:21:39.491335808 +0100
+@@ -99,9 +99,9 @@ Texts being (a) (see below), and with th
+ @end copying
+ 
+ @ifinfo
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* gfortran: (gfortran).                  The GNU Fortran Compiler.
++* gfortran: (gfortran).			The GNU Fortran Compiler
+ @end direntry
+ This file documents the use and the internals of
+ the GNU Fortran compiler, (@command{gfortran}).
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/go/gccgo.texi gcc-10.2.0/gcc/go/gccgo.texi
+--- gcc-10.2.0.org/gcc/go/gccgo.texi	2020-07-23 08:35:17.644387858 +0200
++++ gcc-10.2.0/gcc/go/gccgo.texi	2021-03-21 01:21:39.492335808 +0100
+@@ -48,9 +48,9 @@ man page gfdl(7).
+ 
+ @ifinfo
+ @format
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* Gccgo: (gccgo).           A GCC-based compiler for the Go language
++* Gccgo: (gccgo).			A GCC-based compiler for the Go language
+ @end direntry
+ @end format
+ 
+diff -urNp -x '*.orig' gcc-10.2.0.org/libffi/doc/libffi.texi gcc-10.2.0/libffi/doc/libffi.texi
+--- gcc-10.2.0.org/libffi/doc/libffi.texi	2020-07-23 08:35:18.740399932 +0200
++++ gcc-10.2.0/libffi/doc/libffi.texi	2021-03-21 01:21:39.493335808 +0100
+@@ -31,9 +31,9 @@ section entitled ``GNU General Public Li
+ @end quotation
+ @end copying
+ 
+- at dircategory Development
++ at dircategory Libraries:
+ @direntry
+-* libffi: (libffi).             Portable foreign-function interface library.
++* libffi: (libffi).			Portable foreign-function interface library
+ @end direntry
+ 
+ @titlepage
+diff -urNp -x '*.orig' gcc-10.2.0.org/libgomp/libgomp.texi gcc-10.2.0/libgomp/libgomp.texi
+--- gcc-10.2.0.org/libgomp/libgomp.texi	2020-07-23 08:35:19.016402971 +0200
++++ gcc-10.2.0/libgomp/libgomp.texi	2021-03-21 01:21:39.492335808 +0100
+@@ -29,9 +29,9 @@ texts being (a) (see below), and with th
+ @end copying
+ 
+ @ifinfo
+- at dircategory GNU Libraries
++ at dircategory Libraries:
+ @direntry
+-* libgomp: (libgomp).          GNU Offloading and Multi Processing Runtime Library.
++* libgomp: (libgomp).			GNU Offloading and Multi Processing Runtime Library
+ @end direntry
+ 
+ This manual documents libgomp, the GNU Offloading and Multi Processing
+diff -urNp -x '*.orig' gcc-10.2.0.org/libiberty/libiberty.texi gcc-10.2.0/libiberty/libiberty.texi
+--- gcc-10.2.0.org/libiberty/libiberty.texi	2020-07-23 08:35:19.048403324 +0200
++++ gcc-10.2.0/libiberty/libiberty.texi	2021-03-21 01:21:39.493335808 +0100
+@@ -11,10 +11,9 @@
+ @finalout
+ @c %**end of header
+ 
+- at dircategory GNU libraries
++ at dircategory Libraries:
+ @direntry
+-* Libiberty: (libiberty).          Library of utility functions which
+-                                   are missing or broken on some systems.
++* Libiberty: (libiberty).		Library of utility functions which are missing or broken on some systems
+ @end direntry
+ 
+ @macro libib
+diff -urNp -x '*.orig' gcc-10.2.0.org/libitm/libitm.texi gcc-10.2.0/libitm/libitm.texi
+--- gcc-10.2.0.org/libitm/libitm.texi	2020-07-23 08:35:19.056403412 +0200
++++ gcc-10.2.0/libitm/libitm.texi	2021-03-21 01:21:39.493335808 +0100
+@@ -18,9 +18,9 @@ Free Documentation License''.
+ @end copying
+ 
+ @ifinfo
+- at dircategory GNU Libraries
++ at dircategory Libraries:
+ @direntry
+-* libitm: (libitm).                    GNU Transactional Memory Library
++* libitm: (libitm).			GNU Transactional Memory Library
+ @end direntry
+ 
+ This manual documents the GNU Transactional Memory Library.
+diff -urNp -x '*.orig' gcc-10.2.0.org/libquadmath/libquadmath.texi gcc-10.2.0/libquadmath/libquadmath.texi
+--- gcc-10.2.0.org/libquadmath/libquadmath.texi	2020-07-23 08:35:19.120404117 +0200
++++ gcc-10.2.0/libquadmath/libquadmath.texi	2021-03-21 01:21:39.493335808 +0100
+@@ -23,9 +23,9 @@ copy and modify this GNU manual.
+ @end copying
+ 
+ @ifinfo
+- at dircategory GNU Libraries
++ at dircategory Libraries:
+ @direntry
+-* libquadmath: (libquadmath).                  GCC Quad-Precision Math Library
++* libquadmath: (libquadmath).		GCC Quad-Precision Math Library
+ @end direntry
+ 
+ This manual documents the GCC Quad-Precision Math Library API.
+--- gcc-11.5.0/gcc/d/gdc.texi.orig	2024-07-19 07:52:43.845493268 +0200
++++ gcc-11.5.0/gcc/d/gdc.texi	2024-12-12 22:08:23.782172397 +0100
+@@ -34,9 +34,9 @@ man page gfdl(7).
+ 
+ @ifinfo
+ @format
+- at dircategory Software development
++ at dircategory Programming Languages:
+ @direntry
+-* gdc: (gdc).               A GCC-based compiler for the D language
++* gdc: (gdc).				A GCC-based compiler for the D language
+ @end direntry
+ @end format
+ 
diff --git a/gcc-nodebug.patch b/gcc-nodebug.patch
new file mode 100644
index 0000000..162eddd
--- /dev/null
+++ b/gcc-nodebug.patch
@@ -0,0 +1,159 @@
+diff -urNp -x '*.orig' gcc-10.2.0.org/Makefile.in gcc-10.2.0/Makefile.in
+--- gcc-10.2.0.org/Makefile.in	2020-07-23 08:35:16.912379792 +0200
++++ gcc-10.2.0/Makefile.in	2021-03-21 01:23:21.870335808 +0100
+@@ -373,7 +373,7 @@ BUILD_PREFIX_1 = @BUILD_PREFIX_1@
+ 
+ # Flags to pass to stage2 and later makes.  They are defined
+ # here so that they can be overridden by Makefile fragments.
+-BOOT_CFLAGS= -g -O2
++BOOT_CFLAGS= -O2
+ BOOT_LDFLAGS=
+ BOOT_ADAFLAGS= -gnatpg
+ 
+@@ -619,8 +619,8 @@ CXXFLAGS_FOR_TARGET = @CXXFLAGS_FOR_TARG
+ LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
+ LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
+ LDFLAGS_FOR_TARGET = @LDFLAGS_FOR_TARGET@
+-GOCFLAGS_FOR_TARGET = -O2 -g
+-GDCFLAGS_FOR_TARGET = -O2 -g
++GOCFLAGS_FOR_TARGET = -O2
++GDCFLAGS_FOR_TARGET = -O2
+ 
+ FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@
+ SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
+diff -urNp -x '*.orig' gcc-10.2.0.org/gcc/ada/gcc-interface/Makefile.in gcc-10.2.0/gcc/ada/gcc-interface/Makefile.in
+--- gcc-10.2.0.org/gcc/ada/gcc-interface/Makefile.in	2020-07-23 08:35:17.112381997 +0200
++++ gcc-10.2.0/gcc/ada/gcc-interface/Makefile.in	2021-03-21 01:23:21.859335808 +0100
+@@ -66,7 +66,7 @@
+ # CFLAGS is for the user to override to, e.g., do a bootstrap with -O2.
+ # BOOT_CFLAGS is the value of CFLAGS to pass
+ # to the stage2 and stage3 compilations
+-CFLAGS = -g
++CFLAGS =
+ BOOT_CFLAGS = -O $(CFLAGS)
+ # These exists to be overridden by the t-* files, respectively.
+ T_CFLAGS =
+@@ -105,13 +105,13 @@ TEXI2PDF = texi2pdf
+ GNATBIND_FLAGS = -static -x
+ ADA_CFLAGS =
+ ADAFLAGS = -W -Wall -gnatpg -gnata
+-FORCE_DEBUG_ADAFLAGS = -g
++FORCE_DEBUG_ADAFLAGS =
+ NO_INLINE_ADAFLAGS = -fno-inline
+ NO_OMIT_ADAFLAGS = -fno-omit-frame-pointer
+ NO_SIBLING_ADAFLAGS = -fno-optimize-sibling-calls
+ NO_REORDER_ADAFLAGS = -fno-toplevel-reorder
+ GNATLIBFLAGS = -W -Wall -gnatg -nostdinc
+-GNATLIBCFLAGS = -g -O2
++GNATLIBCFLAGS = -O2
+ # Pretend that _Unwind_GetIPInfo is available for the target by default.  This
+ # should be autodetected during the configuration of libada and passed down to
+ # here, but we need something for --disable-libada and hope for the best.
+diff -urNp -x '*.orig' gcc-10.2.0.org/libada/Makefile.in gcc-10.2.0/libada/Makefile.in
+--- gcc-10.2.0.org/libada/Makefile.in	2020-07-23 08:35:18.684399314 +0200
++++ gcc-10.2.0/libada/Makefile.in	2021-03-21 01:23:21.859335808 +0100
+@@ -61,7 +61,7 @@ LDFLAGS=
+ CFLAGS=-g
+ PICFLAG = @PICFLAG@
+ GNATLIBFLAGS= -W -Wall -gnatpg -nostdinc
+-GNATLIBCFLAGS= -g -O2
++GNATLIBCFLAGS= -O2
+ GNATLIBCFLAGS_FOR_C = -W -Wall $(GNATLIBCFLAGS) $(CFLAGS_FOR_TARGET) \
+ 	-fexceptions -DIN_RTS @have_getipinfo@ @have_capability@
+ 
+diff -urNp -x '*.orig' gcc-10.2.0.org/libffi/Makefile.am gcc-10.2.0/libffi/Makefile.am
+--- gcc-10.2.0.org/libffi/Makefile.am	2020-07-23 08:35:18.736399887 +0200
++++ gcc-10.2.0/libffi/Makefile.am	2021-03-21 01:23:21.859335808 +0100
+@@ -202,7 +202,7 @@ nodist_libffi_convenience_la_SOURCES = $
+ 
+ LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
+ 
+-AM_CFLAGS = -Wall -g -fexceptions
++AM_CFLAGS = -Wall -fexceptions
+ if FFI_DEBUG
+ # Build debug. Define FFI_DEBUG on the commandline so that, when building with
+ # MSVC, it can link against the debug CRT.
+diff -urNp -x '*.orig' gcc-10.2.0.org/libffi/Makefile.in gcc-10.2.0/libffi/Makefile.in
+--- gcc-10.2.0.org/libffi/Makefile.in	2020-07-23 08:35:54.708796179 +0200
++++ gcc-10.2.0/libffi/Makefile.in	2021-03-21 01:23:21.860335808 +0100
+@@ -604,7 +604,7 @@ libffi_convenience_la_LIBADD = $(libffi_
+ libffi_convenience_la_DEPENDENCIES = $(libffi_la_DEPENDENCIES)
+ nodist_libffi_convenience_la_SOURCES = $(nodist_libffi_la_SOURCES)
+ LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
+-AM_CFLAGS = -Wall -g -fexceptions $(am__append_2)
++AM_CFLAGS = -Wall -fexceptions $(am__append_2)
+ @LIBAT_BUILD_VERSIONED_SHLIB_FALSE at libffi_version_script = 
+ @LIBAT_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE at libffi_version_script = -Wl,--version-script,libffi.map
+ @LIBAT_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE at libffi_version_script = -Wl,-M,libffi.map-sun
+diff -urNp -x '*.orig' gcc-10.2.0.org/libgcc/Makefile.in gcc-10.2.0/libgcc/Makefile.in
+--- gcc-10.2.0.org/libgcc/Makefile.in	2020-07-23 08:35:18.748400018 +0200
++++ gcc-10.2.0/libgcc/Makefile.in	2021-03-21 01:23:21.860335808 +0100
+@@ -243,7 +243,7 @@ endif
+ 
+ # Options to use when compiling libgcc2.a.
+ #
+-LIBGCC2_DEBUG_CFLAGS = -g
++LIBGCC2_DEBUG_CFLAGS =
+ LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(HOST_LIBGCC2_CFLAGS) \
+ 		 $(LIBGCC2_DEBUG_CFLAGS) -DIN_LIBGCC2 \
+ 		 -fbuilding-libgcc -fno-stack-protector \
+diff -urNp -x '*.orig' gcc-10.2.0.org/libstdc++-v3/include/Makefile.am gcc-10.2.0/libstdc++-v3/include/Makefile.am
+--- gcc-10.2.0.org/libstdc++-v3/include/Makefile.am	2021-03-21 01:22:56.853335808 +0100
++++ gcc-10.2.0/libstdc++-v3/include/Makefile.am	2021-03-21 01:23:21.861335808 +0100
+@@ -1343,22 +1343,22 @@ ${host_builddir}/gthr-default.h: ${tople
+ # Build two precompiled C++ includes, stdc++.h.gch/*.gch
+ ${pch1a_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
+ 	-mkdir -p ${pch1_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g -std=gnu++0x ${pch1_source} \
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -std=gnu++0x ${pch1_source} \
+ 	-o $@
+ 
+ ${pch1b_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
+ 	-mkdir -p ${pch1_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch1_source} -o $@
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 ${pch1_source} -o $@
+ 
+ # Build a precompiled TR1 include, stdtr1c++.h.gch/O2.gch
+ ${pch2_output}: ${pch2_source} ${pch1_output}
+ 	-mkdir -p ${pch2_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch2_source} -o $@
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 ${pch2_source} -o $@
+ 
+ # Build a precompiled extension include, extc++.h.gch/O2.gch
+ ${pch3_output}: ${pch3_source} ${pch2_output}
+ 	-mkdir -p ${pch3_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch3_source} -o $@
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 ${pch3_source} -o $@
+ 
+ # For robustness sake (in light of junk files or in-source
+ # configuration), copy from the build or source tree to the install
+diff -urNp -x '*.orig' gcc-10.2.0.org/libstdc++-v3/include/Makefile.in gcc-10.2.0/libstdc++-v3/include/Makefile.in
+--- gcc-10.2.0.org/libstdc++-v3/include/Makefile.in	2021-03-21 01:22:56.854335808 +0100
++++ gcc-10.2.0/libstdc++-v3/include/Makefile.in	2021-03-21 01:23:21.861335808 +0100
+@@ -1821,22 +1821,22 @@ ${host_builddir}/gthr-default.h: ${tople
+ # Build two precompiled C++ includes, stdc++.h.gch/*.gch
+ ${pch1a_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
+ 	-mkdir -p ${pch1_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g -std=gnu++0x ${pch1_source} \
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -std=gnu++0x ${pch1_source} \
+ 	-o $@
+ 
+ ${pch1b_output}: ${allstamped} ${host_builddir}/c++config.h ${pch1_source}
+ 	-mkdir -p ${pch1_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch1_source} -o $@
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 ${pch1_source} -o $@
+ 
+ # Build a precompiled TR1 include, stdtr1c++.h.gch/O2.gch
+ ${pch2_output}: ${pch2_source} ${pch1_output}
+ 	-mkdir -p ${pch2_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch2_source} -o $@
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 ${pch2_source} -o $@
+ 
+ # Build a precompiled extension include, extc++.h.gch/O2.gch
+ ${pch3_output}: ${pch3_source} ${pch2_output}
+ 	-mkdir -p ${pch3_output_builddir}
+-	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 -g ${pch3_source} -o $@
++	$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) -O2 ${pch3_source} -o $@
+ 
+ # For robustness sake (in light of junk files or in-source
+ # configuration), copy from the build or source tree to the install
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/gcc-d.git/commitdiff/d8b44d2e437a4c5ed907e2e72c2d56269cb47c90




More information about the pld-cvs-commit mailing list