source: projects/specs/trunk/g/gcc/gcc-vl.spec @ 12225

Revision 12225, 156.1 KB checked in by tomop, 5 years ago (diff)

updated 4 packages

binutils-2.32-1

gcc-8.3.1-1

glibc-2.30-1

libtool-2.4.6-5

Line 
1%bcond_with check
2
3# version of tarball
4%global gcc_version 8.3.0
5%global gcc_major 8
6# Note, gcc_release must be integer, if you want to add suffixes to
7# %{release}, append them after %{gcc_release} on Release: line.
8%global gcc_release 1%{?_dist_release}
9#global _unpackaged_files_terminate_build 0
10%{?!_fmoddir: %global _fmoddir %{_libdir}/gfortran/modules}
11%global multilib_64_archs sparc64 ppc64 s390x x86_64
12%global build_objc 1
13# %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha
14# %global build_ada 1
15# %else
16%global build_ada 0
17# %endif
18%global build_java 0
19%ifarch %{ix86} x86_64 %{arm}
20%global build_go 1
21%else
22%global build_go 0
23%endif
24%ifarch %{ix86} x86_64 ia64
25%global build_libquadmath 1
26%else
27%global build_libquadmath 0
28%endif
29%ifarch %{ix86} x86_64 ppc ppc64
30%global build_libasan 1
31%else
32%global build_libasan 0
33%endif
34%ifarch x86_64
35%global build_libtsan 1
36%else
37%global build_libtsan 0
38%endif
39%ifarch x86_64
40%global build_liblsan 1
41%else
42%global build_liblsan 0
43%endif
44%ifarch %{ix86} x86_64 ppc ppc64 ppc64p7 %{arm} aarch64
45%global build_libubsan 1
46%else
47%global build_libubsan 0
48%endif
49%ifarch %{ix86} x86_64 ppc ppc64 %{arm}
50%global build_libatomic 1
51%else
52%global build_libatomic 0
53%endif
54%ifarch %{ix86} x86_64 %{arm} ppc ppc64
55%global build_libitm 1
56%else
57%global build_libitm 0
58%endif
59%ifarch %{ix86} x86_64
60%global build_libmpx 1
61%else
62%global build_libmpx 0
63%endif
64%global build_isl 1
65%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64
66%global attr_ifunc 1
67%else
68%global attr_ifunc 0
69%endif
70# %global build_cloog 1
71%global build_cloog 0
72%global build_libstdcxx_docs 1
73# If you don't have already a usable gcc-java and libgcj for your arch,
74# do on some arch which has it rpmbuild -bc --with java_tar gcc.spec
75# which creates libjava-classes-%{version}-%{release}.tar.bz2
76# With this then on the new arch do rpmbuild -ba -v --with java_bootstrap gcc.spec
77%global bootstrap_java %{?_with_java_bootstrap:%{build_java}}%{!?_with_java_bootstrap:0}
78%global build_java_tar %{?_with_java_tar:%{build_java}}%{!?_with_java_tar:0}
79
80%ifarch s390x
81%global multilib_32_arch s390
82%endif
83%ifarch sparc64
84%global multilib_32_arch sparcv9
85%endif
86%ifarch ppc64
87%global multilib_32_arch ppc
88%endif
89%ifarch x86_64
90%global multilib_32_arch i686
91%endif
92
93Summary:       GNU Compiler Collection (C, C++, Objective-C, ...)
94Summary(ja):   GNU コンパイラコレクション (C, C++, Objective-C, ...)
95Name:          gcc
96Version:       8.3.1
97Release:       %{gcc_release}
98
99Vendor:         Project Vine
100Distribution:   Vine Linux
101
102# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
103# GCC Runtime Exception.
104License:        GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions
105Group:          Development/Languages
106Source0:        https://ftp.gnu.org/gnu/%{name}/%{name}-%{gcc_version}/%{name}-%{gcc_version}.tar.xz
107URL:            https://gcc.gnu.org
108BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root
109# Need binutils with -pie support >= 2.14.90.0.4-4
110# Need binutils which can omit dot symbols and overlap .opd on ppc64 >= 2.15.91.0.2-4
111# Need binutils which handle -msecure-plt on ppc >= 2.16.91.0.2-2
112# Need binutils which support .weakref >= 2.16.91.0.3-1
113# Need binutils which support --hash-style=gnu >= 2.17.50.0.2-7
114# Need binutils which support mffgpr and mftgpr >= 2.17.50.0.2-8
115# Need binutils which support --build-id >= 2.17.50.0.17-3
116# Need binutils which support %gnu_unique_object >= 2.19.51.0.14
117# Need binutils which support .cfi_sections >= 2.19.51.0.14-33
118# Need binutils which support --no-add-needed >= 2.20.51.0.2-12
119BuildRequires: binutils >= 2.20.51.0.2-12
120# While gcc doesn't include statically linked binaries, during testing
121# -static is used several times.
122BuildRequires: glibc-static
123BuildRequires: zlib-devel, gettext, dejagnu, bison, flex, texinfo, sharutils
124##VINE##TODO## BuildRequires: systemtap-sdt-devel >= 1.3
125# For VTA guality testing
126BuildRequires: gdb
127# Make sure pthread.h doesn't contain __thread tokens
128# Make sure glibc supports stack protector
129# Make sure glibc supports DT_GNU_HASH
130BuildRequires: glibc-devel >= 2.4.90-13
131BuildRequires: elfutils-devel >= 0.147
132BuildRequires: elfutils-libelf-devel >= 0.147
133%ifarch ppc ppc64 s390 s390x sparc sparcv9 alpha
134# Make sure glibc supports TFmode long double
135BuildRequires: glibc >= 2.3.90-35
136%endif
137%ifarch %{multilib_64_archs}
138# Ensure glibc{,-devel} is installed for both multilib arches
139# BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
140BuildRequires: compat32-glibc-devel
141BuildRequires: compat32-glibc-static
142%endif
143%if %{build_ada}
144# Ada requires Ada to build
145BuildRequires: gcc-gnat >= 3.1, libgnat >= 3.1
146%endif
147%ifarch ia64
148BuildRequires: libunwind >= 0.98
149%endif
150%if %{build_cloog}
151%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
152BuildRequires: ppl >= 0.11.2, ppl-devel >= 0.11.2
153%else
154BuildRequires: ppl >= 0.10, ppl-devel >= 0.10
155%endif
156BuildRequires: cloog-ppl >= 0.15, cloog-ppl-devel >= 0.15
157%endif
158%if %{build_isl}
159BuildRequires: isl-devel >= 0.14
160Requires: isl >= 0.14
161%endif
162%if %{build_libstdcxx_docs}
163BuildRequires: doxygen >= 1.7.1
164BuildRequires: graphviz
165%endif
166# for testsuite
167BuildRequires: net-tools
168Requires: gcc-cpp = %{version}-%{release}
169# Need .eh_frame ld optimizations
170# Need proper visibility support
171# Need -pie support
172# Need --as-needed/--no-as-needed support
173# On ppc64, need omit dot symbols support and --non-overlapping-opd
174# Need binutils that owns /usr/bin/c++filt
175# Need binutils that support .weakref
176# Need binutils that supports --hash-style=gnu
177# Need binutils that support mffgpr/mftgpr
178# Need binutils that support --build-id
179# Need binutils that support %gnu_unique_object
180# Need binutils that support .cfi_sections
181# Need binutils that support --no-add-needed
182Requires: binutils >= 2.20.51.0.2-12
183# Make sure gdb will understand DW_FORM_strp
184Conflicts: gdb < 5.1-2
185Requires: glibc-devel >= 2.2.90-12
186%ifarch ppc ppc64 s390 s390x sparc sparcv9 alpha
187# Make sure glibc supports TFmode long double
188Requires: glibc >= 2.3.90-35
189%endif
190Requires: libgcc >= %{version}-%{release}
191Requires: libgomp = %{version}-%{release}
192%if !%{build_ada}
193Obsoletes: gcc-gnat < %{version}-%{release}
194Obsoletes: libgnat < %{version}-%{release}
195%endif
196%if %{build_cloog}
197Requires: cloog-ppl >= 0.15
198%endif
199Obsoletes: gcc3
200Obsoletes: egcs
201Obsoletes: gcc34
202Obsoletes: gcc35
203Obsoletes: gcc4
204Provides: gcc4 = %{version}-%{release}
205Requires(post): /sbin/install-info
206Requires(preun): /sbin/install-info
207AutoReq: true
208
209Patch0: gcc-8.3-20190921.patch
210
211Patch1: gcc8-hack.patch
212Patch2: gcc8-i386-libgomp.patch
213Patch3: gcc8-sparc-config-detection.patch
214Patch4: gcc8-libgomp-omp_h-multilib.patch
215Patch5: gcc8-libtool-no-rpath.patch
216Patch6: gcc8-isl-dl.patch
217Patch7: gcc8-libstdc++-docs.patch
218Patch8: gcc8-no-add-needed.patch
219Patch9: gcc8-foffload-default.patch
220Patch10: gcc8-Wno-format-security.patch
221Patch11: gcc8-rh1512529-aarch64.patch
222Patch12: gcc8-mcet.patch
223Patch13: gcc8-rh1574936.patch
224
225
226# On ARM EABI systems, we do want -gnueabi to be part of the
227# target triple.
228%ifnarch %{arm}
229%global _gnu %{nil}
230%endif
231%ifarch sparcv9
232%global gcc_target_platform sparc64-%{_vendor}-%{_target_os}
233%endif
234%ifarch ppc
235%global gcc_target_platform ppc64-%{_vendor}-%{_target_os}
236%endif
237%ifnarch sparcv9 ppc
238%global gcc_target_platform %{_target_platform}
239%endif
240
241################################################# gcc
242
243%description
244The gcc package contains the GNU Compiler Collection version %{version}.
245You'll need this package in order to compile C code.
246
247%description -l ja
248gcc パッケージには、GNU Compiler Collection バージョン %{version} が
249含まれています。C のソースコードをコンパイルするにはこのパッケージが
250必要となります。
251
252################################################# libgcc
253
254%package -n libgcc
255Summary: GCC version %{version} shared support library
256Summary(ja): GCC バージョン %{version} 共有サポートライブラリ
257Group: System Environment/Libraries
258Autoreq: false
259Obsoletes: libmudflap
260Obsoletes: libmudflap-devel
261Obsoletes: libmudflap-static
262
263%description -n libgcc
264This package contains GCC shared support library which is needed
265e.g. for exception handling support.
266
267%description -n libgcc -l ja
268このパッケージには GCC 共有サポートライブラリが含まれます。
269これは例えば例外ハンドリングサポートに必要です。
270
271################################################# c++
272
273%package c++
274Summary: C++ support for GCC
275Summary(ja): GNU コンパイラ集 - C++ サポート
276Group: Development/Languages
277Requires: gcc = %{version}-%{release}
278Requires: libstdc++ = %{version}-%{release}
279Requires: libstdc++-devel = %{version}-%{release}
280Obsoletes: gcc34-c++
281Obsoletes: gcc35-c++
282Obsoletes: gcc4-c++
283Provides: gcc4-c++ = %{version}-%{release}
284Autoreq: true
285
286%description c++
287This package adds C++ support to the GNU Compiler Collection.
288It includes support for most of the current C++ specification,
289including templates and exception handling.
290
291%description c++ -l ja
292このパッケージは GNU Compiler Collection に C++ サポートを追加します。
293テンプレートと例外ハンドリングサポートを含む、現在の C++ 仕様の多くを
294サポートします。
295
296################################################# libstdc++
297
298%package -n libstdc++
299Summary: GNU Standard C++ Library
300Summary(ja): GNU 標準 C++ ライブラリ
301Group: System Environment/Libraries
302Obsoletes: libstdc++34
303Provides: libstdc++34 = %{version}-%{release}
304Autoreq: true
305BuildRequires: python3
306BuildRequires: python3-rpm-macros
307Requires: glibc >= 2.10.90-7
308
309%description -n libstdc++
310The libstdc++ package contains a rewritten standard compliant GCC Standard
311C++ Library.
312
313%description -n libstdc++ -l ja
314libstdc++ パッケージには、標準準拠に書き直された
315GCC 標準 C++ ライブラリが収録されています。
316
317################################################# libstdc++-devel
318
319%package -n libstdc++-devel
320Summary: Header files and libraries for C++ development
321Summary(ja): C++ 開発用ヘッダ/ライブラリ
322Group: Development/Libraries
323Requires: libstdc++ = %{version}-%{release}
324Autoreq: true
325
326%description -n libstdc++-devel
327This is the GNU implementation of the standard C++ libraries.  This
328package includes the header files and libraries needed for C++
329development. This includes rewritten implementation of STL.
330
331%description -n libstdc++-devel -l ja
332これは標準 C++ ライブラリの GNU 実装です。
333このパッケージには C++ 開発に必要なヘッダファイルとライブラリが
334収録されています。これには STL の実装も含まれます。
335
336################################################# libstdc++-static
337
338%package -n libstdc++-static
339Summary: Static libraries for the GNU standard C++ library
340Summary(ja): GNU 標準 C++ ライブラリの静的リンクライブラリ
341Group: Development/Libraries
342Requires: libstdc++-devel = %{version}-%{release}
343Autoreq: true
344
345%description -n libstdc++-static
346Static libraries for the GNU standard C++ library.
347
348%description -n libstdc++-static -l ja
349GNU 標準 C++ ライブラリの静的リンクライブラリ
350
351################################################# libstdc++-docs
352
353%package -n libstdc++-docs
354Summary: Documentation for the GNU standard C++ library
355Summary(ja): GNU 標準 C++ ライブラリのドキュメント
356Group: Development/Documentation
357Autoreq: true
358
359%description -n libstdc++-docs
360Manual, doxygen generated API information and Frequently Asked Questions
361for the GNU standard C++ library.
362
363%description -n libstdc++-docs -l ja
364GNU 標準 C++ ライブラリのマニュアル、Doxygenで生成した API情報と FAQ集
365
366################################################# objc
367
368%package objc
369Summary: Objective-C support for GCC
370Summary(ja): GNU コンパイラ集 - Objective C サポート
371Group: Development/Languages
372Requires: gcc = %{version}-%{release}
373Requires: libobjc = %{version}-%{release}
374Autoreq: true
375
376%description objc
377gcc-objc provides Objective-C support for the GCC.
378Mainly used on systems running NeXTSTEP, Objective-C is an
379object-oriented derivative of the C language.
380
381%description objc -l ja
382gcc-objc パッケージは GCC に Objective-C サポートを追加します。
383Objective-C は C 言語から派生したオブジェクト指向言語で、
384主に NeXTSTEP システムで使われてきました。
385
386################################################# objc++
387
388%package objc++
389Summary: Objective-C++ support for GCC
390Summary(ja): GNU コンパイラ集 - Objective C++ サポート
391Group: Development/Languages
392Requires: gcc-c++ = %{version}-%{release}
393Requires: gcc-objc = %{version}-%{release}
394Autoreq: true
395
396%description objc++
397gcc-objc++ package provides Objective-C++ support for the GCC.
398
399%description objc++ -l ja
400gcc-objc++ パッケージは GCC に Objective-C++ サポートを追加します。
401
402################################################# libobjc
403
404%package -n libobjc
405Summary: Objective-C runtime
406Summary(ja): Objective C ランタイムライブラリ
407Group: System Environment/Libraries
408Autoreq: true
409
410%description -n libobjc
411This package contains Objective-C shared library which is needed to run
412Objective-C dynamically linked programs.
413
414%description -n libobjc -l ja
415このパッケージには Objective-C 共有ライブラリが収められています。
416これは Objective-C にダイナミックリンクされたプログラムの実行に必要と
417なります。
418
419################################################# gfortran
420
421%package gfortran
422Summary: Fortran support
423Summary(ja): GNU コンパイラ集 - Fortran サポート
424Group: Development/Languages
425Requires: gcc = %{version}-%{release}
426Requires: libgfortran = %{version}-%{release}
427%if %{build_libquadmath}
428Requires: libquadmath = %{version}-%{release}
429Requires: libquadmath-devel = %{version}-%{release}
430%endif
431BuildRequires: gmp-devel >= 4.2.2-3vl2
432BuildRequires: mpfr-devel >= 2.2.1
433BuildRequires: libmpc-devel >= 0.8.1
434Obsoletes: gcc4-gfortran
435Requires(post): /sbin/install-info
436Requires(preun): /sbin/install-info
437Autoreq: true
438
439%description gfortran
440The gcc-gfortran package provides support for compiling Fortran
441programs with the GNU Compiler Collection.
442
443%description gfortran -l ja
444gcc-gfortran パッケージは GNU Compiler Collection に
445Fortran プログラムをコンパイルする機能を追加するものです。
446
447################################################# libgfortran
448
449%package -n libgfortran
450Summary: Fortran runtime
451Summary(ja): Fortran ランタイム
452Group: System Environment/Libraries
453Autoreq: true
454%if %{build_libquadmath}
455Requires: libquadmath = %{version}-%{release}
456%endif
457
458%description -n libgfortran
459This package contains Fortran shared library which is needed to run
460Fortran dynamically linked programs.
461
462%description -n libgfortran -l ja
463このパッケージには Fortran 共有ライブラリが収められています。
464これは Fortran にダイナミックリンクされたプログラムの実行に
465必要となります。
466
467################################################# libgfortran-static
468
469%package -n libgfortran-static
470Summary: Static Fortran libraries
471Summary(ja): Fortranの静的リンクライブラリ
472Group: Development/Libraries
473Requires: libgfortran = %{version}-%{release}
474Requires: gcc = %{version}-%{release}
475%if %{build_libquadmath}
476Requires: libquadmath-static = %{version}-%{release}
477%endif
478
479%description -n libgfortran-static
480This package contains static Fortran libraries.
481
482%description -n libgfortran-static -l ja
483このパッケージには Fortran 静的リンクライブラリが収められています。
484
485################################################# libgomp
486
487%package -n libgomp
488Summary: GCC OpenMP v3.0 shared support library
489Summary(ja): GCC OpenMP v3.0 共有ライブラリ
490Group: System Environment/Libraries
491Requires(post): /sbin/install-info
492Requires(preun): /sbin/install-info
493
494%description -n libgomp
495This package contains GCC shared support library which is needed
496for OpenMP v3.0 support.
497
498%description -n libgomp -l ja
499このパッケージには OpenMP v3.0 をサポートする GCC 共有ライブラリが
500収められています。
501
502################################################# gdb-plugin
503
504%package gdb-plugin
505Summary: GCC plugin for GDB
506Group: Development/Debuggers
507Requires: gcc = %{version}-%{release}
508
509%description gdb-plugin
510This package contains GCC plugin for GDB C expression evaluation.
511
512################################################# libgccjit
513
514%package -n libgccjit
515Summary: Library for embedding GCC inside programs and libraries
516Group: System Environment/Libraries
517Requires: gcc = %{version}-%{release}
518
519%description -n libgccjit
520This package contains shared library with GCC JIT front-end.
521
522################################################# libgccjit-devel
523
524%package -n libgccjit-devel
525Summary: Support for embedding GCC inside programs and libraries
526Group: Development/Libraries
527BuildRequires: python-sphinx
528Requires: libgccjit = %{version}-%{release}
529Requires(post): /sbin/install-info
530Requires(preun): /sbin/install-info
531
532%description -n libgccjit-devel
533This package contains header files and documentation for GCC JIT front-end.
534
535################################################# libquadmath
536
537%package -n libquadmath
538Summary: GCC __float128 shared support library
539Summary(ja): GCC __float128 サポートのための共有ライブラリ
540Group: System Environment/Libraries
541Requires(post): /sbin/install-info
542Requires(preun): /sbin/install-info
543
544%description -n libquadmath
545This package contains GCC shared support library which is needed
546for __float128 math support and for Fortran REAL*16 support.
547
548%description -n libquadmath -l ja
549このパッケージには __float128 データ型と Fortran REAL*16 をサポートする
550ために必要な GCC 共有ライブラリが収められています。
551
552################################################# libquadmath-devel
553
554%package -n libquadmath-devel
555Summary: GCC __float128 support
556Summary(ja): GCC __float128 サポート
557Group: Development/Libraries
558Requires: libquadmath = %{version}-%{release}
559Requires: gcc = %{version}-%{release}
560
561%description -n libquadmath-devel
562This package contains headers for building Fortran programs using
563REAL*16 and programs using __float128 math.
564
565%description -n libquadmath-devel -l ja
566このパッケージには __float128 データ型を使ったプログラムや REAL*16 を
567使った Fortranプログラムをビルドするためのヘッダーが収められています。
568
569################################################# libquadmath-static
570
571%package -n libquadmath-static
572Summary: Static libraries for __float128 support
573Summary(ja): __float128 サポートのための静的リンクライブラリ
574Group: Development/Libraries
575Requires: libquadmath-devel = %{version}-%{release}
576
577%description -n libquadmath-static
578This package contains static libraries for building Fortran programs
579using REAL*16 and programs using __float128 math.
580
581%description -n libquadmath-static -l ja
582このパッケージには __float128 データ型を使ったプログラムや REAL*16 を
583使った Fortranプログラムをビルドするための静的リンクライブラリが収めら
584れています。
585
586################################################# libitm
587
588%package -n libitm
589Summary: The GNU Transactional Memory library
590Group: System Environment/Libraries
591Requires(post): /sbin/install-info
592Requires(preun): /sbin/install-info
593
594%description -n libitm
595This package contains the GNU Transactional Memory library
596which is a GCC transactional memory support runtime library.
597
598################################################# libitm-devel
599
600%package -n libitm-devel
601Summary: The GNU Transactional Memory support
602Group: Development/Libraries
603Requires: libitm = %{version}-%{release}
604Requires: gcc = %{version}-%{release}
605
606%description -n libitm-devel
607This package contains headers and support files for the
608GNU Transactional Memory library.
609
610################################################# libitm-static
611
612%package -n libitm-static
613Summary: The GNU Transactional Memory static library
614Group: Development/Libraries
615Requires: libitm-devel = %{version}-%{release}
616
617%description -n libitm-static
618This package contains GNU Transactional Memory static libraries.
619
620################################################# libatomic
621
622%package -n libatomic
623Summary: The GNU Atomic library
624Group: System Environment/Libraries
625Requires(post): /sbin/install-info
626Requires(preun): /sbin/install-info
627
628%description -n libatomic
629This package contains the GNU Atomic library
630which is a GCC support runtime library for atomic operations not supported
631by hardware.
632
633################################################# libatomic-static
634
635%package -n libatomic-static
636Summary: The GNU Atomic static library
637Group: Development/Libraries
638Requires: libatomic = %{version}-%{release}
639
640%description -n libatomic-static
641This package contains GNU Atomic static libraries.
642
643################################################# libasan
644
645%package -n libasan
646Summary: The Address Sanitizer runtime library
647Group: System Environment/Libraries
648Requires(post): /sbin/install-info
649Requires(preun): /sbin/install-info
650
651%description -n libasan
652This package contains the Address Sanitizer library
653which is used for -fsanitize=address instrumented programs.
654
655################################################# libasan-static
656
657%package -n libasan-static
658Summary: The Address Sanitizer static library
659Group: Development/Libraries
660Requires: libasan = %{version}-%{release}
661
662%description -n libasan-static
663This package contains Address Sanitizer static runtime library.
664
665################################################# libtsan
666
667%package -n libtsan
668Summary: The Thread Sanitizer runtime library
669Group: System Environment/Libraries
670Requires(post): /sbin/install-info
671Requires(preun): /sbin/install-info
672
673%description -n libtsan
674This package contains the Thread Sanitizer library
675which is used for -fsanitize=thread instrumented programs.
676
677################################################# libtsan-static
678
679%package -n libtsan-static
680Summary: The Thread Sanitizer static library
681Group: Development/Libraries
682Requires: libtsan = %{version}-%{release}
683
684%description -n libtsan-static
685This package contains Thread Sanitizer static runtime library.
686
687################################################# libubsan
688
689%package -n libubsan
690Summary: The Undefined Behavior Sanitizer runtime library
691Group: System Environment/Libraries
692Requires(post): /sbin/install-info
693Requires(preun): /sbin/install-info
694
695%description -n libubsan
696This package contains the Undefined Behavior Sanitizer library
697which is used for -fsanitize=undefined instrumented programs.
698
699################################################# libubsan-static
700
701%package -n libubsan-static
702Summary: The Undefined Behavior Sanitizer static library
703Group: Development/Libraries
704Requires: libubsan = %{version}-%{release}
705
706%description -n libubsan-static
707This package contains Undefined Behavior Sanitizer static runtime library.
708
709################################################# liblsan
710
711%package -n liblsan
712Summary: The Leak Sanitizer runtime library
713Group: System Environment/Libraries
714Requires(post): /sbin/install-info
715Requires(preun): /sbin/install-info
716
717%description -n liblsan
718This package contains the Leak Sanitizer library
719which is used for -fsanitize=leak instrumented programs.
720
721################################################# liblsan-static
722
723%package -n liblsan-static
724Summary: The Leak Sanitizer static library
725Group: Development/Libraries
726Requires: liblsan = %{version}-%{release}
727
728%description -n liblsan-static
729This package contains Leak Sanitizer static runtime library.
730
731################################################# libmpx
732
733%package -n libmpx
734Summary: The Memory Protection Extensions runtime libraries
735Group: System Environment/Libraries
736Requires(post): /sbin/install-info
737Requires(preun): /sbin/install-info
738
739%description -n libmpx
740This package contains the Memory Protection Extensions runtime libraries
741which is used for -fcheck-pointer-bounds -mmpx instrumented programs.
742
743################################################# libmpx-static
744
745%package -n libmpx-static
746Summary: The Memory Protection Extensions static libraries
747Group: Development/Libraries
748Requires: libmpx = %{version}-%{release}
749
750%description -n libmpx-static
751This package contains the Memory Protection Extensions static runtime libraries.
752
753################################################# gcc-cpp
754
755%package cpp
756Summary: The C Preprocessor
757Summary(ja): C プリプロセッサ
758Group: Development/Languages
759Provides: cpp = %{version}-%{release}
760Autoreq: true
761Requires(post): /sbin/install-info
762Requires(preun): /sbin/install-info
763
764%description cpp
765Cpp is the GNU C-Compatible Compiler Preprocessor.
766Cpp is a macro processor which is used automatically
767by the C compiler to transform your program before actual
768compilation. It is called a macro processor because it allows
769you to define macros, abbreviations for longer
770constructs.
771
772The C preprocessor provides four separate functionalities: the
773inclusion of header files (files of declarations that can be
774substituted into your program); macro expansion (you can define macros,
775and the C preprocessor will replace the macros with their definitions
776throughout the program); conditional compilation (using special
777preprocessing directives, you can include or exclude parts of the
778program according to various conditions); and line control (if you use
779a program to combine or rearrange source files into an intermediate
780file which is then compiled, you can use line control to inform the
781compiler about where each source line originated).
782
783You should install this package if you are a C programmer and you use
784macros.
785
786################################################# gcc-gnat
787
788%package gnat
789Summary: Ada 95 support for GCC
790Summary(ja): GNU コンパイラ集 - Ada 95 サポート
791Group: Development/Languages
792Requires: gcc = %{version}-%{release}
793Requires: libgnat = %{version}-%{release}
794Requires: libgnat-devel = %{version}-%{release}
795Obsoletes: gnat-devel, gcc3-gnat
796Autoreq: true
797Requires(post): /sbin/install-info
798Requires(preun): /sbin/install-info
799
800%description gnat
801GNAT is a GNU Ada 95 front-end to GCC. This package includes development tools,
802the documents and Ada 95 compiler.
803
804%description gnat -l ja
805GNAT は GCC 用の GNU Ada 95 フロントエンドです。
806このパッケージには Ada 95 コンパイラ、開発ツール、ドキュメントが
807収録されています。
808
809################################################# libgnat
810
811%package -n libgnat
812Summary: GNU Ada 95 runtime shared libraries
813Summary(ja): GNU コンパイラ集 - Ada 95 ランタイム共有ライブラリ
814Group: System Environment/Libraries
815Obsoletes: gnat libgnat3
816Autoreq: true
817
818%description -n libgnat
819GNAT is a GNU Ada 95 front-end to GCC. This package includes shared libraries,
820which are required to run programs compiled with the GNAT.
821
822%description -n libgnat -l ja
823GNAT は GCC 用の GNU Ada 95 フロントエンドです。
824このパッケージには GNAT でコンパイルされたプログラムを実行するために必要な
825共有ライブラリが収録されています。
826
827################################################# libgnat-devel
828
829%package -n libgnat-devel
830Summary: GNU Ada 95 libraries
831Group: Development/Languages
832Autoreq: true
833
834%description -n libgnat-devel
835GNAT is a GNU Ada 95 front-end to GCC. This package includes libraries,
836which are required to compile with the GNAT.
837
838################################################# libgnat-static
839
840%package -n libgnat-static
841Summary: GNU Ada 95 static libraries
842Group: Development/Languages
843Requires: libgnat-devel = %{version}-%{release}
844Autoreq: true
845
846%description -n libgnat-static
847GNAT is a GNU Ada 95 front-end to GCC. This package includes static libraries.
848
849################################################# gcc-go
850
851%package go
852Summary: Go support
853Group: Development/Languages
854Requires: gcc = %{version}-%{release}
855Requires: libgo = %{version}-%{release}
856Requires: libgo-devel = %{version}-%{release}
857Requires(post): /sbin/install-info
858Requires(preun): /sbin/install-info
859Autoreq: true
860
861%description go
862The gcc-go package provides support for compiling Go programs
863with the GNU Compiler Collection.
864
865################################################# libgo
866
867%package -n libgo
868Summary: Go runtime
869Group: System Environment/Libraries
870Autoreq: true
871
872%description -n libgo
873This package contains Go shared library which is needed to run
874Go dynamically linked programs.
875
876################################################# libgo-devel
877
878%package -n libgo-devel
879Summary: Go development libraries
880Group: Development/Languages
881Requires: libgo = %{version}-%{release}
882Autoreq: true
883
884%description -n libgo-devel
885This package includes libraries and support files for compiling
886Go programs.
887
888################################################# libgo-static
889
890%package -n libgo-static
891Summary: Static Go libraries
892Group: Development/Libraries
893Requires: libgo = %{version}-%{release}
894Requires: gcc = %{version}-%{release}
895
896%description -n libgo-static
897This package contains static Go libraries.
898
899################################################# gcc-plugin-devel
900
901%package plugin-devel
902Summary: Support for compiling GCC plugins
903Group: Development/Languages
904Requires: gcc = %{version}-%{release}
905Requires: gmp-devel >= 4.1.2-8, mpfr-devel >= 2.2.1, libmpc-devel >= 0.8.1
906
907%description plugin-devel
908This package contains header files and other support files
909for compiling GCC plugins.  The GCC plugin ABI is currently
910not stable, so plugins must be rebuilt any time GCC is updated.
911
912#####################################################################
913
914%prep
915%setup -q -n gcc-%{gcc_version}
916%patch0 -p1 -b .upstream
917
918%patch1 -p0 -b .hack~
919%patch2 -p0 -b .i386-libgomp~
920%patch3 -p0 -b .sparc-config-detection~
921%patch4 -p0 -b .libgomp-omp_h-multilib~
922%patch5 -p0 -b .libtool-no-rpath~
923%if %{build_isl}
924%patch6 -p0 -b .isl-dl~
925%endif
926%if %{build_libstdcxx_docs}
927%patch7 -p0 -b .libstdc++-docs~
928%endif
929%patch8 -p0 -b .no-add-needed~
930%patch9 -p0 -b .foffload-default~
931%patch10 -p0 -b .Wno-format-security~
932%patch11 -p0 -b .rh1512529-aarch64~
933%if 0%{?fedora} == 28
934%patch12 -p0 -b .mcet~
935%endif
936%if 0%{?fedora} >= 29 || 0%{?rhel} > 7
937%patch13 -p0 -b .rh1574936~
938%endif
939
940cp -a libstdc++-v3/config/cpu/i{4,3}86/atomicity.h
941
942echo 'TM_H += $(srcdir)/config/rs6000/rs6000-modes.h' >> gcc/config/rs6000/t-rs6000
943
944./contrib/gcc_update --touch
945
946LC_ALL=C sed -i -e 's/\xa0/ /' gcc/doc/options.texi
947
948sed -i -e 's/Common Driver Var(flag_report_bug)/& Init(1)/' gcc/common.opt
949
950# This test causes fork failures, because it spawns way too many threads
951rm -f gcc/testsuite/go.test/test/chan/goroutines.go
952
953%build
954
955# Undo the broken autoconf change in recent Fedora versions
956export CONFIG_SITE=NONE
957
958CC=gcc
959CXX=g++
960
961OPT_FLAGS=`echo %{optflags}|sed -e 's/\(-Wp,\)\?-D_FORTIFY_SOURCE=[12]//g'`
962OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-m64//g;s/-m32//g;s/-m31//g'`
963OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mfpmath=sse/-mfpmath=sse -msse2/g'`
964OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/ -pipe / /g'`
965OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-Werror=format-security/-Wformat-security/g'`
966
967%ifarch %{ix86}
968OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-march=i.86//g'`
969%endif
970OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e 's/[[:blank:]]\+/ /g'`
971case "$OPT_FLAGS" in
972  *-fasynchronous-unwind-tables*)
973    sed -i -e 's/-fno-exceptions /-fno-exceptions -fno-asynchronous-unwind-tables /' \
974      libgcc/Makefile.in
975    ;;
976esac
977
978rm -rf obj-%{gcc_target_platform}
979mkdir obj-%{gcc_target_platform}
980cd obj-%{gcc_target_platform}
981
982enablelgo=
983enablelada=
984enablelobjc=
985%if %{build_objc}
986enablelobjc=,objc,obj-c++
987%endif
988%if %{build_ada}
989enablelada=,ada
990%endif
991%if %{build_go}
992enablelgo=,go
993%endif
994
995CONFIGURE_OPTS="\
996        --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \
997        --with-bugurl=http://bugzilla.redhat.com/bugzilla \
998        --enable-shared --enable-threads=posix --enable-checking=release \
999        --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions \
1000        --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only \
1001        --enable-plugin --enable-initfini-array \
1002%if %{build_isl}
1003        --with-isl \
1004%else
1005        --without-isl \
1006%endif
1007%if %{build_libmpx}
1008        --enable-libmpx \
1009%else
1010        --disable-libmpx \
1011%endif
1012%if %{attr_ifunc}
1013        --enable-gnu-indirect-function \
1014%endif
1015%ifarch %{ix86} x86_64
1016        --enable-cet \
1017        --with-tune=generic \
1018%endif
1019%ifarch %{ix86}
1020        --with-arch=i686 \
1021%endif
1022%ifarch x86_64
1023        --with-arch_32=i686 \
1024%endif
1025        --build=%{gcc_target_platform} \
1026        "
1027
1028CC="$CC" CXX="$CXX" CFLAGS="$OPT_FLAGS" \
1029        CXXFLAGS="`echo " $OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g' \
1030                  | sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \
1031        XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
1032        ../configure --enable-bootstrap \
1033        --enable-languages=c,c++,fortran${enablelobjc}${enablelada}${enablelgo},lto \
1034        $CONFIGURE_OPTS
1035
1036make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" profiledbootstrap
1037
1038CC="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cc`"
1039CXX="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cxx` `%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-includes`"
1040
1041# Build libgccjit separately, so that normal compiler binaries aren't -fpic
1042# unnecessarily.
1043mkdir objlibgccjit
1044cd objlibgccjit
1045CC="$CC" CXX="$CXX" CFLAGS="$OPT_FLAGS" \
1046        CXXFLAGS="`echo " $OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g' \
1047                  | sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \
1048        XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
1049        ../../configure --disable-bootstrap --enable-host-shared \
1050        --enable-languages=jit $CONFIGURE_OPTS
1051make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" all-gcc
1052cp -a gcc/libgccjit.so* ../gcc/
1053cd ../gcc/
1054ln -sf xgcc %{gcc_target_platform}-gcc-%{gcc_major}
1055cp -a Makefile{,.orig}
1056sed -i -e '/^CHECK_TARGETS/s/$/ check-jit/' Makefile
1057touch -r Makefile.orig Makefile
1058rm Makefile.orig
1059make jit.sphinx.html
1060make jit.sphinx.install-html jit_htmldir=`pwd`/../../rpm.doc/libgccjit-devel/html
1061cd ..
1062
1063# Make generated man pages even if Pod::Man is not new enough
1064perl -pi -e 's/head3/head2/' ../contrib/texi2pod.pl
1065for i in ../gcc/doc/*.texi; do
1066  cp -a $i $i.orig; sed 's/ftable/table/' $i.orig > $i
1067done
1068make -C gcc generated-manpages
1069for i in ../gcc/doc/*.texi; do mv -f $i.orig $i; done
1070
1071# Make generated doxygen pages.
1072%if %{build_libstdcxx_docs}
1073cd %{gcc_target_platform}/libstdc++-v3
1074make doc-html-doxygen
1075make doc-man-doxygen
1076cd ../..
1077%endif
1078
1079# Copy various doc files here and there
1080cd ..
1081mkdir -p rpm.doc/gfortran rpm.doc/objc
1082mkdir -p rpm.doc/go rpm.doc/libgo rpm.doc/libquadmath rpm.doc/libitm
1083mkdir -p rpm.doc/changelogs/{gcc/cp,gcc/ada,gcc/jit,libstdc++-v3,libobjc,libgomp,libcc1,libatomic,libsanitizer,libmpx}
1084
1085for i in {gcc,gcc/cp,gcc/ada,gcc/jit,libstdc++-v3,libobjc,libgomp,libcc1,libatomic,libsanitizer,libmpx}/ChangeLog*; do
1086        cp -p $i rpm.doc/changelogs/$i
1087done
1088
1089(cd gcc/fortran; for i in ChangeLog*; do
1090        cp -p $i ../../rpm.doc/gfortran/$i
1091done)
1092(cd libgfortran; for i in ChangeLog*; do
1093        cp -p $i ../rpm.doc/gfortran/$i.libgfortran
1094done)
1095%if %{build_objc}
1096(cd libobjc; for i in README*; do
1097        cp -p $i ../rpm.doc/objc/$i.libobjc
1098done)
1099%endif
1100%if %{build_libquadmath}
1101(cd libquadmath; for i in ChangeLog* COPYING.LIB; do
1102        cp -p $i ../rpm.doc/libquadmath/$i.libquadmath
1103done)
1104%endif
1105
1106%if %{build_libitm}
1107(cd libitm; for i in ChangeLog*; do
1108        cp -p $i ../rpm.doc/libitm/$i.libitm
1109done)
1110%endif
1111%if %{build_go}
1112(cd gcc/go; for i in README* ChangeLog*; do
1113        cp -p $i ../../rpm.doc/go/$i
1114done)
1115(cd libgo; for i in LICENSE* PATENTS* README; do
1116        cp -p $i ../rpm.doc/libgo/$i.libgo
1117done)
1118%endif
1119
1120rm -f rpm.doc/changelogs/gcc/ChangeLog.[1-9]
1121find rpm.doc -name \*ChangeLog\* | xargs bzip2 -9
1122
1123
1124%install
1125rm -rf %{buildroot}
1126
1127cd obj-%{gcc_target_platform}
1128
1129TARGET_PLATFORM=%{gcc_target_platform}
1130
1131# There are some MP bugs in libstdc++ Makefiles
1132make -C %{gcc_target_platform}/libstdc++-v3
1133
1134make prefix=%{buildroot}%{_prefix} mandir=%{buildroot}%{_mandir} \
1135  infodir=%{buildroot}%{_infodir} install
1136%if %{build_ada}
1137chmod 644 %{buildroot}%{_infodir}/gnat*
1138%endif
1139
1140FULLPATH=%{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
1141FULLEPATH=%{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
1142
1143# fix some things
1144ln -sf gcc %{buildroot}%{_prefix}/bin/cc
1145rm -f %{buildroot}%{_prefix}/lib/cpp
1146ln -sf ../bin/cpp %{buildroot}/%{_prefix}/lib/cpp
1147ln -sf gfortran %{buildroot}%{_prefix}/bin/f95
1148rm -f %{buildroot}%{_infodir}/dir
1149gzip -9 %{buildroot}%{_infodir}/*.info*
1150%if %{build_ada}
1151ln -sf gcc %{buildroot}%{_prefix}/bin/gnatgcc
1152%endif
1153mkdir -p %{buildroot}%{_fmoddir}
1154
1155%if %{build_go}
1156mv %{buildroot}%{_prefix}/bin/go{,.gcc}
1157mv %{buildroot}%{_prefix}/bin/gofmt{,.gcc}
1158ln -sf /etc/alternatives/go %{buildroot}%{_prefix}/bin/go
1159ln -sf /etc/alternatives/gofmt %{buildroot}%{_prefix}/bin/gofmt
1160%endif
1161
1162cxxconfig="`find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h`"
1163for i in `find %{gcc_target_platform}/[36]*/libstdc++-v3/include -name c++config.h 2>/dev/null`; do
1164  if ! diff -up $cxxconfig $i; then
1165    cat > %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/bits/c++config.h <<EOF
1166#ifndef _CPP_CPPCONFIG_WRAPPER
1167#define _CPP_CPPCONFIG_WRAPPER 1
1168#include <bits/wordsize.h>
1169#if __WORDSIZE == 32
1170%ifarch %{multilib_64_archs}
1171`cat $(find %{gcc_target_platform}/32/libstdc++-v3/include -name c++config.h)`
1172%else
1173`cat $(find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h)`
1174%endif
1175#else
1176%ifarch %{multilib_64_archs}
1177`cat $(find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h)`
1178%else
1179`cat $(find %{gcc_target_platform}/64/libstdc++-v3/include -name c++config.h)`
1180%endif
1181#endif
1182#endif
1183EOF
1184    break
1185  fi
1186done
1187
1188for f in `find %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/ -name c++config.h`; do
1189  for i in 1 2 4 8; do
1190    sed -i -e 's/#define _GLIBCXX_ATOMIC_BUILTINS_'$i' 1/#ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_'$i'\
1191&\
1192#endif/' $f
1193  done
1194done
1195
1196# Nuke bits/*.h.gch dirs
1197# 1) there is no bits/*.h header installed, so when gch file can't be
1198#    used, compilation fails
1199# 2) sometimes it is hard to match the exact options used for building
1200#    libstdc++-v3 or they aren't desirable
1201# 3) there are multilib issues, conflicts etc. with this
1202# 4) it is huge
1203# People can always precompile on their own whatever they want, but
1204# shipping this for everybody is unnecessary.
1205rm -rf %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/bits/*.h.gch
1206
1207%if %{build_libstdcxx_docs}
1208libstdcxx_doc_builddir=%{gcc_target_platform}/libstdc++-v3/doc/doxygen
1209mkdir -p ../rpm.doc/libstdc++-v3
1210cp -r -p ../libstdc++-v3/doc/html ../rpm.doc/libstdc++-v3/html
1211cp -r -p $libstdcxx_doc_builddir/html ../rpm.doc/libstdc++-v3/html/api
1212mkdir -p %{buildroot}%{_mandir}/man3
1213cp -r -p $libstdcxx_doc_builddir/man/man3/* %{buildroot}%{_mandir}/man3/
1214find ../rpm.doc/libstdc++-v3 -name \*~ | xargs rm
1215%endif
1216
1217FULLLSUBDIR=
1218%ifarch sparcv9 ppc
1219FULLLSUBDIR=lib32
1220%endif
1221%ifarch sparc64 ppc64 ppc64p7
1222FULLLSUBDIR=lib64
1223%endif
1224if [ -n "$FULLLSUBDIR" ]; then
1225  FULLLPATH=$FULLPATH/$FULLLSUBDIR
1226  mkdir -p $FULLLPATH
1227else
1228  FULLLPATH=$FULLPATH
1229fi
1230
1231find %{buildroot} -name \*.la | xargs rm -f
1232
1233mv %{buildroot}%{_prefix}/%{_lib}/libgfortran.spec $FULLPATH/
1234%if %{build_libitm}
1235mv %{buildroot}%{_prefix}/%{_lib}/libitm.spec $FULLPATH/
1236%endif
1237%if %{build_libasan}
1238mv %{buildroot}%{_prefix}/%{_lib}/libsanitizer.spec $FULLPATH/
1239%endif
1240%if %{build_libmpx}
1241mv %{buildroot}%{_prefix}/%{_lib}/libmpx.spec $FULLPATH/
1242%endif
1243
1244mkdir -p %{buildroot}/%{_lib}
1245mv -f %{buildroot}%{_prefix}/%{_lib}/libgcc_s.so.1 %{buildroot}/%{_lib}/libgcc_s-%{gcc_major}.so.1
1246chmod 755 %{buildroot}/%{_lib}/libgcc_s-%{gcc_major}.so.1
1247ln -sf libgcc_s-%{gcc_major}.so.1 %{buildroot}/%{_lib}/libgcc_s.so.1
1248ln -sf /%{_lib}/libgcc_s.so.1 $FULLPATH/libgcc_s.so
1249%ifarch %{multilib_64_archs}
1250ln -sf /lib/libgcc_s.so.1 $FULLPATH/32/libgcc_s.so
1251mkdir -p %{buildroot}/lib
1252mv -f %{buildroot}%{_prefix}/lib/libgcc_s.so.1 %{buildroot}/lib/libgcc_s-%{gcc_major}.so.1
1253chmod 755 %{buildroot}/lib/libgcc_s-%{gcc_major}.so.1
1254ln -sf libgcc_s-%{gcc_major}.so.1 %{buildroot}/lib/libgcc_s.so.1
1255%endif
1256
1257mv -f %{buildroot}%{_prefix}/%{_lib}/libgomp.spec $FULLPATH/
1258
1259%if %{build_ada}
1260mv -f $FULLPATH/adalib/libgnarl-*.so %{buildroot}%{_prefix}/%{_lib}/
1261mv -f $FULLPATH/adalib/libgnat-*.so %{buildroot}%{_prefix}/%{_lib}/
1262rm -f $FULLPATH/adalib/libgnarl.so* $FULLPATH/adalib/libgnat.so*
1263%endif
1264
1265mkdir -p %{buildroot}%{_prefix}/libexec/getconf
1266if gcc/xgcc -B gcc/ -E -P -dD -xc /dev/null | grep '__LONG_MAX__.*\(2147483647\|0x7fffffff\($\|[LU]\)\)'; then
1267  ln -sf POSIX_V6_ILP32_OFF32 %{buildroot}%{_prefix}/libexec/getconf/default
1268else
1269  ln -sf POSIX_V6_LP64_OFF64 %{buildroot}%{_prefix}/libexec/getconf/default
1270fi
1271
1272mkdir -p %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}
1273mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++*gdb.py* \
1274      %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/
1275pushd ../libstdc++-v3/python
1276for i in `find . -name \*.py`; do
1277  touch -r $i %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/$i
1278done
1279touch -r hook.in %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc++*gdb.py
1280popd
1281for f in `find %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/ \
1282               %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/ -name \*.py`; do
1283  r=${f/$RPM_BUILD_ROOT/}
1284  %{__python3} -c 'import py_compile; py_compile.compile("'$f'", dfile="'$r'")'
1285  %{__python3} -O -c 'import py_compile; py_compile.compile("'$f'", dfile="'$r'")'
1286done
1287
1288rm -f $FULLEPATH/libgccjit.so
1289cp -a objlibgccjit/gcc/libgccjit.so* %{buildroot}%{_prefix}/%{_lib}/
1290cp -a ../gcc/jit/libgccjit*.h %{buildroot}%{_prefix}/include/
1291/usr/bin/install -c -m 644 objlibgccjit/gcc/doc/libgccjit.info %{buildroot}/%{_infodir}/
1292gzip -9 %{buildroot}/%{_infodir}/libgccjit.info
1293
1294pushd $FULLPATH
1295if [ "%{_lib}" = "lib" ]; then
1296%if %{build_objc}
1297ln -sf ../../../libobjc.so.4 libobjc.so
1298%endif
1299ln -sf ../../../libstdc++.so.6.*[0-9] libstdc++.so
1300ln -sf ../../../libgfortran.so.5.* libgfortran.so
1301ln -sf ../../../libgomp.so.1.* libgomp.so
1302%if %{build_go}
1303ln -sf ../../../libgo.so.13.* libgo.so
1304%endif
1305%if %{build_libquadmath}
1306ln -sf ../../../libquadmath.so.0.* libquadmath.so
1307%endif
1308%if %{build_libitm}
1309ln -sf ../../../libitm.so.1.* libitm.so
1310%endif
1311%if %{build_libatomic}
1312ln -sf ../../../libatomic.so.1.* libatomic.so
1313%endif
1314%if %{build_libasan}
1315ln -sf ../../../libasan.so.5.* libasan.so
1316mv ../../../libasan_preinit.o libasan_preinit.o
1317%endif
1318%if %{build_libubsan}
1319ln -sf ../../../libubsan.so.1.* libubsan.so
1320%endif
1321%if %{build_libmpx}
1322ln -sf ../../../libmpx.so.2.* libmpx.so
1323ln -sf ../../../libmpxwrappers.so.2.* libmpxwrappers.so
1324%endif
1325else
1326%if %{build_objc}
1327ln -sf ../../../../%{_lib}/libobjc.so.4 libobjc.so
1328%endif
1329ln -sf ../../../../%{_lib}/libstdc++.so.6.*[0-9] libstdc++.so
1330ln -sf ../../../../%{_lib}/libgfortran.so.5.* libgfortran.so
1331ln -sf ../../../../%{_lib}/libgomp.so.1.* libgomp.so
1332%if %{build_go}
1333ln -sf ../../../../%{_lib}/libgo.so.13.* libgo.so
1334%endif
1335%if %{build_libquadmath}
1336ln -sf ../../../../%{_lib}/libquadmath.so.0.* libquadmath.so
1337%endif
1338%if %{build_libitm}
1339ln -sf ../../../../%{_lib}/libitm.so.1.* libitm.so
1340%endif
1341%if %{build_libatomic}
1342ln -sf ../../../../%{_lib}/libatomic.so.1.* libatomic.so
1343%endif
1344%if %{build_libasan}
1345ln -sf ../../../../%{_lib}/libasan.so.5.* libasan.so
1346mv ../../../../%{_lib}/libasan_preinit.o libasan_preinit.o
1347%endif
1348%if %{build_libubsan}
1349ln -sf ../../../../%{_lib}/libubsan.so.1.* libubsan.so
1350%endif
1351%if %{build_libmpx}
1352ln -sf ../../../../%{_lib}/libmpx.so.2.* libmpx.so
1353ln -sf ../../../../%{_lib}/libmpxwrappers.so.2.* libmpxwrappers.so
1354%endif
1355%if %{build_libtsan}
1356rm -f libtsan.so
1357echo 'INPUT ( %{_prefix}/%{_lib}/'`echo ../../../../%{_lib}/libtsan.so.0.* | sed 's,^.*libt,libt,'`' )' > libtsan.so
1358mv ../../../../%{_lib}/libtsan_preinit.o libtsan_preinit.o
1359%endif
1360%if %{build_liblsan}
1361rm -f liblsan.so
1362echo 'INPUT ( %{_prefix}/%{_lib}/'`echo ../../../../%{_lib}/liblsan.so.0.* | sed 's,^.*libl,libl,'`' )' > liblsan.so
1363mv ../../../../%{_lib}/liblsan_preinit.o liblsan_preinit.o
1364%endif
1365fi
1366mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++.*a $FULLLPATH/
1367mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++fs.*a $FULLLPATH/
1368mv -f %{buildroot}%{_prefix}/%{_lib}/libsupc++.*a $FULLLPATH/
1369mv -f %{buildroot}%{_prefix}/%{_lib}/libgfortran.*a $FULLLPATH/
1370%if %{build_objc}
1371mv -f %{buildroot}%{_prefix}/%{_lib}/libobjc.*a .
1372%endif
1373mv -f %{buildroot}%{_prefix}/%{_lib}/libgomp.*a .
1374%if %{build_libquadmath}
1375mv -f %{buildroot}%{_prefix}/%{_lib}/libquadmath.*a $FULLLPATH/
1376%endif
1377%if %{build_libitm}
1378mv -f %{buildroot}%{_prefix}/%{_lib}/libitm.*a $FULLLPATH/
1379%endif
1380%if %{build_libatomic}
1381mv -f %{buildroot}%{_prefix}/%{_lib}/libatomic.*a $FULLLPATH/
1382%endif
1383%if %{build_libasan}
1384mv -f %{buildroot}%{_prefix}/%{_lib}/libasan.*a $FULLLPATH/
1385%endif
1386%if %{build_libubsan}
1387mv -f %{buildroot}%{_prefix}/%{_lib}/libubsan.*a $FULLLPATH/
1388%endif
1389%if %{build_libmpx}
1390mv -f %{buildroot}%{_prefix}/%{_lib}/libmpx.*a $FULLLPATH/
1391mv -f %{buildroot}%{_prefix}/%{_lib}/libmpxwrappers.*a $FULLLPATH/
1392%endif
1393%if %{build_libtsan}
1394mv -f %{buildroot}%{_prefix}/%{_lib}/libtsan.*a $FULLPATH/
1395%endif
1396%if %{build_liblsan}
1397mv -f %{buildroot}%{_prefix}/%{_lib}/liblsan.*a $FULLPATH/
1398%endif
1399%if %{build_go}
1400mv -f %{buildroot}%{_prefix}/%{_lib}/libgo.*a $FULLLPATH/
1401mv -f %{buildroot}%{_prefix}/%{_lib}/libgobegin.*a $FULLLPATH/
1402mv -f %{buildroot}%{_prefix}/%{_lib}/libgolibbegin.*a $FULLLPATH/
1403%endif
1404%ifarch %{multilib_64_archs}
1405mv -f %{buildroot}%{_prefix}/lib/libstdc++.*a $FULLLPATH/32/
1406mv -f %{buildroot}%{_prefix}/lib/libstdc++fs.*a $FULLLPATH/32/
1407mv -f %{buildroot}%{_prefix}/lib/libsupc++.*a $FULLLPATH/32/
1408mv -f %{buildroot}%{_prefix}/lib/libgfortran.*a $FULLLPATH/32/
1409rm -f %{buildroot}%{_prefix}/lib/libssp.a
1410%if %{build_libquadmath}
1411mv -f %{buildroot}%{_prefix}/lib/libquadmath.*a $FULLLPATH/32/
1412%endif
1413%if %{build_libitm}
1414mv -f %{buildroot}%{_prefix}/lib/libitm.*a $FULLLPATH/32/
1415%endif
1416%if %{build_libatomic}
1417mv -f %{buildroot}%{_prefix}/lib/libatomic.*a $FULLLPATH/32/
1418%endif
1419%if %{build_libasan}
1420mv -f %{buildroot}%{_prefix}/lib/libasan.*a $FULLLPATH/32/
1421%endif
1422%if %{build_libubsan}
1423mv -f %{buildroot}%{_prefix}/lib/libubsan.*a $FULLLPATH/32/
1424%endif
1425%if %{build_libmpx}
1426mv -f %{buildroot}%{_prefix}/lib/libmpx.*a $FULLLPATH/32/
1427mv -f %{buildroot}%{_prefix}/lib/libmpxwrappers.*a $FULLLPATH/32/
1428%endif
1429%if %{build_go}
1430mv -f %{buildroot}%{_prefix}/lib/libgo.*a $FULLLPATH/32/
1431mv -f %{buildroot}%{_prefix}/lib/libgobegin.*a $FULLLPATH/32/
1432mv -f %{buildroot}%{_prefix}/lib/libgolibbegin.*a $FULLLPATH/32/
1433%endif
1434%endif
1435
1436%if %{build_ada}
1437%ifarch %{multilib_64_archs}
1438rm -rf $FULLPATH/32/ada{include,lib}
1439%endif
1440if [ "$FULLPATH" != "$FULLLPATH" ]; then
1441mv -f $FULLPATH/ada{include,lib} $FULLLPATH/
1442pushd $FULLLPATH/adalib
1443if [ "%{_lib}" = "lib" ]; then
1444ln -sf ../../../../../libgnarl-*.so libgnarl.so
1445ln -sf ../../../../../libgnarl-*.so libgnarl-8.so
1446ln -sf ../../../../../libgnat-*.so libgnat.so
1447ln -sf ../../../../../libgnat-*.so libgnat-8.so
1448else
1449ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl.so
1450ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl-8.so
1451ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat.so
1452ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat-8.so
1453fi
1454popd
1455else
1456pushd $FULLPATH/adalib
1457if [ "%{_lib}" = "lib" ]; then
1458ln -sf ../../../../libgnarl-*.so libgnarl.so
1459ln -sf ../../../../libgnarl-*.so libgnarl-8.so
1460ln -sf ../../../../libgnat-*.so libgnat.so
1461ln -sf ../../../../libgnat-*.so libgnat-8.so
1462else
1463ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl.so
1464ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl-8.so
1465ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat.so
1466ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat-8.so
1467fi
1468popd
1469fi
1470%endif
1471
1472%ifarch %{multilib_64_archs}
1473mkdir -p 32
1474%if %{build_objc}
1475ln -sf ../../../../libobjc.so.4 32/libobjc.so
1476%endif
1477ln -sf ../`echo ../../../../lib64/libstdc++.so.6.*[0-9] | sed s~/../lib64/~/~` 32/libstdc++.so
1478ln -sf ../`echo ../../../../lib64/libgfortran.so.5.* | sed s~/../lib64/~/~` 32/libgfortran.so
1479ln -sf ../`echo ../../../../lib64/libgomp.so.1.* | sed s~/../lib64/~/~` 32/libgomp.so
1480%if %{build_go}
1481rm -f libgo.so
1482echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libgo.so.13.* | sed 's,^.*libg,libg,'`' )' > libgo.so
1483echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libgo.so.13.* | sed 's,^.*libg,libg,'`' )' > 32/libgo.so
1484%endif
1485%if %{build_libquadmath}
1486rm -f libquadmath.so
1487echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > libquadmath.so
1488echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > 32/libquadmath.so
1489%endif
1490%if %{build_libitm}
1491rm -f libitm.so
1492echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > libitm.so
1493echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > 32/libitm.so
1494%endif
1495%if %{build_libatomic}
1496rm -f libatomic.so
1497echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > libatomic.so
1498echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > 32/libatomic.so
1499%endif
1500%if %{build_libasan}
1501rm -f libasan.so
1502echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libasan.so.5.* | sed 's,^.*liba,liba,'`' )' > libasan.so
1503echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libasan.so.5.* | sed 's,^.*liba,liba,'`' )' > 32/libasan.so
1504mv ../../../../lib/libasan_preinit.o 32/libasan_preinit.o
1505%endif
1506%if %{build_libubsan}
1507rm -f libubsan.so
1508echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libubsan.so.1.* | sed 's,^.*libu,libu,'`' )' > libubsan.so
1509echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libubsan.so.1.* | sed 's,^.*libu,libu,'`' )' > 32/libubsan.so
1510%endif
1511%if %{build_libmpx}
1512rm -f libmpx.so
1513echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libmpx.so.2.* | sed 's,^.*libm,libm,'`' )' > libmpx.so
1514echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libmpx.so.2.* | sed 's,^.*libm,libm,'`' )' > 32/libmpx.so
1515rm -f libmpxwrappers.so
1516echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libmpxwrappers.so.2.* | sed 's,^.*libm,libm,'`' )' > libmpxwrappers.so
1517echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libmpxwrappers.so.2.* | sed 's,^.*libm,libm,'`' )' > 32/libmpxwrappers.so
1518%endif
1519%if %{build_objc}
1520mv -f %{buildroot}%{_prefix}/lib/libobjc.*a 32/
1521%endif
1522mv -f %{buildroot}%{_prefix}/lib/libgomp.*a 32/
1523%endif
1524%ifarch sparc64 ppc64 ppc64p7
1525ln -sf ../lib32/libgfortran.a 32/libgfortran.a
1526ln -sf lib64/libgfortran.a libgfortran.a
1527ln -sf ../lib32/libstdc++.a 32/libstdc++.a
1528ln -sf lib64/libstdc++.a libstdc++.a
1529ln -sf ../lib32/libstdc++fs.a 32/libstdc++fs.a
1530ln -sf lib64/libstdc++fs.a libstdc++fs.a
1531ln -sf ../lib32/libsupc++.a 32/libsupc++.a
1532ln -sf lib64/libsupc++.a libsupc++.a
1533%if %{build_libquadmath}
1534ln -sf ../lib32/libquadmath.a 32/libquadmath.a
1535ln -sf lib64/libquadmath.a libquadmath.a
1536%endif
1537%if %{build_libitm}
1538ln -sf ../lib32/libitm.a 32/libitm.a
1539ln -sf lib64/libitm.a libitm.a
1540%endif
1541%if %{build_libatomic}
1542ln -sf ../lib32/libatomic.a 32/libatomic.a
1543ln -sf lib64/libatomic.a libatomic.a
1544%endif
1545%if %{build_libasan}
1546ln -sf ../lib32/libasan.a 32/libasan.a
1547ln -sf lib64/libasan.a libasan.a
1548%endif
1549%if %{build_libubsan}
1550ln -sf ../lib32/libubsan.a 32/libubsan.a
1551ln -sf lib64/libubsan.a libubsan.a
1552%endif
1553%if %{build_libmpx}
1554ln -sf ../lib32/libmpx.a 32/libmpx.a
1555ln -sf lib64/libmpx.a libmpx.a
1556ln -sf ../lib32/libmpxwrappers.a 32/libmpxwrappers.a
1557ln -sf lib64/libmpxwrappers.a libmpxwrappers.a
1558%endif
1559%if %{build_go}
1560ln -sf ../lib32/libgo.a 32/libgo.a
1561ln -sf lib64/libgo.a libgo.a
1562ln -sf ../lib32/libgobegin.a 32/libgobegin.a
1563ln -sf lib64/libgobegin.a libgobegin.a
1564ln -sf ../lib32/libgolibbegin.a 32/libgolibbegin.a
1565ln -sf lib64/libgolibbegin.a libgolibbegin.a
1566%endif
1567%if %{build_ada}
1568ln -sf ../lib32/adainclude 32/adainclude
1569ln -sf lib64/adainclude adainclude
1570ln -sf ../lib32/adalib 32/adalib
1571ln -sf lib64/adalib adalib
1572%endif
1573%else
1574%ifarch %{multilib_64_archs}
1575%if 0
1576ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgfortran.a 32/libgfortran.a
1577ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libstdc++.a 32/libstdc++.a
1578ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libstdc++fs.a 32/libstdc++fs.a
1579ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libsupc++.a 32/libsupc++.a
1580%if %{build_libquadmath}
1581ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libquadmath.a 32/libquadmath.a
1582%endif
1583%if %{build_libitm}
1584ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libitm.a 32/libitm.a
1585%endif
1586%if %{build_libatomic}
1587ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libatomic.a 32/libatomic.a
1588%endif
1589%if %{build_libasan}
1590ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libasan.a 32/libasan.a
1591%endif
1592%if %{build_libubsan}
1593ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libubsan.a 32/libubsan.a
1594%endif
1595%if %{build_libmpx}
1596ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libmpx.a 32/libmpx.a
1597ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libmpxwrappers.a 32/libmpxwrappers.a
1598%endif
1599%if %{build_go}
1600ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgo.a 32/libgo.a
1601ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgobegin.a 32/libgobegin.a
1602ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgolibbegin.a 32/libgolibbegin.a
1603%endif
1604%if %{build_ada}
1605ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/adainclude 32/adainclude
1606ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/adalib 32/adalib
1607%endif
1608%endif
1609%endif
1610%endif
1611
1612# If we are building a debug package then copy all of the static archives
1613# into the debug directory to keep them as unstripped copies.
1614%if 0%{?_enable_debug_packages}
1615for d in . $FULLLSUBDIR; do
1616  mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/$d
1617  for f in `find $d -maxdepth 1 -a \
1618                \( -name libasan.a -o -name libatomic.a \
1619                -o -name libcaf_single.a \
1620                -o -name libgcc.a -o -name libgcc_eh.a \
1621                -o -name libgcov.a -o -name libgfortran.a \
1622                -o -name libgo.a -o -name libgobegin.a \
1623                -o -name libgolibbegin.a -o -name libgomp.a \
1624                -o -name libitm.a -o -name liblsan.a \
1625                -o -name libmpx.a -o -name libmpxwrappers.a \
1626                -o -name libobjc.a \
1627                -o -name libquadmath.a -o -name libstdc++.a \
1628                -o -name libstdc++fs.a -o -name libsupc++.a \
1629                -o -name libtsan.a -o -name libubsan.a \) -a -type f`; do
1630    cp -a $f $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/$d/
1631  done
1632done
1633%endif
1634
1635# Strip debug info from Fortran/ObjC/Java static libraries
1636strip -g `find . \( -name libgfortran.a -o -name libobjc.a -o -name libgomp.a \
1637                    -o -name libgcc.a -o -name libgcov.a -o -name libquadmath.a \
1638                    -o -name libitm.a -o -name libgo.a -o -name libcaf\*.a \
1639                    -o -name libatomic.a -o -name libasan.a -o -name libtsan.a \
1640                    -o -name libubsan.a -o -name liblsan.a \
1641                    -o -name libmpx.a -o -name libmpxwrappers.a -o -name libcc1.a \) \
1642                 -a -type f`
1643popd
1644chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgfortran.so.5.*
1645chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgomp.so.1.*
1646chmod 755 %{buildroot}%{_prefix}/%{_lib}/libcc1.so.0.*
1647%if %{build_libquadmath}
1648chmod 755 %{buildroot}%{_prefix}/%{_lib}/libquadmath.so.0.*
1649%endif
1650%if %{build_libitm}
1651chmod 755 %{buildroot}%{_prefix}/%{_lib}/libitm.so.1.*
1652%endif
1653%if %{build_libatomic}
1654chmod 755 %{buildroot}%{_prefix}/%{_lib}/libatomic.so.1.*
1655%endif
1656%if %{build_libasan}
1657chmod 755 %{buildroot}%{_prefix}/%{_lib}/libasan.so.5.*
1658%endif
1659%if %{build_libubsan}
1660chmod 755 %{buildroot}%{_prefix}/%{_lib}/libubsan.so.1.*
1661%endif
1662%if %{build_libmpx}
1663chmod 755 %{buildroot}%{_prefix}/%{_lib}/libmpx.so.2.*
1664chmod 755 %{buildroot}%{_prefix}/%{_lib}/libmpxwrappers.so.2.*
1665%endif
1666%if %{build_libtsan}
1667chmod 755 %{buildroot}%{_prefix}/%{_lib}/libtsan.so.0.*
1668%endif
1669%if %{build_liblsan}
1670chmod 755 %{buildroot}%{_prefix}/%{_lib}/liblsan.so.0.*
1671%endif
1672%if %{build_go}
1673# Avoid stripping these libraries and binaries.
1674chmod 644 %{buildroot}%{_prefix}/%{_lib}/libgo.so.13.*
1675chmod 644 %{buildroot}%{_prefix}/bin/go.gcc
1676chmod 644 %{buildroot}%{_prefix}/bin/gofmt.gcc
1677chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo
1678chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/buildid
1679chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/test2json
1680chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/vet
1681%endif
1682%if %{build_objc}
1683chmod 755 %{buildroot}%{_prefix}/%{_lib}/libobjc.so.4.*
1684%endif
1685
1686%if %{build_ada}
1687chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgnarl*so*
1688chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgnat*so*
1689%endif
1690
1691mv $FULLPATH/include-fixed/syslimits.h $FULLPATH/include/syslimits.h
1692mv $FULLPATH/include-fixed/limits.h $FULLPATH/include/limits.h
1693for h in `find $FULLPATH/include -name \*.h`; do
1694  if grep -q 'It has been auto-edited by fixincludes from' $h; then
1695    rh=`grep -A2 'It has been auto-edited by fixincludes from' $h | tail -1 | sed 's|^.*"\(.*\)".*$|\1|'`
1696    diff -up $rh $h || :
1697    rm -f $h
1698  fi
1699done
1700
1701cat > %{buildroot}%{_prefix}/bin/c89 <<"EOF"
1702#!/bin/sh
1703fl="-std=c89"
1704for opt; do
1705  case "$opt" in
1706    -ansi|-std=c89|-std=iso9899:1990) fl="";;
1707    -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
1708            exit 1;;
1709  esac
1710done
1711exec gcc $fl ${1+"$@"}
1712EOF
1713cat > %{buildroot}%{_prefix}/bin/c99 <<"EOF"
1714#!/bin/sh
1715fl="-std=c99"
1716for opt; do
1717  case "$opt" in
1718    -std=c99|-std=iso9899:1999) fl="";;
1719    -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
1720            exit 1;;
1721  esac
1722done
1723exec gcc $fl ${1+"$@"}
1724EOF
1725chmod 755 %{buildroot}%{_prefix}/bin/c?9
1726
1727cd ..
1728%find_lang %{name}
1729%find_lang cpplib
1730%find_lang libstdc++
1731
1732# Remove binaries we will not be including, so that they don't end up in
1733# gcc-debuginfo
1734rm -f %{buildroot}%{_prefix}/%{_lib}/{libffi*,libiberty.a} || :
1735rm -f $FULLEPATH/install-tools/{mkheaders,fixincl}
1736rm -f %{buildroot}%{_prefix}/lib/{32,64}/libiberty.a
1737rm -f %{buildroot}%{_prefix}/%{_lib}/libssp*
1738rm -f %{buildroot}%{_prefix}/%{_lib}/libvtv* || :
1739rm -f %{buildroot}%{_prefix}/bin/gappletviewer || :
1740rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gfortran || :
1741rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gccgo || :
1742rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcj || :
1743rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-ar || :
1744rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-nm || :
1745rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-ranlib || :
1746
1747%ifarch %{multilib_64_archs}
1748# Remove libraries for the other arch on multilib arches
1749# keep %{_prefix}/lib/lib*.{so*,a} for Vine Linux
1750# rm -f %{buildroot}%{_prefix}/lib/lib*.so*
1751# rm -f %{buildroot}%{_prefix}/lib/lib*.a
1752# rm -f %{buildroot}/lib/libgcc_s*.so*
1753%if %{build_go}
1754rm -rf %{buildroot}%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform}
1755%ifnarch sparc64 ppc64 ppc64p7
1756ln -sf %{multilib_32_arch}-%{_vendor}-%{_target_os} %{buildroot}%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform}
1757%endif
1758%endif
1759%else
1760%ifarch sparcv9 ppc
1761rm -f %{buildroot}%{_prefix}/lib64/lib*.so*
1762rm -f %{buildroot}%{_prefix}/lib64/lib*.a
1763rm -f %{buildroot}/lib64/libgcc_s*.so*
1764%if %{build_go}
1765rm -rf %{buildroot}%{_prefix}/lib64/go/%{gcc_major}/%{gcc_target_platform}
1766%endif
1767%endif
1768%endif
1769
1770rm -f %{buildroot}%{mandir}/man3/ffi*
1771
1772# Help plugins find out nvra.
1773echo gcc-%{version}-%{release}.%{_arch} > $FULLPATH/rpmver
1774
1775# for compatibility
1776mkdir -p %{buildroot}/lib
1777ln -sf ../usr/bin/cpp %{buildroot}/lib/cpp
1778
1779# remove unnecessary files.
1780rm -rf %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include-fixed
1781rm -rf %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ssp
1782rm -rf %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/install-tools
1783rm -rf %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/install-tools
1784rm -f %{buildroot}%{_prefix}/lib/*.spec
1785rm -rf %{buildroot}%{_mandir}/man7
1786
1787for f in asan atomic gcc_s gfortran go gomp itm lsan mpx mpxwrappers objc quadmath stdc++ tsan ubsan; do
1788  rm -f %{buildroot}%{_prefix}/%{_lib}/lib${f}.so
1789  rm -f %{buildroot}%{_prefix}/lib/lib${f}.so
1790done
1791rm -f %{buildroot}%{_prefix}/lib/libssp*
1792
1793%check
1794%if %{with check}
1795cd obj-%{gcc_target_platform}
1796
1797# run the tests.
1798make %{?_smp_mflags} -k check ALT_CC_UNDER_TEST=gcc ALT_CXX_UNDER_TEST=g++ \
1799RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector-strong}'" || :
1800echo ====================TESTING=========================
1801( LC_ALL=C ../contrib/test_summary || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}'
1802echo ====================TESTING END=====================
1803mkdir testlogs-%{_target_platform}-%{version}-%{release}
1804for i in `find . -name \*.log | grep -F testsuite/ | grep -v 'config.log\|acats.*/tests/'`; do
1805  ln $i testlogs-%{_target_platform}-%{version}-%{release}/ || :
1806done
1807tar cf - testlogs-%{_target_platform}-%{version}-%{release} | xz -9e \
1808  | uuencode testlogs-%{_target_platform}.tar.xz || :
1809rm -rf testlogs-%{_target_platform}-%{version}-%{release}
1810
1811%endif # %{with check}
1812
1813%clean
1814rm -rf $RPM_BUILD_ROOT
1815
1816%post
1817if [ -f %{_infodir}/gcc.info.gz ]; then
1818  /sbin/install-info \
1819    --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
1820fi
1821
1822%preun
1823if [ $1 = 0 -a -f %{_infodir}/gcc.info.gz ]; then
1824  /sbin/install-info --delete \
1825    --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
1826fi
1827
1828%posttrans
1829if [ ! -x %{_bindir}/cc ]; then
1830  ln -sf gcc %{_bindir}/cc
1831fi
1832
1833%posttrans c++
1834if [ ! -x %{_bindir}/c++ ]; then
1835  ln -sf g++ %{_bindir}/c++
1836fi
1837
1838%post cpp
1839if [ -f %{_infodir}/cpp.info.gz ]; then
1840  /sbin/install-info \
1841    --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
1842fi
1843
1844%preun cpp
1845if [ $1 = 0 -a -f %{_infodir}/cpp.info.gz ]; then
1846  /sbin/install-info --delete \
1847    --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
1848fi
1849
1850%post gfortran
1851if [ -f %{_infodir}/gfortran.info.gz ]; then
1852  /sbin/install-info \
1853    --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || :
1854fi
1855
1856%preun gfortran
1857if [ $1 = 0 -a -f %{_infodir}/gfortran.info.gz ]; then
1858  /sbin/install-info --delete \
1859    --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || :
1860fi
1861
1862%posttrans gfortran
1863if [ ! -x %{_bindir}/f95 ]; then
1864  ln -sf gfortran %{_bindir}/f95
1865fi
1866
1867%post gnat
1868if [ -f %{_infodir}/gnat_rm.info.gz ]; then
1869  /sbin/install-info \
1870    --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || :
1871  /sbin/install-info \
1872    --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || :
1873  /sbin/install-info \
1874    --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || :
1875fi
1876
1877%preun gnat
1878if [ $1 = 0 -a -f %{_infodir}/gnat_rm.info.gz ]; then
1879  /sbin/install-info --delete \
1880    --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || :
1881  /sbin/install-info --delete \
1882    --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || :
1883  /sbin/install-info --delete \
1884    --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || :
1885fi
1886
1887# Because glibc Prereq's libgcc and /sbin/ldconfig
1888# comes from glibc, it might not exist yet when
1889# libgcc is installed
1890%post -n libgcc -p <lua>
1891if posix.access ("/sbin/ldconfig", "x") then
1892  local pid = posix.fork ()
1893  if pid == 0 then
1894    posix.exec ("/sbin/ldconfig")
1895  elseif pid ~= -1 then
1896    posix.wait (pid)
1897  end
1898end
1899
1900%postun -n libgcc -p <lua>
1901if posix.access ("/sbin/ldconfig", "x") then
1902  local pid = posix.fork ()
1903  if pid == 0 then
1904    posix.exec ("/sbin/ldconfig")
1905  elseif pid ~= -1 then
1906    posix.wait (pid)
1907  end
1908end
1909
1910%post -n libstdc++ -p /sbin/ldconfig
1911
1912%postun -n libstdc++ -p /sbin/ldconfig
1913
1914%post -n libobjc -p /sbin/ldconfig
1915
1916%postun -n libobjc -p /sbin/ldconfig
1917
1918%post -n libgfortran -p /sbin/ldconfig
1919
1920%postun -n libgfortran -p /sbin/ldconfig
1921
1922%post -n libgnat -p /sbin/ldconfig
1923
1924%postun -n libgnat -p /sbin/ldconfig
1925
1926%post -n libgomp
1927/sbin/ldconfig
1928if [ -f %{_infodir}/libgomp.info.gz ]; then
1929  /sbin/install-info \
1930    --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || :
1931fi
1932
1933%preun -n libgomp
1934if [ $1 = 0 -a -f %{_infodir}/libgomp.info.gz ]; then
1935  /sbin/install-info --delete \
1936    --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || :
1937fi
1938
1939%postun -n libgomp -p /sbin/ldconfig
1940
1941%post gdb-plugin -p /sbin/ldconfig
1942
1943%postun gdb-plugin -p /sbin/ldconfig
1944
1945%post -n libgccjit -p /sbin/ldconfig
1946
1947%postun -n libgccjit -p /sbin/ldconfig
1948
1949%post -n libgccjit-devel
1950if [ -f %{_infodir}/libgccjit.info.gz ]; then
1951  /sbin/install-info \
1952    --info-dir=%{_infodir} %{_infodir}/libgccjit.info.gz || :
1953fi
1954
1955%preun -n libgccjit-devel
1956if [ $1 = 0 -a -f %{_infodir}/libgccjit.info.gz ]; then
1957  /sbin/install-info --delete \
1958    --info-dir=%{_infodir} %{_infodir}/libgccjit.info.gz || :
1959fi
1960
1961%post -n libquadmath
1962/sbin/ldconfig
1963if [ -f %{_infodir}/libquadmath.info.gz ]; then
1964  /sbin/install-info \
1965    --info-dir=%{_infodir} %{_infodir}/libquadmath.info.gz || :
1966fi
1967
1968%preun -n libquadmath
1969if [ $1 = 0 -a -f %{_infodir}/libquadmath.info.gz ]; then
1970  /sbin/install-info --delete \
1971    --info-dir=%{_infodir} %{_infodir}/libquadmath.info.gz || :
1972fi
1973
1974%postun -n libquadmath -p /sbin/ldconfig
1975
1976%postun -n libitm -p /sbin/ldconfig
1977
1978%post -n libatomic -p /sbin/ldconfig
1979
1980%postun -n libatomic -p /sbin/ldconfig
1981
1982%post -n libasan -p /sbin/ldconfig
1983
1984%postun -n libasan -p /sbin/ldconfig
1985
1986%post -n libtsan -p /sbin/ldconfig
1987
1988%postun -n libtsan -p /sbin/ldconfig
1989
1990%post -n libubsan -p /sbin/ldconfig
1991
1992%postun -n libubsan -p /sbin/ldconfig
1993
1994%post -n liblsan -p /sbin/ldconfig
1995
1996%postun -n liblsan -p /sbin/ldconfig
1997
1998%post -n libmpx -p /sbin/ldconfig
1999
2000%postun -n libmpx -p /sbin/ldconfig
2001
2002%post -n libgo -p /sbin/ldconfig
2003
2004%postun -n libgo -p /sbin/ldconfig
2005
2006%files -f %{name}.lang
2007%defattr(-,root,root,-)
2008%{_prefix}/bin/cc
2009%{_prefix}/bin/c89
2010%{_prefix}/bin/c99
2011%{_prefix}/bin/gcc
2012%{_prefix}/bin/gcov
2013%{_prefix}/bin/gcov-tool
2014%{_prefix}/bin/gcov-dump
2015%{_prefix}/bin/gcc-ar
2016%{_prefix}/bin/gcc-nm
2017%{_prefix}/bin/gcc-ranlib
2018%ifarch ppc
2019%{_prefix}/bin/%{_target_platform}-gcc
2020%endif
2021%ifarch sparc64 sparcv9
2022%{_prefix}/bin/sparc-%{_vendor}-%{_target_os}-gcc
2023%endif
2024%ifarch ppc64 ppc64p7
2025%{_prefix}/bin/ppc-%{_vendor}-%{_target_os}-gcc
2026%endif
2027%{_prefix}/bin/%{gcc_target_platform}-gcc
2028%{_prefix}/bin/%{gcc_target_platform}-gcc-%{gcc_major}
2029%{_mandir}/man1/gcc.1*
2030%{_mandir}/man1/gcov.1*
2031%{_mandir}/man1/gcov-tool.1*
2032%{_mandir}/man1/gcov-dump.1*
2033%{_infodir}/gcc*
2034%dir %{_prefix}/lib/gcc
2035%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2036%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2037%dir %{_prefix}/libexec/gcc
2038%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2039%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2040%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
2041%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto1
2042%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto-wrapper
2043%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/liblto_plugin.so*
2044%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/rpmver
2045%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stddef.h
2046%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdarg.h
2047%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdfix.h
2048%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/varargs.h
2049%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/float.h
2050%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/limits.h
2051%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdbool.h
2052%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/iso646.h
2053%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/syslimits.h
2054%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/unwind.h
2055%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/omp.h
2056%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/openacc.h
2057%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint.h
2058%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint-gcc.h
2059%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdalign.h
2060%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdnoreturn.h
2061%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdatomic.h
2062%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/gcov.h
2063%ifarch %{ix86} x86_64
2064%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h
2065%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xmmintrin.h
2066%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/emmintrin.h
2067%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pmmintrin.h
2068%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tmmintrin.h
2069%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ammintrin.h
2070%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/smmintrin.h
2071%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/nmmintrin.h
2072%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmmintrin.h
2073%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/wmmintrin.h
2074%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/immintrin.h
2075%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avxintrin.h
2076%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86intrin.h
2077%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fma4intrin.h
2078%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xopintrin.h
2079%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/lwpintrin.h
2080%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/popcntintrin.h
2081%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmiintrin.h
2082%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tbmintrin.h
2083%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia32intrin.h
2084%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx2intrin.h
2085%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmi2intrin.h
2086%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/f16cintrin.h
2087%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fmaintrin.h
2088%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/lzcntintrin.h
2089%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/rtmintrin.h
2090%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xtestintrin.h
2091%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/adxintrin.h
2092%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/prfchwintrin.h
2093%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/rdseedintrin.h
2094%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fxsrintrin.h
2095%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsaveintrin.h
2096%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsaveoptintrin.h
2097%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512cdintrin.h
2098%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512erintrin.h
2099%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512fintrin.h
2100%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512pfintrin.h
2101%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/shaintrin.h
2102%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm_malloc.h
2103%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm3dnow.h
2104%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cpuid.h
2105%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cross-stdarg.h
2106%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bwintrin.h
2107%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512dqintrin.h
2108%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512ifmaintrin.h
2109%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512ifmavlintrin.h
2110%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmiintrin.h
2111%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmivlintrin.h
2112%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vlbwintrin.h
2113%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vldqintrin.h
2114%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vlintrin.h
2115%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clflushoptintrin.h
2116%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clwbintrin.h
2117%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mwaitxintrin.h
2118%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsavecintrin.h
2119%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsavesintrin.h
2120%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clzerointrin.h
2121%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pkuintrin.h
2122%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx5124fmapsintrin.h
2123%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx5124vnniwintrin.h
2124%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vpopcntdqintrin.h
2125%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sgxintrin.h
2126%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/gfniintrin.h
2127%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cetintrin.h
2128%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cet.h
2129%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmi2intrin.h
2130%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmi2vlintrin.h
2131%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vnniintrin.h
2132%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vnnivlintrin.h
2133%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vaesintrin.h
2134%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vpclmulqdqintrin.h
2135%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vpopcntdqvlintrin.h
2136%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bitalgintrin.h
2137%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pconfigintrin.h
2138%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/wbnoinvdintrin.h
2139%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/movdirintrin.h
2140%endif
2141%ifarch ia64
2142%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia64intrin.h
2143%endif
2144%ifarch ppc ppc64 ppc64le ppc64p7
2145%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ppc-asm.h
2146%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/altivec.h
2147%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/paired.h
2148%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ppu_intrinsics.h
2149%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/si2vmx.h
2150%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/spu2vmx.h
2151%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vec_types.h
2152%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmintrin.h
2153%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmxlintrin.h
2154%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmi2intrin.h
2155%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmiintrin.h
2156%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xmmintrin.h
2157%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm_malloc.h
2158%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/emmintrin.h
2159%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h
2160%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86intrin.h
2161%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amo.h
2162%endif
2163%ifarch %{arm}
2164%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/unwind-arm-common.h
2165%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h
2166%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_neon.h
2167%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_acle.h
2168%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_cmse.h
2169%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_fp16.h
2170%endif
2171%ifarch aarch64
2172%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_neon.h
2173%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_acle.h
2174%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_fp16.h
2175%endif
2176%ifarch sparc sparcv9 sparc64
2177%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/visintrin.h
2178%endif
2179%ifarch s390 s390x
2180%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/s390intrin.h
2181%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmintrin.h
2182%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmxlintrin.h
2183%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vecintrin.h
2184%endif
2185%if %{build_libmpx}
2186%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.spec
2187%endif
2188%if %{build_libasan}
2189%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sanitizer
2190%endif
2191%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/collect2
2192%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/crt*.o
2193%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc.a
2194%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcov.a
2195%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc_eh.a
2196%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc_s.so
2197%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.spec
2198%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.a
2199%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.so
2200%if %{build_libitm}
2201%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.spec
2202%endif
2203%if %{build_libasan}
2204%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsanitizer.spec
2205%endif
2206%ifarch sparcv9 ppc
2207%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
2208%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/crt*.o
2209%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc.a
2210%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcov.a
2211%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc_eh.a
2212%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc_s.so
2213%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgomp.a
2214%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgomp.so
2215%if %{build_libquadmath}
2216%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libquadmath.a
2217%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libquadmath.so
2218%endif
2219%if %{build_libitm}
2220%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libitm.a
2221%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libitm.so
2222%endif
2223%if %{build_libatomic}
2224%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.a
2225%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.so
2226%endif
2227%if %{build_libasan}
2228%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.a
2229%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.so
2230%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan_preinit.o
2231%endif
2232%if %{build_libubsan}
2233%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.a
2234%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.so
2235%endif
2236%if %{build_libmpx}
2237%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpx.a
2238%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpx.so
2239%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpxwrappers.a
2240%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpxwrappers.so
2241%endif
2242%endif
2243%ifarch %{multilib_64_archs}
2244%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
2245%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/crt*.o
2246%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc.a
2247%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcov.a
2248%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc_eh.a
2249%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc_s.so
2250%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgomp.a
2251%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgomp.so
2252%if %{build_libquadmath}
2253%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libquadmath.a
2254%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libquadmath.so
2255%endif
2256%if %{build_libitm}
2257%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libitm.a
2258%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libitm.so
2259%endif
2260%if %{build_libatomic}
2261%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.a
2262%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.so
2263%endif
2264%if %{build_libasan}
2265%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.a
2266%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.so
2267%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan_preinit.o
2268%endif
2269%if %{build_libubsan}
2270%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.a
2271%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.so
2272%endif
2273%if %{build_libmpx}
2274%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpx.a
2275%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpx.so
2276%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpxwrappers.a
2277%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpxwrappers.so
2278%endif
2279%endif
2280%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
2281%if %{build_libquadmath}
2282%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.a
2283%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.so
2284%endif
2285%if %{build_libitm}
2286%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.a
2287%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.so
2288%endif
2289%if %{build_libatomic}
2290%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a
2291%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so
2292%endif
2293%if %{build_libasan}
2294%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a
2295%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so
2296%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o
2297%endif
2298%if %{build_libubsan}
2299%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a
2300%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so
2301%endif
2302%if %{build_libmpx}
2303%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.a
2304%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.so
2305%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.a
2306%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.so
2307%endif
2308%else
2309%if %{build_libatomic}
2310%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so
2311%endif
2312%if %{build_libasan}
2313%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so
2314%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o
2315%endif
2316%if %{build_libubsan}
2317%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so
2318%endif
2319%if %{build_libmpx}
2320%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.so
2321%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.so
2322%endif
2323%endif
2324%if %{build_libtsan}
2325%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.so
2326%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan_preinit.o
2327%endif
2328%if %{build_liblsan}
2329%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan.so
2330%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan_preinit.o
2331%endif
2332%{_prefix}/libexec/getconf/default
2333%doc gcc/README* rpm.doc/changelogs/gcc/ChangeLog*
2334%{!?_licensedir:%global license %%doc}
2335%license gcc/COPYING* COPYING.RUNTIME
2336
2337%files cpp -f cpplib.lang
2338%defattr(-,root,root,-)
2339/lib/cpp
2340%{_prefix}/lib/cpp
2341%{_prefix}/bin/cpp
2342%{_mandir}/man1/cpp.1*
2343%{_infodir}/cpp*
2344%dir %{_prefix}/libexec/gcc
2345%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2346%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2347%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1
2348
2349
2350%files -n libgcc
2351%defattr(-,root,root,-)
2352/%{_lib}/libgcc_s-%{gcc_major}.so.1
2353/%{_lib}/libgcc_s.so.1
2354%ifarch %{multilib_64_archs}
2355/lib/libgcc_s-%{gcc_major}.so.1
2356/lib/libgcc_s.so.1
2357%endif
2358%{!?_licensedir:%global license %%doc}
2359%license gcc/COPYING* COPYING.RUNTIME
2360
2361%files c++
2362%defattr(-,root,root,-)
2363%{_prefix}/bin/%{gcc_target_platform}-*++
2364%{_prefix}/bin/g++
2365%{_prefix}/bin/c++
2366%{_mandir}/man1/g++.1*
2367%dir %{_prefix}/lib/gcc
2368%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2369%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2370%dir %{_prefix}/libexec/gcc
2371%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2372%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2373%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1plus
2374%ifarch sparcv9 ppc
2375%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
2376%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++.so
2377%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++.a
2378%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++fs.a
2379%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libsupc++.a
2380%endif
2381%ifarch %{multilib_64_archs}
2382%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
2383%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++.so
2384%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++.a
2385%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++fs.a
2386%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libsupc++.a
2387%endif
2388%ifarch sparcv9 ppc %{multilib_64_archs}
2389%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.so
2390%endif
2391%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
2392%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.a
2393%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++fs.a
2394%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsupc++.a
2395%endif
2396%doc rpm.doc/changelogs/gcc/cp/ChangeLog*
2397
2398
2399%files -n libstdc++ -f libstdc++.lang
2400%defattr(-,root,root,-)
2401%{_prefix}/%{_lib}/libstdc++.so.6*
2402%ifarch %{multilib_64_archs}
2403%{_prefix}/lib/libstdc++.so.6*
2404%endif
2405%dir %{_datadir}/gdb
2406%dir %{_datadir}/gdb/auto-load
2407%dir %{_datadir}/gdb/auto-load/%{_prefix}
2408%dir %{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/
2409%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc*gdb.py*
2410%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/__pycache__
2411%dir %{_prefix}/share/gcc-%{gcc_major}
2412%dir %{_prefix}/share/gcc-%{gcc_major}/python
2413%{_prefix}/share/gcc-%{gcc_major}/python/libstdcxx
2414
2415%files -n libstdc++-devel
2416%defattr(-,root,root,-)
2417%dir %{_prefix}/include/c++
2418%{_prefix}/include/c++/%{gcc_major}
2419%dir %{_prefix}/lib/gcc
2420%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2421%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2422%ifnarch sparcv9 ppc %{multilib_64_archs}
2423%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.so
2424%endif
2425%ifarch sparcv9 ppc
2426%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2427%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libstdc++fs.a
2428%endif
2429%ifarch sparc64 ppc64 ppc64p7
2430%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2431%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libstdc++fs.a
2432%endif
2433%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2434%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++fs.a
2435%endif
2436%doc rpm.doc/changelogs/libstdc++-v3/ChangeLog* libstdc++-v3/README*
2437
2438%files -n libstdc++-static
2439%defattr(-,root,root,-)
2440%dir %{_prefix}/lib/gcc
2441%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2442%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2443%ifarch sparcv9 ppc
2444%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2445%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libstdc++.a
2446%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libsupc++.a
2447%endif
2448%ifarch sparc64 ppc64 ppc64p7
2449%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2450%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libstdc++.a
2451%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libsupc++.a
2452%endif
2453%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2454%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.a
2455%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsupc++.a
2456%endif
2457
2458%if %{build_libstdcxx_docs}
2459%files -n libstdc++-docs
2460%defattr(-,root,root)
2461%{_mandir}/man3/*
2462%doc rpm.doc/libstdc++-v3/html
2463%endif
2464
2465%files objc
2466%defattr(-,root,root,-)
2467%dir %{_prefix}/lib/gcc
2468%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2469%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2470%dir %{_prefix}/libexec/gcc
2471%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2472%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2473%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
2474%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/objc
2475%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1obj
2476%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libobjc.a
2477%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libobjc.so
2478%ifarch sparcv9 ppc
2479%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
2480%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libobjc.a
2481%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libobjc.so
2482%endif
2483%ifarch %{multilib_64_archs}
2484%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
2485%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libobjc.a
2486%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libobjc.so
2487%endif
2488%doc rpm.doc/objc/*
2489%doc libobjc/THREADS* rpm.doc/changelogs/libobjc/ChangeLog*
2490
2491%files objc++
2492%defattr(-,root,root,-)
2493%dir %{_prefix}/libexec/gcc
2494%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2495%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2496%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1objplus
2497
2498%files -n libobjc
2499%defattr(-,root,root,-)
2500%{_prefix}/%{_lib}/libobjc.so.4*
2501%ifarch %{multilib_64_archs}
2502%{_prefix}/lib/libobjc.so.4*
2503%endif
2504
2505%files gfortran
2506%defattr(-,root,root,-)
2507%{_prefix}/bin/gfortran
2508%{_prefix}/bin/f95
2509%{_mandir}/man1/gfortran.1*
2510%{_infodir}/gfortran*
2511%dir %{_prefix}/lib/gcc
2512%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2513%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2514%dir %{_prefix}/libexec/gcc
2515%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2516%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2517%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude
2518%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.h
2519%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.f90
2520%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.mod
2521%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib_kinds.mod
2522%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc.f90
2523%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc.mod
2524%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc_kinds.mod
2525%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc_lib.h
2526%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_arithmetic.mod
2527%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_exceptions.mod
2528%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_features.mod
2529%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/f951
2530%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.spec
2531%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcaf_single.a
2532%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
2533%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.a
2534%endif
2535%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.so
2536%ifarch sparcv9 ppc
2537%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
2538%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libcaf_single.a
2539%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgfortran.a
2540%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgfortran.so
2541%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/finclude
2542%endif
2543%ifarch %{multilib_64_archs}
2544%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
2545%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libcaf_single.a
2546%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgfortran.a
2547%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgfortran.so
2548%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/finclude
2549%endif
2550%dir %{_fmoddir}
2551%doc rpm.doc/gfortran/*
2552
2553%files -n libgfortran
2554%defattr(-,root,root,-)
2555%{_prefix}/%{_lib}/libgfortran.so.5*
2556%ifarch %{multilib_64_archs}
2557%{_prefix}/lib/libgfortran.so.5*
2558%endif
2559
2560%files -n libgfortran-static
2561%defattr(-,root,root,-)
2562%dir %{_prefix}/lib/gcc
2563%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2564%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2565%ifarch sparcv9 ppc
2566%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2567%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgfortran.a
2568%endif
2569%ifarch sparc64 ppc64 ppc64p7
2570%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2571%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgfortran.a
2572%endif
2573%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2574%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.a
2575%endif
2576
2577%if %{build_ada}
2578%files gnat
2579%defattr(-,root,root,-)
2580%{_prefix}/bin/gnat
2581%{_prefix}/bin/gnat[^i]*
2582%{_infodir}/gnat*
2583%dir %{_prefix}/lib/gcc
2584%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2585%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2586%dir %{_prefix}/libexec/gcc
2587%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2588%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2589%ifarch sparcv9 ppc
2590%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
2591%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/adainclude
2592%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/adalib
2593%endif
2594%ifarch %{multilib_64_archs}
2595%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
2596%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/adainclude
2597%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/adalib
2598%endif
2599%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
2600%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adainclude
2601%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib
2602%endif
2603%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/gnat1
2604%doc rpm.doc/changelogs/gcc/ada/ChangeLog*
2605
2606%files -n libgnat
2607%defattr(-,root,root,-)
2608%{_prefix}/%{_lib}/libgnat-*.so
2609%{_prefix}/%{_lib}/libgnarl-*.so
2610
2611%files -n libgnat-devel
2612%defattr(-,root,root,-)
2613%dir %{_prefix}/lib/gcc
2614%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2615%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2616%ifarch sparcv9 ppc
2617%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2618%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adainclude
2619%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib
2620%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnat.a
2621%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnarl.a
2622%endif
2623%ifarch sparc64 ppc64 ppc64p7
2624%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2625%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adainclude
2626%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib
2627%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnat.a
2628%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnarl.a
2629%endif
2630%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2631%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adainclude
2632%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib
2633%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnat.a
2634%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnarl.a
2635%endif
2636
2637%files -n libgnat-static
2638%defattr(-,root,root,-)
2639%dir %{_prefix}/lib/gcc
2640%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2641%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2642%ifarch sparcv9 ppc
2643%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2644%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib
2645%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnat.a
2646%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnarl.a
2647%endif
2648%ifarch sparc64 ppc64 ppc64p7
2649%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2650%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib
2651%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnat.a
2652%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnarl.a
2653%endif
2654%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2655%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib
2656%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnat.a
2657%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnarl.a
2658%endif
2659%endif
2660
2661%files -n libgomp
2662%defattr(-,root,root,-)
2663%{_prefix}/%{_lib}/libgomp.so.1*
2664%ifarch %{multilib_64_archs}
2665%{_prefix}/lib/libgomp.so.1*
2666%endif
2667%{_infodir}/libgomp.info*
2668%doc rpm.doc/changelogs/libgomp/ChangeLog*
2669
2670%if %{build_libquadmath}
2671%files -n libquadmath
2672%defattr(-,root,root,-)
2673%{_prefix}/%{_lib}/libquadmath.so.0*
2674%ifarch %{multilib_64_archs}
2675%{_prefix}/lib/libquadmath.so.0*
2676%endif
2677%{_infodir}/libquadmath.info*
2678%{!?_licensedir:%global license %%doc}
2679%license rpm.doc/libquadmath/COPYING*
2680
2681%files -n libquadmath-devel
2682%defattr(-,root,root,-)
2683%dir %{_prefix}/lib/gcc
2684%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2685%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2686%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
2687%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/quadmath.h
2688%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/quadmath_weak.h
2689%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2690%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.so
2691%endif
2692%doc rpm.doc/libquadmath/ChangeLog*
2693
2694%files -n libquadmath-static
2695%defattr(-,root,root,-)
2696%dir %{_prefix}/lib/gcc
2697%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2698%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2699%ifarch sparcv9 ppc
2700%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2701%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libquadmath.a
2702%endif
2703%ifarch sparc64 ppc64 ppc64p7
2704%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2705%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libquadmath.a
2706%endif
2707%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2708%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.a
2709%endif
2710%endif
2711
2712%if %{build_libitm}
2713%files -n libitm
2714%defattr(-,root,root,-)
2715%{_prefix}/%{_lib}/libitm.so.1*
2716%ifarch %{multilib_64_archs}
2717%{_prefix}/lib/libitm.so.1*
2718%endif
2719%{_infodir}/libitm.info*
2720
2721%files -n libitm-devel
2722%defattr(-,root,root,-)
2723%dir %{_prefix}/lib/gcc
2724%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2725%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2726%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
2727#%%{_prefix}/lib/gcc/%%{gcc_target_platform}/%%{gcc_major}/include/itm.h
2728#%%{_prefix}/lib/gcc/%%{gcc_target_platform}/%%{gcc_major}/include/itm_weak.h
2729%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2730%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.so
2731%endif
2732%doc rpm.doc/libitm/ChangeLog*
2733
2734%files -n libitm-static
2735%defattr(-,root,root,-)
2736%dir %{_prefix}/lib/gcc
2737%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2738%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2739%ifarch sparcv9 ppc
2740%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2741%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libitm.a
2742%endif
2743%ifarch sparc64 ppc64 ppc64p7
2744%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2745%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libitm.a
2746%endif
2747%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2748%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.a
2749%endif
2750%endif
2751
2752%if %{build_libatomic}
2753%files -n libatomic
2754%defattr(-,root,root,-)
2755%{_prefix}/%{_lib}/libatomic.so.1*
2756%ifarch %{multilib_64_archs}
2757%{_prefix}/lib/libatomic.so.1*
2758%endif
2759
2760%files -n libatomic-static
2761%defattr(-,root,root,-)
2762%dir %{_prefix}/lib/gcc
2763%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2764%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2765%ifarch sparcv9 ppc
2766%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2767%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libatomic.a
2768%endif
2769%ifarch sparc64 ppc64 ppc64p7
2770%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2771%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libatomic.a
2772%endif
2773%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2774%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a
2775%endif
2776%doc rpm.doc/changelogs/libatomic/ChangeLog*
2777%endif
2778
2779%if %{build_libasan}
2780%files -n libasan
2781%defattr(-,root,root,-)
2782%{_prefix}/%{_lib}/libasan.so.5*
2783%ifarch %{multilib_64_archs}
2784%{_prefix}/lib/libasan.so.5*
2785%endif
2786
2787%files -n libasan-static
2788%defattr(-,root,root,-)
2789%dir %{_prefix}/lib/gcc
2790%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2791%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2792%ifarch sparcv9 ppc
2793%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2794%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libasan.a
2795%endif
2796%ifarch sparc64 ppc64 ppc64p7
2797%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2798%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libasan.a
2799%endif
2800%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2801%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a
2802%endif
2803%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
2804%{!?_licensedir:%global license %%doc}
2805%license libsanitizer/LICENSE.TXT
2806%endif
2807
2808%if %{build_libtsan}
2809%files -n libtsan
2810%defattr(-,root,root,-)
2811%{_prefix}/%{_lib}/libtsan.so.0*
2812
2813%files -n libtsan-static
2814%defattr(-,root,root,-)
2815%dir %{_prefix}/lib/gcc
2816%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2817%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2818%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.a
2819%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
2820%{!?_licensedir:%global license %%doc}
2821%license libsanitizer/LICENSE.TXT
2822%endif
2823
2824%if %{build_libubsan}
2825%files -n libubsan
2826%defattr(-,root,root,-)
2827%{_prefix}/%{_lib}/libubsan.so.1*
2828%ifarch %{multilib_64_archs}
2829%{_prefix}/lib/libubsan.so.1*
2830%endif
2831
2832%files -n libubsan-static
2833%defattr(-,root,root,-)
2834%dir %{_prefix}/lib/gcc
2835%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2836%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2837%ifarch sparcv9 ppc
2838%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2839%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libubsan.a
2840%endif
2841%ifarch sparc64 ppc64 ppc64p7
2842%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2843%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libubsan.a
2844%endif
2845%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2846%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a
2847%endif
2848%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
2849%{!?_licensedir:%global license %%doc}
2850%license libsanitizer/LICENSE.TXT
2851%endif
2852
2853%if %{build_liblsan}
2854%files -n liblsan
2855%defattr(-,root,root,-)
2856%{_prefix}/%{_lib}/liblsan.so.0*
2857
2858%files -n liblsan-static
2859%defattr(-,root,root,-)
2860%dir %{_prefix}/lib/gcc
2861%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2862%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2863%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan.a
2864%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
2865%{!?_licensedir:%global license %%doc}
2866%license libsanitizer/LICENSE.TXT
2867%endif
2868
2869%if %{build_libmpx}
2870%files -n libmpx
2871%defattr(-,root,root,-)
2872%{_prefix}/%{_lib}/libmpx.so.2*
2873%{_prefix}/%{_lib}/libmpxwrappers.so.2*
2874%ifarch %{multilib_64_archs}
2875%{_prefix}/lib/libmpx.so.2*
2876%{_prefix}/lib/libmpxwrappers.so.2*
2877%endif
2878
2879%files -n libmpx-static
2880%defattr(-,root,root,-)
2881%dir %{_prefix}/lib/gcc
2882%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2883%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2884%ifarch sparcv9 ppc
2885%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2886%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libmpx.a
2887%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libmpxwrappers.a
2888%endif
2889%ifarch sparc64 ppc64 ppc64p7
2890%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2891%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libmpx.a
2892%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libmpxwrappers.a
2893%endif
2894%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2895%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.a
2896%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.a
2897%endif
2898%doc rpm.doc/changelogs/libmpx/ChangeLog*
2899%endif
2900
2901%if %{build_go}
2902%files go
2903%defattr(-,root,root,-)
2904%ghost %{_prefix}/bin/go
2905%attr(755,root,root) %{_prefix}/bin/go.gcc
2906%{_prefix}/bin/gccgo
2907%ghost %{_prefix}/bin/gofmt
2908%attr(755,root,root) %{_prefix}/bin/gofmt.gcc
2909%{_mandir}/man1/gccgo.1*
2910%{_mandir}/man1/go.1*
2911%{_mandir}/man1/gofmt.1*
2912%dir %{_prefix}/lib/gcc
2913%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2914%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2915%dir %{_prefix}/libexec/gcc
2916%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
2917%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
2918%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/go1
2919%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo
2920%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/buildid
2921%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/test2json
2922%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/vet
2923%ifarch sparcv9 ppc
2924%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
2925%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgo.so
2926%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgo.a
2927%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgobegin.a
2928%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgolibbegin.a
2929%endif
2930%ifarch %{multilib_64_archs}
2931%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
2932%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgo.so
2933%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgo.a
2934%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgobegin.a
2935%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgolibbegin.a
2936%endif
2937%ifarch sparcv9 ppc %{multilib_64_archs}
2938%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.so
2939%endif
2940%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
2941%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.a
2942%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgobegin.a
2943%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgolibbegin.a
2944%endif
2945%doc rpm.doc/go/*
2946
2947%files -n libgo
2948%defattr(-,root,root,-)
2949%attr(755,root,root) %{_prefix}/%{_lib}/libgo.so.13.*.*
2950%{_prefix}/%{_lib}/libgo.so.13
2951%ifarch %{multilib_64_archs}
2952%{_prefix}/lib/libgo.so.13*
2953%endif
2954%doc rpm.doc/libgo/*
2955
2956%files -n libgo-devel
2957%defattr(-,root,root,-)
2958%dir %{_prefix}/lib/gcc
2959%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2960%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2961%dir %{_prefix}/%{_lib}/go
2962%dir %{_prefix}/%{_lib}/go/%{gcc_major}
2963%{_prefix}/%{_lib}/go/%{gcc_major}/%{gcc_target_platform}
2964%ifarch %{multilib_64_archs}
2965%ifnarch sparc64 ppc64 ppc64p7
2966%dir %{_prefix}/lib/go
2967%dir %{_prefix}/lib/go/%{gcc_major}
2968%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform}
2969%endif
2970%endif
2971%ifarch sparcv9 ppc
2972%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2973%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgobegin.a
2974%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgolibbegin.a
2975%endif
2976%ifarch sparc64 ppc64 ppc64p7
2977%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2978%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgobegin.a
2979%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgolibbegin.a
2980%endif
2981%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
2982%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgobegin.a
2983%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgolibbegin.a
2984%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.so
2985%endif
2986
2987%files -n libgo-static
2988%defattr(-,root,root,-)
2989%dir %{_prefix}/lib/gcc
2990%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
2991%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
2992%ifarch sparcv9 ppc
2993%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
2994%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgo.a
2995%endif
2996%ifarch sparc64 ppc64 ppc64p7
2997%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
2998%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgo.a
2999%endif
3000%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
3001%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.a
3002%endif
3003%endif
3004
3005%files -n libgccjit
3006%{_prefix}/%{_lib}/libgccjit.so.*
3007%doc rpm.doc/changelogs/gcc/jit/ChangeLog*
3008
3009%files -n libgccjit-devel
3010%{_prefix}/%{_lib}/libgccjit.so
3011%{_prefix}/include/libgccjit*.h
3012%{_infodir}/libgccjit.info*
3013%doc rpm.doc/libgccjit-devel/*
3014%doc gcc/jit/docs/examples
3015
3016%files plugin-devel
3017%defattr(-,root,root,-)
3018%dir %{_prefix}/lib/gcc
3019%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
3020%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
3021%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
3022%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gtype.state
3023%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/include
3024%dir %{_prefix}/libexec/gcc
3025%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
3026%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
3027%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
3028
3029%files gdb-plugin
3030%defattr(-,root,root,-)
3031%{_prefix}/%{_lib}/libcc1.so*
3032%dir %{_prefix}/lib/gcc
3033%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
3034%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
3035%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
3036%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/libcc1plugin.so*
3037%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/libcp1plugin.so*
3038%doc rpm.doc/changelogs/libcc1/ChangeLog*
3039
3040%changelog
3041* Sun Sep 22 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 8.3.1-1
3042- updated to 8.3.0
3043- imported Patch0 from upstream (8.3.1).
3044
3045* Sun Jan 20 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 8.2.0-1
3046- updated to 8.2.0
3047- dropped fastjar.
3048- dropped all patches.
3049- imported Patch0 from upstream.
3050- imported Patch1-13 from rawhide.
3051
3052* Sun Jun 26 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 5.4.0-1
3053- updated to 5.4.0
3054- merged with FC 5.3.1-6.fc23
3055- add BuildRequires: isl-devel
3056- create libmpx,libmpx-static and gdb-plugin subpackages
3057
3058* Tue May 24 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.9.3-2
3059- added BR:net-tools for tests.
3060- rebuilt with new binutils.
3061
3062* Sat May 07 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 4.9.3-1
3063- updated to 4.9.3
3064- update Patch4 (gcc49-i386-libgomp.patch)
3065- remove Patch13,14
3066- remove libmudflap{,-devel,-static} subpackages
3067- add {libubsan,libtsan,liblsan,libcilkrts,}-{,-static} subpackages
3068
3069* Sun Dec 13 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 4.8.2-2
3070- rebuild with VineSeed environment
3071- remove gcc-java subpackage (build_java is set to 0)
3072
3073* Mon Nov 04 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 4.8.2-1
3074- updated to 4.8.2
3075
3076* Mon Sep 30 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 4.8.1-2
3077- change source (original)
3078
3079* Sun Sep 29 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 4.8.1-1
3080- updated to 4.8.1
3081- merged with FC 4.8.1-10.fc21
3082
3083* Mon Jan 09 2012 NAKAMURA Kenta <kenta@vinelinux.org> 4.6.2-3
3084- updated %%install and %%files sections to pack missing 32bit libraries on multilib_64_archs
3085
3086* Sat Jan 07 2012 Daisuke SUZUKI <daisuke@linux.or.jp> 4.6.2-2
3087- add %%posttrans for gcc,gcc-cpp,gcc-c++,gcc-gfortran
3088  to fix missing symlinks
3089- add Obsoletes: fastjar to libgcj
3090
3091* Fri Dec 02 2011 NAKAMURA Kenta <kenta@vinelinux.org> 4.6.2-1
3092- updated to 4.6.2
3093- merged with FC 4.6.2-1.fc17.1
3094- removed alternatives
3095
3096* Wed Nov 02 2011 NAKAMURA Kenta <kenta@vinelinux.org> - 4.4.5-8
3097- rebuilt with mpfr-3.1.0
3098
3099* Fri Sep 09 2011 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 4.4.5-7
3100- updated to more recent svn source from Fedora13 updates 4.4.5-2.fc13
3101
3102* Mon May 02 2011 Daisuke SUZUKI <daisuke@linux.or.jp> 4.4.5-6
3103- fix %%postun
3104  - remove alternatives only if broken
3105
3106* Mon May 02 2011 Daisuke SUZUKI <daisuke@linux.or.jp> 4.4.5-5
3107- update %%postun to fix alternatives bug
3108- add %%triggerpostun to fix broken alternatives
3109
3110* Sat Apr 02 2011 NAKAMURA Kenta <kenta@vinelinux.org> - 4.4.5-3
3111- dropped gcc44-no-add-needed.patch in Vine Linux 6
3112
3113* Wed Mar 23 2011 Daisuke SUZUKI <daisuke@linux.or.jp> 4.4.5-2
3114- add BR: glibc-static
3115
3116* Sun Mar 20 2011 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.4.5-1
3117- new upstream release
3118- used %%posttrans instead of %%triggerpostun
3119
3120* Sun Sep 19 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> - 4.4.3-9
3121- used alternatives %%{_prefix}/%%{_lib}/security/classpath.security
3122
3123* Fri Aug 13 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> - 4.4.3-8
3124- rebuilt with gcc-java-4.4.3-7
3125
3126* Sun Aug  1 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> - 4.4.3-7
3127- used %%{_lib} macros for classpath.security and logging.properties (libgcj)
3128- this release needs to build --with java_bootstrap option
3129
3130* Sun Jul 25 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> - 4.4.3-6
3131- bootstrapped java package
3132- this release needs to build --with java_bootstrap option
3133
3134* Wed Apr  7 2010 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 4.4.3-5
3135- updated to 20100401 (svn r157910)
3136
3137* Tue Apr  6 2010 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 4.4.3-4
3138- fix configure flags on ppc again (remove --with-cpu=750)
3139
3140* Mon Feb  8 2010 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 4.4.3-3
3141- fix configure flags on ppc
3142
3143* Mon Jan 25 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.4.3-2
3144- rebuilt with new toolchain
3145- fixed %%install and %%file libgomp section (Thanks to kenta-san)
3146- added Provides: libstdc++34 to libstdc++
3147
3148* Sun Jan 24 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 4.4.3-1
3149- new upstream release
3150
3151* Fri Dec 26 2008 NAKAMURA Kenta <kenta@vinelinux.org> 4.1.2-21
3152- added BuildRequires: compat32-glibc-devel for x86_64 arch
3153
3154* Sat Dec 20 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 4.1.2-20
3155- remove Requires: %{_prefox}/%{_lib}/libz.so from libgcj-devel
3156
3157* Wed Sep 24 2008 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 4.1.2-19
3158- rebuilt with binutils-2.18.50.0.6 and glibc-2.8
3159
3160* Tue Jul 08 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 4.1.2-18
3161- updated to 4.1.3 prerelease 20080708 (gcc-4_1-branch r137614)
3162- new versioning policy
3163- require gecko-devel instead of firefox-devel
3164
3165* Sun Feb 10 2008 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl17
3166- updated to 4.1.3 prerelease 20080204 (gcc-4_1-branch r132101)
3167
3168* Thu Dec 27 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl16
3169- updated to 4.1.3 prerelease 20071221 (gcc-4_1-branch r131115)
3170
3171* Tue Dec 18 2007 NAKAMURA Kenta <kenta@vinelinux.org> 4.1.2-0vl15
3172- updated %%files section to include 32bit libraries for x86_64
3173
3174* Sat Dec 15 2007 NAKAMURA Kenta <kenta@vinelinux.org> 4.1.2-0vl14
3175- added BuildRequires: mpfr-devel
3176
3177* Sat Oct 20 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl13
3178- updated to 4.1.3 prerelease 20070923 (gcc-4_1-branch r128704)
3179
3180* Wed Jul 04 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl12
3181- updated to 4.1.3 prerelease 20070703 (gcc-4_1-branch r126255)
3182  - PR target/28307, boehm-gc/21940, boehm-gc/21942, target/32389,
3183       c++/31809, c++/31806, inline-asm/32109, middle-end/32285,
3184       rtl-optimization/28011, tree-optimization/32353, target/32163
3185
3186* Thu May 31 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl11
3187- Sorry, put a wrong srpm, it was just my mistake. Put correct version.
3188
3189* Mon May 28 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl10
3190- updated to 4.1.3 prerelease 20070524 (gcc-4_1-branch r125017)
3191  - PR libfortran/31964, target/31701, target/31480, target/31022
3192- disguise version_string[], such as
3193  "4.1.2 (4.1.3 prelease 20070524) (Vine Linux 4.1.2-0vl10)"
3194
3195* Sun May 20 2007 NAKAMURA Kenta <kenta@vinelinux.org> 4.1.2-0vl9
3196- enable Patch5: gcc41-java-nomulti.patch
3197- remove obsoleted work around which building libgcj_bc.so
3198
3199* Sat May 19 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl8
3200- updated to 4.1.3 prerelease 20070517 (gcc-4_1-branch r124799)
3201
3202* Sun May 13 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl7
3203- add Patch101
3204  (long double 128bit by default on alpha/ppc/sparc/s390 targets)
3205    http://sources.redhat.com/bugzilla/show_bug.cgi?id=2749
3206  which was originally derived from the following patches:
3207    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25864#c13
3208    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25864#c14
3209- add --disable-multilib configure option for no-biarch builds on ppc
3210- fix spec typo of Daisuk SUZUKI's -mcpu removal on 4.1.2-0vl5
3211
3212* Sat May 12 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl6
3213- enable Patch19 now
3214
3215* Wed May 09 2007 Daisuke SUZUKI <daisuke@linux.or.jp> 4.1.2-0vl5
3216- add Patch100 to add -mtune=generic option (from MDV)
3217- remove -mcpu option from OPT_FLAGS
3218- use bootstrap-lean instead of profiledbootstrap
3219- enable Patch10 to add MNI support (SSE3)
3220
3221* Mon May 07 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl4
3222- yet another minor fix (don't obsolete gcc3-* packages)
3223
3224* Mon May 07 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl3
3225- one more minor fix (libgfortran don't obsolete libf2c)
3226
3227* Mon May 07 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl2
3228- Oops, fixed one small typo
3229
3230* Sun May 06 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl1
3231- rebuild
3232
3233* Wed May 02 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 4.1.2-0vl0
3234- initial build for VineSeed
3235- based on FC 4.1.1-30 and VineSeed 3.3.6-0vl8
3236- updated to 4.1.2 upstream release with most FC patches omitted (TODOs)
3237
3238* Wed Oct 11 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-30
3239- update from gcc-4_1-branch (-r117464:117629)
3240  - PRs c++/28302, c++/28349, c++/28450, c++/29002, libstdc++/29095,
3241        libstdc++/29354, libstdc++/29368, target/28490
3242- fix gnu.xml.transform.TransformerImpl (Tom Tromey, #208854,
3243  PR classpath/29362)
3244
3245* Fri Oct  6 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-29
3246- update from gcc-4_1-branch (-r117266:117464)
3247  - PRs bootstrap/26764, bootstrap/27334, c++/29080, c++/29138, c++/29226,
3248        c/27489, c/27490, debug/28980, fortran/18791, libfortran/18791,
3249        middle-end/28862, objc/29195, other/25035, tree-opt/28952
3250  - fix s390{,x} address legitimization with TLS symbols (Angel Nunez
3251    Mencias)
3252- fix -fno-automatic with Fortran auto arrays with non-constant size
3253  (#203928, PR fortran/28415)
3254- fix char and short __sync_fetch_and_XXX (PR target/28924)
3255- fix emitting of vector constants with incomplete initializers (PR c/29091)
3256- fix ICE with multiple exit loop and -ftree-loop-linear
3257  (#208935, PR tree-optimization/29290)
3258
3259* Sat Sep 30 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-28
3260- fix i386/x86_64 legitimize_pic_address with TLS symbols (PR target/29198)
3261- fix gimplification of post-increment with side-effects on the inner
3262  expression (PR c/29154)
3263
3264* Thu Sep 28 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-27
3265- update from gcc-4_1-branch (-r117225:117266)
3266  - PR target/29230
3267- restrict single entry mem{{,p}cpy,move,set} optimization to vars
3268  and components thereof (PR middle-end/29272)
3269- fix java.util.Locale (Tom Tromey, #201712)
3270
3271* Tue Sep 26 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-26
3272- update from gcc-4_1-branch (-r117162:117225)
3273  - PRs classpath/28661, libgcj/29178, libstdc++/29179, libstdc++/29224
3274  - fix unwind info generation, broken in gcc-4.1.1-21
3275    (Roger Sayle, PR debug/29132)
3276
3277* Sat Sep 23 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-25
3278- update from gcc-4_1-branch (-r117069:117162)
3279  - PRs c++/28996, c++/29087, middle-end/26983
3280- fix -fprofile-use with anonymous namespaces (Jan Hubicka, PRs profile/20815,
3281  profile/26399)
3282- fix #pragma omp parallel and #pragma omp section that call nested
3283  functions (PRs middle-end/25261, middle-end/28790)
3284
3285* Wed Sep 20 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-24
3286- update from gcc-4_1-branch (-r117000:117069)
3287  - PRs fortran/21918, fortran/28526, fortran/28817, fortran/29060,
3288        fortran/29101, java/28754, java/28892, java/29013,
3289        middle-end/27226, middle-end/4520, tree-optimization/28900
3290- fix java.utils.logging.Logger (Mark Wielaard, #207111)
3291- fix gnu.javax.net.ssl.provider.SSLSocket (Tom Tromey, #206904)
3292- add support for Fortran OpenMP conditional inclusion (PR fortran/29097)
3293- add some -D_FORTIFY_SOURCE compile time strncat buffer overflow checks
3294
3295* Sun Sep 17 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-23
3296- update from gcc-4_1-branch (-r116958:117000)
3297  - PRs fortran/29051, target/28946
3298- fix single entry mem{{,p}cpy,move,set} optimization (Andrew Pinski,
3299  PR tree-opt/29059)
3300
3301* Fri Sep 15 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-22
3302- update from gcc-4_1-branch (-r116778:116958)
3303  - PRs ada/21952, ada/29025, c++/26957, fortran/28890, fortran/28923,
3304        fortran/28959, libfortran/28890, libfortran/28923, libfortran/28947,
3305        middle-end/28493, other/23541, other/26507, rtl-optimization/28243,
3306        rtl-optimization/28634, rtl-optimization/28636, rtl-optimization/28726,
3307        target/13685, target/26504, target/27537, target/27681, target/28621,
3308        target/29006, testsuite/28950, testsuite/29007
3309- fix #pragma omp atomic (PR middle-end/28046)
3310- speed up dominance frontiers calculation (Jan Hubicka)
3311- add README.libgcjwebplugin.so to libgcj %%doc (Tom Fitzsimmons)
3312- fix gcc-gfortran %%doc (#206333)
3313- fix gcc-debuginfo (#205500)
3314
3315* Fri Sep  8 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-21
3316- update from gcc-4_1-branch (-r116498:116778)
3317  - PRs c++/19809, c++/26102, c++/26195, c++/26571, c++/26670, c++/26671,
3318        c++/26696, c++/26917, c++/28860, c++/28878, c++/28886, fortran/20067,
3319        fortran/24866, fortran/25077, fortran/25102, fortran/28005,
3320        fortran/28873, fortran/28885, fortran/28908, libfortran/28005,
3321        middle-end/27724, middle-end/28814, other/22313,
3322        rtl-optimization/27616, rtl-optimization/28386, target/24367
3323- add primitive class object symbols to libgcj_bc.so (Tom Tromey,
3324  PR libgcj/28698)
3325- optimize single entry memcpy/mempcpy/memmove/memset already at the tree
3326  level (PR middle-end/27567)
3327- add dependencies to *-devel subpackages, so that e.g. ppc64
3328  libstdc++-devel requires 64-bit libstdc++, similarly for libgcj-devel
3329  and libgcj/zlib-devel
3330
3331* Fri Aug 25 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-20
3332- update from gcc-4_1-branch (-r116389:116498)
3333  - PRs c++/28056, c++/28058, c++/28595, c++/28853, c/27558,
3334        c/27893, c/28299, c/28418, driver/27622, libfortran/28452,
3335        libfortran/28542, target/27075
3336- optimize A / (B << N) where A and B is positive and B is a power of two
3337  (Alan Modra, #195924, PR rtl-optimization/26026)
3338- fix attribute handling in C++ (Jason Merrill, #204277, #204035,
3339  PRs c++/28659, c++/28863)
3340
3341* Fri Aug 25 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-19
3342- update from gcc-4_1-branch (-r116223:116389)
3343  - PRs c++/23372, c++/27714, c++/28346, c++/28385, fortran/18111,
3344        fortran/20886, fortran/25217, fortran/25828, fortran/28425,
3345        fortran/28496, fortran/28601, fortran/28630, fortran/28660,
3346        fortran/28735, fortran/28762, fortran/28771, fortran/28788,
3347        libstdc++/28765, target/27565
3348- another big Java merge from the trunk (Tom Fitzsimmons)
3349- fix ICE in add_reg_br_prob_note (PR middle-end/28683)
3350
3351* Fri Aug 18 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-18
3352- update from gcc-4_1-branch (-r116176:116223)
3353  - PRs c++/28593, c++/28606, c++/28710, c/27697, middle-end/20256,
3354        middle-end/25211, middle-end/26435
3355- don't waste .rodata space when copying from const array with large
3356  entries (PR middle-end/28755)
3357- fix --combine with anonymous structures in unions (Alexandre Oliva,
3358  PR c/27898)
3359- rebuilt with latest binutils to pick up 64K -z commonpagesize on ppc*
3360  (#203001)
3361
3362* Wed Aug 16 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-17
3363- update from gcc-4_1-branch (-r116082:116176)
3364  - PRs c++/27894, c++/28677, c/28649, middle-end/28075,
3365        rtl-optimization/23454
3366- merge gomp fixes from the trunk (-r116152:116154)
3367  - PRs middle-end/28713, middle-end/28724
3368- add -march=geode and -mtune=geode support (Vlad Makarov)
3369- use %gs rather than %fs register on x86_64 with
3370  -mcmodel=kernel -fstack-protector (Arjan van de Ven, #202842)
3371- don't create jar manifest in libgcj-tools-4.*.jar (#200887)
3372- externally_visible attribute fixes (Jan Hubicka, PRs c/25795, c++/27369)
3373- --combine fixes for aggregates with attributes (PRs c/28706, c/28712)
3374- further externally_visible attr fixes (PR c/28744)
3375- fix invalid token pasting error message (PR preprocessor/28709)
3376- obey OpenMP 2.5 chapter 4 env var requirements (whitespace rules
3377  and case insensitivity in the env vars; PR libgomp/28725)
3378- fix OPT_FLAGS on sparc
3379
3380* Sat Aug 12 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-16
3381- fix multilib conflict in libgcj-tools-4.1.1.jar (#200887)
3382
3383* Fri Aug 11 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-15
3384- update from gcc-4_1-branch (-r115877:116082)
3385  - PRs c++/27508, c++/28148, c++/28250, c++/28256, c++/28257, c++/28259,
3386        c++/28267, c++/28274, c++/28347, c++/28432, c++/28557, c++/28594,
3387        c++/28637, c++/28638, c++/28639, c++/28640, c++/28641, c/27721,
3388        c/28136, fortran/27981, fortran/28548, fortran/28590,
3389        middle-end/28651, rtl-optimization/27291, rtl-optimization/28221,
3390        target/27566, target/27827
3391- fix Fortran ICE with nested function (Paul Thomas, #200618,
3392  PR fortran/28600)
3393
3394* Wed Aug  2 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-14
3395- update from gcc-4_1-branch (-r115644:115877)
3396  - PRs c++/27572, c++/27668, c++/27962, c++/28025, c++/28258, c++/28523,
3397        debug/25468, fortran/20892, fortran/27874, fortran/28129,
3398        fortran/28439, libgfortran/28335, libgfortran/28339,
3399        middle-end/28402, middle-end/28403, middle-end/28473,
3400        target/27287, target/28247, tree-optimization/26719,
3401        tree-optimization/27639, tree-optimization/27795,
3402        tree-optimization/28029, tree-optimization/28238
3403- BuildRequire firefox-devel instead of mozilla-devel
3404
3405* Tue Jul 25 2006 Alexandre Oliva <aoliva@redhat.com> 4.1.1-13
3406- backport fix by Andrew Haley for build problems related with the
3407  bootstrap ClassLoader
3408
3409* Mon Jul 24 2006 Alexandre Oliva <aoliva@redhat.com> 4.1.1-12
3410- backport fix by Mark Wielaard for NullPointerException in GCJ web plugin
3411
3412* Fri Jul 21 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-11
3413- update from gcc-4_1-branch (-r115565:115644)
3414  - PRs target/27363, c++/27495, c++/28048, c++/28235, c++/28337, c++/28338,
3415        c++/28363, middle-end/28283
3416- turn back autoprov/autoreq on gcc-java, instead disable it on
3417  libgcj-devel
3418
3419* Thu Jul 20 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-10
3420- Java backport of from GCC trunk (Tom Tromey, Bryce McKinlay)
3421  - include libgcjwebplugin.so, gappletviewer, gjarsigner, gkeytool
3422- C++ visibility changes (Jason Merrill, PRs c++/28407, c++/28409)
3423
3424* Tue Jul 18 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-9
3425- update from gcc-4_1-branch (-r115330:115565)
3426  - PRs c++/28016, c++/28051, c++/28249, c++/28291, c++/28294, c++/28304,
3427        c++/28343, c/26993, c/28286, fortran/20844, fortran/20893,
3428        fortran/20903, fortran/25097, fortran/27980, fortran/28201,
3429        fortran/28353, fortran/28384, libstdc++/27878,
3430        tree-optimization/19505, tree-optimization/28162,
3431        tree-optimization/28187
3432- fix directory traversal issue in fastjar (Richard Guenther, CVE-2006-3619,
3433  PR fastjar/28359)
3434- fix ICE on complex assignment in nested fn (Richard Henderson,
3435  PR middle-end/27889)
3436- fix __builtin_constant_p in initializers (Mark Shinwell, #198849)
3437- fix tree verification - IDENTIFIER_NODE can be shared (Diego Novillo)
3438- fix duplicate_eh_regions
3439- handle > 99 tree dumps in the testsuite
3440
3441* Sat Jul 15 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-8
3442- fix handling of C++ template static data members in anonymous namespace
3443  (PR c++/28370)
3444- fix Fortran OpenMP handling of !$omp parallel do with lastprivate on the
3445  iteration variable (PR fortran/28390)
3446- backported reassociation pass rewrite (Daniel Berlin, Jeff Law,
3447  Roger Sayle, Peter Bergner, PRs ada/24994, tree-optimization/26854)
3448- BuildReq sharutils for uuencode
3449
3450* Tue Jul 11 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-7
3451- update from gcc-4_1-branch (-r115058:115330)
3452  - PRs c++/13983, c++/17519, c++/18681, c++/18698, c++/26577, c++/27019,
3453        c++/27424, c++/27768, c++/27820, c++/28114, fortran/23420,
3454        fortran/23862, fortran/24748, fortran/26801, fortran/27965,
3455        fortran/28081, fortran/28094, fortran/28167, fortran/28174,
3456        fortran/28213, fortran/28237, middle-end/27428, target/28084,
3457        target/28207, tree-optimization/28218
3458- use --hash-style=gnu by default
3459- C++ visibility fixes (Jason Merrill, PRs c++/17470, c++/19134,
3460  c++/21581, c++/21675, c++/25915, c++/26612, c++/26905, c++/26984,
3461  c++/27000, c++/28215, c++/28279)
3462- fix ppc insvdi_internal2/3 (David Edelsohn, Alan Modra, #197755,
3463  PR target/28170)
3464- avoid TFmode PRE_INC/PRE_DEC on ppc (David Edelsohn, PR target/28150)
3465
3466* Thu Jun 29 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-6
3467- update from gcc-4_1-branch (-r114766:115058)
3468  - PRs c++/27821, c++/28109, c++/28110, c++/28112, fortran/16206,
3469        fortran/18769, fortran/19310, fortran/19904, fortran/20867,
3470        fortran/20874, fortran/20876, fortran/22038, fortran/25049,
3471        fortran/25050, fortran/25056, fortran/25073, fortran/27554,
3472        fortran/27715, fortran/27784, fortran/27895, fortran/27958,
3473        fortran/28118, fortran/28119, libfortran/27784, libfortran/27895,
3474        libgcj/28178, middle-end/28045, middle-end/28151, target/27082,
3475        target/27861, tree-optimization/27781
3476- fix a reload problem that lead sometimes to writes to read-only objects
3477  (Bernd Schmidt, #196736, PR middle-end/26991, PR rtl-optimization/25636)
3478- ppc -mcpu=power6 initial support (Pete Steinmetz, #195924)
3479
3480* Tue Jun 20 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-5
3481- fix C++ #pragma omp atomic (Mark Mitchell)
3482
3483* Mon Jun 19 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-4
3484- update from gcc-4_1-branch (-r114555:114766)
3485  - PRs bootstrap/22541, c++/21210, c++/26559, c++/27227, c++/27648,
3486        c++/27665, c++/27666, c++/27689, c++/27884, c++/27933, c++/27951,
3487        fortran/27786, java/28024, middle-end/27733, middle-end/27802,
3488        target/27858, tree-optimization/27830
3489- merge gomp changes from the trunk (-r114642:114643)
3490  - PR libgomp/28008
3491- fix -fmerge-all-constants
3492- fix #pragma omp critical handling if not --enable-linux-futex
3493
3494* Tue Jun 13 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-3
3495- add BuildRequires for elfutils-devel on ia64
3496- fix a reload bug visible on s390x (Andreas Krebbel, #193912,
3497  PR middle-end/27959)
3498
3499* Mon Jun 12 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-2
3500- update from gcc-4_1-branch (-r114107:114555)
3501  - PRs ada/27769, c++/20173, c++/26068, c++/26433, c++/26496, c++/27177,
3502        c++/27385, c++/27447, c++/27451, c++/27601, c++/27713, c++/27716,
3503        c++/27722, c++/27801, c++/27806, c++/27807, c++/27819, c/25161,
3504        c/26818, c/27020, c/27718, fortran/14067, fortran/16943,
3505        fortran/18003, fortran/19015, fortran/19777, fortran/20839,
3506        fortran/20877, fortran/23091, fortran/23151, fortran/24168,
3507        fortran/24558, fortran/25047, fortran/25058, fortran/25082,
3508        fortran/25090, fortran/25098, fortran/25147, fortran/25746,
3509        fortran/26551, fortran/27155, fortran/27320, fortran/27411,
3510        fortran/27449, fortran/27470, fortran/27524, fortran/27552,
3511        fortran/27584, fortran/27613, fortran/27655, fortran/27662,
3512        fortran/27709, fortran/27897, libgcj/26483, libgfortran/24459,
3513        libgfortran/27757, middle-end/27743, middle-end/27793,
3514        target/25758, target/26223, target/27790, target/27842,
3515        testsuite/27705, tree-optimization/26242, tree-optimization/26622
3516- merge gomp changes from the trunk (-r114518:114520 and -r114524:114525)
3517  - PRs preprocessor/27746, c/27747, c++/27748, fortran/27916
3518- don't generate decls with the same DECL_UID in C++ FE (PR middle-end/27793)
3519
3520* Thu May 25 2006 Jakub Jelinek <jakub@redhat.com> 4.1.1-1
3521- update from gcc-4_1-branch (-r113848:114107)
3522  - GCC 4.1.1 release
3523  - PR fortran/27553
3524- fix i386/x86_64 -O0 -fpic link failure (#192816, PR target/27758)
3525- fix gcjh on 64-bit hosts (#192700)
3526- -fvar-tracking fixes needed for SystemTap (Alexandre Oliva, BZ#2438)
3527
3528* Wed May 17 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-19
3529- update from gcc-4_1-branch (-r113785:113848)
3530  - PRs c++/26757, c++/27339, c++/27491, driver/26885, rtl-optimization/14261,
3531        target/26600, tree-optimization/27603
3532- merge gomp changes from the trunk (-r113513:113514, -r113821:113823 and
3533  -r113845:113846)
3534  - PRs middle-end/27415, middle-end/27573
3535- optimize handling of large CONSTRUCTORs (Bernd Schmidt,
3536  PR middle-end/27620)
3537
3538* Mon May 15 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-18
3539- update from gcc-4_1-branch (-r113722:113785)
3540  - PRs c++/27315, c++/27581, c++/27582, rtl-optimization/22563
3541- merge gomp changes from the trunk (-r113786:113790)
3542
3543* Sun May 14 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-17
3544- make -mtune=z9-109 the default on s390{,x} (#184630)
3545
3546* Sat May 13 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-16
3547- update from gcc-4_1-branch (-r113637:113722)
3548  - PRs bootstrap/26872, c++/27547, fortran/20460, fortran/24549,
3549        middle-end/27384, middle-end/27488, target/26545, target/27158
3550- fix libgcj.pc location and content on x86_64, ppc64 and s390x (#185230)
3551- make __dso_handle const, so that it is added into .data.rel.ro section
3552  in shared libraries
3553- fix a typo in __builtin_object_size computation (Richard Guenther,
3554  PR tree-optimization/27532)
3555- fix ICE on -O0 -g if static local variables are in unreachable code blocks
3556  (Jan Hubicka, PR debug/26881)
3557- fix ICEs with conflicts across abnormal edges (Zdenek Dvorak,
3558  PRs tree-optimization/27283, tree-optimization/27548,
3559  tree-optimization/27549)
3560- warn about OpenMP section 2.9 region nesting violations
3561- fix OpenMP fortran array REDUCTION with -fbounds-check (PR fortran/27446)
3562- fix OpenMP {{FIRST,LAST}PRIVATE,REDUCTION} in orphaned construct on
3563  Fortran dummy argument (PR middle-end/27416)
3564- fix ICE on #pragma omp for unsigned iteration variable (PR c/27499)
3565
3566* Tue May  9 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-15
3567- update from gcc-4_1-branch (-r113623:113637)
3568  - PR fortran/27378
3569- update from trunk (-r109500:109501, -r109670:109671, -r111341:111342,
3570                     -r111704:111705, -r112546:112547, -r113111:113112,
3571                     -r113339:113341, -r113511:113513)
3572- fix loop peeling (Zdenek Dvorak, #190039, PR rtl-optimization/27335)
3573
3574* Mon May  8 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-14
3575- update from gcc-4_1-branch (-r113489:113623)
3576  - PRs c++/27422, c++/27427, fortran/24813, fortran/25099, fortran/25681,
3577        fortran/27269, fortran/27324, libfortran/26985, objc/27240,
3578        target/26481, target/26765, tree-optimization/25985,
3579        tree-optimization/27151
3580- fix zero size field handling in structalias (Richard Guenther,
3581  PR tree-optimization/27409)
3582- fix PR tree-optimization/27136 (Richard Guenther)
3583- fix classification of invalid struct types on x86_64 (Volker Reichelt,
3584  PR target/27421)
3585
3586* Wed May  3 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-13
3587- update from gcc-4_1-branch (-r113416:113489)
3588  - PRs c/25309, target/27374, target/27387, tree-optimization/27364
3589- merge gomp changes from trunk (-r113267:113271, -r113411:113412,
3590  -r113452:113456, -r113482:113483, -r113493:113494)
3591  - PR fortran/27395
3592- additional gomp fixes (PRs c++/27359, middle-end/27388)
3593- package SYSCALLS.c.X for protoize (#190047)
3594- fix gcj -fprofile-arcs -ftest-coverage (Alexandre Oliva, #177450)
3595- reenable profiledbootstrap
3596- in 64-bit builds remove 32-bit /usr/lib/lib* libraries from the
3597  buildroots (and similarly on 32-bit builds remove 64-bit /usr/lib64/lib*)
3598  before AutoReq generation (#190541)
3599
3600* Mon May  1 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-12
3601- update from gcc-4_1-branch (-r113242:113416)
3602  - PRs c++/26534, c++/26912, c++/27094, c++/27278, c++/27279, fortran/26017,
3603        libgfortran/20257, libgfortran/27304, libgfortran/27360,
3604        libstdc++/26513, middle-end/26565, middle-end/26869,
3605        rtl-optimization/26685, target/26826
3606- merge gomp changes from trunk (-r113255:113256, -r113420:113421)
3607  - PRs libgomp/25865, c/27358
3608- assorted gomp fixes (PRs middle-end/27325, middle-end/27310,
3609  middle-end/27328, middle-end/27337, c++/26943)
3610- fix builtin memset (Alan Modra, PR middle-end/27260, PR middle-end/27095)
3611
3612* Tue Apr 25 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-11
3613- update from gcc-4_1-branch (-r113149:113242)
3614  - PRs c/25875, c/26774, fortran/18803, fortran/25597, fortran/25669,
3615        fortran/26787, fortran/26822, fortran/26834, fortran/27089,
3616        fortran/27113, fortran/27122, fortran/27124, target/21283,
3617        target/26961
3618- fix number of iterations computation (Zdenek Dvorak, #189376,
3619  PR tree-optimization/27285)
3620- fix handling of volatile in the inliner (Andrew Pinski, Richard Guenther,
3621  PR tree-optimization/27236)
3622- strip useless type conversions in the inliner (Andrew Pinski,
3623  Richard Guenther, PR tree-optimization/27218)
3624
3625* Fri Apr 21 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-10
3626- update from gcc-4_1-branch (-r113110:113149)
3627  - PRs libgcj/21941, libgcj/27170, libgcj/27231, libgfortran/27138,
3628        libstdc++/26424, mudflap/26789
3629- improve dir/../-stripping code to support /usr/lib64 and /usr/lib in
3630  separate AFS mountpoints (Alexandre Oliva, #137200)
3631- fix fortran real(16) transpose and reshape on 32-bit architectures
3632  (PR fortran/26769)
3633- fix i?86/x86_64 vector extraction (Alexandre Oliva, #187450)
3634- fix testcase for ppc32 va_arg bug
3635- fix testsuite log uuencoding
3636- fix acats timeout framework
3637
3638* Thu Apr 20 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-9
3639- update from gcc-4_1-branch (-r112951:113110)
3640  - PRs c++/10385, c++/26036, c++/26365, c++/26558, classpath/27163,
3641        fortran/26769, libgcj/27171, libgfortran/26766, libstdc++/27162,
3642        middle-end/27095, middle-end/27134, target/27182,
3643        tree-optimization/26643, tree-optimization/26821,
3644        tree-optimization/26854, tree-optimization/27087
3645- fix ppc32 va_arg bug (Alan Modra)
3646- assorted gomp fixes (PRs c++/25874, middle-end/25989, c/25996, c/26171,
3647  middle-end/26913)
3648- fix pretty printing C array types (#188944)
3649- fix ICE on unprototyped alloca (PR tree-optimization/26865)
3650- fix truncation optimization overflow handling (PR middle-end/26729)
3651- uuencode dejagnu testsuite log files in rpmbuild output
3652
3653* Fri Apr 14 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-8
3654- update from gcc-4_1-branch (-r112825:112951)
3655  - PRs c++/26122, c++/26295, fortran/23634, fortran/25619, fortran/26257,
3656        libgcj/23829, libgcj/26522, libgfortran/26890, target/27006
3657- merge gomp changes from trunk (-r112934:112935)
3658  - PR libgomp/26651
3659- fix ICE in gomp handling of EH regions (PR middle-end/26823)
3660
3661* Mon Apr 10 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-7
3662- update from gcc-4_1-branch (-r112727:112825)
3663  - PRs fortran/19101, fortran/25031, fortran/26779, fortran/26891,
3664        fortran/26976, target/26508, tree-optimization/26919
3665- fix libgfortran printing of REAL*16 for IEEE quad and IBM extended formats
3666  (PR libgfortran/24685)
3667- fix Fortran -fbounds-check (Roger Sayle, #188409, PR middle-end/22375)
3668- fix Java StackTraceElement.toString() (Mark Wielaard, #183212,
3669  PR classpath/27081)
3670- fix -fopenmp -static
3671
3672* Thu Apr  6 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-6
3673- update from gcc-4_1-branch (-r112706:112727)
3674  - PRs classpath/24752, classpath/27028, libgcj/26625, libgcj/27024,
3675        tree-optimization/26996
3676- reenable PR c++/19238, c++/21764 fixes, only PR c++/21581 is not
3677  applied
3678- better fix for Java GC vs. pthread_create (Bryce McKinlay, #182263,
3679  PR libgcj/13212)
3680- fix objc_push_parm (#185398)
3681- fix ICE with -feliminate-dwarf2-dups and using namespace (#187787,
3682  PR debug/27057)
3683
3684* Wed Apr  5 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-5
3685- update from gcc-4_1-branch (-r112431:112706)
3686  - PRs bootstrap/26936, bootstrap/27023, classpath/25924, fortran/19303,
3687        fortran/25358, fortran/26816, java/25414, java/26042, java/26858,
3688        libfortran/26735, libgcj/26990, libstdc++/26777, testsuite/25741,
3689        tree-optimization/18527, tree-optimization/26763,
3690        tree-optimization/26830
3691- merge gomp changes from trunk (-r112602:112603 and -r112618:112619)
3692- temporarily revert PR c++/21764, c++/19238, c++/21581 fixes (#187399)
3693
3694* Tue Mar 28 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-4
3695- update from gcc-4_1-branch (-r111697:112431)
3696  - PRs ada/25885, c/26004, fortran/17298, fortran/20935, fortran/20938,
3697        fortran/23092, fortran/24519, fortran/24557, fortran/25045,
3698        fortran/25054, fortran/25075, fortran/25089, fortran/25378,
3699        fortran/25395, fortran/26041, fortran/26054, fortran/26064,
3700        fortran/26107, fortran/26277, fortran/26393, fortran/26716,
3701        fortran/26741, libfortran/21303, libfortran/24903, libgcj/24461,
3702        libgcj/25713, libgcj/26103, libgcj/26688, libgcj/26706,
3703        libgfortran/26499, libgfortran/26509, libgfortran/26554,
3704        libgfortran/26661, libgfortran/26880, libstdc++/26132,
3705        middle-end/18859, middle-end/19543, middle-end/26557,
3706        middle-end/26630, other/26489, target/25917, target/26347,
3707        target/26459, target/26532, target/26607, tree-optimization/26524,
3708        tree-optimization/26587, tree-optimization/26672
3709  - fix visibility and builtins interaction (Jason Merrill,
3710    PR middle-end/20297, #175442)
3711- merge gomp changes from trunk (-r112022:112023, -r112250:112251,
3712  -r112252:112253, -r112350:112351 and -r112282:112283)
3713  - PRs c++/26691, middle-end/26084, middle-end/26611, c++/26690,
3714        middle-end/25989
3715- support visibility attribute on namespaces (Jason Merrill, PR c++/21764,
3716  PR c++/19238)
3717- use hidden visibility for anonymous namespaces by default (Jason Merrill,
3718  PR c++/21581)
3719
3720* Thu Mar  9 2006 Alexandre Oliva <aoliva@redhat.com> 4.1.0-3
3721- make ppc32 TLS PIC code sequences compatible with secure plt (#184446)
3722  (Richard Henderson and myself)
3723
3724* Sat Mar  4 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-2
3725- update from gcc-4_1-branch (-r111570:111697)
3726  - PRs c++/26291, libgfortran/26136, libgfortran/26423, libgfortran/26464,
3727        libstdc++/26526, rtl-optimization/26345, target/19061, target/26453
3728- handle DW_CFA_val_{offset,offset_sf,expression} in the libgcc{,_s} unwinder
3729
3730* Tue Feb 28 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-1
3731- update from gcc-4_1-branch (-r111466:111570)
3732  - GCC 4.1.0 release
3733  - PR other/26473
3734
3735* Mon Feb 27 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.31
3736- add __floatuns[sdt]i[sdxt]f exports to libgcc_s.so.1 (Joseph S. Myers)
3737- fix unwinding through signal frames (#175951, PR other/26208, glibc BZ#300)
3738
3739* Mon Feb 27 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.30
3740- update from gcc-4_1-branch (-r111278:111466)
3741  - GCC 4.1.0 RC2
3742  - PRs fortran/26201, libobjc/26309, rtl-optimization/25603, target/25603
3743  - fix nested vector shifts (#182047, PR middle-end/26379)
3744- merge gomp changes from trunk (-r111390:111391, -r111428:111429 and
3745  -r111440:111441)
3746  - PR middle-end/26412
3747- fortran MATMUL optimization (Richard Sandiford)
3748- fortran WHERE optimizations (Roger Sayle)
3749- x86_64 _mm_monitor fixes (H.J. Lu, PR target/24879)
3750- add MNI support on i?86/x86_64, -mmni option and <tmmintrin.h> header
3751  (H.J Lu)
3752
3753* Sun Feb 19 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.29
3754- update from gcc-4_1-branch (-r111179:111278)
3755  - PRs ada/13408, c++/26266, target/22209, target/26189
3756  - fix ppc32 -fpic reload problem with extenddftf2 pattern
3757    (David Edelsohn, #181625, PR target/26350)
3758  - fix the PR middle-end/26334 patch
3759
3760* Fri Feb 17 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.28
3761- update from gcc-4_1-branch (-r110978:111179)
3762  - PRs ada/20753, bootstrap/16787, bootstrap/26053, fortran/25806,
3763        libfortran/15234, libgfortran/25949, middle-end/25335,
3764        target/25259, target/26255
3765  - fix ICE with shift by -1 (#181586, PR middle-end/26300)
3766- merge gomp changes from trunk (-r110983:110984, -r111017:111018,
3767  -r111152:111153 and -r111204:111205)
3768  - PRs bootstrap/26161, fortran/26224, libgomp/25938, libgomp/25984
3769- don't define _REENTRANT in gthr*.h (#176278, PR libstdc++/11953)
3770- define _REENTRANT if -pthread and _POSIX_SOURCE if -posix on s390{,x}
3771  and ia64
3772- fix ICE with register variable and __asm statement (#181731,
3773  PR middle-end/26334)
3774
3775* Tue Feb 14 2006 Alexandre Oliva <aoliva@redhat.com> 4.1.0-0.27
3776- merge fix by Zdenek Dvorak for regression introduced by patch for PR
3777  tree-optimization/26209
3778
3779* Tue Feb 14 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.26
3780- update from gcc-4_1-branch (-r110903:110978)
3781  - PRs fortran/20861, fortran/20871, fortran/25059, fortran/25070,
3782        fortran/25083, fortran/25088, fortran/25103, fortran/26038,
3783        fortran/26074, inline-asm/16194, libfortran/24685,
3784        libfortran/25425, target/26141, tree-optimization/26258
3785- ABI change - revert to GCC 3.3 and earlier behaviour of
3786  zero sized bitfields in packed structs (Michael Matz, PR middle-end/22275)
3787- fix valarrays vs. non-POD (Paolo Carlini, Gabriel Dos Reis,
3788  PR libstdc++/25626)
3789- fix C++ duplicate declspec diagnostics (Volker Reichelt, PR c++/26151)
3790- fix dominance ICE (Zdenek Dvorak, PR tree-optimization/26209)
3791- add some new Intel {,e,x}mmintrin.h intrinsics (H.J. Lu)
3792- speedup bitset<>::_M_copy_to_string (Paolo Carlini)
3793- fix tree_expr_nonzero_p (Jeff Law)
3794- fix TRUTH_XOR_EXPR handling in VRP (Jeff Law)
3795
3796* Mon Feb 13 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.25
3797- update from gcc-4_1-branch (-r110831:110903)
3798  - PRs c++/16405, c++/24996, fortran/14771, fortran/20858, fortran/25756,
3799        middle-end/22439
3800- merge gomp changes from trunk (-r110719:110720, -r110852:110853 and
3801  -r110907:110908)
3802  - PR libgomp/25936
3803- fix gimplification of const fn pointers to builting functions
3804  (PR middle-end/26092)
3805- make sure Fortran length artifical variables aren't SAVEd (Andrew Pinski,
3806  PR fortran/26246)
3807
3808* Fri Feb 10 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.24
3809- update from gcc-4_1-branch (-r110632:110831)
3810  - PRs tree-opt/26180, c++/26070, c++/26071, fortran/25577, java/26192,
3811        libfortran/23815, libstdc++/26127, target/23359, target/26109,
3812        tree-opt/25251
3813- remove gcc-ppc32, gcc-c++-ppc32, gcc-sparc32 and gcc-c++-sparc32
3814  subpackages, they do more harm than good.  Particularly this time
3815  gcc*ppc32 and gcc*sparc32 defaulted to DFmode long double rather
3816  than TFmode long double
3817
3818* Mon Feb  6 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.23
3819- update from gcc-4_1-branch (-r110582:110632)
3820  - PRs classpath/24618, classpath/25141, classpath/25727, fortran/25046,
3821        fortran/26039
3822- use LOGICAL*1 instead of LOGICAL*4 for Fortran where temporary masks
3823  (Roger Sayle)
3824- fix symbol versions in s390 libgcc_s.so.1
3825- sparc32 and alpha long double fixes
3826- BuildRequires libXt-devel
3827- BuildRequires and Requires glibc-devel >= 2.3.90-35 on arches
3828  that are switching long double
3829
3830* Sat Feb  4 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.22
3831- fix ia64 debug info patch
3832- fix libjava pthread_create wrapper patch
3833
3834* Sat Feb  4 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.21
3835- update from gcc-4_1-branch (-r110433:110582)
3836  - PRs c++/25342, c++/25979, fortran/20845, fortran/24266,
3837        fortran/24958, fortran/25072, libstdc++/21554, middle-end/24901,
3838        middle-end/25977, middle-end/26001, target/25864, target/25926,
3839        target/25960
3840  - put ia64 read-only sections that require runtime relocations
3841    even in -fno-pic code into .data.rel.ro etc. sections
3842    rather than .rodata to avoid DT_TEXTREL binaries
3843    (Richard Henderson, PR target/26090)
3844- merge gomp changes from trunk (-r110511:110512 and -r110549:110552)
3845- fix ia64 debug info coverage of epilogues (Alexandre Oliva, PR debug/24444)
3846- export pthread_create from libgcj.so.7 as a wrapper around
3847  libpthread.so.0's pthread_create that handles GC (Anthony Green, Tom Tromey)
3848- BC-ABI java lookup fix (Andrew Haley, #179070, #178156)
3849- on sparc64 emit .register %g7,#ignore instead of .register %g7,#scratch
3850  to avoid problems with TLS or -fstack-protector
3851- switch to IBM extended format long double by default on ppc and ppc64
3852- switch to IEEE 754 quad format long double by default on s390, s390x,
3853  sparc32 and alpha
3854
3855* Wed Feb  1 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.20
3856- merge from gomp-20050808-branch (up to -r110392)
3857  - fix PR c++/25874 (Diego Novillo)
3858
3859* Wed Feb  1 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.19
3860- s390{,x} long double patch fix for s390x ICEs on test-ldouble
3861  and tst-align2 (Andreas Krebbel)
3862
3863* Tue Jan 31 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.18
3864- update from gcc-4_1-branch (-r110317:110433)
3865  - PRs c++/25855, c++/25999, fortran/17911, fortran/18578, fortran/18579,
3866        fortran/20857, fortran/20885, fortran/20895, fortran/25030,
3867        fortran/25835, fortran/25951, java/21428, libgfortran/25835,
3868        target/14798, target/25706, target/25718, target/25947,
3869        target/26018, testsuite/25318
3870- add -mtune=generic support for i?86 and x86_64 (Jan Hubicka, H.J. Lu,
3871  Evandro Menezes)
3872- use -mtune=generic by default if neither -march= nor -mtune= is specified
3873  on command line on i?86 or x86_64
3874- updated s390{,x} long double patch, fixing ICEs on s390x glibc build
3875  (Andreas Krebbel, Ulrich Weigand)
3876
3877* Sat Jan 28 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.17
3878- update from gcc-4_1-branch (-r110062:110317)
3879  - PRs ada/20548, ada/21317, bootstrap/25859, c++/25552, c++/25856,
3880        c++/25858, c++/25895, c/25892, fortran/18540, fortran/20852,
3881        fortran/20881, fortran/23308, fortran/24276, fortran/25084,
3882        fortran/25085, fortran/25086, fortran/25124, fortran/25416,
3883        fortran/25538, fortran/25625, fortran/25710, fortran/25716,
3884        fortran/25901, fortran/25964, java/25816, other/24829,
3885        rtl-optimization/24626, rtl-optimization/25654, target/24831,
3886        testsuite/24962, testsuite/25590
3887- atomic builtin fixes (Richard Henderson)
3888- -mlong-double-128 support on ppc32 (David Edelsohn, Alan Modra)
3889- -mlong-double-128 support on s390 and s390x (Andreas Krebbel,
3890  Ulrich Weigand)
3891
3892* Sat Jan 21 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.16
3893- update from gcc-4_1-branch (-r109815:110062)
3894  - PRs ada/24533, c++/16829, c++/22136, c++/25836, c++/25854, c/25805,
3895        classpath/20198, fortran/20869, fortran/20875, fortran/25024,
3896        fortran/25631, fortran/25697, fortran/25785, libgcj/25840,
3897        libgfortran/25631, libgfortran/25697, libstdc++/25823,
3898        libstdc++/25824, target/25731, testsuite/25171
3899  - fix X509Certificate.java (#174708, #177733)
3900
3901* Tue Jan 17 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.15
3902- update from gcc-4_1-branch (-r109401:109815)
3903  - PRs c++/24824, c++/25386, c++/25663, c/25682, classpath/25803,
3904        fortran/12456, fortran/20868, fortran/20870, fortran/21256,
3905        fortran/21977, fortran/22146, fortran/24640, fortran/25029,
3906        fortran/25093, fortran/25101, fortran/25486, fortran/25598,
3907        fortran/25730, libgcj/21637, libgcj/23499, libgfortran/25598,
3908        libstdc++/23591, libstdc++/25472, rtl-optimization/24257,
3909        rtl-optimization/25367, rtl-optimization/25662, target/20754,
3910        target/25042, target/25168, testsuite/25728, testsuite/25777,
3911        tree-opt/24365, tree-optimization/23109, tree-optimization/23948,
3912        tree-optimization/24123, tree-optimization/25125
3913- update from gomp-20050608-branch (up to -r109816)
3914- fix ppc32 libffi (#177655)
3915- fix lookup_conversions_r (#177918)
3916- define __STDC__ as a normal macro rather than a preprocessor builtin
3917  unless it needs to change its value between system and non-system
3918  headers (PR preprocessor/25717)
3919
3920* Fri Jan  6 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.14
3921- update from gcc-4_1-branch (-r109369:109401)
3922  - PR fortran/23675
3923  - fix Java shutdown hook (Tom Tromey, #165136)
3924- fix libjava/shlibpath.m4 (PR libgcj/24940)
3925
3926* Thu Jan  5 2006 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.13
3927- update from gcc-4_1-branch (-r108957:109369)
3928  - PRs c++/23171, c++/23172, c++/24671, c++/24782, c++/25294, c++/25417,
3929        c++/25439, c++/25492, c++/25625, c++/25632, c++/25633, c++/25634,
3930        c++/25635, c++/25637, c++/25638, c/25183, c/25559, debug/25562,
3931        fortran/18990, fortran/19362, fortran/20244, fortran/20862,
3932        fortran/20864, fortran/20889, fortran/22607, fortran/23152,
3933        fortran/25018, fortran/25053, fortran/25055, fortran/25063,
3934        fortran/25064, fortran/25066, fortran/25067, fortran/25068,
3935        fortran/25069, fortran/25106, fortran/25391, fortran/25532,
3936        fortran/25586, fortran/25587, libgcj/9715, libgcj/19132,
3937        libgfortran/25139, libgfortran/25419, libgfortran/25510,
3938        libgfortran/25550, libgfortran/25594, middle-end/24827, objc/25328,
3939        rtl-optimization/21041, rtl-optimization/25130, target/24342,
3940        target/25554, target/25572, testsuite/25214, testsuite/25441,
3941        testsuite/25442, testsuite/25444, tree-opt/25513
3942  - create java Package for compiled classes which are linked in but
3943    loaded by the system class loader (Tom Tromey, #176956)
3944  - fix posix_memalign prototype in <mm_malloc.h> (#176461)
3945- update from gomp-20050608-branch (up to -r109349)
3946- buildrequire libXtst-devel (#176898)
3947- fix built in path to classmap.db on x86_64, s390x and ppc64 (#176562)
3948- fix debug info for preprocessed Fortran code (#175071, PR fortran/25324)
3949
3950* Thu Dec 22 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.12
3951- make sure GCJFLAGS are propagated down to libjava's configure
3952- build crt{begin,end}*.o with -fno-asynchronous-unwind-tables
3953  if RPM_OPT_FLAGS include -fasynchronous-unwind-tables
3954- fix PR c++/25369 (Mark Mitchell)
3955- fix PR libgfortran/25307 (Jerry DeLisle)
3956
3957* Thu Dec 22 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.11
3958- update from gcc-4_1-branch (-r108861:108957)
3959  - PRs debug/25518, fortran/24268, fortran/25423, libgfortran/25463,
3960        rtl-optimization/25196, tree-optimization/24793
3961- validate changes in forward copy propagation (PR target/25005)
3962- fix Java constants constructors on 64-bit big endian arches
3963  (Andrew Haley, PR java/25535)
3964- fix PR c++/25364 (Mark Mitchell)
3965
3966* Wed Dec 21 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.10
3967- update from gcc-4_1-branch (-r108539:108861)
3968  - PRs ada/18659, ada/18819, c++/20552, c++/21228, c++/24278, c++/24915,
3969        fortran/18197, fortran/25458, libgfortran/25039, libgfortran/25264,
3970        libgfortran/25349, libobjc/14382, libstdc++/25421, middle-end/22313,
3971        middle-end/24306, rtl-optimization/23837, rtl-optimization/25224,
3972        rtl-optimization/25310, target/24969, testsuite/25215,
3973        tree-optimization/23838, tree-optimization/24378
3974- update from gomp-20050608-branch (up to -r108859)
3975  - fix _Pragma handling (Richard Henderson, PR preprocessor/25240)
3976- fix reload re-recognition of insns (Alan Modra, PR rtl-optimization/25432)
3977- don't peephole RTX_FRAME_RELATED_P insns (Andrew Haley,
3978  PR middle-end/25121)
3979
3980* Thu Dec 15 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.9
3981- fix OpenMP lastprivate handling for global vars (Aldy Hernandez)
3982- fix gnu.xml.dom.DomNode's detach method (Caolan McNamara,
3983  PR classpath/25426)
3984- fix up the #175569 fix (Tom Tromey, #175833, PR java/25429)
3985- fix strength reduction miscompilation of libgnomecanvas
3986  (#175669, PR rtl-optimization/24899)
3987- create libgcj-*.jar with -@E options and feed a sorted list to
3988  it rather than relying on filesystem sorting
3989
3990* Wed Dec 14 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.8
3991- update from gcc-4_1-branch (-r108414:108539)
3992  - PRs classpath/25389, fortran/23815, fortran/25078, target/25254
3993- fix Java ICE on initialized static final var used in case
3994  (Andrew Haley, #175569, PR java/25429)
3995- fix crash in _Unwind_IteratePhdrCallback (Andrew Haley)
3996- don't Require alsa-lib-devel, just BuildRequire it
3997  (#175627)
3998- use .gnu.linkonce.d.rel.ro.* sections for objects that
3999  are constant after relocation processing
4000
4001* Mon Dec 12 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.7
4002- update from gcc-4_1-branch (-r108157:108414)
4003  - PRs c++/19317, c++/19397, c++/19762, c++/19764, c++/25010, c++/25300,
4004        c++/25337, debug/24908, fortran/25292, libfortran/25116,
4005        libgcj/25265, target/17828, target/19005, target/23424,
4006        target/25212, target/25258, target/25311, testsuite/20772,
4007        testsuite/24478, testsuite/25167, tree-optimization/25248
4008- update from gomp-20050608-branch (up to -r108424)
4009- add BuildReq for alsa-lib-devel and configure with --disable-dssi
4010- sort files in libgcj-*.jar and touch them to latest ChangeLog
4011  timestamp, so that libgcj-*.jar is identical across multilib arches
4012- don't use pushw instruction on i?86, as that leads to ICEs
4013  in def_cfa_1, because negative CFA offsets not multiple of 4
4014  aren't representable in the unwind and debug info (PR debug/25023,
4015  PR target/25293)
4016- fix ICEs with x86_64 -mlarge-data-threshold=N and STRING_CSTs
4017  (Jan Hubicka, PR target/24188)
4018- fix Java ICE with input_filename being unset (Alexandre Oliva, #174912)
4019- don't accept invalid int x,; in C++ (Petr Machata, PR c++/24907)
4020- fix Java ICE in do_resolve_class (Andrew Haley, PR java/25366,
4021  PR java/25368)
4022- make sure g*.dg/compat/struct-layout-1.exp generated tests
4023  don't use arrays with entries aligned more than their size (PR c++/25331)
4024- don't use -liberty in g++.dg/compat/struct-layout-1.exp tests
4025
4026* Wed Dec  7 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.6
4027- allow #pragmas at C struct scope as well as ObjC class scope
4028  (PR c/25246)
4029- some gomp testcase fixes
4030
4031* Wed Dec  7 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.5
4032- update from gcc-4_1-branch (-r107810:108157)
4033  - PRs bootstrap/25207, c++/24103, c++/24138, c++/24173, fortran/15809,
4034        fortran/21302, fortran/23912, java/25283, libfortran/24919,
4035        libgfortran/25149, middle-end/25176, other/13873, target/18580,
4036        target/24108, target/24475, target/24934, target/25199,
4037        testsuite/25247, tree-optimization/24963
4038- update from gomp-20050608-branch (up to -r108105)
4039- -Wstrict-aliasing C++ support (Richard Guenther, Dirk Mueller,
4040  Paolo Carlini, PRs c++/14024, libstdc++/24975)
4041- fix mark_used_regs regression (Andreas Krebbel, PR rtl-optimization/24823)
4042- fix reload ICE (Kaz Kojima, PR target/24982)
4043- fix PPC ICE on Linux kernel (Paolo Bonzini, PR target/24982)
4044- fix s390{,x} shifts with shift count ANDed with constant mask
4045  (Andreas Krebbel, PR target/25268)
4046- s390{,x} atomic builtins enhancements (Adrian Straetling)
4047
4048* Thu Dec  1 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.4
4049- update from gcc-4_1-branch (-r107618:107810)
4050  - PRs c++/21123, c++/21166, fortran/24223, fortran/24705, java/18278,
4051        libgfortran/25109, middle-end/20109, middle-end/25120,
4052        middle-end/25158, rtl-opt/24930
4053- use %%{_tmppath} in BuildRoot (#174594)
4054- require libgomp in gcc subpackage
4055- fix Java .so symlinks
4056
4057* Tue Nov 29 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.3
4058- fix IA-64 local-exec TLS handling
4059- fix IA-64 __sync_fetch_and_{sub,xor,...}
4060
4061* Mon Nov 28 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.2
4062- update from gcc-4_1-branch (-r107462:107618)
4063  - PRs fortran/24917, libgcj/25016, libgfortran/24945, middle-end/21309,
4064        middle-end/25022, libfortran/24991
4065- update from gomp-20050608-branch (up to -r107619)
4066  - fix omp_get_wti{me,ck} on older kernels
4067- ppc32 EH fix
4068- fix #pragma omp atomic
4069- resurrected multi32 hack for ppc32 and sparc32
4070
4071* Thu Nov 24 2005 Jakub Jelinek <jakub@redhat.com> 4.1.0-0.1
4072- initial 4.1 package, using newly created redhat/gcc-4_1-branch
Note: See TracBrowser for help on using the repository browser.