1 %define STDC_VERSION 2.10.0
2 Summary: GNU Compiler Collection
3 Summary(pl): Kolekcja kompilatorów GNU
8 Group: Development/Languages
9 Group(de): Entwicklung/Sprachen
10 Group(pl): Programowanie/Jêzyki
11 Source0: ftp://ftp.gnu.org/pub/gnu/gcc/%{name}-2.95.2.tar.gz
13 Patch0: %{name}-info.patch
14 Patch1: %{name}-pld-linux.patch
15 Patch2: %{name}-libstdc++.patch
16 Patch3: %{name}-bootstrap.patch
17 Patch4: %{name}-cpp-macro-doc.patch
18 Patch5: %{name}-default-arch.patch
19 Patch6: %{name}-cvs-updates-20000220.patch.gz
20 Patch7: %{name}-libstdc++-out-of-mem.patch
21 Patch8: %{name}-libstdc++-wstring.patch
22 Patch9: %{name}-libstdc++-wall3.patch
23 Patch10: %{name}-libstdc++-bastring.patch
24 Patch11: %{name}-manpage.patch
25 Patch12: %{name}-cpp-dos-newlines.patch
26 Patch13: %{name}-g++-is-tree.patch
27 Patch14: %{name}-gpc.patch
28 Patch15: %{name}-arm-config.patch
29 Patch16: %{name}-m68k-pic.patch
30 Patch17: %{name}-sparc32-rfi.patch
31 Patch18: %{name}-builtin-apply.patch
32 Patch19: %{name}-gcj-backport.patch
33 Patch20: %{name}-ppc-ice.patch
34 Patch21: %{name}-ppc-descriptions.patch
35 Patch22: %{name}-ppc-andrew-dwarf-eh.patch
37 Patch23: %{name}-alpha-complex-float.patch
38 Patch24: %{name}-emit-rtl.patch
39 Patch25: %{name}-empty-struct-init.patch
40 Patch26: %{name}-gcj-vs-iconv.patch
41 Patch27: %{name}-libobjc.patch
42 Patch28: %{name}-pointer-arith.patch
44 Patch29: %{name}-glibc-2.2.patch
45 Patch30: %{name}-O2-bug.patch
48 Requires: binutils >= 2.9.1.0.25
49 Requires: cpp = %{version}
50 URL: http://gcc.gnu.org/
51 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54 A compiler aimed at integrating all the optimizations and features
55 necessary for a high-performance and stable development environment.
58 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
59 wyprodukowania szybkiego i stablinego kodu wynikowego.
62 Summary: C++ support for gcc
63 Summary(fr): Support C++ pour le compilateur gcc
64 Summary(pl): Wspomaganie C++ dla kompilatora gcc
65 Summary(tr): gcc için C++ desteði
66 Group: Development/Languages
67 Group(de): Entwicklung/Sprachen
68 Group(pl): Programowanie/Jêzyki
73 This package adds C++ support to the GNU C compiler. It includes
74 support for most of the current C++ specification, including templates
75 and exception handling. It does not include a standard C++ library,
76 which is available separately.
78 %description -l de c++
79 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
80 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
81 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
82 sie ist getrennt erhältlich.
84 %description -l fr c++
85 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
86 support pour la plupart des spécifications actuelles de C++, dont les
87 modéles et la gestion des exceptions. Il ne comprend pas une
88 bibliothéque C++ standard, qui est disponible séparément.
90 %description -l pl c++
91 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc. Posiada
92 wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
93 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
95 %description -l tr c++
96 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
97 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
98 C++ kitaplýðý bu pakette yer almaz.
101 Summary: Objective C support for gcc
102 Summary(de): Objektive C-Unterstützung für gcc
103 Summary(fr): Gestion d'Objective C pour gcc
104 Summary(pl): Wspomaganie obiektowego C dla kompilatora gcc
105 Summary(tr): gcc için Objective C desteði
106 Group: Development/Languages
107 Group(de): Entwicklung/Sprachen
108 Group(pl): Programowanie/Jêzyki
113 This package adds Objective C support to the GNU C compiler. Objective
114 C is a object oriented derivative of the C language, mainly used on
115 systems running NeXTSTEP. This package does not include the standard
116 objective C object library.
118 %description -l de objc
119 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
120 Objective C ist ein objektorientiertes Derivat von C, das zur
121 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
122 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
124 %description -l fr objc
125 Ce package ajoute un support Objective C au compilateur C GNU.
126 L'Objective C est un langage orienté objetdérivé du langage C,
127 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
128 pas la bibliothéque Objective C standard.
130 %description -l pl objc
131 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W
132 pakiecie nie ma jeszcze bibliotek C-obj.
134 %description -l tr objc
135 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
136 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
137 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
138 kitaplýðý bu pakette yer almaz.
141 Summary: Fortran 77 support for gcc
142 Summary(pl): Wspomaganie Fortran 77 dla gcc
143 Group: Development/Languages
144 Group(de): Entwicklung/Sprachen
145 Group(pl): Programowanie/Jêzyki
149 This apckage adds support for compiling Fortran 77 programs with the
152 %description -l pl g77
153 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc. Jest
154 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
157 Summary: CHILL support for gcc
158 Summary(pl): Wspomoganie CHILL dla gcc
159 Group: Development/Languages
160 Group(de): Entwicklung/Sprachen
161 Group(pl): Programowanie/Jêzyki
162 Requires: %{name} = %{version}
165 This package adds support for compiling CHILL programs with the GNU
168 Chill is the "CCITT High-Level Language", where CCITT is the old name
169 for what is now ITU, the International Telecommunications Union. It is
170 is language in the Modula2 family, and targets many of the same
171 applications as Ada (especially large embedded systems). Chill was
172 never used much in the United States, but is still being used in
173 Europe, Brazil, Korea, and other places.
176 Summary: Java support for gcc
177 Summary(pl): Wspomoganie Java dla gcc
178 Group: Development/Languages
179 Group(de): Entwicklung/Sprachen
180 Group(pl): Programowanie/Jêzyki
181 Requires: %{name} = %{version}
182 Requires: libgcj >= 2.95.1
185 This package adds experimental support for compiling Java(tm) programs
186 and bytecode into native code. To use this you will also need the
189 %package -n libstdc++
190 Summary: GNU c++ library
191 Summary(pl): Biblioteki GNU C++
194 Group(fr): Librairies
195 Group(pl): Biblioteki
196 Version: %{STDC_VERSION}
199 %description -n libstdc++
200 This is the GNU implementation of the standard C++ libraries, along
201 with additional GNU tools. This package includes the shared libraries
202 necessary to run C++ applications.
204 %description -l de -n libstdc++
205 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
206 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
207 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
209 %description -l fr -n libstdc++
210 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
211 des outils GNU supplémentaires. Ce package comprend les librairies
212 partagées nécessaires à l'exécution d'application C++.
214 %description -l pl -n libstdc++
215 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
216 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
217 uruchomienia aplikacji napisanych w C++.
219 %description -l tr -n libstdc++
220 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
221 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
223 %package -n libstdc++-devel
224 Summary: Header files and libraries for C++ development
225 Summary(de): Header-Dateien und Libraries zur Entwicklung mit C++
226 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++.
227 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
228 Group: Development/Libraries
229 Group(de): Entwicklung/Libraries
230 Group(fr): Development/Librairies
231 Group(pl): Programowanie/Biblioteki
232 Version: %{STDC_VERSION}
233 Requires: libstdc++ = %{STDC_VERSION}
234 Requires: %{name}-c++
235 Obsoletes: libg++-devel
237 %description -n libstdc++-devel
238 This is the GNU implementation of the standard C++ libraries. This
239 package includes the header files and libraries needed for C++
242 %description -l pl -n libstdc++-devel
243 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
244 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
245 programowaniu w jêzyku C++.
247 %package -n libstdc++-static
248 Summary: Static c++ standard library
249 Summary(pl): Biblioeka statyczna c++
250 Group: Development/Libraries
251 Group(de): Entwicklung/Libraries
252 Group(fr): Development/Librairies
253 Group(pl): Programowanie/Biblioteki
254 Version: %{STDC_VERSION}
255 Requires: libstdc++-devel = %{STDC_VERSION}
257 %description -n libstdc++-static
258 Static c++ standard library.
260 %description -l pl -n libstdc++-static
261 Biblioteka statyczna C++.
264 Summary: The C Pre Processor
265 Summary(pl): Preprocesor C
266 Group: Development/Languages
267 Group(de): Entwicklung/Sprachen
268 Group(pl): Programowanie/Jêzyki
272 The C preprocessor is a "macro processor" that is used automatically
273 by the C compiler to transform your program before actual compilation.
274 It is called a macro processor because it allows you to define
275 "macros", which are brief abbreviations for longer constructs.
277 The C preprocessor provides four separate facilities that you can use
280 - Inclusion of header files. These are files of declarations that can
281 be substituted into your program.
282 - Macro expansion. You can define "macros", which are abbreviations
283 for arbitrary fragments of C code, and then the C preprocessor will
284 replace the macros with their definitions throughout the program.
285 - Conditional compilation. Using special preprocessing directives, you
286 can include or exclude parts of the program according to various
288 - Line control. If you use a program to combine or rearrange source
289 files into an intermediate file which is then compiled, you can use
290 line control to inform the compiler of where each source line
291 originally came from.
293 %description -l pl -n cpp
294 Przeprocesor C jest "makro procesorem" który jest automatycznie
295 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
296 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
297 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
298 d³ugich konstrukcji w jêzyku C.
300 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
302 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
303 deklaracji polecenia do³±czenia innego pliku.
304 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
305 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
306 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
307 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
308 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
309 fragmenty obrabianego strumienia tekstów.
310 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
311 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
312 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
313 odpowiada fragment pliku wynikowego.
316 %setup -q -n %{name}-2.95.2
338 %ifarch sparc sparc32
361 rm -rf obj-%{_target_platform}
362 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
364 CFLAGS="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g}"
365 CXXFLAGS="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g}"
367 --prefix=%{_prefix} \
368 --infodir=%{_infodir} \
370 %ifnarch sparc sparc64
376 --with-gxx-include-dir="\$\{prefix\}/include/g++" \
379 PATH=$PATH:/sbin:%{_sbindir}
380 touch ../gcc/c-gperf.h
382 %{__make} LDFLAGS_FOR_TARGET="%{!?debug:-s}" \
387 rm -rf $RPM_BUILD_ROOT
388 install -d $RPM_BUILD_ROOT%{_datadir}
390 cd obj-%{_target_platform}
391 PATH=$PATH:/sbin:%{_sbindir}
394 prefix=$RPM_BUILD_ROOT%{_prefix} \
395 mandir=$RPM_BUILD_ROOT%{_mandir} \
396 infodir=$RPM_BUILD_ROOT%{_infodir}
399 prefix=$RPM_BUILD_ROOT%{_prefix} \
400 mandir=$RPM_BUILD_ROOT%{_mandir} \
401 infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
403 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
405 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
406 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
407 install %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1/
409 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
411 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
413 install -d $RPM_BUILD_ROOT/lib
414 (cd $RPM_BUILD_ROOT; \
415 ln -sf ../`dirname usr/lib/gcc-lib/%{_target_cpu}*/*/cpp`/cpp $RPM_BUILD_ROOT/lib/cpp)
417 gzip -9nf ../READ* ../ChangeLog ../gcc/ch/chill.brochure
420 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
423 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
426 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
429 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
432 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
435 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
438 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
441 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
443 %post -p /sbin/ldconfig -n libstdc++
444 %postun -p /sbin/ldconfig -n libstdc++
447 rm -rf $RPM_BUILD_ROOT
450 %defattr(644,root,root,755)
451 %doc READ* ChangeLog.gz
453 %dir %{_libdir}/gcc-lib
454 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
455 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
456 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
458 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
459 %attr(755,root,root) %{_bindir}/gcc
460 %attr(755,root,root) %{_bindir}/gcov
461 %attr(755,root,root) %{_bindir}/protoize
462 %attr(755,root,root) %{_bindir}/unprotoize
463 %attr(755,root,root) %{_bindir}/cc
465 %{_mandir}/man1/gcc.1*
466 %{_mandir}/man1/gcov.1*
469 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
470 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
471 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
472 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
473 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
476 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
479 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
481 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
482 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
483 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
484 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
485 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
486 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
487 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
488 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
489 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
490 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
493 %defattr(644,root,root,755)
495 %{_mandir}/man1/g++.1.gz
497 %attr(755,root,root) %{_bindir}/g++
498 %attr(755,root,root) %{_bindir}/c++
499 %attr(755,root,root) %{_bindir}/c++filt
500 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
502 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
503 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
504 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
505 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
508 %defattr(644,root,root,755)
510 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
512 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
513 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
516 %defattr(644,root,root,755)
518 %attr(755,root,root) %{_bindir}/g77
519 %attr(755,root,root) %{_bindir}/f77
523 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
524 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
526 %{_mandir}/man1/g77.1*
527 %{_mandir}/man1/f77.1*
529 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
532 %defattr(644,root,root,755)
533 %doc gcc/ch/chill.brochure.gz
535 %attr(755,root,root) %{_bindir}/chill
539 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
540 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
541 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
544 %defattr(644,root,root,755)
546 %attr(755,root,root) %{_bindir}/gcj
547 %attr(755,root,root) %{_bindir}/gcjh
548 %attr(755,root,root) %{_bindir}/jcf-dump
549 %attr(755,root,root) %{_bindir}/jv-scan
551 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
552 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
555 %defattr(644,root,root,755)
556 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
558 %files -n libstdc++-devel
559 %defattr(644,root,root,755)
561 %attr(755,root,root) %{_libdir}/libstdc++.so
563 %files -n libstdc++-static
564 %defattr(644,root,root,755)
565 %attr(644,root,root) %{_libdir}/libstdc++.a
568 %defattr(644,root,root,755)
569 %attr(755,root,root) /lib/cpp
571 %{_mandir}/man1/cpp.1*
572 %{_mandir}/man1/cccp.1*
573 %{_infodir}/cpp.info*.gz
575 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp