source: projects/specs/trunk/g/gcc3/gcc3-vl.spec @ 1849

Revision 1849, 80.0 KB checked in by inagaki, 14 years ago (diff)

updated: gcc3

Line 
1%define DATE        20050503
2
3%define VERSION     3.3.6
4%define RELEASE     5%{?_dist_release}
5
6%define gcc_version %{VERSION}
7%define gcc_release %{RELEASE}
8%define _unpackaged_files_terminate_build 0
9
10%define gcj_major 4
11
12# VINE: disable building ada, 'cause it requires ada to build :(
13#%ifarch %{ix86} alpha ia64 ppc
14#%define build_ada 1
15#%else
16%define build_ada 0
17#%endif
18
19%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
20
21%ifarch x86_64
22%define gcclib_dir %{_prefix}/lib/gcc-lib
23%else
24%define gcclib_dir %{_libdir}/gcc-lib
25%endif
26
27Summary: Various compilers (C, C++, Objective-C, Java, ...)
28Summary(ja): GNU コンパイラ集 - C コンパイラを含む基本パッケージ
29Name: gcc3
30Version: %{gcc_version}
31Release: %{gcc_release}
32License: GPL
33Group: Development/Languages
34
35Source0: gcc-%{version}-%{DATE}.tar.bz2
36#GCC#Source0: gcc-%{version}.tar.bz2
37
38URL: http://gcc.gnu.org
39BuildRoot: %{_tmppath}/%{name}-%{version}-root
40BuildRequires: binutils >= 2.13.90.0.10
41BuildRequires: zlib-devel, gettext, dejagnu
42BuildRequires: texinfo >= 4.2
43# Make sure pthread.h doesn't contain __thread tokens
44BuildRequires: glibc-devel >= 2.2.90-12
45%if %{build_ada}
46# Ada requires Ada to build
47BuildRequires: gcc-gnat >= 3.1, libgnat >= 3.1
48%endif
49Requires: gcc3-cpp = %{version}-%{release}
50# Need .eh_frame ld optimizations
51# Need proper visibility support
52Requires: binutils >= 2.13.90.0.10
53# Make sure gdb will understand DW_FORM_strp
54Conflicts: gdb < 5.1-2
55Requires: glibc-devel >= 2.2.90-12
56Requires: libgcc >= %{version}-%{release}
57#Obsoletes: egcs
58%ifarch sparc sparc64
59#Obsoletes: egcs64
60%endif
61
62Requires(post,postun): alternatives
63Obsoletes: gcc-launcher
64
65# from fc
66Patch1: gcc33-multi32-hack.patch
67Patch2: gcc33-ice-hack.patch
68Patch3: gcc33-ppc64-m32-m64-multilib-only.patch
69Patch4: gcc33-sched-ebb-cselib.patch
70Patch6: gcc33-huge-alloca.patch
71Patch10: gcc33-c++-builtin-expect.patch
72Patch11: gcc33-pie.patch
73
74# from mdv
75Patch50: gcc33-i386-mtune.patch
76
77## Vine Source(s)/Patch(es)
78Patch100: gcc33-ppc-libf2c.patch
79Patch200: gcc-3.3.6-ppc-cpuspec-fix.patch
80Patch300: gcc-3.3.6-ppc-accept-m32.patch
81Patch400: gcc33-bison.patch
82
83%define _gnu %{nil}
84%{expand: %%{global} _gcc_is_%{_target_cpu} %%{nil}}
85%{?_gcc_is_sparc: %global gcc_target_platform sparc64-%{_vendor}-%{_target_os}}
86%{!?_gcc_is_sparc: %global gcc_target_platform %{_target_platform}}
87
88
89################################################# gcc
90
91
92%description
93The gcc package contains the GNU Compiler Collection version %{version}.
94You'll need this package in order to compile C code.
95
96%description -l ja
97gcc パッケージには、GNU Compiler Collection バージョン %{version} が
98含まれています。C のソースコードをコンパイルするにはこのパッケージが
99必要となります。
100
101
102################################################# libgcc
103
104
105##VINE##%package -n libgcc
106##VINE##Summary: GCC version %{version} shared support library
107##VINE##Summary(ja): GCC バージョン %{version} 共有サポートライブラリ
108##VINE##Group: System Environment/Libraries
109##VINE##
110##VINE##
111##VINE##%description -n libgcc
112##VINE##This package contains GCC shared support library which is needed
113##VINE##e.g. for exception handling support.
114##VINE##
115##VINE##%description -n libgcc -l ja
116##VINE##このパッケージには GCC 共有サポートライブラリが含まれます。
117##VINE##これは例えば例外ハンドリングサポートに必要です。
118
119
120################################################# g++
121
122
123%package c++
124Summary: C++ support for GCC
125Summary(ja): GNU コンパイラ集 - C++ サポート
126Group: Development/Languages
127Requires: gcc3 = %{version}-%{release}
128Requires: gcc3-cpp = %{version}-%{release}
129Requires: libstdc++3 = %{version}
130Requires: libstdc++3-devel = %{version}
131
132Obsoletes: gcc-c++-launcher
133Requires(post,postun): alternatives
134
135
136%description c++
137This package adds C++ support to the GNU Compiler Collection.
138It includes support for most of the current C++ specification,
139including templates and exception handling.
140
141%description c++ -l ja
142このパッケージは GNU Compiler Collection に C++ サポートを追加します。
143テンプレートと例外ハンドリングサポートを含む、現在の C++ 仕様の多くを
144サポートします。
145
146
147################################################# libstdc++
148
149
150%package -n libstdc++3
151Summary: GNU Standard C++ Library
152Summary(ja): GNU コンパイラ集 - C++ ライブラリ
153Group: System Environment/Libraries
154
155# in 2.1 and 2.1.5 (2.9.0, 2.10.0)
156##VINE##Obsoletes: libstdc++
157##VINE##Provides: libstdc++
158
159
160%description -n libstdc++3
161The libstdc++3 package contains a rewritten standard compliant GCC Standard
162C++ Library.
163
164%description -n libstdc++3 -l ja
165libstdc++3 パッケージには、標準準拠に書き直された
166GCC 標準 C++ ライブラリが収録されています。
167
168
169################################################# compat32-libstdc++
170
171
172%package -n compat32-libstdc++3
173Summary: GNU Standard C++ Library
174Summary(ja): GNU コンパイラ集 - C++ ライブラリ
175Group: System Environment/Libraries
176Requires: libstdc++3 = %{version}-%{release}
177
178
179%description -n compat32-libstdc++3
180The libstdc++3 package contains a rewritten standard compliant GCC Standard
181C++ Library.
182
183%description -n compat32-libstdc++3 -l ja
184libstdc++3 パッケージには、標準準拠に書き直された
185GCC 標準 C++ ライブラリが収録されています。
186
187
188################################################# libstdc++-devel
189
190
191%package -n libstdc++3-devel
192Summary: Header files and libraries for C++ development
193Summary(ja): GNU コンパイラ集 - C++ 開発用ヘッダ/ライブラリ
194Group: Development/Libraries
195Requires: libstdc++3 = %{version}-%{release}
196##VINE##Obsoletes: libstdc++-devel
197
198
199%description -n libstdc++3-devel
200This is the GNU implementation of the standard C++ libraries.  This
201package includes the header files and libraries needed for C++
202development. This includes rewritten implementation of STL.
203
204%description -n libstdc++3-devel -l ja
205これは標準 C++ ライブラリの GNU 実装です。
206このパッケージには C++ 開発に必要なヘッダファイルとライブラリが
207収録されています。これには STL の実装も含まれます。
208
209
210################################################# objc
211
212
213%package objc
214Summary: Objective-C support for GCC
215Summary(ja): GNU コンパイラ集 - Objective C サポート
216Group: Development/Languages
217Requires: gcc3 = %{version}-%{release}
218Requires: gcc3-cpp = %{version}-%{release}
219Requires: libobjc >= %{version}-%{release}
220
221
222%description objc
223gcc-objc provides Objective-C support for the GCC.
224Mainly used on systems running NeXTSTEP, Objective-C is an
225object-oriented derivative of the C language.
226
227%description objc -l ja
228gcc-objc パッケージは GCC に Objective-C サポートを追加します。
229Objective-C は C 言語から派生したオブジェクト指向言語で、
230主に NeXTSTEP システムで使われてきました。
231
232
233################################################# libobjc
234
235
236##VINE##%package -n libobjc
237##VINE##Summary: Objective-C runtime
238##VINE##Summary(ja): GNU コンパイラ集 - Objective C ランタイムライブラリ
239##VINE##Group: System Environment/Libraries
240##VINE##
241##VINE##
242##VINE##%description -n libobjc
243##VINE##This package contains Objective-C shared library which is needed to run
244##VINE##Objective-C dynamically linked programs.
245##VINE##
246##VINE##%description -n libobjc -l ja
247##VINE##このパッケージには Objective-C 共有ライブラリが収められています。
248##VINE##これは Objective-C にダイナミックリンクされたプログラムの実行に必要と
249##VINE##なります。
250
251
252################################################# g77
253
254
255%package g77
256Summary: Fortran 77 support
257Summary(ja): GNU コンパイラ集 - Fortran 77 サポート
258Group: Development/Languages
259Requires: gcc3 = %{version}-%{release}
260Requires: gcc3-cpp = %{version}-%{release}
261Requires: libf2c = %{version}-%{release}
262
263Obsoletes: gcc-g77-launcher
264Requires(post,postun): alternatives
265
266
267%description g77
268The gcc-g77 package provides support for compiling Fortran 77
269programs with the GNU Compiler Collection.
270
271%description g77 -l ja
272gcc-g77 パッケージは GNU Compiler Collection に Fortran 77 プログラムを
273コンパイルする機能を追加するものです。
274
275
276################################################# libf2c
277
278
279%package -n libf2c
280Summary: Fortran 77 runtime
281Summary(ja): GNU コンパイラ集 - Fortran 77 ランタイムライブラリ
282Group: System Environment/Libraries
283
284
285%description -n libf2c
286This package contains Fortran 77 shared library which is needed to run
287Fortran 77 dynamically linked programs.
288
289%description -n libf2c -l ja
290このパッケージには Fortran 77 共有ライブラリが収められています。
291これは Fortran 77 にダイナミックリンクされたプログラムの実行に必要と
292なります。
293
294
295################################################# java
296
297
298%package java
299Summary: Java support for GCC
300Summary(ja): GNU コンパイラ集 - Java サポート
301Group: Development/Languages
302Requires: gcc3 = %{version}-%{release}
303Requires: gcc3-cpp = %{version}-%{release}
304Requires: libgcj3 >= %{version}, libgcj3-devel >= %{version}
305
306Obsoletes: gcc-java-launcher
307Requires(post,postun): alternatives
308
309
310%description java
311This package adds support for compiling Java(tm) programs and
312bytecode into native code.
313
314%description java -l ja
315このパッケージは Java(tm) のプログラムをコンパイルし、
316ネイティブコードにバイトコードする機能を追加するものです。
317
318
319################################################# libgcj
320
321
322%package -n libgcj3
323Summary: Java runtime library for gcc
324Summary(ja): GNU コンパイラ集 - Java ランタイムライブラリ
325Group: System Environment/Libraries
326Requires: zip >= 2.1
327Requires: fastjar
328##VINE##Obsoletes: gcc-libgcj
329# Kaffe includes jar too
330Conflicts: kaffe
331
332
333%description -n libgcj3
334The Java(tm) runtime library. You will need this package to run your Java
335programs compiled using the Java compiler from GNU Compiler Collection (gcj).
336
337%description -n libgcj3 -l ja
338Java(tm) ランタイムライブラリです。
339このパッケージは GNU Compiler Collection の Java コンパイラ (gcj) を
340使ってコンパイルされたプログラムを実行するのに必要となります。
341
342
343################################################# libgcj-devel
344
345
346%package -n libgcj3-devel
347Summary: Libraries for Java development using GCC
348Summary(ja): GNU コンパイラ集 - GCC 向け Java 開発用ライブラリ
349Group: Development/Languages
350Requires: zip >= 2.1, libgcj3 = %{version}
351
352
353%description -n libgcj3-devel
354The Java(tm) static libraries and C header files. You will need this
355package to compile your Java programs using the GCC Java compiler (gcj).
356
357%description -n libgcj3-devel -l ja
358Java(tm) スタティックライブラリと C ヘッダファイルです。
359GCC Java コンパイラ (gcj) を使って Java プログラムをコンパイルする際に
360このパッケージをインストールする必要があります。
361
362
363################################################# sparc32
364
365
366%package sparc32
367Summary: The C compiler optimized for generating SPARC 32bit code
368Summary(ja): GNU コンパイラ集 - SPARC 32bit code 生成に最適化された C コンパイラ
369Group: Development/Languages
370Requires: gcc3 = %{version}-%{release}, %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libgcc.a
371
372
373%description sparc32
374This package contains the GNU C compiler which only supports generating
37532bit SPARC code, but should be faster than the 32/64bit gcc package. You
376should install this package if you want to trade disk space required for
377this package for faster compilation of 32bit code.
378
379%description sparc32 -l ja
380このパッケージには 32bit SPARC コード生成のみをサポートした GNU C コンパイラ
381が収録されています。これは 32/64bit gcc パッケージより高速なバイナリを生成
382します。このパッケージをインストールする為のディスク容量よりも 32bit コード
383の方を優先するなら、このパッケージをインストールするべきでしょう。
384
385
386################################################# c++-sparc32
387
388
389%package c++-sparc32
390Summary: The C++ compiler optimized for generating SPARC 32bit code
391Summary(ja): GNU コンパイラ集 - SPARC 32bit code 生成に最適化された C++ コンパイラ
392Group: Development/Languages
393Requires: gcc3-c++ = %{version}-%{release}, gcc3-sparc32 = %{version}-%{release}
394Requires: %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libstdc++.so
395
396
397%description c++-sparc32
398This package contains the GNU C++ compiler which only supports generating
39932bit SPARC code, but should be faster than the 32/64bit gcc package. You
400should install this package if you want to trade disk space required for
401this package for faster compilation of 32bit code.
402
403%description c++-sparc32 -l ja
404このパッケージには 32bit SPARC コード生成のみをサポートした GNU C++ コンパイラ
405が収録されています。これは 32/64bit gcc パッケージより高速なバイナリを生成
406します。このパッケージをインストールする為のディスク容量よりも 32bit コードの
407方を優先するなら、このパッケージをインストールするべきでしょう。
408
409
410################################################# cpp
411
412
413%package cpp
414Summary: The C Preprocessor.
415Summary(ja): GNU コンパイラ集 - C プリプロセッサ
416Group: Development/Languages
417%ifarch ia64
418Obsoletes: gnupro
419%endif
420
421# in Vine 2.1.5 (ppc = 2.95.3-2vl3, x86|alpha = 1.1.2-24vl4)
422Obsoletes: cpp <= 2.95.3-2vl3
423
424Provides: cpp = %{version}-%{release}
425Obsoletes: gcc-cpp-launcher
426
427Requires(post,postun): alternatives
428
429
430%description cpp
431Cpp is the GNU C-Compatible Compiler Preprocessor.
432Cpp is a macro processor which is used automatically
433by the C compiler to transform your program before actual
434compilation. It is called a macro processor because it allows
435you to define macros, abbreviations for longer
436constructs.
437
438The C preprocessor provides four separate functionalities: the
439inclusion of header files (files of declarations that can be
440substituted into your program); macro expansion (you can define macros,
441and the C preprocessor will replace the macros with their definitions
442throughout the program); conditional compilation (using special
443preprocessing directives, you can include or exclude parts of the
444program according to various conditions); and line control (if you use
445a program to combine or rearrange source files into an intermediate
446file which is then compiled, you can use line control to inform the
447compiler about where each source line originated).
448
449You should install this package if you are a C programmer and you use
450macros.
451
452
453################################################# gnat
454
455
456%package gnat
457Summary: Ada 95 support for GCC
458Summary(ja): GNU コンパイラ集 - Ada サポート
459Group: Development/Languages
460Requires: gcc3 = %{version}-%{release}, libgnat = %{version}-%{release}
461Requires(post,postun): alternatives
462
463%description gnat
464GNAT is a GNU Ada 95 front-end to GCC. This package includes development tools,
465the documents and Ada 95 compiler.
466
467%description gnat -l ja
468GNAT は GCC 用の GNU Ada 95 フロントエンドです。
469このパッケージには Ada 95 コンパイラ、開発ツール、ドキュメントが
470収録されています。
471
472
473################################################# libgnat
474
475
476%package -n libgnat
477Summary: GNU Ada 95 runtime shared libraries
478Summary(ja): GNU コンパイラ集 - Ada 95 ランタイム共有ライブラリ
479Group: System Environment/Libraries
480
481
482%description -n libgnat
483GNAT is a GNU Ada 95 front-end to GCC. This package includes shared libraries,
484which are required to run programs compiled with the GNAT.
485
486%description -n libgnat -l ja
487GNAT は GCC 用の GNU Ada 95 フロントエンドです。
488このパッケージには GNAT でコンパイルされたプログラムを実行するために必要な
489共有ライブラリが収録されています。
490
491
492################################################# tools
493
494
495##VINE##%package tools
496##VINE##Summary: Coverage tool and prototizing tool for GCC
497##VINE##Summary(ja): GNU コンパイラ集 - テストカバレージツールとプロトタイプツール
498##VINE##Group: Development/Languages
499##VINE##
500##VINE##%description tools
501##VINE##GNU CC coverage tool and prototizing tool.
502##VINE##see the info of gcc.
503##VINE##
504##VINE##%description tools -l ja
505##VINE##GNU CC のテストカバレージツールとプロトタイプツールです。
506##VINE##詳しくは gcc の Info をご覧ください。
507
508
509################################################# docs
510
511
512##VINE##%package docs
513##VINE##Summary: Documents (info, man) of GNU Compiler Collection
514##VINE##Summary(ja): GNU コンパイラ集 - GNU CC関係 の man および info です
515##VINE##Group: Applications/Documentation
516##VINE##PreReq: /sbin/install-info
517##VINE##
518##VINE##%description docs
519##VINE##The documents (info, man) of GNU Compiler Collection.
520##VINE##includes gcc, g++, g77, cpp and more.
521##VINE##
522##VINE##%description docs -l ja
523##VINE##GNU Compiler Collection 関係 の man および info です。
524##VINE##includes gcc, g++, g77, cpp の man / info などを含みます。
525
526
527#####################################################################
528
529
530%prep
531%setup -q -n gcc-%{version}-%{DATE}
532#GCC#%setup -q
533
534#GCC#%patch0 -p1
535
536#GCC#%ifarch sparc
537#GCC#%patch1 -p0 -b .multi32-hack
538#GCC#%endif
539
540
541%ifarch ppc
542%patch100 -p0
543%patch200 -p1
544#%patch300 -p0
545%endif
546
547%patch6 -p0 -b .huge-alloca~
548%patch10 -p0 -b .c++-builtin-expect~
549%patch11 -p1 -b .pie
550%patch50 -p1 -b .i386-mtune
551
552%patch400 -p1 -b .bison
553
554perl -pi -e 's/3\.3\.6/3\.3\.6 release (Vine Linux %{gcc_version}-%{gcc_release})/' gcc/version.c
555
556# Misdesign in libstdc++
557cp -a libstdc++-v3/config/cpu/i{4,3}86/atomicity.h
558#GCC END#
559
560./contrib/gcc_update --touch
561
562
563#####################################################################
564
565
566%build
567
568rm -fr obj-%{gcc_target_platform}
569mkdir obj-%{gcc_target_platform}
570cd obj-%{gcc_target_platform}
571
572if [ ! -f /usr/lib/locale/de_DE/LC_CTYPE ]; then
573  mkdir locale
574  localedef -f ISO-8859-1 -i de_DE locale/de_DE
575  export LOCPATH=`pwd`/locale:/usr/lib/locale
576fi
577
578CC=gcc
579OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g'`
580OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-m64//g;s/-m32//g;s/-m31//g'`
581%ifarch %{ix86}
582OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mtune=pentium4/-mcpu=i686/g'`
583OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mtune=generic/-mcpu=i686/g'`
584%endif
585%ifarch x86_64
586OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mtune=nocona//g'`
587OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mtune=generic//g'`
588%endif
589%ifarch sparc sparc64
590OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-m64//g' -e 's/-m32//g' -e 's/-mcpu=ultrasparc/-mtune=ultrasparc/g'`
591%endif
592%ifarch sparc64
593cat > gcc64 <<"EOF"
594#!/bin/sh
595exec /usr/bin/gcc -m64 "$@"
596EOF
597chmod +x gcc64
598CC=`pwd`/gcc64
599%endif
600CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="$OPT_FLAGS" XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
601        ../configure --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \
602        --enable-shared --enable-threads=posix --disable-checking \
603        --with-system-zlib --enable-__cxa_atexit \
604%ifarch sparc
605        --host=%{gcc_target_platform} --build=%{gcc_target_platform} --target=%{gcc_target_platform} --with-cpu=v7
606%else
607        --host=%{gcc_target_platform}
608%endif
609
610make %{?_smp_mflags} bootstrap-lean
611
612%if %{build_ada}
613# This doesn't work with -jN
614make -C gcc gnatlib-shared
615make -C gcc gnattools
616make -C gcc/ada doc
617%endif
618
619# run the tests.
620LANG=C make %{?_smp_mflags} -k check || :
621LANG=C make -C %{gcc_target_platform}/libstdc++-v3/testsuite \
622        -k check-abi-verbose || :
623echo ====================TESTING=========================
624( ../contrib/test_summary || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}'
625LANG=C make -C %{gcc_target_platform}/libstdc++-v3/testsuite -k check-abi || :
626echo ====================TESTING END=====================
627#cd %{gcc_target_platform}/libstdc++-v3
628#./mkcheck 0
629#cd ../..
630
631# Make protoize
632make -C gcc CC="./xgcc -B ./ -O2" proto
633
634%ifarch sparc
635# Build the -m32 only compiler which does not use long long for HOST_WIDE_INT
636mkdir gcc32
637cd gcc32
638OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g'`
639echo "#!/bin/sh" > gcc32
640echo "exec `cd ../gcc; pwd`/xgcc -B `cd ../gcc; pwd`/ $OPT_FLAGS \$*" >> gcc32
641chmod +x gcc32
642CC=`pwd`/gcc32 CFLAGS="$OPT_FLAGS" CXXFLAGS="$OPT_FLAGS" XCFLAGS="$OPT_FLAGS" \
643  TCFLAGS="$OPT_FLAGS" ../../gcc/configure --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \
644  --enable-shared --enable-threads=posix --disable-checking \
645  --with-system-zlib --enable-__cxa_atexit \
646  --host=%{_target_platform}
647make cc1 cc1plus
648cd ..
649%endif
650
651# Make generated man pages even if Pod::Man is not new enough
652perl -pi -e 's/head3/head2/' ../contrib/texi2pod.pl
653for i in ../gcc/doc/*.texi; do
654  cp -a $i $i.orig; sed 's/ftable/table/' $i.orig > $i
655done
656make -C gcc generated-manpages
657for i in ../gcc/doc/*.texi; do mv -f $i.orig $i; done
658
659# Copy various doc files here and there
660cd ..
661mkdir -p rpm.doc/g77 rpm.doc/objc
662#mkdir -p rpm.doc/boehm-gc rpm.doc/fastjar rpm.doc/libffi rpm.doc/libjava
663mkdir -p rpm.doc/boehm-gc rpm.doc/libffi rpm.doc/libjava
664
665(cd gcc/f; for i in ChangeLog*; do
666        cp -p $i ../../rpm.doc/g77/$i.f
667done)
668(cd libf2c; for i in ChangeLog*; do
669        cp -p $i ../rpm.doc/g77/$i.libf2c
670done)
671(cd gcc/objc; for i in README*; do
672        cp -p $i ../../rpm.doc/objc/$i.objc
673done)
674(cd libobjc; for i in README*; do
675        cp -p $i ../rpm.doc/objc/$i.libobjc
676done)
677(cd boehm-gc; for i in ChangeLog*; do
678        cp -p $i ../rpm.doc/boehm-gc/$i.gc
679done)
680#(cd fastjar; for i in ChangeLog* README*; do
681#       cp -p $i ../rpm.doc/fastjar/$i.fastjar
682#done)
683(cd libffi; for i in ChangeLog* README* LICENSE; do
684        cp -p $i ../rpm.doc/libffi/$i.libffi
685done)
686(cd libjava; for i in ChangeLog* README*; do
687        cp -p $i ../rpm.doc/libjava/$i.libjava
688done)
689
690
691#####################################################################
692
693
694%install
695rm -fr $RPM_BUILD_ROOT
696
697perl -pi -e \
698  's~href="l(ibstdc|atest)~href="http://gcc.gnu.org/onlinedocs/libstdc++/l\1~' \
699  libstdc++-v3/docs/html/documentation.html
700ln -sf documentation.html libstdc++-v3/docs/html/index.html
701find libstdc++-v3/docs/html -name CVS | xargs rm -rf
702
703cd obj-%{gcc_target_platform}
704
705if [ ! -f /usr/lib/locale/de_DE/LC_CTYPE ]; then
706  export LOCPATH=`pwd`/locale:/usr/lib/locale
707fi
708
709TARGET_PLATFORM=%{gcc_target_platform}
710
711# There are some MP bugs in libstdc++ and libjava Makefiles
712make -C %{gcc_target_platform}/libstdc++-v3
713make -C %{gcc_target_platform}/libjava
714
715make prefix=$RPM_BUILD_ROOT%{_prefix} mandir=$RPM_BUILD_ROOT%{_mandir} \
716  infodir=$RPM_BUILD_ROOT%{_infodir} install
717%if %{build_ada}
718pushd gcc/ada
719cp -a gnat-style.info* gnat_rm.info* $RPM_BUILD_ROOT%{_infodir}/
720for i in gnat_ug_unx.info*; do
721  sed 's/gnat_ug_unx/gnat_ug/g' $i > $RPM_BUILD_ROOT%{_infodir}/`echo $i | sed 's/gnat_ug_unx/gnat_ug/'`
722done
723chmod 644 $RPM_BUILD_ROOT%{_infodir}/gnat*
724popd
725%endif
726
727FULLPATH=$RPM_BUILD_ROOT%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
728
729# this may be stripped as well GCC
730#file $RPM_BUILD_ROOT/%{_bindir}/* | grep ELF | cut -d':' -f1 | xargs strip || :
731# this is stripped
732#file $FULLPATH/* | grep ELF | grpe exec | cut -d':' -f1 | xargs strip || :
733
734# fix some things
735ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
736mkdir -p $RPM_BUILD_ROOT/lib
737ln -sf ..%{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
738ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
739rm -f $RPM_BUILD_ROOT%{_infodir}/dir
740gzip -9 $RPM_BUILD_ROOT%{_infodir}/*.info*
741# VINE: will be handled with alternatives
742#ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/gnatgcc
743
744%ifarch sparc
745# Install the sparc -m32 only compilers
746FULLPATH32=$RPM_BUILD_ROOT%{gcclib_dir}/%{_target_platform}/%{gcc_version}
747mkdir -p $FULLPATH32
748install -m 755 gcc32/cc1 $FULLPATH32/
749install -m 755 gcc32/cc1plus $FULLPATH32/
750ln -sf ../../%{gcc_target_platform}/%{gcc_version}/include $FULLPATH32/
751strip $FULLPATH32/{cc1,cc1plus}
752ln -f $RPM_BUILD_ROOT%{_bindir}/%{gcc_target_platform}-gcc \
753  $RPM_BUILD_ROOT%{_bindir}/%{_target_platform}-gcc
754%endif
755%ifarch sparc64
756ln -f $RPM_BUILD_ROOT%{_bindir}/%{gcc_target_platform}-gcc \
757  $RPM_BUILD_ROOT%{_bindir}/sparc-%{_vendor}-%{_target_os}-gcc
758%endif
759
760%ifarch sparc
761FULLLPATH=$FULLPATH/lib32
762%endif
763%ifarch sparc64
764FULLLPATH=$FULLPATH/lib64
765%endif
766if [ -n "$FULLLPATH" ]; then
767  mkdir -p $FULLLPATH
768else
769  FULLLPATH=$FULLPATH
770fi
771
772mv $RPM_BUILD_ROOT%{_libdir}/libgcj.*a $FULLLPATH/
773mv $RPM_BUILD_ROOT%{_prefix}/%{_lib}/lib-org-*.*a $FULLLPATH/
774%ifarch x86_64
775sed 's/-lgcjgc//g;s/-lzgcj//g;s/-lpthread//g' $RPM_BUILD_ROOT%{_prefix}/lib/libgcj.spec > $FULLPATH/libgcj.spec
776%else
777sed 's/-lgcjgc//g;s/-lzgcj//g;s/-lpthread//g' $RPM_BUILD_ROOT%{_libdir}/libgcj.spec > $FULLPATH/libgcj.spec
778%endif
779#GCC#mv $RPM_BUILD_ROOT%{_prefix}/include/gc*.h $FULLPATH/include/
780mv $RPM_BUILD_ROOT%{_prefix}/include/j*.h $FULLPATH/include/
781#GCC#mv -f $RPM_BUILD_ROOT%{_prefix}/include/{java,javax,gnu,org} $FULLPATH/include/
782mv -f $RPM_BUILD_ROOT%{_prefix}/include/{java,javax,gnu} $FULLPATH/include/
783mkdir -p $FULLPATH/include/gcj
784mv -f $RPM_BUILD_ROOT%{_prefix}/include/gcj/* $FULLPATH/include/gcj/
785rmdir $RPM_BUILD_ROOT%{_prefix}/include/gcj
786
787%ifarch sparc64 s390x
788pushd $RPM_BUILD_ROOT%{_libdir}
789mv -f libobjc.so* ../%{_lib}/
790mv -f libstdc++.so* ../%{_lib}/
791mv -f libgcj.so* ../%{_lib}/
792mv -f libg2c.so* ../%{_lib}/
793popd
794%endif
795
796mkdir -p $RPM_BUILD_ROOT/%{_lib}
797#mv -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libgcc_s.so.1 $RPM_BUILD_ROOT/%{_lib}/libgcc_s-%{gcc_version}-%{DATE}.so.1
798#chmod 755 $RPM_BUILD_ROOT/%{_lib}/libgcc_s-%{gcc_version}-%{DATE}.so.1
799#ln -sf libgcc_s-%{gcc_version}-%{DATE}.so.1 $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so.1
800mv -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libgcc_s.so.1 $RPM_BUILD_ROOT/%{_lib}/libgcc_s-%{gcc_version}.so.1
801chmod 755 $RPM_BUILD_ROOT/%{_lib}/libgcc_s-%{gcc_version}.so.1
802ln -sf libgcc_s-%{gcc_version}.so.1 $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so.1
803ln -sf /%{_lib}/libgcc_s.so.1 $FULLPATH/libgcc_s.so
804%ifarch x86_64
805mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libgcc_s.so.1 $RPM_BUILD_ROOT/lib/libgcc_s-%{gcc_version}.so.1
806chmod 755 $RPM_BUILD_ROOT/lib/libgcc_s-%{gcc_version}.so.1
807ln -sf libgcc_s-%{gcc_version}.so.1 $RPM_BUILD_ROOT/lib/libgcc_s.so.1
808%endif
809%ifarch sparc
810ln -sf /lib64/libgcc_s.so.1 $FULLPATH/libgcc_s_64.so
811%endif
812%ifarch sparc64 x86_64 s390x
813ln -sf /lib/libgcc_s.so.1 $FULLPATH/libgcc_s_32.so
814%endif
815
816%if %{build_ada}
817mv -f $FULLPATH/adalib/libgnarl-*.so.* $RPM_BUILD_ROOT%{_prefix}/%{_lib}/
818mv -f $FULLPATH/adalib/libgnat-*.so.* $RPM_BUILD_ROOT%{_prefix}/%{_lib}/
819rm -f $FULLPATH/adalib/libgnarl.so* $FULLPATH/adalib/libgnat.so*
820%endif
821
822pushd $FULLPATH
823if [ "%{_lib}" = "lib" ]; then
824ln -sf ../../../libobjc.so.1 libobjc.so
825ln -sf ../../../libstdc++.so.5.* libstdc++.so
826ln -sf ../../../libgcj.so.%{gcj_major}.* libgcj.so
827ln -sf ../../../libg2c.so.0.* libg2c.so
828ln -sf ../../../lib-org-w3c-dom.so.0.* lib-org-w3c-dom.so
829ln -sf ../../../lib-org-xml-sax.so.0.* lib-org-xml-sax.so
830%if %{build_ada}
831cd adalib
832ln -sf ../../../../libgnarl-*.so.* libgnarl.so
833ln -sf ../../../../libgnat-*.so.* libgnat.so
834cd ..
835%endif
836else
837ln -sf ../../../../%{_lib}/libobjc.so.1 libobjc.so
838ln -sf ../../../../%{_lib}/libstdc++.so.5.* libstdc++.so
839ln -sf ../../../../%{_lib}/libgcj.so.%{gcj_major}.* libgcj.so
840ln -sf ../../../../%{_lib}/libg2c.so.0.* libg2c.so
841ln -sf ../../../../%{_lib}/lib-org-w3c-dom.so.0.* lib-org-w3c-dom.so
842ln -sf ../../../../%{_lib}/lib-org-xml-sax.so.0.* lib-org-xml-sax.so
843%if %{build_ada}
844cd adalib
845ln -sf ../../../../../%{_lib}/libgnarl-*.so.* libgnarl.so
846ln -sf ../../../../../%{_lib}/libgnat-*.so.* libgnat.so
847cd ..
848%endif
849fi
850mv -f $RPM_BUILD_ROOT%{_libdir}/libstdc++.*a $FULLLPATH/
851mv -f $RPM_BUILD_ROOT%{_libdir}/libsupc++.*a .
852mv -f $RPM_BUILD_ROOT%{_libdir}/libg2c.*a .
853mv -f $RPM_BUILD_ROOT%{_libdir}/libfrtbegin.*a .
854mv -f $RPM_BUILD_ROOT%{_libdir}/libobjc.*a .
855
856%ifarch sparc
857ln -sf ../../../../../lib64/libobjc.so.1 64/libobjc.so
858ln -sf ../`echo ../../../../lib/libstdc++.so.5.* | sed s~/lib/~/lib64/~` 64/libstdc++.so
859ln -sf ../`echo ../../../../lib/libgcj.so.%{gcj_major}.* | sed s~/lib/~/lib64/~` 64/libgcj.so
860ln -sf ../`echo ../../../../lib/libg2c.so.0.* | sed s~/lib/~/lib64/~` 64/libg2c.so
861mv -f $RPM_BUILD_ROOT%{_libdir}/64/libsupc++.*a 64/
862mv -f $RPM_BUILD_ROOT%{_libdir}/64/libg2c.*a 64/
863mv -f $RPM_BUILD_ROOT%{_libdir}/64/libfrtbegin.*a 64/
864mv -f $RPM_BUILD_ROOT%{_libdir}/64/libobjc.*a 64/
865ln -sf lib32/libstdc++.a libstdc++.a
866ln -sf ../lib64/libstdc++.a 64/libstdc++.a
867ln -sf lib32/libgcj.a libgcj.a
868ln -sf ../lib64/libgcj.a 64/libgcj.a
869%endif
870%ifarch sparc64 x86_64 s390x
871ln -sf ../../../../libobjc.so.1 32/libobjc.so
872%ifarch x86_64
873ln -sf ../`echo ../../../../lib/libstdc++.so.5.* | sed s~/../lib64/~/~` 32/libstdc++.so
874ln -sf ../`echo ../../../../lib/libgcj.so.%{gcj_major}.* | sed s~/../lib64/~/~` 32/libgcj.so
875ln -sf ../`echo ../../../../lib/libg2c.so.0.* | sed s~/../lib64/~/~` 32/libg2c.so
876mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libsupc++.*a 32/
877mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libg2c.*a 32/
878mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libfrtbegin.*a 32/
879mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libobjc.*a 32/
880%else
881ln -sf ../`echo ../../../../lib64/libstdc++.so.5.* | sed s~/../lib64/~/~` 32/libstdc++.so
882ln -sf ../`echo ../../../../lib64/libgcj.so.%{gcj_major}.* | sed s~/../lib64/~/~` 32/libgcj.so
883ln -sf ../`echo ../../../../lib64/libg2c.so.0.* | sed s~/../lib64/~/~` 32/libg2c.so
884mv -f $RPM_BUILD_ROOT%{_libdir}/32/libsupc++.*a 32/
885mv -f $RPM_BUILD_ROOT%{_libdir}/32/libg2c.*a 32/
886mv -f $RPM_BUILD_ROOT%{_libdir}/32/libfrtbegin.*a 32/
887mv -f $RPM_BUILD_ROOT%{_libdir}/32/libobjc.*a 32/
888%endif
889%endif
890%ifarch sparc64
891ln -sf ../lib32/libstdc++.a 32/libstdc++.a
892ln -sf lib64/libstdc++.a libstdc++.a
893ln -sf ../lib32/libgcj.a 32/libgcj.a
894ln -sf lib64/libgcj.a libgcj.a
895%endif
896%ifarch x86_64
897ln -sf ../../../%{gcc_target_platform}/%{gcc_version}/libstdc++.a 32/libstdc++.a
898ln -sf ../../../%{gcc_target_platform}/%{gcc_version}/libgcj.a 32/libgcj.a
899%endif
900%ifarch s390x
901ln -sf ../../../s390-%{_vendor}-%{_target_os}/%{gcc_version}/libstdc++.a 32/libstdc++.a
902ln -sf ../../../s390-%{_vendor}-%{_target_os}/%{gcc_version}/libgcj.a 32/libgcj.a
903%endif
904
905# Strip debug info from Fortran/ObjC/Java static libraries
906strip -g `find . \( -name libg2c.a -o -name libobjc.a -o -name libgcj.a -o -name libgcc.a \) -a -type f`
907popd
908chmod 755 $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libg2c.so.0.*
909chmod 755 $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libobjc.so.1.*
910
911%if %{build_ada}
912chmod 755 $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libgnarl*so*
913chmod 755 $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libgnat*so*
914%endif
915
916cat > $RPM_BUILD_ROOT%{_bindir}/c89-%{VERSION} <<"EOF"
917#!/bin/sh
918fl="-std=c89"
919for opt; do
920  case "$opt" in
921    -ansi|-std=c89|-std=iso9899:1990) fl="";;
922    -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
923            exit 1;;
924  esac
925done
926exec %{_bindir}/gcc-%{VERSION} $fl ${1+"$@"}
927EOF
928cat > $RPM_BUILD_ROOT%{_bindir}/c99-%{VERSION} <<"EOF"
929#!/bin/sh
930fl="-std=c99"
931for opt; do
932  case "$opt" in
933    -std=c99|-std=iso9899:1999) fl="";;
934    -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
935            exit 1;;
936  esac
937done
938exec %{_bindir}/gcc-%{VERSION} $fl ${1+"$@"}
939EOF
940chmod 755 $RPM_BUILD_ROOT%{_bindir}/c?9-%{VERSION}
941
942# for alternatives
943pushd $RPM_BUILD_ROOT%{_bindir}
944  for i in gcc cpp g++ g77 gcj gcjh gij grepjar jar \
945        jcf-dump jv-convert jv-scan \
946        gnat gnatbind gnatbl gnatchop gnatfind gnatkr gnatlink \
947        gnatls gnatmake gnatprep gnatpsta gnatpsys gnatxref \
948        rmic rmiregistry \
949        %{gcc_target_platform}-gcc \
950        %{gcc_target_platform}-g++ \
951        %{gcc_target_platform}-c++ \
952        %{gcc_target_platform}-gcj; do
953    if [ -f "$i" ] ; then
954      mv $i $i-%{VERSION}
955      # ln -sf $i-%{VERSION} $i
956    fi
957  done
958popd
959%ifnarch x86_64
960pushd $RPM_BUILD_ROOT%{_libdir}/security
961  mv classpath.security classpath.security-%{version}
962popd
963%endif
964
965
966cd ..
967##VINE##%find_lang gcc
968
969
970%clean
971rm -rf $RPM_BUILD_ROOT
972
973
974#####################################################################
975
976
977# %post
978# /sbin/install-info \
979#   --info-dir=%{_infodir} %{_infodir}/gcc.info.gz
980#
981# %preun
982# if [ $1 = 0 ]; then
983#   /sbin/install-info --delete \
984#     --info-dir=%{_infodir} %{_infodir}/gcc.info.gz
985# fi
986#
987# %post -n cpp
988# /sbin/install-info \
989#   --info-dir=%{_infodir} %{_infodir}/cpp.info.gz
990#
991# %preun -n cpp
992# if [ $1 = 0 ]; then
993#   /sbin/install-info --delete \
994#     --info-dir=%{_infodir} %{_infodir}/cpp.info.gz
995# fi
996#
997# %post g77
998# /sbin/install-info \
999#   --info-dir=%{_infodir} %{_infodir}/g77.info.gz
1000#
1001# %preun g77
1002# if [ $1 = 0 ]; then
1003#   /sbin/install-info --delete \
1004#     --info-dir=%{_infodir} %{_infodir}/g77.info.gz
1005# fi
1006#
1007# %post java
1008# /sbin/install-info \
1009#   --info-dir=%{_infodir} %{_infodir}/gcj.info.gz
1010#
1011# %preun java
1012# if [ $1 = 0 ]; then
1013#   /sbin/install-info --delete \
1014#     --info-dir=%{_infodir} %{_infodir}/gcj.info.gz
1015# fi
1016#
1017# %post gnat
1018# /sbin/install-info \
1019#   --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz
1020# /sbin/install-info \
1021#   --info-dir=%{_infodir} %{_infodir}/gnat_ug.info.gz
1022#
1023# %preun gnat
1024# if [ $1 = 0 ]; then
1025#   /sbin/install-info --delete \
1026#     --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz
1027#   /sbin/install-info --delete \
1028#     --info-dir=%{_infodir} %{_infodir}/gnat_ug.info.gz
1029# fi
1030
1031
1032##VINE##%post docs
1033##VINE##%if %{build_ada}
1034##VINE##/sbin/install-info \
1035##VINE##    --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz
1036##VINE##/sbin/install-info \
1037##VINE##    --info-dir=%{_infodir} %{_infodir}/gnat_ug.info.gz
1038##VINE##%endif
1039##VINE##
1040##VINE##for i in cpp gcc g77 gcj ; do
1041##VINE##  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/$i.info.gz
1042##VINE##done
1043
1044
1045##VINE##%preun docs
1046##VINE##if [ $1 = 0 ] ; then
1047##VINE##%if %{build_ada}
1048##VINE##  /sbin/install-info --delete \
1049##VINE##    --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz
1050##VINE##  /sbin/install-info --delete \
1051##VINE##    --info-dir=%{_infodir} %{_infodir}/gnat_ug.info.gz
1052##VINE##%endif
1053##VINE##  for i in cpp gcc g77 gcj gnat_rm gnat_ug; do
1054##VINE##    /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/$i.info.gz
1055##VINE##  done
1056##VINE##fi
1057
1058
1059##VINE##%post -n libgcc -p /sbin/ldconfig
1060
1061##VINE##%postun -n libgcc -p /sbin/ldconfig
1062
1063%post -n libstdc++3 -p /sbin/ldconfig
1064
1065%postun -n libstdc++3 -p /sbin/ldconfig
1066
1067%post -n compat32-libstdc++3 -p /sbin/ldconfig
1068
1069%postun -n compat32-libstdc++3 -p /sbin/ldconfig
1070
1071##VINE##%post -n libobjc -p /sbin/ldconfig
1072
1073##VINE##%postun -n libobjc -p /sbin/ldconfig
1074
1075%post -n libgcj3
1076/sbin/ldconfig
1077%ifnarch x86_64
1078/sbin/update-alternatives \
1079  --install %{_bindir}/gij      gij      %{_bindir}/gij-%{version} 21   \
1080  --slave   %{_bindir}/jv-convert jv-convert \
1081                                         %{_bindir}/jv-convert-%{version} \
1082  --slave   %{_bindir}/rmic     rmic    %{_bindir}/rmic-%{version}    \
1083  --slave   %{_bindir}/rmiregistry rmiregistry \
1084                                         %{_bindir}/rmiregistry-%{version} \
1085  --slave   %{_libdir}/security/classpath.security classpath.security %{_libdir}/security/classpath.security-%{version}
1086%else
1087/sbin/update-alternatives \
1088  --install %{_bindir}/gij      gij      %{_bindir}/gij-%{version} 21   \
1089  --slave   %{_bindir}/jv-convert jv-convert \
1090                                         %{_bindir}/jv-convert-%{version} \
1091  --slave   %{_bindir}/rmic     rmic    %{_bindir}/rmic-%{version}    \
1092  --slave   %{_bindir}/rmiregistry rmiregistry \
1093                                         %{_bindir}/rmiregistry-%{version}
1094%endif
1095
1096# fix broken symlink if it's there
1097if [ ! -f %{_bindir}/gij ] ; then
1098  /sbin/update-alternatives --auto gij
1099fi
1100
1101%postun -n libgcj3
1102/sbin/ldconfig
1103if [ $1 = 0 ]; then
1104  /sbin/update-alternatives --remove gij %{_bindir}/gij-%{version}
1105  /sbin/update-alternatives --auto gij
1106fi
1107
1108%post -n libf2c -p /sbin/ldconfig
1109
1110%postun -n libf2c -p /sbin/ldconfig
1111
1112%post -n libgnat -p /sbin/ldconfig
1113
1114%postun -n libgnat -p /sbin/ldconfig
1115
1116
1117%post
1118/sbin/update-alternatives \
1119  --install %{_bindir}/gcc gcc %{_bindir}/gcc-%{VERSION} 21 \
1120  --slave   %{_bindir}/cc  cc  %{_bindir}/gcc-%{VERSION} \
1121  --slave   %{_bindir}/%{gcc_target_platform}-gcc \
1122                %{gcc_target_platform}-gcc \
1123                %{_bindir}/%{gcc_target_platform}-gcc-%{VERSION} \
1124  --slave   %{_bindir}/c89 c89 %{_bindir}/c89-%{VERSION} \
1125  --slave   %{_bindir}/c99 c99 %{_bindir}/c99-%{VERSION}
1126
1127# fix broken symlink if it's there
1128if [ ! -f %{_bindir}/gcc ] ; then
1129  /sbin/update-alternatives --auto gcc
1130fi
1131
1132
1133%postun
1134if [ $1 = 0 ]; then
1135  /sbin/update-alternatives --remove gcc %{_bindir}/gcc-%{VERSION}
1136  /sbin/update-alternatives --auto gcc
1137fi
1138
1139%triggerpostun -- gcc-launcher
1140/sbin/update-alternatives --auto gcc
1141
1142%triggerpostun -- gcc < %{version}-%{release}
1143/sbin/update-alternatives --auto gcc
1144
1145
1146%post c++
1147/sbin/update-alternatives \
1148  --install %{_bindir}/g++ g++ %{_bindir}/g++-%{VERSION} 21 \
1149  --slave   %{_bindir}/c++ c++ %{_bindir}/g++-%{VERSION} \
1150  --slave   %{_bindir}/%{gcc_target_platform}-g++ \
1151                %{gcc_target_platform}-g++ \
1152                %{_bindir}/%{gcc_target_platform}-g++-%{VERSION} \
1153  --slave   %{_bindir}/%{gcc_target_platform}-c++ \
1154                %{gcc_target_platform}-c++ \
1155                %{_bindir}/%{gcc_target_platform}-c++-%{VERSION}
1156
1157# fix broken symlink if it's there
1158if [ ! -f %{_bindir}/g++ ] ; then
1159  /sbin/update-alternatives --auto g++
1160fi
1161
1162 
1163%postun c++
1164if [ $1 = 0 ]; then
1165  /sbin/update-alternatives --remove g++ %{_bindir}/g++-%{VERSION}
1166  /sbin/update-alternatives --auto g++
1167fi
1168
1169%triggerpostun c++ -- gcc-c++-launcher
1170/sbin/update-alternatives --auto g++
1171
1172%triggerpostun c++ -- gcc-c++ < %{version}-%{release}
1173/sbin/update-alternatives --auto g++
1174
1175
1176%post cpp
1177/sbin/update-alternatives \
1178  --install %{_bindir}/cpp cpp    %{_bindir}/cpp-%{VERSION} 21 \
1179  --slave   /lib/cpp       libcpp %{_bindir}/cpp-%{VERSION}
1180
1181# fix broken symlink if it's there
1182if [ ! -f %{_bindir}/cpp ] ; then
1183  /sbin/update-alternatives --auto cpp
1184fi
1185
1186
1187%postun cpp
1188if [ $1 = 0 ]; then
1189  /sbin/update-alternatives --remove cpp    %{_bindir}/cpp-%{VERSION}
1190  /sbin/update-alternatives --auto cpp
1191fi
1192
1193%triggerpostun cpp -- gcc-cpp-launcher
1194/sbin/update-alternatives --auto cpp
1195
1196%triggerpostun cpp -- gcc-cpp < %{version}-%{release}
1197/sbin/update-alternatives --auto cpp
1198
1199
1200%post g77
1201/sbin/update-alternatives \
1202  --install %{_bindir}/g77 g77 %{_bindir}/g77-%{VERSION} 21 \
1203  --slave   %{_bindir}/f77 f77 %{_bindir}/g77-%{VERSION}
1204
1205# fix broken symlink if it's there
1206if [ ! -f %{_bindir}/g77 ] ; then
1207  /sbin/update-alternatives --auto g77
1208fi
1209
1210
1211%postun g77
1212if [ $1 = 0 ]; then
1213  /sbin/update-alternatives --remove g77 %{_bindir}/g77-%{VERSION}
1214  /sbin/update-alternatives --auto g77
1215fi
1216
1217%triggerpostun g77 -- gcc-g77-launcher
1218/sbin/update-alternatives --auto g77
1219
1220%triggerpostun g77 -- gcc-g77 < %{version}-%{release}
1221/sbin/update-alternatives --auto g77
1222
1223
1224
1225%post gnat
1226/sbin/update-alternatives \
1227  --install %{_bindir}/gnat     gnat     %{_bindir}/gnat-%{VERSION} 21  \
1228  --slave   %{_bindir}/gnatbind gnatbind %{_bindir}/gnatbind-%{VERSION} \
1229  --slave   %{_bindir}/gnatbl   gnatbl   %{_bindir}/gnatbl-%{VERSION} \
1230  --slave   %{_bindir}/gnatchop gnatchop %{_bindir}/gnatchop-%{VERSION} \
1231  --slave   %{_bindir}/gnatfind gnatfind %{_bindir}/gnatfind-%{VERSION} \
1232  --slave   %{_bindir}/gnatgcc  gnatgcc  %{_bindir}/gcc-%{VERSION} \
1233  --slave   %{_bindir}/gnatkr   gnatkr   %{_bindir}/gnatkr-%{VERSION} \
1234  --slave   %{_bindir}/gnatlink gnatlink %{_bindir}/gnatlink-%{VERSION} \
1235  --slave   %{_bindir}/gnatls   gnatls   %{_bindir}/gnatls-%{VERSION} \
1236  --slave   %{_bindir}/gnatmake gnatmake %{_bindir}/gnatmake-%{VERSION} \
1237  --slave   %{_bindir}/gnatprep gnatprep %{_bindir}/gnatprep-%{VERSION} \
1238  --slave   %{_bindir}/gnatpsta gnatpsta %{_bindir}/gnatpsta-%{VERSION} \
1239  --slave   %{_bindir}/gnatpsys gnatpsys %{_bindir}/gnatpsys-%{VERSION} \
1240  --slave   %{_bindir}/gnatxref gnatxref %{_bindir}/gnatxref-%{VERSION}
1241
1242# fix broken symlink if it's there
1243if [ ! -f %{_bindir}/gnat ] ; then
1244  /sbin/update-alternatives --auto gnat
1245fi
1246
1247%postun gnat
1248if [ $1 = 0 ]; then
1249  /sbin/update-alternatives --remove gnat %{_bindir}/gnat-%{VERSION}
1250  /sbin/update-alternatives --auto gnat
1251fi
1252
1253%triggerpostun gnat -- gcc-gnat < %{version}-%{release}
1254/sbin/update-alternatives --auto gnat
1255
1256
1257
1258%post java
1259/sbin/update-alternatives \
1260  --install %{_bindir}/gcj      gcj      %{_bindir}/gcj-%{VERSION} 21   \
1261  --slave   %{_bindir}/gcjh     gcjh     %{_bindir}/gcjh-%{VERSION}     \
1262  --slave   %{_bindir}/jcf-dump jcf-dump %{_bindir}/jcf-dump-%{VERSION} \
1263  --slave   %{_bindir}/jv-scan  jv-scan  %{_bindir}/jv-scan-%{VERSION}
1264
1265# fix broken symlink if it's there
1266if [ ! -f %{_bindir}/gcj ] ; then
1267  /sbin/update-alternatives --auto gcj
1268fi
1269
1270%postun java
1271if [ $1 = 0 ]; then
1272  /sbin/update-alternatives --remove gcj %{_bindir}/gcj-%{VERSION}
1273  /sbin/update-alternatives --auto gcj
1274fi
1275
1276%triggerpostun java -- gcc-java-launcher
1277/sbin/update-alternatives --auto gcj
1278
1279%triggerpostun java -- gcc-java < %{version}-%{release}
1280/sbin/update-alternatives --auto gcj
1281
1282
1283
1284#####################################################################
1285
1286
1287##VINE##%files -f gcc.lang
1288%files
1289%defattr(-,root,root)
1290#%{_bindir}/cc
1291%{_bindir}/c89-%{VERSION}
1292%{_bindir}/c99-%{VERSION}
1293%{_bindir}/gcc-%{VERSION}
1294#%{_bindir}/gcov
1295#%{_bindir}/protoize
1296#%{_bindir}/unprotoize
1297%ifarch sparc
1298%{_bindir}/%{_target_platform}-gcc
1299%endif
1300%ifarch sparc64
1301%{_bindir}/sparc-%{_vendor}-%{_target_os}-gcc
1302%endif
1303%{_bindir}/%{gcc_target_platform}-gcc-%{VERSION}
1304#%{_mandir}/man1/gcc.1*
1305#%{_mandir}/man1/gcov.1*
1306#%{_infodir}/gcc*
1307%dir %{gcclib_dir}
1308%dir %{gcclib_dir}/%{gcc_target_platform}
1309%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
1310%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include
1311%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/stddef.h
1312%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/stdarg.h
1313%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/varargs.h
1314%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/float.h
1315%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/limits.h
1316%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/stdbool.h
1317%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/iso646.h
1318%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/syslimits.h
1319%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/unwind.h
1320%ifarch %{ix86} x86_64
1321%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/mmintrin.h
1322%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/xmmintrin.h
1323%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/emmintrin.h
1324%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/pmmintrin.h
1325%endif
1326%ifarch ia64
1327%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/ia64intrin.h
1328%endif
1329%ifarch ppc
1330%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/ppc-asm.h
1331%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/altivec.h
1332%endif
1333%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/README
1334%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/collect2
1335%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/crt*.o
1336%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcc.a
1337%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcc_eh.a
1338%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcc_s.so
1339%ifarch sparc
1340%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64
1341%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/crt*.o
1342%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libgcc.a
1343%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libgcc_eh.a
1344%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcc_s_64.so
1345%endif
1346%ifarch sparc64 x86_64 s390x
1347%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32
1348%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/crt*.o
1349%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libgcc.a
1350%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libgcc_eh.a
1351%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcc_s_32.so
1352%endif
1353%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/specs
1354%doc gcc/README* gcc/*ChangeLog*
1355
1356
1357%files cpp
1358%defattr(-,root,root)
1359/lib/cpp
1360%{_bindir}/cpp-%{VERSION}
1361#%{_mandir}/man1/cpp.1*
1362#%{_infodir}/cpp*
1363%dir %{gcclib_dir}
1364%dir %{gcclib_dir}/%{gcc_target_platform}
1365%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
1366%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/cc1
1367#GCC#%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/cpp0
1368#GCC#%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/tradcpp0
1369
1370
1371##VINE##%files -n libgcc
1372##VINE##%defattr(-,root,root)
1373##VINE##%ifarch x86_64
1374##VINE##/lib/libgcc_s-%{gcc_version}.so.1
1375##VINE##/lib/libgcc_s.so.1
1376##VINE##%endif
1377##VINE##/%{_lib}/libgcc_s-%{gcc_version}.so.1
1378##VINE##/%{_lib}/libgcc_s.so.1
1379
1380
1381%files c++
1382%defattr(-,root,root)
1383%{_bindir}/%{gcc_target_platform}-*++-%{VERSION}
1384%{_bindir}/g++-%{VERSION}
1385#%{_bindir}/c++
1386#%{_bindir}/c++filt
1387#%{_mandir}/man1/g++.1*
1388%dir %{gcclib_dir}
1389%dir %{gcclib_dir}/%{gcc_target_platform}
1390%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
1391%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/cc1plus
1392%ifarch sparc
1393%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libstdc++.so
1394%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libstdc++.a
1395%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libsupc++.a
1396%endif
1397%ifarch sparc64 x86_64 s390x
1398%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libstdc++.so
1399%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libstdc++.a
1400%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libsupc++.a
1401%endif
1402%ifarch sparc sparc64 x86_64 s390x
1403%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libstdc++.so
1404%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libsupc++.a
1405%endif
1406%ifarch sparc sparc64
1407%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libstdc++.a
1408%endif
1409%doc gcc/cp/ChangeLog*
1410
1411
1412%files -n libstdc++3
1413%defattr(-,root,root)
1414#%ifarch x86_64
1415#%{_prefix}/lib/libstdc++.so.5*
1416#%endif
1417%{_prefix}/%{_lib}/libstdc++.so.5*
1418%doc libstdc++-v3/*ChangeLog*
1419
1420
1421%if %{build_compat32}
1422%files -n compat32-libstdc++3
1423%defattr(-,root,root)
1424%{_prefix}/lib/libstdc++.so.5*
1425%endif
1426
1427
1428%files -n libstdc++3-devel
1429%defattr(-,root,root)
1430%{_prefix}/include/c++
1431%ifarch sparc
1432%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib32
1433%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib32/libstdc++.a
1434%endif
1435%ifarch sparc64
1436%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib64
1437%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib64/libstdc++.a
1438%endif
1439%ifnarch sparc sparc64
1440%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libstdc++.a
1441%endif
1442%ifnarch sparc sparc64 x86_64 s390x
1443%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libstdc++.so
1444%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libsupc++.a
1445%endif
1446%doc libstdc++-v3/ChangeLog* libstdc++-v3/README* libstdc++-v3/docs/html/
1447
1448
1449%files objc
1450%defattr(-,root,root)
1451%dir %{gcclib_dir}
1452%dir %{gcclib_dir}/%{gcc_target_platform}
1453%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
1454%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include
1455%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/objc
1456%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/cc1obj
1457%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libobjc.a
1458%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libobjc.so
1459%ifarch sparc
1460%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libobjc.a
1461%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libobjc.so
1462%endif
1463%ifarch sparc64 x86_64 s390x
1464%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libobjc.a
1465%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libobjc.so
1466%endif
1467%doc rpm.doc/objc/*
1468%doc libobjc/THREADS* libobjc/ChangeLog
1469
1470
1471##VINE##%files -n libobjc
1472##VINE##%defattr(-,root,root)
1473##VINE##%ifarch x86_64
1474##VINE##%{_prefix}/lib/libobjc.so.1*
1475##VINE##%endif
1476##VINE##%{_prefix}/%{_lib}/libobjc.so.1*
1477
1478
1479%files g77
1480%defattr(-,root,root)
1481%{_bindir}/g77-%{VERSION}
1482#%{_bindir}/f77
1483#%{_mandir}/man1/g77.1*
1484#%{_infodir}/g77*
1485%dir %{gcclib_dir}
1486%dir %{gcclib_dir}/%{gcc_target_platform}
1487%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
1488%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include
1489%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/f771
1490%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libfrtbegin.a
1491%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libg2c.a
1492%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libg2c.so
1493%ifarch sparc
1494%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libfrtbegin.a
1495%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libg2c.a
1496%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libg2c.so
1497%endif
1498%ifarch sparc64 x86_64 s390x
1499%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libfrtbegin.a
1500%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libg2c.a
1501%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libg2c.so
1502%endif
1503%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/g2c.h
1504%doc gcc/f/ChangeLog* rpm.doc/g77/*
1505
1506
1507%files -n libf2c
1508%defattr(-,root,root)
1509%ifarch x86_64
1510%{_prefix}/lib/libg2c.so.0*
1511%endif
1512%{_prefix}/%{_lib}/libg2c.so.0*
1513
1514
1515%files java
1516%defattr(-,root,root)
1517%{_bindir}/%{gcc_target_platform}-gcj-%{VERSION}
1518%{_bindir}/gcj-%{VERSION}
1519%{_bindir}/gcjh-%{VERSION}
1520%{_bindir}/jcf-dump-%{VERSION}
1521%{_bindir}/jv-scan-%{VERSION}
1522#%{_mandir}/man1/gcj.1*
1523#%{_mandir}/man1/gcjh.1*
1524#%{_mandir}/man1/jcf-dump.1*
1525#%{_mandir}/man1/jv-scan.1*
1526#%{_infodir}/gcj*
1527%dir %{gcclib_dir}
1528%dir %{gcclib_dir}/%{gcc_target_platform}
1529%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
1530%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/jc1
1531%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/jvgenmain
1532%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcj.so
1533%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib-org-w3c-dom.so
1534%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib-org-xml-sax.so
1535%ifarch sparc sparc64
1536%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcj.a
1537%endif
1538%ifarch sparc
1539%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libgcj.so
1540%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib-org-w3c-dom.so
1541%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib-org-xml-sax.so
1542%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/64/libgcj.a
1543%endif
1544%ifarch sparc64 x86_64 s390x
1545%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libgcj.so
1546%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib-org-w3c-dom.so
1547%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib-org-xml-sax.so
1548%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/32/libgcj.a
1549%endif
1550%doc gcc/java/ChangeLog*
1551
1552
1553%files -n libgcj3
1554%defattr(-,root,root)
1555%{_bindir}/jv-convert-%{version}
1556%{_bindir}/gij-%{version}
1557%{_bindir}/jar-%{version}
1558%{_bindir}/grepjar-%{version}
1559%{_bindir}/rmic-%{version}
1560%{_bindir}/rmiregistry-%{version}
1561#%{_mandir}/man1/jv-convert.1*
1562#%{_mandir}/man1/gij.1*
1563#%{_mandir}/man1/rmic.1*
1564#%{_mandir}/man1/rmiregistry.1*
1565%{_prefix}/%{_lib}/libgcj.so.*
1566%{_prefix}/%{_lib}/lib-org-w3c-dom.so.*
1567%{_prefix}/%{_lib}/lib-org-xml-sax.so.*
1568%{_prefix}/share/java
1569%ifarch x86_64
1570%{_prefix}/lib/security
1571%else
1572%{_libdir}/security
1573%endif
1574
1575
1576%files -n libgcj3-devel
1577%defattr(-,root,root)
1578%{_bindir}/addr2name.awk
1579%ifarch sparc
1580%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib32
1581%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib32/libgcj.a
1582%endif
1583%ifarch sparc64
1584%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib64
1585%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/lib64/libgcj.a
1586%endif
1587%ifnarch sparc sparc64
1588%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcj.a
1589%endif
1590%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/libgcj.spec
1591#GCC#%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/gc*.h
1592%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/j*.h
1593%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/java
1594%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/javax
1595%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/gnu
1596%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/gcj
1597#GCC#%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/include/org
1598#doc rpm.doc/boehm-gc/* rpm.doc/fastjar/* rpm.doc/libffi/*
1599%doc rpm.doc/boehm-gc/* rpm.doc/libffi/*
1600%doc rpm.doc/libjava/*
1601
1602
1603%if %{build_ada}
1604%files gnat
1605%defattr(-,root,root)
1606%{_bindir}/gnat*
1607#%{_infodir}/gnat*
1608%dir %{gcclib_dir}
1609%dir %{gcclib_dir}/%{gcc_target_platform}
1610%dir %{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}
1611%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/adainclude
1612%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/adalib
1613%{gcclib_dir}/%{gcc_target_platform}/%{gcc_version}/gnat1
1614%doc gcc/ada/ChangeLog
1615
1616
1617%files -n libgnat
1618%defattr(-,root,root)
1619%{_prefix}/%{_lib}/libgnat-*.so.*
1620%{_prefix}/%{_lib}/libgnarl-*.so.*
1621%endif
1622
1623
1624%ifarch sparc
1625%files sparc32
1626%defattr(-,root,root)
1627%dir %{gcclib_dir}/%{_target_platform}/%{gcc_version}
1628%{gcclib_dir}/%{_target_platform}/%{gcc_version}/cc1
1629%{gcclib_dir}/%{_target_platform}/%{gcc_version}/include
1630
1631
1632%files c++-sparc32
1633%defattr(-,root,root)
1634%{gcclib_dir}/%{_target_platform}/%{gcc_version}/cc1plus
1635%endif
1636
1637
1638##VINE##%files tools
1639##VINE##%defattr(-,root,root)
1640##VINE##%doc README* COPYING COPYING.LIB
1641##VINE##%{_bindir}/gcov
1642##VINE##%{_bindir}/protoize
1643##VINE##%{_bindir}/unprotoize
1644##VINE###GCC#%{_bindir}/c++filt
1645
1646
1647##VINE##%files docs
1648##VINE##%defattr(-,root,root)
1649##VINE##%doc README* COPYING COPYING.LIB
1650##VINE##%{_infodir}/*
1651##VINE##%{_mandir}/*/*
1652
1653
1654%changelog
1655* Mon Sep 20 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.3.6-5
1656- fixed /usr/lib/security path for x86_64
1657
1658* Thu Jul 29 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.3.6-4
1659- rebuilt with current toolchain
1660- added R: fastjar to libgcj3 package
1661
1662* Fri Mar 20 2009 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.6-3
1663- add Patch400 (fix up for the latest bison)
1664- drop Patch300; modify OPT_FLAGS (disable -mtune=generic et al.)
1665
1666* Tue Dec 30 2008 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.6-2
1667- add dirty hack Patch300 to accept (pass through) m32 option
1668
1669* Fri Oct 24 2008 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.3.6-1vl5
1670- applied new versioning policy
1671- spec in UTF-8
1672
1673* Mon May 07 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.6-0vl9
1674- renamed to gcc3
1675- disable libgcc/libobjc/docs/tools subpackages
1676- lowered priority of alternatives from 30 to 21
1677
1678* Sun Jan 28 2007 Kazutaka HARADA <kazutaka@dc4.so-net.ne.jp> 3.3.6-0vl8
1679- fixed typo in spec <BTS:VineLinux:425>
1680
1681* Wed Sep 13 2006 Kazutaka HARADA <kazutaka@dc4.so-net.ne.jp> 3.3.6-0vl7
1682- change docs Group to Applications/Documentation. <BTS:VineLinux:163>
1683
1684* Sun Jul 16 2006 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.6-0vl6
1685- rebuild with glibc-2.3.4
1686
1687* Sat Jun 17 2006 Daisuke SUZUKI <daisuke@linux.or.jp> 3.3.6-0vl5
1688- add lib-org-* to gcc-java
1689
1690* Fri Jun 16 2006 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.6-0vl4
1691- added Patch200 (fix ASM_CPU_SPEC for ppc)
1692
1693* Sat Feb 18 2006 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.3.6-0vl3
1694- fixed typo in some summaries and descriptions
1695- added update-alternatives to %post libgcj
1696
1697* Sun Oct 23 2005 NAKAMURA Kenta <kenta@c.csce.kyushu-u.ac.jp> 3.3.6-0vl2
1698- replaced %{_libdir}/gcc-lib with %{gcclib_dir}
1699  for x86_64 architecture support ([VineSeed:10281],[VineSeed:10284])
1700- fixed %files section on gcc-g77
1701- added compat32-libstdc++3 package
1702
1703* Sat Aug 13 2005 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.6-0vl1
1704- fixed %%triggerpostun problems ([VineSeed:09815],[VineSeed:09816])
1705- updated to 3.3.6 release
1706  3.3.6 is the latest and the last release of the gcc 3.3.x series
1707
1708* Thu Mar 10 2005 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.5-0vl2
1709- update check-abi logic in the spec file
1710
1711* Sat Mar 05 2005 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.5-0vl1
1712- updated to 3.3.6 prerelease (as of 20050305)
1713
1714* Thu May 27 2004 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.2-0vl8
1715- revised %setup section to correct version strings with Vine
1716
1717* Tue Feb  3 2004 Tomoya TAKA <taka@vinelinux.org> 3.3.2-0vl7
1718- move cc1 into gcc-cpp
1719
1720* Wed Jan 21 2004 Tomoya TAKA <taka@vinelinux.org> 3.3.2-0vl6
1721- libstdc++3 provides libstdc++
1722- include pmmintrin.h on IA32/x86_64, unwind.h on all archs
1723
1724* Sun Jan 11 2004 KOBAYASHI R. Taizo <tkoba@vinelinux.org> 3.3.2-0vl5
1725- update from gcc-3_3-branch 20031219 (3.3.2-5)
1726  - PRs target/11992, target/13122, optimization/13037,
1727        target/13256, target/12598, optimization/13318,
1728        optimization/13060, optimization/12965, target/13354,
1729        optimization/4490, target/13150, middle-end/10060,
1730        driver/13211, target/13302, target/11322, target/12467,
1731        12969, target/8407, 10239, 11640, c++/12253,
1732        c++/13262, c++/13323, fortran/12633, libstdc++/6243,
1733        libstdc++/11612, libstdc++/12496, libstdc++/13290,
1734        libstdc++/9371, libstdc++/9546, libstdc++/10093,
1735        libstdc++/10095
1736  - fix __builtin_expect in C++ code
1737
1738* Thu Jan 01 2004 Satoshi MACHINO <machino@vinelinux.org> 3.3.2-0vl4
1739- added emmintrin.h to gcc's package, see [VineSeed:08374]
1740
1741* Sat Dec 20 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.2-0vl3
1742- added BuildRequires: texinfo >= 4.2, for /usr/bin/makeinfo no older than
1743  4.2 seems to be needed for making info files
1744
1745* Fri Dec 19 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.2-0vl2
1746- version string changed for Vine, then rebuilt
1747
1748* Fri Dec 19 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.3.2-0vl1
1749- updated to 3.3.2 (as of 20021023), based on [VineSeed:08312]
1750
1751* Mon Sep 15 2003 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 3.2.3-0vl5
1752- use License tag
1753
1754* Wed Sep 10 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.3-0vl4
1755- rebuilt
1756
1757* Fri Jul 18 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.3-0vl3
1758- added Patch0
1759
1760* Mon May 12 2003 Daisuke SUZUKI <daisuke@linux.or.jp> 3.2.3-0vl2
1761- use more macros in spec file.
1762
1763* Mon May 12 2003 Daisuke SUZUKI <daisuke@linux.or.jp> 3.2.3-0vl1
1764- new upstream release 3.2.3
1765
1766* Fri Feb 07 2003 Tomoya TAKA <taka@vinelinux.org> 3.2.2-0vl1
1767- new upstream release 3.2.2
1768
1769* Mon Jan 27 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.10
1770- source updated to CVS (3.2.2 prerelease) as of 2003-01-26
1771- including such PRs as:
1772  optimization/9279, c/2454, opt/7507, c++/9328, c++/47, c++/8503,
1773  c++/8442, C++/8031, libstdc++/9322
1774
1775* Tue Jan 14 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.9
1776- rebuilt with binutils-2.13.90.16-3vl4 and glibc-2.3.1-34vl1
1777
1778* Mon Jan 13 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.8
1779- source updated to CVS (3.2.2 prerelease) as of 2003-01-12
1780
1781* Wed Jan 08 2003 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.7
1782- source updated to CVS (3.2.2 prerelease) as of 2003-01-07
1783
1784* Wed Dec 21 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.6
1785- source updated to CVS (3.2.2 prerelease) as of 2002-12-20
1786
1787* Sat Dec 14 2002 Daisuke SUZUKI <daisuke@linux.or.jp> 3.2.2-0vl0.5
1788- rebuild to remove unnecessary dependancy.
1789
1790* Thu Dec 12 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.4
1791- added more %%post scripts to fix broken symlink on alternatives
1792
1793* Wed Dec 11 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.3
1794- source updated to CVS (3.2.2 prerelease) as of 2002-12-10
1795
1796* Sun Dec 08 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.2
1797- fixed a bug in triggerscript which deals with cpp alternatives
1798- %%{gcc_target_platform}-{gcc,g++,c++} with alternatives
1799- TODO: we have decide better way how to handle
1800        %%{gcc_target_platform}-{gcc,g++,c++} with alternatives
1801
1802* Thu Dec 05 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.2-0vl0.1
1803- source updated to CVS (3.2.2 prerelease) as of 2002-12-04
1804  (including several bug fix such as PR 8275,8362,8599
1805   see ChangeLog for details)
1806- added some missing ChangeLog to the %%doc list
1807
1808* Sat Nov 21 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.1-0vl5
1809- source updated to CVS (3.2.1 release) as of 2002-11-20
1810  (it's the same as gcc-3.2.1 tarball in essence)
1811
1812* Sat Nov 16 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.1-0vl4
1813- source updated to CVS (3.2.1 prerelease) as of late 2002-11-15
1814  (includes important bug fix:
1815   http://gcc.gnu.org/ml/gcc-cvs/2002-11/msg00441.html)
1816- BuildRequires for binutils bumped to 2.13.90.0.10
1817  (powerpc-*-linux-gnu needs this version or up for a working gcc)
1818
1819* Thu Nov 14 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.1-0vl3
1820- rebuilt with new toolchain (binutils-2.13.90.0.10-3vl4, glibc-2.3.1-6vl3)
1821- source updated to CVS (3.2.1 prerelease) as of 2002-11-15
1822
1823* Wed Nov 13 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.1-0vl2
1824- rebuilt with new toolchain (glibc-2.3.1-6vl2)
1825
1826* Tue Nov 12 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.1-0vl1
1827- source updated to CVS (3.2.1 prerelease) as of 2002-11-11
1828- make check with LANG=C
1829
1830* Mon Nov 11 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2.1-0vl0
1831- source updated to CVS (3.2.1 prerelease) as of 2002-11-10
1832- Doh! strange macro definition. My own mistake. Fixed.
1833- Don't replace version strings (with Red Hat ones)
1834- several Obsoletes/Conflicts/Provides treatments
1835- make c89 and c99 alternatives-savvy
1836- added Patch100 back (from previous Vine's gcc package) for ppc
1837
1838* Mon Nov 11 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 3.2-11vl0
1839- based on 3.2-11 from Rawhide and re-constructed for Vine Linux
1840- make alternatives-savvy as in previous Vine packageing scheme
1841- temporarily disabled to build Ada subpackages (gcc-gnat, libgnat) for Vine
1842
1843* Wed Oct 23 2002 Jakub Jelinek  <jakub@redhat.com> 3.2-11
1844- update from gcc-3_2-rhl8-branch
1845  - PRs target/7693, opt/7630, c++/6419, target/7396, c++/8218,
1846    c++/7676, c++/7584, c++/7478, c++/8134, c++/7524, c++/7176,
1847    c++/5661, c++/6803, c++/7721, c++/7803, c++/7754, c++/7188,
1848    libstdc++/8071, libstdc++/8127, c++/6745, libstdc++/8096,
1849    libstdc++/7811
1850- fix x86-64 ICE with stdarg in -fpic (#76491)
1851- fix IA-32 miscompilation of DImode code (Jim Wilson, PR target/6981)
1852
1853* Wed Oct 16 2002 Jakub Jelinek  <jakub@redhat.com> 3.2-10
1854- update from gcc-3_2-rhl8-branch
1855  - PRs target/7370, target/8232, opt/7409, preprocessor/7862,
1856    preprocessor/8190, optimization/6631, target/5610, optimization/7951,
1857    target/7723
1858- allow building even if de_DE locale is not installed (#74503, #75889)
1859- s390x multilib
1860- x86-64 TLS fixes
1861- 15 Java fixes (Anthony Green, Andrew Haley, Tom Tromey,
1862  PRs java/6005, java/7611, java/8003, java/7950, java/5794, libgcj/7073)
1863- %%define _unpackaged_files_terminate_build 0
1864- fix make check-abi
1865
1866* Fri Oct 11 2002 Jakub Jelinek  <jakub@redhat.com> 3.2-9
1867- update from gcc-3_2-rhl8-branch
1868  - __attribute__((tls_model("")))
1869  - PRs c/7353, opt/7124, opt/7912, opt/7390, doc/7484,
1870        c/7411, target/8087, optimization/6713
1871- x86-64 TLS
1872
1873* Tue Oct  8 2002 Jakub Jelinek  <jakub@redhat.com> 3.2-8
1874- switch to gcc-3_2-rhl8-branch snapshots
1875  - thus most of the patches went away as they are in CVS
1876- merge from gcc-3_2-branch between 20020903 and 20021007
1877  - PRs target/7434, optimization/6627, preprocessor/8120,
1878        middle-end/7151, preprocessor/8055, optimization/7335,
1879        c/7160, target/7842, opt/7515, optimization/7130,
1880        optimization/6984, c/7150, target/7380, other/7114,
1881        target/5967, optimization/7120, target/7374, opt/7814,
1882        c/7102
1883- backported libffi and libjava bits for x86-64 and s390*
1884- added sparc* support
1885- multilib setup for sparc* and x86-64
1886- some IA-32 TLS fixes (Richard Henderson)
1887
1888* Tue Sep  3 2002 Bill Nottingham <notting@redhat.com> 3.2-7
1889- fix calling of C++ destructors in certain cases
1890
1891* Tue Sep  3 2002 Jakub Jelinek <jakub@redhat.com> 3.2-6
1892- update from CVS (but revert C++ tail padding patches
1893  for now)
1894- further fixes to make libstdc++-v3 build on glibc 2.3
1895- run libstdc++-v3 make check-abi on IA-32 during testing
1896
1897* Fri Aug 30 2002 Jakub Jelinek <jakub@redhat.com> 3.2-5
1898- disable tail copy patches, they seem to still have problems
1899- make libstdc++-v3 build on glibc 2.3 (and use thread-local
1900  locale model)
1901- fix c89 and c99 scripts (#73104)
1902
1903* Wed Aug 26 2002 Jakub Jelinek <jakub@redhat.com> 3.2-4
1904- reorder alpha_encode_section_info checks slightly to fix an ICE
1905  when building glibc and to take better advantage of visibility
1906  attribute on Alpha
1907- as gdb is not there yet, disable -momit-leaf-frame-pointer
1908  by default for now on IA-32
1909- fix IA-64 bootstrap with tail padding patch (Jason Merrill, Daniel Berlin)
1910- fix x86-64 %RIP to %rip, only output (%rip) if no other relocation
1911  is used (Richard Henderson)
1912
1913* Fri Aug 23 2002 Jakub Jelinek <jakub@redhat.com> 3.2-3
1914- take advantage of __attribute__((visibility())) on Alpha
1915- avoid copying tail padding (Jason Merrill)
1916
1917* Thu Aug 22 2002 Jakub Jelinek <jakub@redhat.com> 3.2-2
1918- fixed Dwarf2 DW_OP_GNU_push_tls_address patch from Richard Henderson
1919- don't mention removed -a and -ax options in the documentation
1920  (Nathan Sidwell, #72233)
1921- fixed __typeof() followed by __asm() redirection from Alexandre Oliva
1922
1923* Wed Aug 14 2002 Jakub Jelinek <jakub@redhat.com> 3.2-1
1924- update to 3.2 release
1925- fix x86-64 PR target/7559 (Jan Hubicka)
1926- fix -fprefetch-loop-arrays (Janis Johnson)
1927- fix x86-64 prefetch (Jan Hubicka)
1928
1929* Fri Aug  9 2002 Jakub Jelinek <jakub@redhat.com> 3.2-0.3
1930- istream fix (Benjamin Kosnik)
1931- emit Dwarf2 DW_OP_GNU_push_tls_address extension for TLS (Richard Henderson)
1932- temporarily disable __typeof() + __asm() fix
1933
1934* Thu Aug  8 2002 Jakub Jelinek <jakub@redhat.com> 3.2-0.2
1935- update from 3.2 branch
1936  - ABI incompatible changes in libstdc++.so.5, long long bitfield
1937    layout on IA-32 (both C and C++), oversized bitfields layout
1938    on IA-32 and bitfields with base type with __attribute__((aligned ()))
1939  - fix strstream segfaults (#68292, Benjamin Kosnik)
1940- fix __attribute__((visibility())) together with __asm__()
1941  function redirection
1942- fix __typeof() followed by __asm() redirection (Alexandre Oliva)
1943- fix TLS ICE on glibc (#70061)
1944- fix K6 ICE on linux kernel (#69989, Richard Sandiford, Jan Hubicka)
1945- fix inlining bug with labels (#70941)
1946- fix fold-const bug (#70541)
1947- fix PR preprocessor/7358 (Neil Booth)
1948- error when mixing __thread and non-__thread declarations
1949  (#70059, Aldy Hernandez)
1950- fix TLS bug on g++.dg/tls/diag-1.C (Jason Merrill)
1951- add -mcmodel= x86-64 documentation (Andreas Jaeger)
1952- avoid TLS emitting movl %gs:0, MEMORY on IA-32 (#71033)
1953
1954* Mon Jul 22 2002 Jakub Jelinek <jakub@redhat.com> 3.2-0.1
1955- first attempt for gcc 3.2
1956- remove .la files
1957
1958* Sat Jul 20 2002 Jakub Jelinek <jakub@redhat.com> 3.1-10
1959- update from 3.1 branch
1960  - add throw() to set_new_handler (Andreas Schwab)
1961  - fixed PR optimization/7147, optimization/7153
1962- make sure pic register is set up even when the only @PLT calls
1963  are done in EH basic blocks (Richard Henderson)
1964
1965* Sun Jul 14 2002 Jakub Jelinek <jakub@redhat.com> 3.1-9
1966- define %%_gnu to nothing for compatibility
1967
1968* Sat Jul 13 2002 Jakub Jelinek <jakub@redhat.com> 3.1-8
1969- update from 3.1 branch
1970  - fix OpenOffice miscompilation (PR c++/7279, Jason Merrill)
1971  - PRs c++/7224, c++/6255, optimization/7145, c++/6706, preprocessor/7070,
1972    middle-end/6963, target/6841, target/6770, target/6719,
1973    other/6836, libstdc++/7057, libstdc++/7097, libstdc++/3946,
1974    libstdc++/7173
1975  - fix a GC bug with named labels in C++ (Jim Wilson)
1976  - fix ICE on Mesa (Bernd Schmidt, #65771)
1977- added some NRV tests
1978- fix typo in i386 specs (PR c/7242)
1979- fix IA-32 ICE with shifts by negative values followed by compare
1980  (PR middle-end/7245, #68395)
1981- fixed DWARF-2 output for const char * (PR debug/7241)
1982- actually enable __cxa_atexit for standard compliance at configury time
1983- added PPC as Ada enabled architecture
1984
1985* Wed Jun 19 2002 Jakub Jelinek <jakub@redhat.com> 3.1-7
1986- update from 3.1 branch
1987  - PRs target/6922, opt/6722, c/7030, c/6677, objc/6834, c++/6892,
1988    c++/6723, opt/6793
1989- use __cxa_atexit for standard compliance:
1990  if your C++ project knows it won't call atexit from within its
1991  static constructors, use -fno-use-cxa-atexit to optimize it
1992- share hard register rtxs where possible to speed the compiler up (Jeff Law)
1993- optimize tree_code_* arrays (Kaveh Ghazi)
1994- don't link prefix.o into libgnat, link libgnat against libgcc_s and
1995  libgnarl against libgnat
1996- fix typo in GNAT %%post (#66847, #66941, #66639)
1997- add TLS support
1998
1999* Fri Jun  7 2002 Jakub Jelinek <jakub@redhat.com> 3.1-6
2000- add GNAT
2001- remove DT_RPATH from Java binaries (#66103)
2002- obsolete kaffe, install jar as %{_bindir}/jar
2003- add include/org directory in java
2004- add rmic and rmiregistry programs to libgcj
2005- add info documentation for gcj and various man pages
2006- add message catalogues for da, el, es, fr, ja, nl, sv, tr
2007- don't put IA-64 vtables with relocations into read-only sections
2008  with -fpic
2009
2010* Tue Jun  4 2002 Jakub Jelinek <jakub@redhat.com> 3.1-5
2011- update from 3.1 branch
2012  - PRs optimization/6822, preprocessor/6844, target/6838, target/6788,
2013        libstdc++/6886, libstdc++/6795, libstdc++/6811
2014- m$ compatibility for unnamed fields as typedef of struct/union
2015  (PR c/6660)
2016- fix -fverbose-asm with unnamed fields (PR c/6809)
2017- fix -mmmx ICE (PR optimization/6842)
2018- default to -momit-leaf-frame-pointer on i386 (Richard Henderson)
2019- use linkonce section/hidden symbol for i686 pic getpc thunks
2020  (Richard Henderson)
2021
2022* Tue May 28 2002 Jakub Jelinek <jakub@redhat.com> 3.1-4
2023- rebuilt
2024
2025* Sat May 25 2002 Jakub Jelinek <jakub@redhat.com> 3.1-3
2026- update from 3.1 branch
2027  - PRs other/6782, preprocessor/6780, preprocessor/6517,
2028        libstdc++/6282, libstdc++/6701, libstdc++/6701
2029  - fix out << "" bug (Ben Kosnik, #65409, PR libstdc++/6750)
2030- 3 new patches
2031  - fix C++ __PRETTY_FUNCTION__ (PR c++/6794)
2032  - fix ICE on jikes (#65379)
2033  - add test for fixed mozilla miscompilation
2034- include intrinsic headers on IA-32/x86-64, include altivec.h on PPC
2035
2036* Wed May 22 2002 Jakub Jelinek <jakub@redhat.com> 3.1-2
2037- update from 3.1 branch
2038- 8 new patches
2039  - fix as version test for 2.12.1 and newer binutils non-CVS releases
2040  - fix ICE in do_subst (#65049)
2041  - fix SSE conditional move (PR target/6753)
2042  - fix SPARC CSE ICE (PR optimization/6759)
2043  - fix x86_64 dbx64_register_map typo (Jan Hubicka)
2044  - fix DWARF-2 with flag_asynchronous_unwind_tables set for leaf
2045    functions (Jan Hubicka)
2046  - fix DWARF-2 x86_64 __builtin_dwarf_reg_sizes (Jan Hubicka)
2047  - fix x86_64 movabsdi (Michael Matz)
2048
2049* Wed May 15 2002 Jakub Jelinek <jakub@redhat.com> 3.1-1
2050- update to 3.1 final
2051- 15 new patches
2052  - fix PR c/6643
2053  - fix fold-const.c typo
2054  - fix unitialized pointer-to-member values (Alexandre Oliva)
2055  - fix templates with asm inputs (Jason Merrill)
2056  - fix -fdata-section (Andreas Schwab)
2057  - readd warning about i386 -malign-double into documentation (Jan Hubicka)
2058  - fix PR libstdc++/6594 (Ben Kosnik)
2059  - fix PR PR libstdc++/6648 (Paolo Carlini)
2060  - fix libstdc++ testsuite rlimits (Rainer Orth)
2061  - s390 java support (Gerhard Tonn)
2062  - rotate testcases (Tom Rix)
2063  - build libiberty with -fpic on x86_64 (Andreas Schwab)
2064  - fix x86_64 multilib build (Bo Thorsen)
2065  - fix x86_64 ASM_OUTPUT_MI_THUNK (Jan Hubicka)
2066  - fix loop-2[cd].c tests on i386 (Eric Botcazou)
2067- fix typo in g77 info files tweaking
2068- fix libgcj.so symlink
2069
2070* Thu May  9 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.28
2071- update to CVS 3.1 branch
2072  - PR c++/6212, target/6429, opt/6534, c/6543, target/6561, c/6569
2073- fix x86_64 q_regs_operand (Jan Hubicka)
2074- better PR c++/6381 fix (Jason Merrill)
2075
2076* Fri May  3 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.27
2077- update to CVS 3.1 branch
2078  - PR target/5628, libstdc++/5820, c++/6396, preprocessor/6489,
2079    libstdc++/6501, libstdc++/6511, target/6512, libstdc++/6513,
2080    bootstrap/6514, opt/6516, bootstrap/6525, c++/6527, libstdc++/6533,
2081    target/6540
2082- fix PR target/6542, target/6522, libstdc++/6549
2083
2084* Mon Apr 29 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.26
2085- update to CVS 3.1 branch
2086  - PR c/3581, libstdc++/4150, libstdc++/4164, c/5154, c/5430, c++/5504,
2087    c++/5658, c++/5719, f/6138, libgcj/6158, middle-end/6205, c++/6256,
2088    c/6300, c++/6331, c/6343, c/6344, c++/6352, c/6358, libstdc++/6360,
2089    c++/6395, target/6413, libstdc++/6414, target/6422, bootstrap/6445,
2090    optimization/6475, target/6476, c++/6477, c++/6479, c++/6486, c++/6492,
2091    target/6494, target/6496, c/6497, target/6500
2092- fix PR c++/6396
2093- run make check as part of build process
2094
2095* Thu Apr 18 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.25
2096- update to CVS 3.1 branch
2097  - PR opt/420, c++/525, target/817, target/1538, opt/3967, target/3997,
2098    opt/4120, bootstrap/4191, opt/4311, optimization/4328, c++/4884, c++/4934,
2099    c/5078, c++/5104, opt/5120, c++/5189, c++/5373, target/5446, c/5484,
2100    c++/5507, c++/5571, c++/5636, target/5672, target/5715, target/5886,
2101    c++/5933, c++/5964, c++/5998, opt/6007, target/6032, target/6041,
2102    target/6054, c++/6073, target/6082, optimization/6086, target/6087,
2103    middle-end/6096, middle-end/6098, middle-end/6099, middle-end/6100,
2104    middle-end/6102, fortran/6106, c++/6119, opt/6165, optimization/6177,
2105    c++/6179, optimization/6189, c/6202, c/6223, optimization/6233,
2106    middle-end/6279, c/6290, optimization/6305, target/6305, bootstrap/6315,
2107    c++/6320...
2108- fix PR c++/6316
2109
2110* Wed Mar 27 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.24
2111- update to CVS 3.1 branch
2112  - PRs c/5656, c/5972, bootstrap/4192, target/4792, bootstrap/4195,
2113    optimization/5854, target/6043, c++/6037, bootstrap/4128, target/5740,
2114    c/5597, optimization/5863, optimization/5742, target/3177, c/5354,
2115    optimization/5999, target/5977, middle-end/5731, target/5312...
2116
2117* Fri Mar 15 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.23.1
2118- fix info and man page generation
2119
2120* Thu Mar 14 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.23
2121- update to CVS 3.1 branch
2122  - fix IA-64 packet selection (PR optimization/5892)
2123  - make highest_pow2_factor work for all constants (PR middle-end/5877)
2124  - fix -Wunused (#61047)
2125  - fix loop on mixed mode class assignments (#60923)
2126  - fix wide character literals
2127  - support SPARC v9 long distance branches (PR target/5626)
2128  - fix SPARC leaf functions
2129  - fix a rtl sharing problem (Richard Henderson, #60760,
2130    PR optimization/5844)
2131  - fix va_arg with variable size types (PR c/3711)
2132  - PRs optimization/5901, optimization/5878, 5693, preprocessor/5899
2133- fix C++ ?: at the end of stmt expr (PR c++/5373)
2134- fix loop unrolling with sibcalls (PR optimization/5891)
2135
2136* Thu Mar  7 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.22
2137- update to CVS 3.1 branch
2138  - fix ICE with volatile long long (#60650)
2139  - fix tempbuf.h (Philipp Thomas, #60212)
2140  - fix -fssa-ccp (Jeff Law, #60651)
2141  - versioned libstdc++
2142  - backport __attribute__((visibility("..."))) patches from trunk
2143- include libstdc++ html documentation
2144
2145* Tue Feb  5 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.21
2146- update to CVS HEAD
2147  - fix demangler (H.J. Lu, #59300, #59310)
2148  - fix typo in IA-32 specs file (#59081)
2149  - support moving SFmode values in MMX regs if -mmmx (#59083)
2150  - fix recog_for_combine (#59084)
2151  - don't ICE when inserting insns on edge from bb0 to bb0 (Bernd Schmidt,
2152    #59087)
2153  - make sure configure has not time in the future (#59203)
2154  - fix division/modulo by certain constants (#58065, PR c/5304)
2155  - fix -Wswitch (PR c/4475)
2156
2157* Thu Jan 31 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.20
2158- update to CVS HEAD
2159  - fix jar (Tom Tromey)
2160  - fix loop unrolling (Richard Henderson)
2161
2162* Wed Jan 30 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.19
2163- update to CVS HEAD
2164  - fix a reload bug on ia32 (#58579, #58648)
2165  - issue error about unknown -W* options (#58909)
2166  - fix ia64 libbfd miscompilation (#58694)
2167  - register all pending unparsed_text structures with GC (#58647)
2168  - fix __builtin_apply with ia32 -msse (#58447)
2169  - prevent ia64 prologue insns saving regs required for eh from being
2170    deleted (#58387)
2171
2172* Tue Jan 15 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.18
2173- update to CVS HEAD
2174  - handle static x[] = { [X...Y] = (foo) { Z } } (#58338)
2175  - fix getdents.os miscompilation (Richard Henderson, #58308)
2176  - fix ICE in try_forward_edges (#58125)
2177  - fix ICE with -fexceptions -foptimize-sibling-calls
2178
2179* Tue Jan  8 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.17
2180- avoid division by 0 when computing prediction probabilities (#57992)
2181- fix ICE due to store_expr not adjusting value back for mode
2182- increase -ftemplate-depth default value to 500
2183
2184* Mon Jan  7 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.16
2185- if using PT_GNU_EH_FRAME registry, work around assembler bug resp. feature
2186  and don't provide weak prototypes of functions which won't be used
2187- on Alpha, fix a typo so that crtbeginT.o is built and installed
2188- fix glibc inl-tester miscompilation on ia32
2189
2190* Sun Jan  6 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.15
2191- update to CVS HEAD (fix glibc bootstrap failure)
2192
2193* Thu Jan  3 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.14
2194- update to CVS HEAD (#57907)
2195  - fix alpha bootstrap (Richard Henderson)
2196- fix simplification of (div:SI (???:DI ???) (const_int 1))
2197  (#57916)
2198- add contrib/gcc_update --touch
2199
2200* Tue Jan  1 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.13
2201- update to CVS HEAD (fix glibc miscompilation on alpha)
2202- fix objc to not emit __objc_class_name_* without type and size
2203
2204* Mon Dec 31 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.12
2205- update to CVS HEAD
2206- fix sed commands for .la files
2207- make Alpha use PT_GNU_EH_FRAME
2208
2209* Thu Dec 27 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.11
2210- update to CVS HEAD (#57165, #57212, #57467, #57488, #57502,
2211  #57505, #57574)
2212- readd .la files after fixing them up by sed
2213- add %%defattr(-,root,root) to libobjc subpackage
2214
2215* Mon Dec  3 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.10
2216- one more gcc.spec fix for passing --gdwarf-2 resp. --gstabs to as
2217- fix conditional register dead computation on IA-64
2218- fix extern array of incomplete structures handling
2219- fix gcc -xc -
2220- fix Fortran ICEs with SAVE_EXPRs (Richard Kenner)
2221
2222* Tue Nov 27 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.9
2223- update to CVS HEAD
2224- make DWARF 2 preferred debugging format on Linux
2225
2226* Mon Nov 12 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.8
2227- don't ship .la files (#56072)
2228- include libfrtbegin.a (#56098)
2229
2230* Mon Nov 12 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.7
2231- update to CVS HEAD
2232- back out Nov 7th loop.c change for now
2233
2234* Fri Nov  9 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.6
2235- update to CVS HEAD
2236- frame unwind compatibility with 7.[12] binutils
2237
2238* Tue Nov  6 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.5
2239- update to CVS HEAD
2240- merge DW_EH_PE_indirect constants and their relocs
2241
2242* Thu Oct 25 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.4
2243- don't loop forever or ICE on bogus array initializers (#53704)
2244- fix store motion with pure calls
2245- disable store motion for now
2246
2247* Tue Oct 23 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.3
2248- fix inlining of C nested functions with auto prototypes
2249
2250* Mon Oct 22 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.2
2251- update to CVS HEAD
2252- tree inlining fix from Alexandre Oliva
2253- fix anonymous union ICE on alpha
2254
2255* Mon Oct 15 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.1
2256- switch package to main compiler from alternate compiler
2257- update to CVS HEAD
2258- early gcc-2.96-RH compatibility in __frame_state_for
2259- change weak function tests for functions always present in GLIBC 2.2
2260  into simple non-weak calls in crt*.o to avoid unnecessary symbol
2261  lookups and prelink conflicts
2262- don't link against libgcc_s C shared libraries
2263
2264* Tue Oct  2 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-4
2265- update from CVS 3.0 branch
2266  - ia64 function descriptors in vtables
2267- handle large files in Fortran (#53328)
2268- allow Java programs to be statically linked (#53605)
2269- remove #include_next patch, Benjamin commited it
2270
2271* Thu Sep  6 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-3
2272- don't use #include_next in <bits/std_c*> headers (Benjamin Kosnik, #53262)
2273
2274* Wed Sep  5 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-2
2275- update from CVS 3.0 branch
2276- check all gcc-2.96-RH patches whether they have made it into 3.0.1,
2277  and if not, whether they are appropriate for 3.0.1
2278- 8 new patches
2279  - add 36 testcases from gcc-2.96-RH
2280  - fix ICE on very questionable C++ code from JDK (#39858, #52960)
2281  - fix -frepo (Nathan Sidwell, #52877)
2282  - avoid generating bogus .stabs (#49214)
2283  - issue a clear error message about invalid ia32 floating point
2284    asm constraints (#27137)
2285  - fix some comment typos
2286  - fix ADDRESSOF recognition (#29686)
2287
2288* Mon Aug 27 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-1
2289- update from CVS (3.0.1 final)
2290- properly handle throw() exception specifiers in template decls (#51824)
2291- fix IA-64 varargs handling in presence of additional anonymous arguments
2292  (#50757)
2293- fix boehm-gc for prelink
2294- fix a typo in gcc3-c++ description (#52323)
2295- remove Chill from package summary (#51764)
2296
2297* Tue Aug  7 2001 Jakub Jelinek <jakub@redhat.com> 3.0-6
2298- update from CVS
2299  - fix glibc vfprintf miscompilation
2300- don't warn about if (&foo) if foo is weak (H.J.Lu, #50855)
2301
2302* Wed Jul 25 2001 Jakub Jelinek <jakub@redhat.com> 3.0-5
2303- include libgcjgc.a in libgcj3-devel
2304- include libgcjgc.so.* in libgcj3 on ia64
2305- remove dependency on libgcj on ia64
2306- add ldconfig to libgcj3 post/postun
2307
2308* Tue Jul 24 2001 Jakub Jelinek <jakub@redhat.com> 3.0-4
2309- update from CVS
2310- make gcc3-java/libgcj3* packages, so that they can coexist
2311  with 2.96-RH Java
2312- make sure shared Java libraries are built with proper dependencies
2313
2314* Wed Jul 11 2001 Jakub Jelinek <jakub@redhat.com> 3.0-3
2315- fix libgcc_s.so and libstdc++.so symlinks
2316- don't ship jar
2317
2318* Tue Jul 10 2001 Jakub Jelinek <jakub@redhat.com> 3.0-2
2319- move libstdc++.so into gcc-lib
2320- add libobjc.so symlink
2321
2322* Tue Jul 10 2001 Jakub Jelinek <jakub@redhat.com> 3.0-1
2323- new rpm
Note: See TracBrowser for help on using the repository browser.