1 %define STDC_VERSION 2.10.0
3 Summary: GNU Compiler Collection
4 Summary(pl): Kolekcja kompilatorów GNU
9 Group: Development/Languages
10 Group(de): Entwicklung/Sprachen
11 Group(pl): Programowanie/Jêzyki
12 Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}-prerelease/%{name}-%{version}.test3.tar.gz
14 Patch0: %{name}-info.patch
15 Patch1: %{name}-pld-linux.patch
16 Patch2: %{name}-libstdc++.patch
17 Patch3: %{name}-bootstrap.patch
18 Patch4: %{name}-cpp-macro-doc.patch
19 Patch5: %{name}-default-arch.patch
20 Patch6: %{name}-libstdc++-out-of-mem.patch
21 Patch7: %{name}-libstdc++-wstring.patch
22 Patch8: %{name}-libstdc++-bastring.patch
23 Patch9: %{name}-manpage.patch
24 Patch10: %{name}-cpp-dos-newlines.patch
25 Patch11: %{name}-gpc.patch
26 Patch12: %{name}-m68k-pic.patch
27 Patch13: %{name}-sparc32-rfi.patch
28 Patch14: %{name}-builtin-apply.patch
29 Patch15: %{name}-ppc-ice.patch
30 Patch16: %{name}-ppc-descriptions.patch
31 Patch17: %{name}-alpha-complex-float.patch
32 Patch18: %{name}-gcj-vs-iconv.patch
33 Patch19: %{name}-libobjc.patch
34 Patch20: %{name}-pointer-arith.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 stablinego 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
63 This package adds C++ support to the GNU C compiler. It includes
64 support for most of the current C++ specification, including templates
65 and exception handling. It does not include a standard C++ library,
66 which is available separately.
68 %description -l de c++
69 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
70 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
71 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
72 sie ist getrennt erhältlich.
74 %description -l fr c++
75 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
76 support pour la plupart des spécifications actuelles de C++, dont les
77 modéles et la gestion des exceptions. Il ne comprend pas une
78 bibliothéque C++ standard, qui est disponible séparément.
80 %description -l pl c++
81 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc. Posiada
82 wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
83 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
85 %description -l tr c++
86 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
87 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
88 C++ kitaplýðý bu pakette yer almaz.
91 Summary: Objective C support for gcc
92 Summary(de): Objektive C-Unterstützung für gcc
93 Summary(fr): Gestion d'Objective C pour gcc
94 Summary(pl): Wspomaganie obiektowego C dla kompilatora gcc
95 Summary(tr): gcc için Objective C desteði
96 Group: Development/Languages
97 Group(de): Entwicklung/Sprachen
98 Group(pl): Programowanie/Jêzyki
103 This package adds Objective C support to the GNU C compiler. Objective
104 C is a object oriented derivative of the C language, mainly used on
105 systems running NeXTSTEP. This package does not include the standard
106 objective C object library.
108 %description -l de objc
109 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
110 Objective C ist ein objektorientiertes Derivat von C, das zur
111 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
112 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
114 %description -l fr objc
115 Ce package ajoute un support Objective C au compilateur C GNU.
116 L'Objective C est un langage orienté objetdérivé du langage C,
117 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
118 pas la bibliothéque Objective C standard.
120 %description -l pl objc
121 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W
122 pakiecie nie ma jeszcze bibliotek C-obj.
124 %description -l tr objc
125 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
126 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
127 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
128 kitaplýðý bu pakette yer almaz.
131 Summary: Fortran 77 support for gcc
132 Summary(pl): Wspomaganie Fortran 77 dla gcc
133 Group: Development/Languages
134 Group(de): Entwicklung/Sprachen
135 Group(pl): Programowanie/Jêzyki
139 This apckage adds support for compiling Fortran 77 programs with the
142 %description -l pl g77
143 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc. Jest
144 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
147 Summary: CHILL support for gcc
148 Summary(pl): Wspomoganie CHILL dla gcc
149 Group: Development/Languages
150 Group(de): Entwicklung/Sprachen
151 Group(pl): Programowanie/Jêzyki
152 Requires: %{name} = %{version}
155 This package adds support for compiling CHILL programs with the GNU
158 Chill is the "CCITT High-Level Language", where CCITT is the old name
159 for what is now ITU, the International Telecommunications Union. It is
160 is language in the Modula2 family, and targets many of the same
161 applications as Ada (especially large embedded systems). Chill was
162 never used much in the United States, but is still being used in
163 Europe, Brazil, Korea, and other places.
166 Summary: Java support for gcc
167 Summary(pl): Wspomoganie Java dla gcc
168 Group: Development/Languages
169 Group(de): Entwicklung/Sprachen
170 Group(pl): Programowanie/Jêzyki
171 Requires: %{name} = %{version}
172 Requires: libgcj >= 2.95.1
175 This package adds experimental support for compiling Java(tm) programs
176 and bytecode into native code. To use this you will also need the
179 %package -n libstdc++
180 Summary: GNU c++ library
181 Summary(pl): Biblioteki GNU C++
184 Group(fr): Librairies
185 Group(pl): Biblioteki
186 Version: %{STDC_VERSION}
189 %description -n libstdc++
190 This is the GNU implementation of the standard C++ libraries, along
191 with additional GNU tools. This package includes the shared libraries
192 necessary to run C++ applications.
194 %description -l de -n libstdc++
195 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
196 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
197 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
199 %description -l fr -n libstdc++
200 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
201 des outils GNU supplémentaires. Ce package comprend les librairies
202 partagées nécessaires à l'exécution d'application C++.
204 %description -l pl -n libstdc++
205 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
206 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
207 uruchomienia aplikacji napisanych w C++.
209 %description -l tr -n libstdc++
210 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
211 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
213 %package -n libstdc++-devel
214 Summary: Header files and libraries for C++ development
215 Summary(de): Header-Dateien und Libraries zur Entwicklung mit C++
216 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++.
217 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
218 Group: Development/Libraries
219 Group(de): Entwicklung/Libraries
220 Group(fr): Development/Librairies
221 Group(pl): Programowanie/Biblioteki
222 Version: %{STDC_VERSION}
223 Requires: libstdc++ = %{STDC_VERSION}
224 Requires: %{name}-c++
225 Obsoletes: libg++-devel
227 %description -n libstdc++-devel
228 This is the GNU implementation of the standard C++ libraries. This
229 package includes the header files and libraries needed for C++
232 %description -l pl -n libstdc++-devel
233 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
234 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
235 programowaniu w jêzyku C++.
237 %package -n libstdc++-static
238 Summary: Static c++ standard library
239 Summary(pl): Biblioeka statyczna c++
240 Group: Development/Libraries
241 Group(de): Entwicklung/Libraries
242 Group(fr): Development/Librairies
243 Group(pl): Programowanie/Biblioteki
244 Version: %{STDC_VERSION}
245 Requires: libstdc++-devel = %{STDC_VERSION}
247 %description -n libstdc++-static
248 Static c++ standard library.
250 %description -l pl -n libstdc++-static
251 Biblioteka statyczna C++.
254 Summary: The C Pre Processor
255 Summary(pl): Preprocesor C
256 Group: Development/Languages
257 Group(de): Entwicklung/Sprachen
258 Group(pl): Programowanie/Jêzyki
262 The C preprocessor is a "macro processor" that is used automatically
263 by the C compiler to transform your program before actual compilation.
264 It is called a macro processor because it allows you to define
265 "macros", which are brief abbreviations for longer constructs.
267 The C preprocessor provides four separate facilities that you can use
270 - Inclusion of header files. These are files of declarations that can
271 be substituted into your program.
272 - Macro expansion. You can define "macros", which are abbreviations
273 for arbitrary fragments of C code, and then the C preprocessor will
274 replace the macros with their definitions throughout the program.
275 - Conditional compilation. Using special preprocessing directives, you
276 can include or exclude parts of the program according to various
278 - Line control. If you use a program to combine or rearrange source
279 files into an intermediate file which is then compiled, you can use
280 line control to inform the compiler of where each source line
281 originally came from.
283 %description -l pl -n cpp
284 Przeprocesor C jest "makro procesorem" który jest automatycznie
285 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
286 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
287 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
288 d³ugich konstrukcji w jêzyku C.
290 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
292 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
293 deklaracji polecenia do³±czenia innego pliku.
294 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
295 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
296 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
297 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
298 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
299 fragmenty obrabianego strumienia tekstów.
300 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
301 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
302 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
303 odpowiada fragment pliku wynikowego.
306 %setup -q -n %{name}-%{ver}.test3
322 %ifarch sparc sparc32
339 rm -rf obj-%{_target_platform}
340 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
342 CFLAGS="%{?debug:-O0 -g}%{!?debug:$RPM_OPT_FLAGS}" \
343 CXXFLAGS="%{?debug:-O0 -g}%{!?debug:$RPM_OPT_FLAGS}" \
344 TEXCONFIG=false ../configure \
345 --prefix=%{_prefix} \
346 --infodir=%{_infodir} \
348 %ifnarch sparc sparc64
354 --with-gxx-include-dir="\$\{prefix\}/include/g++" \
358 PATH=$PATH:/sbin:%{_sbindir}
359 touch ../gcc/c-gperf.h
362 %{__make} -C obj-%{_target_platform} bootstrap \
363 LDFLAGS_FOR_TARGET="%{!?debug:-s}" \
368 rm -rf $RPM_BUILD_ROOT
369 install -d $RPM_BUILD_ROOT{/lib,%{_datadir}}
371 cd obj-%{_target_platform}
372 PATH=$PATH:/sbin:%{_sbindir}
375 prefix=$RPM_BUILD_ROOT%{_prefix} \
376 mandir=$RPM_BUILD_ROOT%{_mandir} \
377 infodir=$RPM_BUILD_ROOT%{_infodir}
380 prefix=$RPM_BUILD_ROOT%{_prefix} \
381 mandir=$RPM_BUILD_ROOT%{_mandir} \
382 infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
384 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
386 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
387 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
388 install %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1/
390 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
391 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
392 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
394 gzip -9nf ../READ* ../ChangeLog ../gcc/ch/chill.brochure
397 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
400 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
403 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
406 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
409 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
412 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
415 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
418 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
420 %post -p /sbin/ldconfig -n libstdc++
421 %postun -p /sbin/ldconfig -n libstdc++
424 rm -rf $RPM_BUILD_ROOT
427 %defattr(644,root,root,755)
428 %doc READ* ChangeLog.gz
430 %dir %{_libdir}/gcc-lib
431 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
432 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
433 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
435 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
436 %attr(755,root,root) %{_bindir}/gcc
437 %attr(755,root,root) %{_bindir}/gcov
438 %attr(755,root,root) %{_bindir}/protoize
439 %attr(755,root,root) %{_bindir}/unprotoize
440 %attr(755,root,root) %{_bindir}/cc
442 %{_mandir}/man1/gcc.1*
443 %{_mandir}/man1/gcov.1*
446 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
447 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
448 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
449 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
450 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
453 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
456 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
458 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
459 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
460 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
461 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
462 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
463 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
464 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
465 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
466 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
467 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
470 %defattr(644,root,root,755)
472 %{_mandir}/man1/g++.1.gz
474 %attr(755,root,root) %{_bindir}/g++
475 %attr(755,root,root) %{_bindir}/c++
476 %attr(755,root,root) %{_bindir}/c++filt
477 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
479 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
480 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
481 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
482 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
485 %defattr(644,root,root,755)
487 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
489 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
490 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
493 %defattr(644,root,root,755)
495 %attr(755,root,root) %{_bindir}/g77
496 %attr(755,root,root) %{_bindir}/f77
500 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
501 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
503 %{_mandir}/man1/g77.1*
504 %{_mandir}/man1/f77.1*
506 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
509 %defattr(644,root,root,755)
510 %doc gcc/ch/chill.brochure.gz
512 %attr(755,root,root) %{_bindir}/chill
516 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
517 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
518 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
521 %defattr(644,root,root,755)
523 %attr(755,root,root) %{_bindir}/gcj
524 %attr(755,root,root) %{_bindir}/gcjh
525 %attr(755,root,root) %{_bindir}/jcf-dump
526 %attr(755,root,root) %{_bindir}/jv-scan
528 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
529 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
532 %defattr(644,root,root,755)
533 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
535 %files -n libstdc++-devel
536 %defattr(644,root,root,755)
538 %attr(755,root,root) %{_libdir}/libstdc++.so
540 %files -n libstdc++-static
541 %defattr(644,root,root,755)
542 %attr(644,root,root) %{_libdir}/libstdc++.a
545 %defattr(644,root,root,755)
546 %attr(755,root,root) /lib/cpp
547 %attr(755,root,root) %{_bindir}/cpp
548 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp0
550 %{_mandir}/man1/cpp.1*
551 %{_mandir}/man1/cccp.1*
552 %{_infodir}/cpp.info*.gz