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

Revision 12020, 155.8 KB checked in by tomop, 5 years ago (diff)

update toolchain

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