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://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.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}-libstdc++-out-of-mem.patch
20 Patch7: %{name}-libstdc++-wstring.patch
21 Patch8: %{name}-libstdc++-bastring.patch
22 Patch9: %{name}-manpage.patch
23 Patch10: %{name}-cpp-dos-newlines.patch
24 Patch11: %{name}-gpc.patch
25 Patch12: %{name}-m68k-pic.patch
26 Patch13: %{name}-sparc32-rfi.patch
27 Patch14: %{name}-builtin-apply.patch
28 Patch15: %{name}-ppc-ice.patch
29 Patch16: %{name}-ppc-descriptions.patch
30 Patch17: %{name}-alpha-complex-float.patch
31 Patch18: %{name}-gcj-vs-iconv.patch
32 Patch19: %{name}-libobjc.patch
33 Patch20: %{name}-pointer-arith.patch
34 Patch21: %{name}-crtendS.patch
37 BuildRequires: texinfo
38 Requires: binutils >= 2.9.1.0.25
39 Requires: cpp = %{version}
40 URL: http://gcc.gnu.org/
41 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44 A compiler aimed at integrating all the optimizations and features
45 necessary for a high-performance and stable development environment.
48 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
49 wyprodukowania szybkiego i stabilnego kodu wynikowego.
52 Summary: C++ support for gcc
53 Summary(fr): Support C++ pour le compilateur gcc
54 Summary(pl): Wspomaganie C++ dla kompilatora gcc
55 Summary(tr): gcc için C++ desteði
56 Group: Development/Languages
57 Group(de): Entwicklung/Sprachen
58 Group(pl): Programowanie/Jêzyki
61 Requires: %{name} = %{version}
64 This package adds C++ support to the GNU C compiler. It includes
65 support for most of the current C++ specification, including templates
66 and exception handling. It does not include a standard C++ library,
67 which is available separately.
69 %description -l de c++
70 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
71 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
72 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
73 sie ist getrennt erhältlich.
75 %description -l fr c++
76 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
77 support pour la plupart des spécifications actuelles de C++, dont les
78 modéles et la gestion des exceptions. Il ne comprend pas une
79 bibliothéque C++ standard, qui est disponible séparément.
81 %description -l pl c++
82 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc. Posiada
83 wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
84 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
86 %description -l tr c++
87 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
88 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
89 C++ kitaplýðý bu pakette yer almaz.
92 Summary: Objective C support for gcc
93 Summary(de): Objektive C-Unterstützung für gcc
94 Summary(fr): Gestion d'Objective C pour gcc
95 Summary(pl): Wspomaganie obiektowego C dla kompilatora gcc
96 Summary(tr): gcc için Objective C desteði
97 Group: Development/Languages
98 Group(de): Entwicklung/Sprachen
99 Group(pl): Programowanie/Jêzyki
102 Requires: %{name} = %{version}
105 This package adds Objective C support to the GNU C compiler. Objective
106 C is a object oriented derivative of the C language, mainly used on
107 systems running NeXTSTEP. This package does not include the standard
108 objective C object library.
110 %description -l de objc
111 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
112 Objective C ist ein objektorientiertes Derivat von C, das zur
113 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
114 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
116 %description -l fr objc
117 Ce package ajoute un support Objective C au compilateur C GNU.
118 L'Objective C est un langage orienté objetdérivé du langage C,
119 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
120 pas la bibliothéque Objective C standard.
122 %description -l pl objc
123 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W
124 pakiecie nie ma jeszcze bibliotek C-obj.
126 %description -l tr objc
127 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
128 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
129 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
130 kitaplýðý bu pakette yer almaz.
133 Summary: Fortran 77 support for gcc
134 Summary(pl): Wspomaganie Fortran 77 dla gcc
135 Group: Development/Languages
136 Group(de): Entwicklung/Sprachen
137 Group(pl): Programowanie/Jêzyki
141 This apckage adds support for compiling Fortran 77 programs with the
144 %description -l pl g77
145 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc. Jest
146 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
149 Summary: CHILL support for gcc
150 Summary(pl): Wspomoganie CHILL dla gcc
151 Group: Development/Languages
152 Group(de): Entwicklung/Sprachen
153 Group(pl): Programowanie/Jêzyki
154 Requires: %{name} = %{version}
157 This package adds support for compiling CHILL programs with the GNU
160 Chill is the "CCITT High-Level Language", where CCITT is the old name
161 for what is now ITU, the International Telecommunications Union. It is
162 is language in the Modula2 family, and targets many of the same
163 applications as Ada (especially large embedded systems). Chill was
164 never used much in the United States, but is still being used in
165 Europe, Brazil, Korea, and other places.
167 %description -l pl chill
168 Ten pakiet dodaje do gcc mo¿liwo¶æ kompilowania programów w jêzyku
172 Summary: Java support for gcc
173 Summary(pl): Wspomoganie Java dla gcc
174 Group: Development/Languages
175 Group(de): Entwicklung/Sprachen
176 Group(pl): Programowanie/Jêzyki
177 Requires: %{name} = %{version}
178 Requires: libgcj >= 2.95.1
181 This package adds experimental support for compiling Java(tm) programs
182 and bytecode into native code. To use this you will also need the
185 %description -l pl java
186 Ten pakiet dodaje do gcc (eksperymentaln±) mo¿liwo¶æ kompilowania
187 programów w Javie(tm) i bytecode do kodu procesora. Wymaga pakietu
190 %package -n libstdc++
191 Summary: GNU c++ library
192 Summary(pl): Biblioteki GNU C++
195 Group(fr): Librairies
196 Group(pl): Biblioteki
197 Version: %{STDC_VERSION}
200 %description -n libstdc++
201 This is the GNU implementation of the standard C++ libraries, along
202 with additional GNU tools. This package includes the shared libraries
203 necessary to run C++ applications.
205 %description -l de -n libstdc++
206 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
207 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
208 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
210 %description -l fr -n libstdc++
211 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
212 des outils GNU supplémentaires. Ce package comprend les librairies
213 partagées nécessaires à l'exécution d'application C++.
215 %description -l pl -n libstdc++
216 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
217 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
218 uruchomienia aplikacji napisanych w C++.
220 %description -l tr -n libstdc++
221 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
222 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
224 %package -n libstdc++-devel
225 Summary: Header files and libraries for C++ development
226 Summary(de): Header-Dateien und Libraries zur Entwicklung mit C++
227 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
228 Summary(pl): Pliki nag³ówkowe do programowania z u¿yciem bibliotek C++
229 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
230 Group: Development/Libraries
231 Group(de): Entwicklung/Libraries
232 Group(fr): Development/Librairies
233 Group(pl): Programowanie/Biblioteki
234 Version: %{STDC_VERSION}
235 Requires: libstdc++ = %{STDC_VERSION}
236 Requires: %{name}-c++
237 Obsoletes: libg++-devel
239 %description -n libstdc++-devel
240 This is the GNU implementation of the standard C++ libraries. This
241 package includes the header files and libraries needed for C++
244 %description -l pl -n libstdc++-devel
245 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
246 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
247 programowaniu w jêzyku C++.
249 %package -n libstdc++-static
250 Summary: Static c++ standard library
251 Summary(pl): Biblioteka statyczna c++
252 Group: Development/Libraries
253 Group(de): Entwicklung/Libraries
254 Group(fr): Development/Librairies
255 Group(pl): Programowanie/Biblioteki
256 Version: %{STDC_VERSION}
257 Requires: libstdc++-devel = %{STDC_VERSION}
259 %description -n libstdc++-static
260 Static c++ standard library.
262 %description -l pl -n libstdc++-static
263 Biblioteka statyczna C++.
266 Summary: The C Pre Processor
267 Summary(pl): Preprocesor C
268 Group: Development/Languages
269 Group(de): Entwicklung/Sprachen
270 Group(pl): Programowanie/Jêzyki
275 The C preprocessor is a "macro processor" that is used automatically
276 by the C compiler to transform your program before actual compilation.
277 It is called a macro processor because it allows you to define
278 "macros", which are brief abbreviations for longer constructs.
280 The C preprocessor provides four separate facilities that you can use
283 - Inclusion of header files. These are files of declarations that can
284 be substituted into your program.
285 - Macro expansion. You can define "macros", which are abbreviations
286 for arbitrary fragments of C code, and then the C preprocessor will
287 replace the macros with their definitions throughout the program.
288 - Conditional compilation. Using special preprocessing directives, you
289 can include or exclude parts of the program according to various
291 - Line control. If you use a program to combine or rearrange source
292 files into an intermediate file which is then compiled, you can use
293 line control to inform the compiler of where each source line
294 originally came from.
296 %description -l pl -n cpp
297 Preprocesor C jest "makro procesorem" który jest automatycznie
298 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
299 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
300 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
301 d³ugich konstrukcji w jêzyku C.
303 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
305 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
306 deklaracji polecenia do³±czenia innego pliku.
307 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
308 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
309 identyfikatora deklarowan± wcze¶niej warto¶ci±.
310 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
311 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
312 fragmenty obrabianego strumienia tekstów.
313 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
314 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
315 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
316 odpowiada fragment pliku wynikowego.
335 %ifarch sparc sparc32
353 rm -rf obj-%{_target_platform}
354 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
356 CFLAGS="%{rpmcflags}" \
357 CXXFLAGS="%{rpmcflags}" \
358 TEXCONFIG=false ../configure \
359 --prefix=%{_prefix} \
360 --infodir=%{_infodir} \
362 %ifnarch sparc sparc64
363 --enable-threads=posix \
368 --with-gxx-include-dir="\$\{prefix\}/include/g++" \
372 PATH=$PATH:/sbin:%{_sbindir}
373 touch ../gcc/c-gperf.h
376 %{__make} -C obj-%{_target_platform} bootstrap \
377 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
382 rm -rf $RPM_BUILD_ROOT
383 install -d $RPM_BUILD_ROOT{/lib,%{_datadir}}
385 cd obj-%{_target_platform}
386 PATH=$PATH:/sbin:%{_sbindir}
389 prefix=$RPM_BUILD_ROOT%{_prefix} \
390 mandir=$RPM_BUILD_ROOT%{_mandir} \
391 infodir=$RPM_BUILD_ROOT%{_infodir}
394 prefix=$RPM_BUILD_ROOT%{_prefix} \
395 mandir=$RPM_BUILD_ROOT%{_mandir} \
396 infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
398 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
400 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
401 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
402 install %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1/
404 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
405 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
406 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
408 gzip -9nf ../READ* ../ChangeLog ../gcc/ch/chill.brochure
411 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
414 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
417 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
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
434 %post -p /sbin/ldconfig -n libstdc++
435 %postun -p /sbin/ldconfig -n libstdc++
438 rm -rf $RPM_BUILD_ROOT
441 %defattr(644,root,root,755)
442 %doc READ* ChangeLog.gz
444 %dir %{_libdir}/gcc-lib
445 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
446 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
447 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
449 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
450 %attr(755,root,root) %{_bindir}/gcc
451 %attr(755,root,root) %{_bindir}/gcov
452 %attr(755,root,root) %{_bindir}/protoize
453 %attr(755,root,root) %{_bindir}/unprotoize
454 %attr(755,root,root) %{_bindir}/cc
456 %{_mandir}/man1/gcc.1*
457 %{_mandir}/man1/gcov.1*
460 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
461 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
462 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
463 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
464 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
467 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
470 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
472 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
473 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
474 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
475 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
476 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
477 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
478 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
479 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
480 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
481 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
484 %defattr(644,root,root,755)
486 %{_mandir}/man1/g++.1.gz
488 %attr(755,root,root) %{_bindir}/g++
489 %attr(755,root,root) %{_bindir}/c++
490 %attr(755,root,root) %{_bindir}/c++filt
491 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
493 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
494 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
495 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
496 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
499 %defattr(644,root,root,755)
501 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
503 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
504 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
507 %defattr(644,root,root,755)
509 %attr(755,root,root) %{_bindir}/g77
510 %attr(755,root,root) %{_bindir}/f77
514 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
515 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
517 %{_mandir}/man1/g77.1*
518 %{_mandir}/man1/f77.1*
520 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
523 %defattr(644,root,root,755)
524 %doc gcc/ch/chill.brochure.gz
526 %attr(755,root,root) %{_bindir}/chill
530 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
531 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
532 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
535 %defattr(644,root,root,755)
537 %attr(755,root,root) %{_bindir}/gcj
538 %attr(755,root,root) %{_bindir}/gcjh
539 %attr(755,root,root) %{_bindir}/jcf-dump
540 %attr(755,root,root) %{_bindir}/jv-scan
542 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
543 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
546 %defattr(644,root,root,755)
547 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
549 %files -n libstdc++-devel
550 %defattr(644,root,root,755)
552 %attr(755,root,root) %{_libdir}/libstdc++.so
554 %files -n libstdc++-static
555 %defattr(644,root,root,755)
556 %attr(644,root,root) %{_libdir}/libstdc++.a
559 %defattr(644,root,root,755)
560 %attr(755,root,root) /lib/cpp
561 %attr(755,root,root) %{_bindir}/cpp
562 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp0
564 %{_mandir}/man1/cpp.1*
565 %{_mandir}/man1/cccp.1*
566 %{_infodir}/cpp.info*.gz