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-20000826.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}-gpc.patch
27 Patch14: %{name}-arm-config.patch
28 Patch15: %{name}-m68k-pic.patch
29 Patch16: %{name}-sparc32-rfi.patch
30 Patch17: %{name}-builtin-apply.patch
31 Patch18: %{name}-gcj-backport.patch
32 Patch19: %{name}-ppc-ice.patch
33 Patch20: %{name}-ppc-descriptions.patch
34 Patch21: %{name}-ppc-andrew-dwarf-eh.patch
36 Patch22: %{name}-alpha-complex-float.patch
37 Patch23: %{name}-emit-rtl.patch
38 Patch24: %{name}-gcj-vs-iconv.patch
39 Patch25: %{name}-libobjc.patch
40 Patch26: %{name}-pointer-arith.patch
42 Patch27: %{name}-glibc-2.2.patch
43 Patch28: %{name}-O2-bug.patch
46 Requires: binutils >= 2.9.1.0.25
47 Requires: cpp = %{version}
48 URL: http://gcc.gnu.org/
49 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52 A compiler aimed at integrating all the optimizations and features
53 necessary for a high-performance and stable development environment.
56 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
57 wyprodukowania szybkiego i stablinego kodu wynikowego.
60 Summary: C++ support for gcc
61 Summary(fr): Support C++ pour le compilateur gcc
62 Summary(pl): Wspomaganie C++ dla kompilatora gcc
63 Summary(tr): gcc için C++ desteði
64 Group: Development/Languages
65 Group(de): Entwicklung/Sprachen
66 Group(pl): Programowanie/Jêzyki
71 This package adds C++ support to the GNU C compiler. It includes
72 support for most of the current C++ specification, including templates
73 and exception handling. It does not include a standard C++ library,
74 which is available separately.
76 %description -l de c++
77 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
78 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
79 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
80 sie ist getrennt erhältlich.
82 %description -l fr c++
83 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
84 support pour la plupart des spécifications actuelles de C++, dont les
85 modéles et la gestion des exceptions. Il ne comprend pas une
86 bibliothéque C++ standard, qui est disponible séparément.
88 %description -l pl c++
89 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc. Posiada
90 wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
91 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
93 %description -l tr c++
94 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
95 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
96 C++ kitaplýðý bu pakette yer almaz.
99 Summary: Objective C support for gcc
100 Summary(de): Objektive C-Unterstützung für gcc
101 Summary(fr): Gestion d'Objective C pour gcc
102 Summary(pl): Wspomaganie obiektowego C dla kompilatora gcc
103 Summary(tr): gcc için Objective C desteði
104 Group: Development/Languages
105 Group(de): Entwicklung/Sprachen
106 Group(pl): Programowanie/Jêzyki
111 This package adds Objective C support to the GNU C compiler. Objective
112 C is a object oriented derivative of the C language, mainly used on
113 systems running NeXTSTEP. This package does not include the standard
114 objective C object library.
116 %description -l de objc
117 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
118 Objective C ist ein objektorientiertes Derivat von C, das zur
119 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
120 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
122 %description -l fr objc
123 Ce package ajoute un support Objective C au compilateur C GNU.
124 L'Objective C est un langage orienté objetdérivé du langage C,
125 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
126 pas la bibliothéque Objective C standard.
128 %description -l pl objc
129 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W
130 pakiecie nie ma jeszcze bibliotek C-obj.
132 %description -l tr objc
133 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
134 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
135 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
136 kitaplýðý bu pakette yer almaz.
139 Summary: Fortran 77 support for gcc
140 Summary(pl): Wspomaganie Fortran 77 dla gcc
141 Group: Development/Languages
142 Group(de): Entwicklung/Sprachen
143 Group(pl): Programowanie/Jêzyki
147 This apckage adds support for compiling Fortran 77 programs with the
150 %description -l pl g77
151 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc. Jest
152 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
155 Summary: CHILL support for gcc
156 Summary(pl): Wspomoganie CHILL dla gcc
157 Group: Development/Languages
158 Group(de): Entwicklung/Sprachen
159 Group(pl): Programowanie/Jêzyki
160 Requires: %{name} = %{version}
163 This package adds support for compiling CHILL programs with the GNU
166 Chill is the "CCITT High-Level Language", where CCITT is the old name
167 for what is now ITU, the International Telecommunications Union. It is
168 is language in the Modula2 family, and targets many of the same
169 applications as Ada (especially large embedded systems). Chill was
170 never used much in the United States, but is still being used in
171 Europe, Brazil, Korea, and other places.
174 Summary: Java support for gcc
175 Summary(pl): Wspomoganie Java dla gcc
176 Group: Development/Languages
177 Group(de): Entwicklung/Sprachen
178 Group(pl): Programowanie/Jêzyki
179 Requires: %{name} = %{version}
180 Requires: libgcj >= 2.95.1
183 This package adds experimental support for compiling Java(tm) programs
184 and bytecode into native code. To use this you will also need the
187 %package -n libstdc++
188 Summary: GNU c++ library
189 Summary(pl): Biblioteki GNU C++
192 Group(fr): Librairies
193 Group(pl): Biblioteki
194 Version: %{STDC_VERSION}
197 %description -n libstdc++
198 This is the GNU implementation of the standard C++ libraries, along
199 with additional GNU tools. This package includes the shared libraries
200 necessary to run C++ applications.
202 %description -l de -n libstdc++
203 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
204 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
205 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
207 %description -l fr -n libstdc++
208 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
209 des outils GNU supplémentaires. Ce package comprend les librairies
210 partagées nécessaires à l'exécution d'application C++.
212 %description -l pl -n libstdc++
213 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
214 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
215 uruchomienia aplikacji napisanych w C++.
217 %description -l tr -n libstdc++
218 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
219 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
221 %package -n libstdc++-devel
222 Summary: Header files and libraries for C++ development
223 Summary(de): Header-Dateien und Libraries zur Entwicklung mit C++
224 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++.
225 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
226 Group: Development/Libraries
227 Group(de): Entwicklung/Libraries
228 Group(fr): Development/Librairies
229 Group(pl): Programowanie/Biblioteki
230 Version: %{STDC_VERSION}
231 Requires: libstdc++ = %{STDC_VERSION}
232 Requires: %{name}-c++
233 Obsoletes: libg++-devel
235 %description -n libstdc++-devel
236 This is the GNU implementation of the standard C++ libraries. This
237 package includes the header files and libraries needed for C++
240 %description -l pl -n libstdc++-devel
241 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
242 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
243 programowaniu w jêzyku C++.
245 %package -n libstdc++-static
246 Summary: Static c++ standard library
247 Summary(pl): Biblioeka statyczna c++
248 Group: Development/Libraries
249 Group(de): Entwicklung/Libraries
250 Group(fr): Development/Librairies
251 Group(pl): Programowanie/Biblioteki
252 Version: %{STDC_VERSION}
253 Requires: libstdc++-devel = %{STDC_VERSION}
255 %description -n libstdc++-static
256 Static c++ standard library.
258 %description -l pl -n libstdc++-static
259 Biblioteka statyczna C++.
262 Summary: The C Pre Processor
263 Summary(pl): Preprocesor C
264 Group: Development/Languages
265 Group(de): Entwicklung/Sprachen
266 Group(pl): Programowanie/Jêzyki
270 The C preprocessor is a "macro processor" that is used automatically
271 by the C compiler to transform your program before actual compilation.
272 It is called a macro processor because it allows you to define
273 "macros", which are brief abbreviations for longer constructs.
275 The C preprocessor provides four separate facilities that you can use
278 - Inclusion of header files. These are files of declarations that can
279 be substituted into your program.
280 - Macro expansion. You can define "macros", which are abbreviations
281 for arbitrary fragments of C code, and then the C preprocessor will
282 replace the macros with their definitions throughout the program.
283 - Conditional compilation. Using special preprocessing directives, you
284 can include or exclude parts of the program according to various
286 - Line control. If you use a program to combine or rearrange source
287 files into an intermediate file which is then compiled, you can use
288 line control to inform the compiler of where each source line
289 originally came from.
291 %description -l pl -n cpp
292 Przeprocesor C jest "makro procesorem" który jest automatycznie
293 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
294 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
295 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
296 d³ugich konstrukcji w jêzyku C.
298 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
300 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
301 deklaracji polecenia do³±czenia innego pliku.
302 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
303 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
304 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
305 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
306 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
307 fragmenty obrabianego strumienia tekstów.
308 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
309 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
310 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
311 odpowiada fragment pliku wynikowego.
314 %setup -q -n %{name}-2.95.2
335 %ifarch sparc sparc32
357 rm -rf obj-%{_target_platform}
358 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
360 CFLAGS="%{?debug:-O -g}%{!?debug:$RPM_OPT_FLAGS}" \
361 CXXFLAGS="%{?debug:-O -g}%{!?debug:$RPM_OPT_FLAGS}" \
362 TEXCONFIG=false ../configure \
363 --prefix=%{_prefix} \
364 --infodir=%{_infodir} \
366 %ifnarch sparc sparc64
372 --with-gxx-include-dir="\$\{prefix\}/include/g++" \
375 PATH=$PATH:/sbin:%{_sbindir}
376 touch ../gcc/c-gperf.h
379 %{__make} -C obj-%{_target_platform} bootstrap \
380 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