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

Revision 10250, 152.1 KB checked in by Takemikaduchi, 8 years ago (diff)

binutils-2.26,gcc-4.9.3,glibc-2.23

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