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

Revision 10330, 152.3 KB checked in by tomop, 8 years ago (diff)

gcc-4.9.3-2

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