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

Revision 10405, 162.0 KB checked in by Takemikaduchi, 8 years ago (diff)

gcc-5.4.0 & python3-3.5.2

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