Update this ARM sample.
/trunk/samples/arm-unknown-linux-gnueabi/crosstool.config | 131 70 61 0 +++++++++++----------
1 file changed, 70 insertions(+), 61 deletions(-)
1 See also http://www.spinics.net/lists/mips/msg12236.html
3 ftp://ftp.linux-mips.org/pub/linux/mips/redhat/7.3/test/SRPMS/gcc-3.2-7.1.src.rpm
4 contains the following patches and spec file.
5 You may wish to investigate some of these patches; I haven't.
6 I think this is mostly the Red Hat 8.0 srpm for a prerelease gcc-3.2, plus a couple
7 mips specific fixes, but you'd have to ask H.J.Lu or compare with the regular
8 Red Hat 8.0 srpm to find out.
9 In any case, the spec file is interesting reading.
13 4 boehm-gc-LINUX.patch
17 4 gcc-c++-template.patch
22 4 gcc-libffi-mips.patch
24 480 gcc-libstdc++-glibc-2.2.patch
25 4 gcc-libstdc++-mips.patch
26 4 gcc-linux-atexit.patch
31 4 gcc-mips-return.patch
34 4 gcc-test-atexit.patch
35 4 gcc-testsuite-c++.patch
37 8 gcc32-2.96-RH-compat.patch
38 4 gcc32-ada-addr2line.patch
39 8 gcc32-ada-link.patch
40 12 gcc32-attr-visibility.patch
41 4 gcc32-attr-visibility2.patch
42 4 gcc32-attr-visibility3.patch
43 4 gcc32-attr-visibility4.patch
44 4 gcc32-attr-visibility5.patch
45 8 gcc32-boehm-gc-libs.patch
46 4 gcc32-bogus-inline.patch
47 4 gcc32-c++-nrv-test.patch
48 4 gcc32-c++-pretty_function.patch
49 16 gcc32-c++-tail-pad-backout.patch
50 4 gcc32-c++-tsubst-asm.patch
52 4 gcc32-debug-pr7241.patch
53 4 gcc32-doc-gcov.patch
54 4 gcc32-duplicate-decl.patch
55 4 gcc32-dwarf2-pr6381.patch
56 4 gcc32-dwarf2-pr6436-test.patch
57 4 gcc32-fde-merge-compat.patch
58 4 gcc32-fold-const-associate.patch
59 4 gcc32-fold-const2.patch
60 24 gcc32-hard-reg-sharing.patch
61 4 gcc32-hard-reg-sharing2.patch
62 4 gcc32-i386-default-momit-leaf-frame-pointer.patch
63 4 gcc32-i386-memtest-test.patch
64 4 gcc32-i386-no-default-momit-leaf-frame-pointer.patch
65 4 gcc32-i386-pic-label-thunk.patch
66 4 gcc32-i386-pr7242.patch
67 4 gcc32-i386-profile-olfp.patch
68 4 gcc32-inline-label.patch
69 4 gcc32-interface_only.patch
70 4 gcc32-java-no-rpath.patch
71 20 gcc32-libstdc++-glibc23-1.patch
72 4 gcc32-libstdc++-glibc23-2.patch
73 4 gcc32-libstdc++-glibc23-3.patch
74 4 gcc32-libstdc++-glibc23-4.patch
75 4 gcc32-loop-prefetch.patch
78 40 gcc32-s390-java.patch
79 4 gcc32-sparc-sll1.patch
80 4 gcc32-test-rh65771.patch
81 8 gcc32-test-rotate.patch
82 12 gcc32-tls-dwarf2.patch
88 24 gcc32-tree-code.patch
89 4 gcc32-trunc_int_for_mode.patch
90 4 gcc32-typeof-asm.patch
91 4 gcc32-x86_64-libiberty-pic.patch
92 4 gcc32-x86_64-pr7559.patch
93 4 gcc32-x86_64-q_regs_operand.patch
94 4 gcc32-x86_64-rip-lowercase.patch
99 ---------- gcc32.spec ---------
101 %if %{_arch} != %{_build_arch}
102 %define cross_compile 1
104 %define cross_compile 0
106 %{?_with_crosscompile: %{expand: %%define cross_compile 1}}
113 %{?_without_check: %{expand: %%define make_check 0}}
114 %{?_with_check: %{expand: %%define make_check 1}}
117 %{?_with_default: %{expand: %%define default 1}}
120 %{?_with_gcconly: %{expand: %%define gcconly 1}}
122 %define DATE 20020903
123 %define gcc_version 3.2
124 %define gcc_release 7.1
125 %ifarch %{ix86} alpha ia64 ppc
130 %{?_without_ada: %{expand: %%define build_ada 0}}
134 Summary: Various compilers (C, C++, Objective-C, Java, ...)
138 Release: %{gcc_release}
140 Name: gcc-%{gcc_version}
141 Version: %{gcc_release}
145 Group: Development/Languages
146 Source0: gcc-%{version}-%{DATE}.tar.bz2
147 URL: http://gcc.gnu.org
148 BuildRoot: %{_tmppath}/%{name}-%{version}-root
149 BuildRequires: binutils >= 2.12.90.0.9-1
150 BuildRequires: zlib-devel, gettext, dejagnu
151 # Make sure pthread.h doesn't contain __thread tokens
152 BuildRequires: glibc-devel >= 2.2.5-36.2
154 # Ada requires Ada to build
155 BuildRequires: gcc-gnat >= 3.1, libgnat >= 3.1
157 Requires: cpp = %{version}-%{release}
158 # Need .eh_frame ld optimizations
159 # Need proper visibility support
160 Requires: binutils >= 2.12.90.0.7-1
161 # Make sure gdb will understand DW_FORM_strp
162 Conflicts: gdb < 5.1-2
163 Requires: glibc-devel >= 2.2.5-36.2
164 Requires: libgcc >= %{version}-%{release}
168 Prereq: /sbin/install-info
170 Patch1: gcc32-2.96-RH-compat.patch
171 Patch2: gcc32-boehm-gc-libs.patch
172 Patch3: gcc32-bogus-inline.patch
173 Patch6: gcc32-fde-merge-compat.patch
174 Patch7: gcc32-attr-visibility.patch
175 Patch8: gcc32-attr-visibility2.patch
176 Patch9: gcc32-duplicate-decl.patch
177 Patch10: gcc32-trunc_int_for_mode.patch
178 Patch11: gcc32-sparc-sll1.patch
179 Patch12: gcc32-x86_64-q_regs_operand.patch
180 Patch13: gcc32-dwarf2-pr6381.patch
181 Patch14: gcc32-dwarf2-pr6436-test.patch
182 Patch15: gcc32-c++-pretty_function.patch
183 Patch16: gcc32-c++-tsubst-asm.patch
184 Patch18: gcc32-i386-memtest-test.patch
185 Patch19: gcc32-fold-const2.patch
186 Patch21: gcc32-ada-addr2line.patch
187 Patch22: gcc32-ada-link.patch
188 Patch23: gcc32-java-no-rpath.patch
189 Patch25: gcc32-s390-java.patch
190 Patch26: gcc32-test-rotate.patch
191 Patch27: gcc32-x86_64-libiberty-pic.patch
192 Patch29: gcc32-test-rh65771.patch
193 Patch30: gcc32-i386-default-momit-leaf-frame-pointer.patch
194 Patch31: gcc32-i386-pic-label-thunk.patch
195 Patch34: gcc32-pr6842.patch
196 Patch35: gcc32-tls.patch
197 Patch36: gcc32-i386-profile-olfp.patch
198 Patch37: gcc32-tree-code.patch
199 Patch38: gcc32-hard-reg-sharing.patch
200 Patch39: gcc32-hard-reg-sharing2.patch
201 Patch40: gcc32-c++-nrv-test.patch
202 Patch41: gcc32-debug-pr7241.patch
203 Patch42: gcc32-i386-pr7242.patch
204 Patch43: gcc32-cfg-eh.patch
205 Patch44: gcc32-attr-visibility3.patch
206 Patch45: gcc32-tls2.patch
207 Patch46: gcc32-fold-const-associate.patch
208 Patch47: gcc32-inline-label.patch
209 Patch48: gcc32-typeof-asm.patch
210 Patch50: gcc32-rh69989.patch
211 Patch51: gcc32-tls3.patch
212 Patch52: gcc32-tls4.patch
213 Patch54: gcc32-tls5.patch
214 Patch55: gcc32-tls-dwarf2.patch
215 Patch56: gcc32-x86_64-pr7559.patch
216 Patch57: gcc32-loop-prefetch.patch
217 Patch58: gcc32-doc-gcov.patch
218 Patch59: gcc32-attr-visibility4.patch
219 Patch60: gcc32-c++-tail-pad-backout.patch
220 Patch61: gcc32-attr-visibility5.patch
221 Patch62: gcc32-i386-no-default-momit-leaf-frame-pointer.patch
222 Patch64: gcc32-x86_64-rip-lowercase.patch
223 Patch65: gcc32-libstdc++-glibc23-1.patch
224 Patch66: gcc32-libstdc++-glibc23-2.patch
225 Patch67: gcc32-libstdc++-glibc23-3.patch
226 Patch68: gcc32-libstdc++-glibc23-4.patch
227 Patch69: gcc32-interface_only.patch
231 Patch10000: boehm-gc-mips.patch
232 Patch10001: boehm-gc-LINUX.patch
233 Patch10002: gcc-libffi-mips.patch
235 Patch11000: gcc-mips-coff.patch
236 Patch11001: gcc-mips-file.patch
237 Patch11002: gcc-mips-ieee.patch
238 Patch11003: gcc-mips-return.patch
239 Patch11004: gcc-libstdc++-mips.patch
240 Patch11005: libtool-mips.patch
242 Patch12000: gcc-libgcc.patch
244 Patch13000: gcc-ppc-linux.patch
245 Patch13001: gcc-linux-crt.patch
247 Patch14000: gcc-linux-atexit.patch
248 Patch14001: gcc-test-atexit.patch
250 Patch15000: gcc-var.patch
251 Patch15001: gcc-copy.patch
253 Patch16000: gcc-c++-template.patch
254 Patch16001: gcc-testsuite-c++.patch
256 Patch17000: gcc-cross.patch
257 Patch17001: gcc-cross-bfd.patch
258 Patch17002: gcc-sizeof.patch
259 Patch17003: gcc-arch.patch
261 Patch18000: libjava-cross.patch
262 Patch18001: gcc-gcj-cross.patch
264 Patch19000: contrib-touch.patch
266 Patch20000: libtool-libs.patch
268 Patch21000: gcc-libstdc++-glibc-2.2.patch
271 The gcc package contains the GNU Compiler Collection version 3.2.
272 You'll need this package in order to compile C code.
275 Summary: GCC version 3.2 shared support library
276 Group: System Environment/Libraries
278 %description -n libgcc
279 This package contains GCC shared support library which is needed
280 e.g. for exception handling support.
283 Summary: C++ support for GCC
284 Group: Development/Languages
285 Requires: gcc = %{version}-%{release}
286 Requires: libstdc++ = %{version}
287 Requires: libstdc++-devel = %{version}
291 This package adds C++ support to the GNU Compiler Collection.
292 It includes support for most of the current C++ specification,
293 including templates and exception handling.
295 %package -n libstdc++
296 Summary: GNU Standard C++ Library
297 Group: System Environment/Libraries
298 Obsoletes: libstdc++3
300 %description -n libstdc++
301 The libstdc++ package contains a rewritten standard compliant GCC Standard
304 %package -n libstdc++-devel
305 Summary: Header files and libraries for C++ development
306 Group: Development/Libraries
307 Requires: libstdc++ = %{version}-%{release}
308 Obsoletes: libstdc++3-devel
310 %description -n libstdc++-devel
311 This is the GNU implementation of the standard C++ libraries. This
312 package includes the header files and libraries needed for C++
313 development. This includes rewritten implementation of STL.
316 Summary: Objective-C support for GCC
317 Group: Development/Languages
318 Requires: gcc = %{version}-%{release}
319 Requires: libobjc = %{version}-%{release}
323 gcc-objc provides Objective-C support for the GCC.
324 Mainly used on systems running NeXTSTEP, Objective-C is an
325 object-oriented derivative of the C language.
328 Summary: Objective-C runtime
329 Group: System Environment/Libraries
331 %description -n libobjc
332 This package contains Objective-C shared library which is needed to run
333 Objective-C dynamically linked programs.
336 Summary: Fortran 77 support
337 Group: Development/Languages
338 Requires: gcc = %{version}-%{release}
339 Requires: libf2c = %{version}-%{release}
340 Prereq: /sbin/install-info
344 The gcc-g77 package provides support for compiling Fortran 77
345 programs with the GNU Compiler Collection.
348 Summary: Fortran 77 runtime
349 Group: System Environment/Libraries
351 %description -n libf2c
352 This package contains Fortran 77 shared library which is needed to run
353 Fortran 77 dynamically linked programs.
356 Summary: Java support for GCC
357 Group: Development/Languages
358 Requires: gcc = %{version}-%{release}
359 Requires: libgcj >= %{version}, libgcj-devel >= %{version}
361 Prereq: /sbin/install-info
364 This package adds support for compiling Java(tm) programs and
365 bytecode into native code.
368 Summary: Java runtime library for gcc
369 Group: System Environment/Libraries
371 Obsoletes: gcc-libgcj
373 # Kaffe includes jar too
376 %description -n libgcj
377 The Java(tm) runtime library. You will need this package to run your Java
378 programs compiled using the Java compiler from GNU Compiler Collection (gcj).
380 %package -n libgcj-devel
381 Summary: Libraries for Java development using GCC
382 Group: Development/Languages
383 Requires: zip >= 2.1, libgcj = %{version}
384 Obsoletes: libgcj3-devel
386 %description -n libgcj-devel
387 The Java(tm) static libraries and C header files. You will need this
388 package to compile your Java programs using the GCC Java compiler (gcj).
391 Summary: The C Preprocessor.
392 Group: Development/Languages
393 Prereq: /sbin/install-info
399 Cpp is the GNU C-Compatible Compiler Preprocessor.
400 Cpp is a macro processor which is used automatically
401 by the C compiler to transform your program before actual
402 compilation. It is called a macro processor because it allows
403 you to define macros, abbreviations for longer
406 The C preprocessor provides four separate functionalities: the
407 inclusion of header files (files of declarations that can be
408 substituted into your program); macro expansion (you can define macros,
409 and the C preprocessor will replace the macros with their definitions
410 throughout the program); conditional compilation (using special
411 preprocessing directives, you can include or exclude parts of the
412 program according to various conditions); and line control (if you use
413 a program to combine or rearrange source files into an intermediate
414 file which is then compiled, you can use line control to inform the
415 compiler about where each source line originated).
417 You should install this package if you are a C programmer and you use
421 Summary: Ada 95 support for GCC
422 Group: Development/Languages
423 Requires: gcc = %{version}-%{release}, libgnat = %{version}-%{release}
424 Obsoletes: gnat-devel, gcc3-gnat
425 Prereq: /sbin/install-info
428 GNAT is a GNU Ada 95 front-end to GCC. This package includes development tools,
429 the documents and Ada 95 compiler.
432 Summary: GNU Ada 95 runtime shared libraries
433 Group: System Environment/Libraries
434 Obsoletes: gnat libgnat3
436 %description -n libgnat
437 GNAT is a GNU Ada 95 front-end to GCC. This package includes shared libraries,
438 which are required to run programs compiled with the GNAT.
441 %setup -q -n gcc-%{version}-%{DATE}
442 %patch1 -p0 -b .2.96-RH-compat~
443 %patch2 -p0 -b .boehm-gc-libs~
444 %patch3 -p0 -b .bogus-inline~
445 %patch6 -p0 -b .fde-merge-compat~
446 %patch7 -p0 -b .attr-visibility~
447 %patch8 -p0 -b .attr-visibility2~
448 %patch9 -p0 -b .duplicate-decl~
449 %patch10 -p0 -b .trunc_int_for_mode~
450 %patch11 -p0 -b .sparc-sll1~
451 %patch12 -p0 -b .x86_64-q_regs_operand~
452 %patch13 -p0 -b .dwarf2-pr6381~
453 %patch14 -p0 -b .dwarf2-pr6436-test~
454 %patch15 -p0 -b .c++-pretty_function~
455 %patch16 -p0 -b .c++-tsubst-asm~
456 %patch18 -p0 -b .i386-memtest-test~
457 %patch19 -p0 -b .fold-const2~
458 %patch21 -p0 -b .ada-addr2line~
459 %patch22 -p0 -b .ada-link~
460 %patch23 -p0 -b .java-no-rpath~
461 %patch25 -p0 -b .s390-java~
462 %patch26 -p0 -b .test-rotate~
463 %patch27 -p0 -b .x86_64-libiberty-pic~
464 %patch29 -p0 -b .test-rh65771~
465 %patch30 -p0 -b .i386-default-momit-leaf-frame-pointer~
466 %patch31 -p0 -b .i386-pic-label-thunk~
467 %patch34 -p0 -b .pr6842~
468 %patch35 -p0 -b .tls~
469 %patch36 -p0 -b .i386-profile-olfp~
470 %patch37 -p0 -b .tree-code~
471 %patch38 -p0 -b .hard-reg-sharing~
472 %patch39 -p0 -b .hard-reg-sharing2~
473 %patch40 -p0 -b .c++-nrv-test~
474 %patch41 -p0 -b .debug-pr7241~
475 %patch42 -p0 -b .i386-pr7242~
476 %patch43 -p0 -b .cfg-eh~
477 %patch44 -p0 -b .attr-visibility3~
478 %patch45 -p0 -b .tls2~
479 %patch46 -p0 -b .fold-const-associate~
480 %patch47 -p0 -b .inline-label~
481 %patch48 -p0 -b .typeof-asm~
482 %patch50 -p0 -b .rh69989~
483 %patch51 -p0 -b .tls3~
484 %patch52 -p0 -b .tls4~
485 %patch54 -p0 -b .tls5~
486 %patch55 -p0 -b .tls-dwarf2~
487 %patch56 -p0 -b .x86_64-pr7559~
488 %patch57 -p0 -b .loop-prefetch~
489 %patch58 -p0 -b .doc-gcov~
490 %patch59 -p0 -b .attr-visibility4~
491 %patch60 -p0 -b .c++-tail-pad-backout~
492 %patch61 -p0 -b .attr-visibility5~
493 %patch62 -p0 -b .i386-no-default-momit-leaf-frame-pointer~
494 %patch64 -p0 -b .x86_64-rip-lowercase~
495 %patch65 -p0 -b .libstdc++-glibc23-1~
496 %patch66 -p0 -b .libstdc++-glibc23-2~
497 %patch67 -p0 -b .libstdc++-glibc23-3~
498 %patch68 -p0 -b .libstdc++-glibc23-4~
499 %patch69 -p0 -b .interface_only
501 %patch10000 -p0 -b .mips
502 %patch10001 -p0 -b .LINUX
503 %patch10002 -p0 -b .mips
509 # Ignore the error from automake
510 automake --cygnus Makefile || :
513 %patch11000 -p0 -b .coff
514 %patch11001 -p0 -b .file
515 %patch11002 -p0 -b .ieee
516 %patch11003 -p0 -b .return
517 %patch11004 -p0 -b .mips
518 %patch11005 -p1 -b .mips
520 %patch12000 -p0 -b .libgcc
522 %patch13000 -p0 -b .ppc
523 %patch13001 -p0 -b .crt
525 %patch14000 -p0 -b .order
526 %patch14001 -p0 -b .order
528 %patch15000 -p0 -b .var
529 %patch15001 -p0 -b .copy
531 %patch16000 -p0 -b .template
532 %patch16001 -p0 -b .template
534 %patch17000 -p1 -b .cross
535 %patch17001 -p0 -b .cross-bfd
536 %patch17002 -p1 -b .sizeof
537 %patch17003 -p0 -b .arch
551 %patch18000 -p0 -b .cross
552 %patch18001 -p0 -b .build
555 automake --foreign Makefile
558 %patch19000 -p0 -b .touch
560 %patch20000 -p0 -b .libs
562 %patch21000 -p0 -b .glibc-2.2
567 perl -pi -e 's/3\.2\.1/3.2/' gcc/version.c gcc/f/version.c gcc/ada/gnatvsn.ads
568 perl -pi -e 's/"%{gcc_version}"/"%{gcc_version} \(release\)"/' gcc/version.c
569 perl -pi -e 's/\((prerelease|experimental|release)\)/\(Red Hat Linux 8.0 %{version}-%{gcc_release}\)/' gcc/version.c gcc/f/version.c
570 perl -pi -e 's/\((prerelease|experimental|release)\)/\(%{version}-%{gcc_release}\)/' gcc/ada/gnatvsn.ads
571 perl -pi -e 's/#define GCCBUGURL.*$/#define GCCBUGURL "<URL:http:\/\/bugzilla.redhat.com\/bugzilla\/>"/' gcc/system.h
572 # The version string is now longer than 32 bytes and the line containing it
573 # doesn't fit into 80 columns
574 #perl -pi -e 's/:= 32/:= 64/;s/(Gnat_Version_String.*:=)/\1\n /' gcc/ada/gnatvsn.ads
576 ./contrib/gcc_update --touch
579 rm -fr obj-%{_target_platform}
580 mkdir obj-%{_target_platform}
581 cd obj-%{_target_platform}
583 %if %{_arch} != %{_build_arch}
585 export ac_cv_func_mmap_anywhere=yes
586 export ac_cv_func_mmap_file=yes
587 export ac_cv_func_mmap_fixed_mapped=yes
588 export ac_cv_func_strncmp_works=yes
589 export gcc_cv_func_printf_ptr=yes
596 TARGET_CPU="%{_target_cpu}"
597 DEFAULT_FLAGS="--with-arch=$TARGET_CPU --with-cpu=$TARGET_CPU"
602 OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g'`
603 CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="$OPT_FLAGS" XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
604 ../configure --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \
605 --enable-shared --enable-threads=posix --disable-checking --host=%{_target_platform} \
608 --target=%{_target_platform} --build=%{_build_alias} \
610 --with-system-zlib --enable-__cxa_atexit
612 # We have to make sure all gcc configure files are up to date for
613 # parallel build. We have to do it twice due to the stupid Makefile.
617 # if RPM_BUILD_NCPUS unset, set it
618 if [ -z "$RPM_BUILD_NCPUS" ] ; then
619 if [ -x /usr/bin/getconf ] ; then
620 RPM_BUILD_NCPUS=$(/usr/bin/getconf _NPROCESSORS_ONLN)
621 if [ $RPM_BUILD_NCPUS -eq 0 ]; then
629 RPM_BUILD_NCPUS=`expr $RPM_BUILD_NCPUS + $RPM_BUILD_NCPUS`
632 MAKE=make -j $RPM_BUILD_NCPUS
634 CFLAGS:=\$(CFLAGS) -pipe
635 CXXFLAGS:=\$(CXXFLAGS) -pipe
638 # FIXME: It is a kludge.
639 export GCJFLAGS="$OPT_FLAGS"
642 make -j$RPM_BUILD_NCPUS \
650 CC_FOR_TARGET=%{__cc} \
651 GCC_FOR_TARGET=%{__cc} \
652 CXX_FOR_TARGET=%{__cxx} \
653 AR_FOR_TARGET=%{__ar} \
654 AS_FOR_TARGET=%{__as} \
655 LD_FOR_TARGET=%{__ld} \
656 NM_FOR_TARGET=%{__nm} \
657 RANLIB_FOR_TARGET=%{__ranlib} \
659 CFLAGS_FOR_TARGET="$RPM_OPT_FLAGS -pipe" \
660 CFLAGS_FOR_BUILD="-O -pipe" \
661 CFLAGS="$RPM_OPT_FLAGS -pipe" \
662 CXXFLAGS="$RPM_OPT_FLAGS -pipe"
664 make -j$RPM_BUILD_NCPUS bootstrap-lean
665 #make -j$RPM_BUILD_NCPUS bootstrap
669 # This doesn't work with -j$RPM_BUILD_NCPUS
670 make -C gcc gnatlib-shared
671 make -C gcc gnattools
677 make -j$RPM_BUILD_NCPUS -k check || :
679 ln -sf i686-pc-linux-gnu ../libstdc++-v3/config/abi/%{_target_platform}
680 ln -sf i686-pc-linux-gnu ../libstdc++-v3/config/abi/%{_target_platform}-gnu
682 echo ====================TESTING=========================
683 ( ../contrib/test_summary || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}'
685 make -C %{_target_platform}/libstdc++-v3 check-abi
687 echo ====================TESTING END=====================
688 #cd %{_target_platform}/libstdc++-v3
693 %if !%{cross_compile}
695 make -C gcc CC="./xgcc -B ./ -O2" proto
698 # Make generated man pages even if Pod::Man is not new enough
699 perl -pi -e 's/head3/head2/' ../contrib/texi2pod.pl
700 for i in ../gcc/doc/*.texi; do
701 cp -a $i $i.orig; sed 's/ftable/table/' $i.orig > $i
703 make -C gcc generated-manpages
704 for i in ../gcc/doc/*.texi; do mv -f $i.orig $i; done
706 # Copy various doc files here and there
708 mkdir -p rpm.doc/g77 rpm.doc/objc
709 mkdir -p rpm.doc/boehm-gc rpm.doc/fastjar rpm.doc/libffi rpm.doc/libjava
711 (cd gcc/f; for i in ChangeLog*; do
712 cp -p $i ../../rpm.doc/g77/$i.f
714 (cd libf2c; for i in ChangeLog*; do
715 cp -p $i ../rpm.doc/g77/$i.libf2c
717 (cd gcc/objc; for i in README*; do
718 cp -p $i ../../rpm.doc/objc/$i.objc
720 (cd libobjc; for i in README*; do
721 cp -p $i ../rpm.doc/objc/$i.libobjc
723 (cd boehm-gc; for i in ChangeLog*; do
724 cp -p $i ../rpm.doc/boehm-gc/$i.gc
726 (cd fastjar; for i in ChangeLog* README*; do
727 cp -p $i ../rpm.doc/fastjar/$i.fastjar
729 (cd libffi; for i in ChangeLog* README* LICENSE; do
730 cp -p $i ../rpm.doc/libffi/$i.libffi
732 (cd libjava; for i in ChangeLog* README*; do
733 cp -p $i ../rpm.doc/libjava/$i.libjava
737 rm -fr $RPM_BUILD_ROOT
740 's~href="l(ibstdc|atest)~href="http://gcc.gnu.org/onlinedocs/libstdc++/l\1~' \
741 libstdc++-v3/docs/html/documentation.html
742 ln -sf documentation.html libstdc++-v3/docs/html/index.html
743 find libstdc++-v3/docs/html -name CVS | xargs rm -rf
745 cd obj-%{_target_platform}
746 TARGET_PLATFORM=%{_target_platform}
748 # There are some MP bugs in libstdc++ and libjava Makefiles
749 make -C %{_target_platform}/libstdc++-v3
750 make -C %{_target_platform}/libjava
752 make prefix=$RPM_BUILD_ROOT%{_prefix} mandir=$RPM_BUILD_ROOT%{_mandir} \
761 CC_FOR_TARGET=%{__cc} \
762 GCC_FOR_TARGET=%{__cc} \
763 CXX_FOR_TARGET=%{__cxx} \
764 AR_FOR_TARGET=%{__ar} \
765 AS_FOR_TARGET=%{__as} \
766 LD_FOR_TARGET=%{__ld} \
767 NM_FOR_TARGET=%{__nm} \
768 RANLIB_FOR_TARGET=%{__ranlib} \
770 CFLAGS_FOR_TARGET="$RPM_OPT_FLAGS -pipe" \
771 CFLAGS_FOR_BUILD="-O -pipe" \
772 CFLAGS="$RPM_OPT_FLAGS -pipe" \
773 CXXFLAGS="$RPM_OPT_FLAGS -pipe" \
775 infodir=$RPM_BUILD_ROOT%{_infodir} install
778 cp -a gnat-style.info* gnat_rm.info* $RPM_BUILD_ROOT%{_infodir}/
779 for i in gnat_ug_unx.info*; do
780 sed 's/gnat_ug_unx/gnat_ug/g' $i > $RPM_BUILD_ROOT%{_infodir}/`echo $i | sed 's/gnat_ug_unx/gnat_ug/'`
782 chmod 644 $RPM_BUILD_ROOT%{_infodir}/gnat*
786 FULLPATH=$(dirname $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/cc1)
788 file $RPM_BUILD_ROOT/%{_prefix}/bin/* | grep ELF | cut -d':' -f1 | xargs %{__strip} || :
789 %{__strip} $FULLPATH/{cc1,cc1obj,cc1plus,cpp0,tradcpp0,f771,jc1,jvgenmain}
792 ln -sf gcc $RPM_BUILD_ROOT%{_prefix}/bin/cc
793 mkdir -p $RPM_BUILD_ROOT/lib
794 ln -sf ..%{_prefix}/bin/cpp $RPM_BUILD_ROOT/lib/cpp
795 ln -sf g77 $RPM_BUILD_ROOT%{_prefix}/bin/f77
796 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
797 gzip -9 $RPM_BUILD_ROOT%{_infodir}/*.info*
798 ln -sf gcc $RPM_BUILD_ROOT%{_prefix}/bin/gnatgcc
800 mv $RPM_BUILD_ROOT%{_prefix}/lib/libgcj.*a $FULLPATH/
801 sed 's/-lgcjgc//g;s/-lzgcj//g;s/-lpthread//g' $RPM_BUILD_ROOT%{_prefix}/lib/libgcj.spec > $FULLPATH/libgcj.spec
802 mv $RPM_BUILD_ROOT%{_prefix}/include/gc*.h $FULLPATH/include/
803 mv $RPM_BUILD_ROOT%{_prefix}/include/j*.h $FULLPATH/include/
804 mv -f $RPM_BUILD_ROOT%{_prefix}/include/{java,javax,gnu,org} $FULLPATH/include/
805 mkdir -p $FULLPATH/include/gcj
806 mv -f $RPM_BUILD_ROOT%{_prefix}/include/gcj/* $FULLPATH/include/gcj/
807 rmdir $RPM_BUILD_ROOT%{_prefix}/include/gcj
809 mkdir -p $RPM_BUILD_ROOT/%{_lib}
810 mv -f `find $RPM_BUILD_ROOT%{_prefix}/lib -name libgcc_s.so.1` $RPM_BUILD_ROOT/%{_lib}/libgcc_s-%{gcc_version}-%{DATE}.so.1
811 chmod 755 $RPM_BUILD_ROOT/%{_lib}/libgcc_s-%{gcc_version}-%{DATE}.so.1
812 ln -sf libgcc_s-%{gcc_version}-%{DATE}.so.1 $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so.1
813 ln -sf ../../%{_lib}/libgcc_s.so.1 $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libgcc_s.so
814 #ln -sf `echo "%{_prefix}" | sed 's~/[^/]*~\.\./~g'`../%{_lib}/libgcc_s.so.1 \
815 # $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libgcc_s.so
816 #mv -f $FULLPATH/libobjc.so.1* $RPM_BUILD_ROOT%{_prefix}/%{_lib}/
818 mv -f $FULLPATH/adalib/libgnarl-*.so.* $RPM_BUILD_ROOT%{_prefix}/%{_lib}/
819 mv -f $FULLPATH/adalib/libgnat-*.so.* $RPM_BUILD_ROOT%{_prefix}/%{_lib}/
820 rm -f $FULLPATH/adalib/libgnarl.so* $FULLPATH/adalib/libgnat.so*
823 if [ "%{_lib}" = "lib" ]; then
824 ln -sf ../../../libobjc.so.1 libobjc.so
825 ln -sf ../../../libstdc++.so.5.* libstdc++.so
826 ln -sf ../../../libgcj.so.3.* libgcj.so
827 ln -sf ../../../libg2c.so.0.* libg2c.so
830 ln -sf ../../../../libgnarl-*.so.* libgnarl.so
831 ln -sf ../../../../libgnat-*.so.* libgnat.so
835 ln -sf ../../../../%{_lib}/libobjc.so.1 libobjc.so
836 ln -sf ../../../../%{_lib}/libstdc++.so.5.* libstdc++.so
837 ln -sf ../../../../%{_lib}/libgcj.so.3.* libgcj.so
838 ln -sf ../../../../%{_lib}/libg2c.so.0.* libg2c.so
841 ln -sf ../../../../../%{_lib}/libgnarl-*.so.* libgnarl.so
842 ln -sf ../../../../../%{_lib}/libgnat-*.so.* libgnat.so
846 mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libstdc++.*a .
847 mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libsupc++.*a .
848 mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libg2c.*a .
849 mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libfrtbegin.*a .
850 mv -f $RPM_BUILD_ROOT%{_prefix}/lib/libobjc.*a .
851 # Strip debug info from Fortran/ObjC/Java static libraries
852 %{__strip} -g libg2c.a libobjc.a libgcj.a
855 sed -e '/^libdir/s_%{_prefix}/lib_%{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}_' \
856 -e '/^dependency_libs/s_%{_prefix}/lib_%{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}_' \
857 -e '/^dependency_libs/s~'\''$~ '\''~' \
858 -e '/^dependency_libs/s~[ ][ ]*~ ~g' \
859 -e '/^dependency_libs/s~-L[^ ]* ~~g' \
860 -e '/^dependency_libs/s~-lgcc_s -lgcc -lc -lgcc_s -lgcc ~~g' \
861 -e '/^dependency_libs/s~-lgcc -lc -lgcc ~~g' \
862 -e '/^dependency_libs/s~-lc ~~g' \
863 -e '/^dependency_libs/s~-lm \(-lm \)*~-lm ~g' \
868 chmod 755 $RPM_BUILD_ROOT%{_prefix}/lib/libg2c.so.0.*
869 chmod 755 $RPM_BUILD_ROOT%{_prefix}/lib/libobjc.so.1.*
871 chmod 755 $RPM_BUILD_ROOT%{_prefix}/lib/libgnarl*so*
872 chmod 755 $RPM_BUILD_ROOT%{_prefix}/lib/libgnat*so*
875 cat > $RPM_BUILD_ROOT%{_prefix}/bin/c89 <<"EOF"
880 -ansi|-std=c89|-std=iso9899:1990) fl="";;
881 -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
885 exec %{_prefix}/bin/gcc $fl ${1+"$@"}
887 cat > $RPM_BUILD_ROOT%{_prefix}/bin/c99 <<"EOF"
892 -std=c99|-std=iso9899:1999) fl="";;
893 -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
897 exec %{_prefix}/bin/gcc $fl ${1+"$@"}
899 chmod 755 $RPM_BUILD_ROOT%{_prefix}/bin/c?9
905 # Install syslimits.h for canadian cross compile.
906 pushd $RPM_BUILD_DIR/gcc-%{gcc_version}-%{DATE}/obj-%{_target_platform}
907 cp -af ../gcc/gsyslimits.h $FULLPATH/include/syslimits.h
908 # Fix the specs file.
914 /cross_compile/ { print; cross = 1; next; }
931 rm -rf $RPM_BUILD_ROOT
935 --info-dir=%{_infodir} %{_infodir}/gcc.info.gz
939 /sbin/install-info --delete \
940 --info-dir=%{_infodir} %{_infodir}/gcc.info.gz
945 --info-dir=%{_infodir} %{_infodir}/cpp.info.gz
949 /sbin/install-info --delete \
950 --info-dir=%{_infodir} %{_infodir}/cpp.info.gz
955 --info-dir=%{_infodir} %{_infodir}/g77.info.gz
959 /sbin/install-info --delete \
960 --info-dir=%{_infodir} %{_infodir}/g77.info.gz
965 --info-dir=%{_infodir} %{_infodir}/gcj.info.gz
969 /sbin/install-info --delete \
970 --info-dir=%{_infodir} %{_infodir}/gcj.info.gz
975 --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz
977 --info-dir=%{_infodir} %{_infodir}/gnat_ug.info.gz
981 /sbin/install-info --delete \
982 --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz
983 /sbin/install-info --delete \
984 --info-dir=%{_infodir} %{_infodir}/gnat_ug.info.gz
987 %post -n libgcc -p /sbin/ldconfig
989 %postun -n libgcc -p /sbin/ldconfig
991 %post -n libstdc++ -p /sbin/ldconfig
993 %postun -n libstdc++ -p /sbin/ldconfig
995 %post -n libobjc -p /sbin/ldconfig
997 %postun -n libobjc -p /sbin/ldconfig
999 %post -n libgcj -p /sbin/ldconfig
1001 %postun -n libgcj -p /sbin/ldconfig
1003 %post -n libf2c -p /sbin/ldconfig
1005 %postun -n libf2c -p /sbin/ldconfig
1007 %post -n libgnat -p /sbin/ldconfig
1009 %postun -n libgnat -p /sbin/ldconfig
1011 %files -f %{name}.lang
1012 %defattr(-,root,root)
1018 %if !%{cross_compile}
1019 %{_prefix}/bin/protoize
1020 %{_prefix}/bin/unprotoize
1022 %{_prefix}/bin/%{_target_platform}-gcc
1023 %{_mandir}/man1/gcc.1*
1024 %{_mandir}/man1/gcov.1*
1026 %dir %{_prefix}/lib/gcc-lib
1027 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}
1028 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}
1029 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include
1030 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/stddef.h
1031 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/stdarg.h
1032 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/varargs.h
1033 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/float.h
1034 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/limits.h
1035 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/stdbool.h
1036 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/iso646.h
1037 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/syslimits.h
1038 %ifarch %{ix86} x86_64
1039 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/mmintrin.h
1040 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/xmmintrin.h
1043 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/ia64intrin.h
1046 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/ppc-asm.h
1047 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/altivec.h
1049 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/README
1050 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/cc1
1051 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/collect2
1052 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/crt*.o
1053 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libgcc.a
1054 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libgcc_eh.a
1055 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/specs
1056 %{_prefix}/%{_lib}/libgcc_s.so
1057 %doc gcc/README* gcc/*ChangeLog*
1061 %defattr(-,root,root)
1065 %{_mandir}/man1/cpp.1*
1067 %dir %{_prefix}/lib/gcc-lib
1068 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}
1069 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}
1070 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/cpp0
1071 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/tradcpp0
1074 %defattr(-,root,root)
1075 /%{_lib}/libgcc_s-%{gcc_version}-%{DATE}.so.1
1076 /%{_lib}/libgcc_s.so.1
1080 %defattr(-,root,root)
1081 %{_prefix}/bin/%{_target_platform}-*++
1084 %{_prefix}/bin/c++filt
1085 %{_mandir}/man1/g++.1*
1086 %dir %{_prefix}/lib/gcc-lib
1087 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}
1088 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}
1089 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/cc1plus
1090 %doc gcc/cp/ChangeLog*
1093 %defattr(-,root,root)
1094 %{_prefix}/%{_lib}/libstdc++.so.5*
1096 %files -n libstdc++-devel
1097 %defattr(-,root,root)
1098 %{_prefix}/include/c++
1099 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libstdc++.so
1100 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libstdc++.a
1101 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libsupc++.a
1102 %doc libstdc++-v3/ChangeLog* libstdc++-v3/README* libstdc++-v3/docs/html/
1105 %defattr(-,root,root)
1106 %dir %{_prefix}/lib/gcc-lib
1107 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}
1108 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}
1109 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include
1110 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/objc
1111 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/cc1obj
1112 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libobjc.a
1113 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libobjc.so
1115 %doc libobjc/THREADS* libobjc/ChangeLog
1118 %defattr(-,root,root)
1119 %{_prefix}/%{_lib}/libobjc.so.1*
1122 %defattr(-,root,root)
1125 %{_mandir}/man1/g77.1*
1127 %dir %{_prefix}/lib/gcc-lib
1128 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}
1129 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}
1130 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include
1131 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/f771
1132 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libfrtbegin.a
1133 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libg2c.a
1134 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libg2c.so
1135 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/g2c.h
1136 %doc gcc/f/README rpm.doc/g77/*
1139 %defattr(-,root,root)
1140 %{_prefix}/%{_lib}/libg2c.so.0*
1143 %defattr(-,root,root)
1146 %{_prefix}/bin/jcf-dump
1147 %{_prefix}/bin/jv-scan
1148 %{_mandir}/man1/gcj.1*
1149 %{_mandir}/man1/gcjh.1*
1150 %{_mandir}/man1/jcf-dump.1*
1151 %{_mandir}/man1/jv-scan.1*
1153 %dir %{_prefix}/lib/gcc-lib
1154 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}
1155 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}
1156 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/jc1
1157 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/jvgenmain
1158 %doc gcc/java/ChangeLog*
1161 %defattr(-,root,root)
1162 %{_prefix}/bin/jv-convert
1165 %{_prefix}/bin/grepjar
1167 %{_prefix}/bin/rmiregistry
1168 %{_mandir}/man1/jv-convert.1*
1169 %{_mandir}/man1/gij.1*
1170 %{_mandir}/man1/rmic.1*
1171 %{_mandir}/man1/rmiregistry.1*
1172 %{_prefix}/%{_lib}/libgcj.so.*
1173 %{_prefix}/share/java
1174 %{_prefix}/lib/security
1176 %files -n libgcj-devel
1177 %defattr(-,root,root)
1178 %{_prefix}/bin/addr2name.awk
1179 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libgcj.a
1180 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libgcj.so
1181 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/libgcj.spec
1182 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/gc*.h
1183 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/j*.h
1184 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/java
1185 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/javax
1186 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/gnu
1187 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/gcj
1188 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/include/org
1189 %doc rpm.doc/boehm-gc/* rpm.doc/fastjar/* rpm.doc/libffi/*
1190 %doc rpm.doc/libjava/*
1194 %defattr(-,root,root)
1195 %{_prefix}/bin/gnat*
1197 %dir %{_prefix}/lib/gcc-lib
1198 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}
1199 %dir %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}
1200 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/adainclude
1201 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/adalib
1202 %{_prefix}/lib/gcc-lib/%{_target_platform}/%{gcc_version}/gnat1
1203 %doc gcc/ada/ChangeLog
1206 %defattr(-,root,root)
1207 %{_prefix}/%{_lib}/libgnat-*.so.*
1208 %{_prefix}/%{_lib}/libgnarl-*.so.*
1213 * Tue Sep 3 2002 Bill Nottingham <notting@redhat.com> 3.2-7
1214 - fix calling of C++ destructors in certain cases
1216 * Tue Sep 3 2002 Jakub Jelinek <jakub@redhat.com> 3.2-6
1217 - update from CVS (but revert C++ tail padding patches
1219 - further fixes to make libstdc++-v3 build on glibc 2.3
1220 - run libstdc++-v3 make check-abi on IA-32 during testing
1222 * Fri Aug 30 2002 Jakub Jelinek <jakub@redhat.com> 3.2-5
1223 - disable tail copy patches, they seem to still have problems
1224 - make libstdc++-v3 build on glibc 2.3 (and use thread-local
1226 - fix c89 and c99 scripts (#73104)
1228 * Wed Aug 26 2002 Jakub Jelinek <jakub@redhat.com> 3.2-4
1229 - reorder alpha_encode_section_info checks slightly to fix an ICE
1230 when building glibc and to take better advantage of visibility
1232 - as gdb is not there yet, disable -momit-leaf-frame-pointer
1233 by default for now on IA-32
1234 - fix IA-64 bootstrap with tail padding patch (Jason Merrill, Daniel Berlin)
1235 - fix x86-64 %RIP to %rip, only output (%rip) if no other relocation
1236 is used (Richard Henderson)
1238 * Fri Aug 23 2002 Jakub Jelinek <jakub@redhat.com> 3.2-3
1239 - take advantage of __attribute__((visibility())) on Alpha
1240 - avoid copying tail padding (Jason Merrill)
1242 * Thu Aug 22 2002 Jakub Jelinek <jakub@redhat.com> 3.2-2
1243 - fixed Dwarf2 DW_OP_GNU_push_tls_address patch from Richard Henderson
1244 - don't mention removed -a and -ax options in the documentation
1245 (Nathan Sidwell, #72233)
1246 - fixed __typeof() followed by __asm() redirection from Alexandre Oliva
1248 * Wed Aug 14 2002 Jakub Jelinek <jakub@redhat.com> 3.2-1
1249 - update to 3.2 release
1250 - fix x86-64 PR target/7559 (Jan Hubicka)
1251 - fix -fprefetch-loop-arrays (Janis Johnson)
1252 - fix x86-64 prefetch (Jan Hubicka)
1254 * Fri Aug 9 2002 Jakub Jelinek <jakub@redhat.com> 3.2-0.3
1255 - istream fix (Benjamin Kosnik)
1256 - emit Dwarf2 DW_OP_GNU_push_tls_address extension for TLS (Richard Henderson)
1257 - temporarily disable __typeof() + __asm() fix
1259 * Thu Aug 8 2002 Jakub Jelinek <jakub@redhat.com> 3.2-0.2
1260 - update from 3.2 branch
1261 - ABI incompatible changes in libstdc++.so.5, long long bitfield
1262 layout on IA-32 (both C and C++), oversized bitfields layout
1263 on IA-32 and bitfields with base type with __attribute__((aligned ()))
1264 - fix strstream segfaults (#68292, Benjamin Kosnik)
1265 - fix __attribute__((visibility())) together with __asm__()
1266 function redirection
1267 - fix __typeof() followed by __asm() redirection (Alexandre Oliva)
1268 - fix TLS ICE on glibc (#70061)
1269 - fix K6 ICE on linux kernel (#69989, Richard Sandiford, Jan Hubicka)
1270 - fix inlining bug with labels (#70941)
1271 - fix fold-const bug (#70541)
1272 - fix PR preprocessor/7358 (Neil Booth)
1273 - error when mixing __thread and non-__thread declarations
1274 (#70059, Aldy Hernandez)
1275 - fix TLS bug on g++.dg/tls/diag-1.C (Jason Merrill)
1276 - add -mcmodel= x86-64 documentation (Andreas Jaeger)
1277 - avoid TLS emitting movl %gs:0, MEMORY on IA-32 (#71033)
1279 * Mon Jul 22 2002 Jakub Jelinek <jakub@redhat.com> 3.2-0.1
1280 - first attempt for gcc 3.2
1283 * Sat Jul 20 2002 Jakub Jelinek <jakub@redhat.com> 3.1-10
1284 - update from 3.1 branch
1285 - add throw() to set_new_handler (Andreas Schwab)
1286 - fixed PR optimization/7147, optimization/7153
1287 - make sure pic register is set up even when the only @PLT calls
1288 are done in EH basic blocks (Richard Henderson)
1290 * Sun Jul 14 2002 Jakub Jelinek <jakub@redhat.com> 3.1-9
1291 - define %%_gnu to nothing for compatibility
1293 * Sat Jul 13 2002 Jakub Jelinek <jakub@redhat.com> 3.1-8
1294 - update from 3.1 branch
1295 - fix OpenOffice miscompilation (PR c++/7279, Jason Merrill)
1296 - PRs c++/7224, c++/6255, optimization/7145, c++/6706, preprocessor/7070,
1297 middle-end/6963, target/6841, target/6770, target/6719,
1298 other/6836, libstdc++/7057, libstdc++/7097, libstdc++/3946,
1300 - fix a GC bug with named labels in C++ (Jim Wilson)
1301 - fix ICE on Mesa (Bernd Schmidt, #65771)
1302 - added some NRV tests
1303 - fix typo in i386 specs (PR c/7242)
1304 - fix IA-32 ICE with shifts by negative values followed by compare
1305 (PR middle-end/7245, #68395)
1306 - fixed DWARF-2 output for const char * (PR debug/7241)
1307 - actually enable __cxa_atexit for standard compliance at configury time
1308 - added PPC as Ada enabled architecture
1310 * Wed Jun 19 2002 Jakub Jelinek <jakub@redhat.com> 3.1-7
1311 - update from 3.1 branch
1312 - PRs target/6922, opt/6722, c/7030, c/6677, objc/6834, c++/6892,
1314 - use __cxa_atexit for standard compliance:
1315 if your C++ project knows it won't call atexit from within its
1316 static constructors, use -fno-use-cxa-atexit to optimize it
1317 - share hard register rtxs where possible to speed the compiler up (Jeff Law)
1318 - optimize tree_code_* arrays (Kaveh Ghazi)
1319 - don't link prefix.o into libgnat, link libgnat against libgcc_s and
1320 libgnarl against libgnat
1321 - fix typo in GNAT %%post (#66847, #66941, #66639)
1324 * Fri Jun 7 2002 Jakub Jelinek <jakub@redhat.com> 3.1-6
1326 - remove DT_RPATH from Java binaries (#66103)
1327 - obsolete kaffe, install jar as %{_prefix}/bin/jar
1328 - add include/org directory in java
1329 - add rmic and rmiregistry programs to libgcj
1330 - add info documentation for gcj and various man pages
1331 - add message catalogues for da, el, es, fr, ja, nl, sv, tr
1332 - don't put IA-64 vtables with relocations into read-only sections
1335 * Tue Jun 4 2002 Jakub Jelinek <jakub@redhat.com> 3.1-5
1336 - update from 3.1 branch
1337 - PRs optimization/6822, preprocessor/6844, target/6838, target/6788,
1338 libstdc++/6886, libstdc++/6795, libstdc++/6811
1339 - m$ compatibility for unnamed fields as typedef of struct/union
1341 - fix -fverbose-asm with unnamed fields (PR c/6809)
1342 - fix -mmmx ICE (PR optimization/6842)
1343 - default to -momit-leaf-frame-pointer on i386 (Richard Henderson)
1344 - use linkonce section/hidden symbol for i686 pic getpc thunks
1347 * Tue May 28 2002 Jakub Jelinek <jakub@redhat.com> 3.1-4
1350 * Sat May 25 2002 Jakub Jelinek <jakub@redhat.com> 3.1-3
1351 - update from 3.1 branch
1352 - PRs other/6782, preprocessor/6780, preprocessor/6517,
1353 libstdc++/6282, libstdc++/6701, libstdc++/6701
1354 - fix out << "" bug (Ben Kosnik, #65409, PR libstdc++/6750)
1356 - fix C++ __PRETTY_FUNCTION__ (PR c++/6794)
1357 - fix ICE on jikes (#65379)
1358 - add test for fixed mozilla miscompilation
1359 - include intrinsic headers on IA-32/x86-64, include altivec.h on PPC
1361 * Wed May 22 2002 Jakub Jelinek <jakub@redhat.com> 3.1-2
1362 - update from 3.1 branch
1364 - fix as version test for 2.12.1 and newer binutils non-CVS releases
1365 - fix ICE in do_subst (#65049)
1366 - fix SSE conditional move (PR target/6753)
1367 - fix SPARC CSE ICE (PR optimization/6759)
1368 - fix x86_64 dbx64_register_map typo (Jan Hubicka)
1369 - fix DWARF-2 with flag_asynchronous_unwind_tables set for leaf
1370 functions (Jan Hubicka)
1371 - fix DWARF-2 x86_64 __builtin_dwarf_reg_sizes (Jan Hubicka)
1372 - fix x86_64 movabsdi (Michael Matz)
1374 * Wed May 15 2002 Jakub Jelinek <jakub@redhat.com> 3.1-1
1375 - update to 3.1 final
1378 - fix fold-const.c typo
1379 - fix unitialized pointer-to-member values (Alexandre Oliva)
1380 - fix templates with asm inputs (Jason Merrill)
1381 - fix -fdata-section (Andreas Schwab)
1382 - readd warning about i386 -malign-double into documentation (Jan Hubicka)
1383 - fix PR libstdc++/6594 (Ben Kosnik)
1384 - fix PR PR libstdc++/6648 (Paolo Carlini)
1385 - fix libstdc++ testsuite rlimits (Rainer Orth)
1386 - s390 java support (Gerhard Tonn)
1387 - rotate testcases (Tom Rix)
1388 - build libiberty with -fpic on x86_64 (Andreas Schwab)
1389 - fix x86_64 multilib build (Bo Thorsen)
1390 - fix x86_64 ASM_OUTPUT_MI_THUNK (Jan Hubicka)
1391 - fix loop-2[cd].c tests on i386 (Eric Botcazou)
1392 - fix typo in g77 info files tweaking
1393 - fix libgcj.so symlink
1395 * Thu May 9 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.28
1396 - update to CVS 3.1 branch
1397 - PR c++/6212, target/6429, opt/6534, c/6543, target/6561, c/6569
1398 - fix x86_64 q_regs_operand (Jan Hubicka)
1399 - better PR c++/6381 fix (Jason Merrill)
1401 * Fri May 3 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.27
1402 - update to CVS 3.1 branch
1403 - PR target/5628, libstdc++/5820, c++/6396, preprocessor/6489,
1404 libstdc++/6501, libstdc++/6511, target/6512, libstdc++/6513,
1405 bootstrap/6514, opt/6516, bootstrap/6525, c++/6527, libstdc++/6533,
1407 - fix PR target/6542, target/6522, libstdc++/6549
1409 * Mon Apr 29 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.26
1410 - update to CVS 3.1 branch
1411 - PR c/3581, libstdc++/4150, libstdc++/4164, c/5154, c/5430, c++/5504,
1412 c++/5658, c++/5719, f/6138, libgcj/6158, middle-end/6205, c++/6256,
1413 c/6300, c++/6331, c/6343, c/6344, c++/6352, c/6358, libstdc++/6360,
1414 c++/6395, target/6413, libstdc++/6414, target/6422, bootstrap/6445,
1415 optimization/6475, target/6476, c++/6477, c++/6479, c++/6486, c++/6492,
1416 target/6494, target/6496, c/6497, target/6500
1418 - run make check as part of build process
1420 * Thu Apr 18 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.25
1421 - update to CVS 3.1 branch
1422 - PR opt/420, c++/525, target/817, target/1538, opt/3967, target/3997,
1423 opt/4120, bootstrap/4191, opt/4311, optimization/4328, c++/4884, c++/4934,
1424 c/5078, c++/5104, opt/5120, c++/5189, c++/5373, target/5446, c/5484,
1425 c++/5507, c++/5571, c++/5636, target/5672, target/5715, target/5886,
1426 c++/5933, c++/5964, c++/5998, opt/6007, target/6032, target/6041,
1427 target/6054, c++/6073, target/6082, optimization/6086, target/6087,
1428 middle-end/6096, middle-end/6098, middle-end/6099, middle-end/6100,
1429 middle-end/6102, fortran/6106, c++/6119, opt/6165, optimization/6177,
1430 c++/6179, optimization/6189, c/6202, c/6223, optimization/6233,
1431 middle-end/6279, c/6290, optimization/6305, target/6305, bootstrap/6315,
1435 * Wed Mar 27 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.24
1436 - update to CVS 3.1 branch
1437 - PRs c/5656, c/5972, bootstrap/4192, target/4792, bootstrap/4195,
1438 optimization/5854, target/6043, c++/6037, bootstrap/4128, target/5740,
1439 c/5597, optimization/5863, optimization/5742, target/3177, c/5354,
1440 optimization/5999, target/5977, middle-end/5731, target/5312...
1442 * Fri Mar 15 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.23.1
1443 - fix info and man page generation
1445 * Thu Mar 14 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.23
1446 - update to CVS 3.1 branch
1447 - fix IA-64 packet selection (PR optimization/5892)
1448 - make highest_pow2_factor work for all constants (PR middle-end/5877)
1449 - fix -Wunused (#61047)
1450 - fix loop on mixed mode class assignments (#60923)
1451 - fix wide character literals
1452 - support SPARC v9 long distance branches (PR target/5626)
1453 - fix SPARC leaf functions
1454 - fix a rtl sharing problem (Richard Henderson, #60760,
1455 PR optimization/5844)
1456 - fix va_arg with variable size types (PR c/3711)
1457 - PRs optimization/5901, optimization/5878, 5693, preprocessor/5899
1458 - fix C++ ?: at the end of stmt expr (PR c++/5373)
1459 - fix loop unrolling with sibcalls (PR optimization/5891)
1461 * Thu Mar 7 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.22
1462 - update to CVS 3.1 branch
1463 - fix ICE with volatile long long (#60650)
1464 - fix tempbuf.h (Philipp Thomas, #60212)
1465 - fix -fssa-ccp (Jeff Law, #60651)
1466 - versioned libstdc++
1467 - backport __attribute__((visibility("..."))) patches from trunk
1468 - include libstdc++ html documentation
1470 * Tue Feb 5 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.21
1471 - update to CVS HEAD
1472 - fix demangler (H.J. Lu, #59300, #59310)
1473 - fix typo in IA-32 specs file (#59081)
1474 - support moving SFmode values in MMX regs if -mmmx (#59083)
1475 - fix recog_for_combine (#59084)
1476 - don't ICE when inserting insns on edge from bb0 to bb0 (Bernd Schmidt,
1478 - make sure configure has not time in the future (#59203)
1479 - fix division/modulo by certain constants (#58065, PR c/5304)
1480 - fix -Wswitch (PR c/4475)
1482 * Thu Jan 31 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.20
1483 - update to CVS HEAD
1484 - fix jar (Tom Tromey)
1485 - fix loop unrolling (Richard Henderson)
1487 * Wed Jan 30 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.19
1488 - update to CVS HEAD
1489 - fix a reload bug on ia32 (#58579, #58648)
1490 - issue error about unknown -W* options (#58909)
1491 - fix ia64 libbfd miscompilation (#58694)
1492 - register all pending unparsed_text structures with GC (#58647)
1493 - fix __builtin_apply with ia32 -msse (#58447)
1494 - prevent ia64 prologue insns saving regs required for eh from being
1497 * Tue Jan 15 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.18
1498 - update to CVS HEAD
1499 - handle static x[] = { [X...Y] = (foo) { Z } } (#58338)
1500 - fix getdents.os miscompilation (Richard Henderson, #58308)
1501 - fix ICE in try_forward_edges (#58125)
1502 - fix ICE with -fexceptions -foptimize-sibling-calls
1504 * Tue Jan 8 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.17
1505 - avoid division by 0 when computing prediction probabilities (#57992)
1506 - fix ICE due to store_expr not adjusting value back for mode
1507 - increase -ftemplate-depth default value to 500
1509 * Mon Jan 7 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.16
1510 - if using PT_GNU_EH_FRAME registry, work around assembler bug resp. feature
1511 and don't provide weak prototypes of functions which won't be used
1512 - on Alpha, fix a typo so that crtbeginT.o is built and installed
1513 - fix glibc inl-tester miscompilation on ia32
1515 * Sun Jan 6 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.15
1516 - update to CVS HEAD (fix glibc bootstrap failure)
1518 * Thu Jan 3 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.14
1519 - update to CVS HEAD (#57907)
1520 - fix alpha bootstrap (Richard Henderson)
1521 - fix simplification of (div:SI (???:DI ???) (const_int 1))
1523 - add contrib/gcc_update --touch
1525 * Tue Jan 1 2002 Jakub Jelinek <jakub@redhat.com> 3.1-0.13
1526 - update to CVS HEAD (fix glibc miscompilation on alpha)
1527 - fix objc to not emit __objc_class_name_* without type and size
1529 * Mon Dec 31 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.12
1530 - update to CVS HEAD
1531 - fix sed commands for .la files
1532 - make Alpha use PT_GNU_EH_FRAME
1534 * Thu Dec 27 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.11
1535 - update to CVS HEAD (#57165, #57212, #57467, #57488, #57502,
1537 - readd .la files after fixing them up by sed
1538 - add %%defattr(-,root,root) to libobjc subpackage
1540 * Mon Dec 3 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.10
1541 - one more gcc.spec fix for passing --gdwarf-2 resp. --gstabs to as
1542 - fix conditional register dead computation on IA-64
1543 - fix extern array of incomplete structures handling
1545 - fix Fortran ICEs with SAVE_EXPRs (Richard Kenner)
1547 * Tue Nov 27 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.9
1548 - update to CVS HEAD
1549 - make DWARF 2 preferred debugging format on Linux
1551 * Mon Nov 12 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.8
1552 - don't ship .la files (#56072)
1553 - include libfrtbegin.a (#56098)
1555 * Mon Nov 12 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.7
1556 - update to CVS HEAD
1557 - back out Nov 7th loop.c change for now
1559 * Fri Nov 9 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.6
1560 - update to CVS HEAD
1561 - frame unwind compatibility with 7.[12] binutils
1563 * Tue Nov 6 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.5
1564 - update to CVS HEAD
1565 - merge DW_EH_PE_indirect constants and their relocs
1567 * Thu Oct 25 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.4
1568 - don't loop forever or ICE on bogus array initializers (#53704)
1569 - fix store motion with pure calls
1570 - disable store motion for now
1572 * Tue Oct 23 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.3
1573 - fix inlining of C nested functions with auto prototypes
1575 * Mon Oct 22 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.2
1576 - update to CVS HEAD
1577 - tree inlining fix from Alexandre Oliva
1578 - fix anonymous union ICE on alpha
1580 * Mon Oct 15 2001 Jakub Jelinek <jakub@redhat.com> 3.1-0.1
1581 - switch package to main compiler from alternate compiler
1582 - update to CVS HEAD
1583 - early gcc-2.96-RH compatibility in __frame_state_for
1584 - change weak function tests for functions always present in GLIBC 2.2
1585 into simple non-weak calls in crt*.o to avoid unnecessary symbol
1586 lookups and prelink conflicts
1587 - don't link against libgcc_s C shared libraries
1589 * Tue Oct 2 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-4
1590 - update from CVS 3.0 branch
1591 - ia64 function descriptors in vtables
1592 - handle large files in Fortran (#53328)
1593 - allow Java programs to be statically linked (#53605)
1594 - remove #include_next patch, Benjamin commited it
1596 * Thu Sep 6 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-3
1597 - don't use #include_next in <bits/std_c*> headers (Benjamin Kosnik, #53262)
1599 * Wed Sep 5 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-2
1600 - update from CVS 3.0 branch
1601 - check all gcc-2.96-RH patches whether they have made it into 3.0.1,
1602 and if not, whether they are appropriate for 3.0.1
1604 - add 36 testcases from gcc-2.96-RH
1605 - fix ICE on very questionable C++ code from JDK (#39858, #52960)
1606 - fix -frepo (Nathan Sidwell, #52877)
1607 - avoid generating bogus .stabs (#49214)
1608 - issue a clear error message about invalid ia32 floating point
1609 asm constraints (#27137)
1610 - fix some comment typos
1611 - fix ADDRESSOF recognition (#29686)
1613 * Mon Aug 27 2001 Jakub Jelinek <jakub@redhat.com> 3.0.1-1
1614 - update from CVS (3.0.1 final)
1615 - properly handle throw() exception specifiers in template decls (#51824)
1616 - fix IA-64 varargs handling in presence of additional anonymous arguments
1618 - fix boehm-gc for prelink
1619 - fix a typo in gcc3-c++ description (#52323)
1620 - remove Chill from package summary (#51764)
1622 * Tue Aug 7 2001 Jakub Jelinek <jakub@redhat.com> 3.0-6
1624 - fix glibc vfprintf miscompilation
1625 - don't warn about if (&foo) if foo is weak (H.J.Lu, #50855)
1627 * Wed Jul 25 2001 Jakub Jelinek <jakub@redhat.com> 3.0-5
1628 - include libgcjgc.a in libgcj3-devel
1629 - include libgcjgc.so.* in libgcj3 on ia64
1630 - remove dependency on libgcj on ia64
1631 - add ldconfig to libgcj3 post/postun
1633 * Tue Jul 24 2001 Jakub Jelinek <jakub@redhat.com> 3.0-4
1635 - make gcc3-java/libgcj3* packages, so that they can coexist
1637 - make sure shared Java libraries are built with proper dependencies
1639 * Wed Jul 11 2001 Jakub Jelinek <jakub@redhat.com> 3.0-3
1640 - fix libgcc_s.so and libstdc++.so symlinks
1643 * Tue Jul 10 2001 Jakub Jelinek <jakub@redhat.com> 3.0-2
1644 - move libstdc++.so into gcc-lib
1645 - add libobjc.so symlink
1647 * Tue Jul 10 2001 Jakub Jelinek <jakub@redhat.com> 3.0-1