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

Revision 9869, 157.9 KB checked in by Takemikaduchi, 8 years ago (diff)

toolchain: rebuild
others: new upstream release

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