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
47 Requires: binutils >= 2.9.1.0.25
48 Requires: cpp = %{version}
49 URL: http://gcc.gnu.org/
50 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53 A compiler aimed at integrating all the optimizations and features
54 necessary for a high-performance and stable development environment.
57 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
58 wyprodukowania szybkiego i stablinego kodu wynikowego.
61 Summary: C++ support for gcc
62 Summary(fr): Support C++ pour le compilateur gcc
63 Summary(pl): Wspomaganie C++ dla kompilatora gcc
64 Summary(tr): gcc için C++ desteði
65 Group: Development/Languages
66 Group(de): Entwicklung/Sprachen
67 Group(pl): Programowanie/Jêzyki
72 This package adds C++ support to the GNU C compiler. It includes
73 support for most of the current C++ specification, including templates
74 and exception handling. It does not include a standard C++ library,
75 which is available separately.
77 %description -l de c++
78 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
79 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
80 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
81 sie ist getrennt erhältlich.
83 %description -l fr c++
84 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
85 support pour la plupart des spécifications actuelles de C++, dont les
86 modéles et la gestion des exceptions. Il ne comprend pas une
87 bibliothéque C++ standard, qui est disponible séparément.
89 %description -l pl c++
90 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc. Posiada
91 wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
92 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
94 %description -l tr c++
95 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
96 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
97 C++ kitaplýðý bu pakette yer almaz.
100 Summary: Objective C support for gcc
101 Summary(de): Objektive C-Unterstützung für gcc
102 Summary(fr): Gestion d'Objective C pour gcc
103 Summary(pl): Wspomaganie obiektowego C dla kompilatora gcc
104 Summary(tr): gcc için Objective C desteði
105 Group: Development/Languages
106 Group(de): Entwicklung/Sprachen
107 Group(pl): Programowanie/Jêzyki
112 This package adds Objective C support to the GNU C compiler. Objective
113 C is a object oriented derivative of the C language, mainly used on
114 systems running NeXTSTEP. This package does not include the standard
115 objective C object library.
117 %description -l de objc
118 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
119 Objective C ist ein objektorientiertes Derivat von C, das zur
120 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
121 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
123 %description -l fr objc
124 Ce package ajoute un support Objective C au compilateur C GNU.
125 L'Objective C est un langage orienté objetdérivé du langage C,
126 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
127 pas la bibliothéque Objective C standard.
129 %description -l pl objc
130 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W
131 pakiecie nie ma jeszcze bibliotek C-obj.
133 %description -l tr objc
134 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
135 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
136 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
137 kitaplýðý bu pakette yer almaz.
140 Summary: Fortran 77 support for gcc
141 Summary(pl): Wspomaganie Fortran 77 dla gcc
142 Group: Development/Languages
143 Group(de): Entwicklung/Sprachen
144 Group(pl): Programowanie/Jêzyki
148 This apckage adds support for compiling Fortran 77 programs with the
151 %description -l pl g77
152 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc. Jest
153 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
156 Summary: CHILL support for gcc
157 Summary(pl): Wspomoganie CHILL dla gcc
158 Group: Development/Languages
159 Group(de): Entwicklung/Sprachen
160 Group(pl): Programowanie/Jêzyki
161 Requires: %{name} = %{version}
164 This package adds support for compiling CHILL programs with the GNU
167 Chill is the "CCITT High-Level Language", where CCITT is the old name
168 for what is now ITU, the International Telecommunications Union. It is
169 is language in the Modula2 family, and targets many of the same
170 applications as Ada (especially large embedded systems). Chill was
171 never used much in the United States, but is still being used in
172 Europe, Brazil, Korea, and other places.
175 Summary: Java support for gcc
176 Summary(pl): Wspomoganie Java dla gcc
177 Group: Development/Languages
178 Group(de): Entwicklung/Sprachen
179 Group(pl): Programowanie/Jêzyki
180 Requires: %{name} = %{version}
181 Requires: libgcj >= 2.95.1
184 This package adds experimental support for compiling Java(tm) programs
185 and bytecode into native code. To use this you will also need the
188 %package -n libstdc++
189 Summary: GNU c++ library
190 Summary(pl): Biblioteki GNU C++
193 Group(fr): Librairies
194 Group(pl): Biblioteki
195 Version: %{STDC_VERSION}
198 %description -n libstdc++
199 This is the GNU implementation of the standard C++ libraries, along
200 with additional GNU tools. This package includes the shared libraries
201 necessary to run C++ applications.
203 %description -l de -n libstdc++
204 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
205 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
206 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
208 %description -l fr -n libstdc++
209 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
210 des outils GNU supplémentaires. Ce package comprend les librairies
211 partagées nécessaires à l'exécution d'application C++.
213 %description -l pl -n libstdc++
214 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
215 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
216 uruchomienia aplikacji napisanych w C++.
218 %description -l tr -n libstdc++
219 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
220 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
222 %package -n libstdc++-devel
223 Summary: Header files and libraries for C++ development
224 Summary(de): Header-Dateien und Libraries zur Entwicklung mit C++
225 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++.
226 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
227 Group: Development/Libraries
228 Group(de): Entwicklung/Libraries
229 Group(fr): Development/Librairies
230 Group(pl): Programowanie/Biblioteki
231 Version: %{STDC_VERSION}
232 Requires: libstdc++ = %{STDC_VERSION}
233 Requires: %{name}-c++
234 Obsoletes: libg++-devel
236 %description -n libstdc++-devel
237 This is the GNU implementation of the standard C++ libraries. This
238 package includes the header files and libraries needed for C++
241 %description -l pl -n libstdc++-devel
242 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
243 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
244 programowaniu w jêzyku C++.
246 %package -n libstdc++-static
247 Summary: Static c++ standard library
248 Summary(pl): Biblioeka statyczna c++
249 Group: Development/Libraries
250 Group(de): Entwicklung/Libraries
251 Group(fr): Development/Librairies
252 Group(pl): Programowanie/Biblioteki
253 Version: %{STDC_VERSION}
254 Requires: libstdc++-devel = %{STDC_VERSION}
256 %description -n libstdc++-static
257 Static c++ standard library.
259 %description -l pl -n libstdc++-static
260 Biblioteka statyczna C++.
263 Summary: The C Pre Processor
264 Summary(pl): Preprocesor C
265 Group: Development/Languages
266 Group(de): Entwicklung/Sprachen
267 Group(pl): Programowanie/Jêzyki
271 The C preprocessor is a "macro processor" that is used automatically
272 by the C compiler to transform your program before actual compilation.
273 It is called a macro processor because it allows you to define
274 "macros", which are brief abbreviations for longer constructs.
276 The C preprocessor provides four separate facilities that you can use
279 - Inclusion of header files. These are files of declarations that can
280 be substituted into your program.
281 - Macro expansion. You can define "macros", which are abbreviations
282 for arbitrary fragments of C code, and then the C preprocessor will
283 replace the macros with their definitions throughout the program.
284 - Conditional compilation. Using special preprocessing directives, you
285 can include or exclude parts of the program according to various
287 - Line control. If you use a program to combine or rearrange source
288 files into an intermediate file which is then compiled, you can use
289 line control to inform the compiler of where each source line
290 originally came from.
292 %description -l pl -n cpp
293 Przeprocesor C jest "makro procesorem" który jest automatycznie
294 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
295 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
296 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
297 d³ugich konstrukcji w jêzyku C.
299 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
301 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
302 deklaracji polecenia do³±czenia innego pliku.
303 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
304 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
305 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
306 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
307 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
308 fragmenty obrabianego strumienia tekstów.
309 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
310 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
311 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
312 odpowiada fragment pliku wynikowego.
315 %setup -q -n %{name}-2.95.2
337 %ifarch sparc sparc32
359 rm -rf obj-%{_target_platform}
360 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
362 CFLAGS="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g}"
363 CXXFLAGS="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g}"
365 --prefix=%{_prefix} \
366 --infodir=%{_infodir} \
368 %ifnarch sparc sparc64
374 --with-gxx-include-dir="\$\{prefix\}/include/g++" \
377 PATH=$PATH:/sbin:%{_sbindir}
378 touch ../gcc/c-gperf.h
380 %{__make} LDFLAGS_FOR_TARGET="%{!?debug:-s}" \
385 rm -rf $RPM_BUILD_ROOT
386 install -d $RPM_BUILD_ROOT%{_datadir}
388 cd obj-%{_target_platform}
389 PATH=$PATH:/sbin:%{_sbindir}
392 prefix=$RPM_BUILD_ROOT%{_prefix} \
393 mandir=$RPM_BUILD_ROOT%{_mandir} \
394 infodir=$RPM_BUILD_ROOT%{_infodir}
397 prefix=$RPM_BUILD_ROOT%{_prefix} \
398 mandir=$RPM_BUILD_ROOT%{_mandir} \
399 infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
401 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
403 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
404 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
405 install %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1/
407 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
409 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
411 install -d $RPM_BUILD_ROOT/lib
412 (cd $RPM_BUILD_ROOT; \
413 ln -sf ../`dirname usr/lib/gcc-lib/%{_target_cpu}*/*/cpp`/cpp $RPM_BUILD_ROOT/lib/cpp)
415 gzip -9nf ../READ* ../ChangeLog ../gcc/ch/chill.brochure
418 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
421 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
424 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
427 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
430 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
433 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
436 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
439 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
441 %post -p /sbin/ldconfig -n libstdc++
442 %postun -p /sbin/ldconfig -n libstdc++
445 rm -rf $RPM_BUILD_ROOT
448 %defattr(644,root,root,755)
449 %doc READ* ChangeLog.gz
451 %dir %{_libdir}/gcc-lib
452 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
453 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
454 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
456 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
457 %attr(755,root,root) %{_bindir}/gcc
458 %attr(755,root,root) %{_bindir}/gcov
459 %attr(755,root,root) %{_bindir}/protoize
460 %attr(755,root,root) %{_bindir}/unprotoize
461 %attr(755,root,root) %{_bindir}/cc
463 %{_mandir}/man1/gcc.1*
464 %{_mandir}/man1/gcov.1*
467 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
468 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
469 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
470 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
471 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
474 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
477 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
479 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
480 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
481 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
482 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
483 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
484 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
485 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
486 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
487 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
488 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
491 %defattr(644,root,root,755)
493 %{_mandir}/man1/g++.1.gz
495 %attr(755,root,root) %{_bindir}/g++
496 %attr(755,root,root) %{_bindir}/c++
497 %attr(755,root,root) %{_bindir}/c++filt
498 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
500 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
501 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
502 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
503 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
506 %defattr(644,root,root,755)
508 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
510 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
511 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
514 %defattr(644,root,root,755)
516 %attr(755,root,root) %{_bindir}/g77
517 %attr(755,root,root) %{_bindir}/f77
521 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
522 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
524 %{_mandir}/man1/g77.1*
525 %{_mandir}/man1/f77.1*
527 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
530 %defattr(644,root,root,755)
531 %doc gcc/ch/chill.brochure.gz
533 %attr(755,root,root) %{_bindir}/chill
537 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
538 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
539 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
542 %defattr(644,root,root,755)
544 %attr(755,root,root) %{_bindir}/gcj
545 %attr(755,root,root) %{_bindir}/gcjh
546 %attr(755,root,root) %{_bindir}/jcf-dump
547 %attr(755,root,root) %{_bindir}/jv-scan
549 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
550 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
553 %defattr(644,root,root,755)
554 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
556 %files -n libstdc++-devel
557 %defattr(644,root,root,755)
559 %attr(755,root,root) %{_libdir}/libstdc++.so
561 %files -n libstdc++-static
562 %defattr(644,root,root,755)
563 %attr(644,root,root) %{_libdir}/libstdc++.a
566 %defattr(644,root,root,755)
567 %attr(755,root,root) /lib/cpp
569 %{_mandir}/man1/cpp.1*
570 %{_mandir}/man1/cccp.1*
571 %{_infodir}/cpp.info*.gz
573 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp