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 Patch100: %{name}-glibc-2.2.patch
45 Requires: binutils >= 2.9.1.0.25
46 Requires: cpp = %{version}
47 URL: http://gcc.gnu.org/
48 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51 A compiler aimed at integrating all the optimizations and features
52 necessary for a high-performance and stable development environment.
55 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
56 wyprodukowania szybkiego i stablinego kodu wynikowego.
59 Summary: C++ support for gcc
60 Summary(fr): Support C++ pour le compilateur gcc
61 Summary(pl): Wspomaganie C++ dla kompilatora gcc
62 Summary(tr): gcc için C++ desteði
63 Group: Development/Languages
64 Group(de): Entwicklung/Sprachen
65 Group(pl): Programowanie/Jêzyki
70 This package adds C++ support to the GNU C compiler. It includes
71 support for most of the current C++ specification, including templates
72 and exception handling. It does not include a standard C++ library,
73 which is available separately.
75 %description -l de c++
76 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
77 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
78 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
79 sie ist getrennt erhältlich.
81 %description -l fr c++
82 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
83 support pour la plupart des spécifications actuelles de C++, dont les
84 modéles et la gestion des exceptions. Il ne comprend pas une
85 bibliothéque C++ standard, qui est disponible séparément.
87 %description -l pl c++
88 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc. Posiada
89 wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
90 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
92 %description -l tr c++
93 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
94 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
95 C++ kitaplýðý bu pakette yer almaz.
98 Summary: Objective C support for gcc
99 Summary(de): Objektive C-Unterstützung für gcc
100 Summary(fr): Gestion d'Objective C pour gcc
101 Summary(pl): Wspomaganie obiektowego C dla kompilatora gcc
102 Summary(tr): gcc için Objective C desteði
103 Group: Development/Languages
104 Group(de): Entwicklung/Sprachen
105 Group(pl): Programowanie/Jêzyki
110 This package adds Objective C support to the GNU C compiler. Objective
111 C is a object oriented derivative of the C language, mainly used on
112 systems running NeXTSTEP. This package does not include the standard
113 objective C object library.
115 %description -l de objc
116 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
117 Objective C ist ein objektorientiertes Derivat von C, das zur
118 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
119 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
121 %description -l fr objc
122 Ce package ajoute un support Objective C au compilateur C GNU.
123 L'Objective C est un langage orienté objetdérivé du langage C,
124 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
125 pas la bibliothéque Objective C standard.
127 %description -l pl objc
128 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W
129 pakiecie nie ma jeszcze bibliotek C-obj.
131 %description -l tr objc
132 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
133 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
134 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
135 kitaplýðý bu pakette yer almaz.
138 Summary: Fortran 77 support for gcc
139 Summary(pl): Wspomaganie Fortran 77 dla gcc
140 Group: Development/Languages
141 Group(de): Entwicklung/Sprachen
142 Group(pl): Programowanie/Jêzyki
146 This apckage adds support for compiling Fortran 77 programs with the
149 %description -l pl g77
150 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc. Jest
151 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
154 Summary: CHILL support for gcc
155 Summary(pl): Wspomoganie CHILL dla gcc
156 Group: Development/Languages
157 Group(de): Entwicklung/Sprachen
158 Group(pl): Programowanie/Jêzyki
159 Requires: %{name} = %{version}
162 This package adds support for compiling CHILL programs with the GNU
165 Chill is the "CCITT High-Level Language", where CCITT is the old name
166 for what is now ITU, the International Telecommunications Union. It is
167 is language in the Modula2 family, and targets many of the same
168 applications as Ada (especially large embedded systems). Chill was
169 never used much in the United States, but is still being used in
170 Europe, Brazil, Korea, and other places.
173 Summary: Java support for gcc
174 Summary(pl): Wspomoganie Java dla gcc
175 Group: Development/Languages
176 Group(de): Entwicklung/Sprachen
177 Group(pl): Programowanie/Jêzyki
178 Requires: %{name} = %{version}
179 Requires: libgcj >= 2.95.1
182 This package adds experimental support for compiling Java(tm) programs
183 and bytecode into native code. To use this you will also need the
186 %package -n libstdc++
187 Summary: GNU c++ library
188 Summary(pl): Biblioteki GNU C++
191 Group(fr): Librairies
192 Group(pl): Biblioteki
193 Version: %{STDC_VERSION}
196 %description -n libstdc++
197 This is the GNU implementation of the standard C++ libraries, along
198 with additional GNU tools. This package includes the shared libraries
199 necessary to run C++ applications.
201 %description -l de -n libstdc++
202 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
203 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
204 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
206 %description -l fr -n libstdc++
207 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
208 des outils GNU supplémentaires. Ce package comprend les librairies
209 partagées nécessaires à l'exécution d'application C++.
211 %description -l pl -n libstdc++
212 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
213 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
214 uruchomienia aplikacji napisanych w C++.
216 %description -l tr -n libstdc++
217 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
218 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
220 %package -n libstdc++-devel
221 Summary: Header files and libraries for C++ development
222 Summary(de): Header-Dateien und Libraries zur Entwicklung mit C++
223 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++.
224 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
225 Group: Development/Libraries
226 Group(de): Entwicklung/Libraries
227 Group(fr): Development/Librairies
228 Group(pl): Programowanie/Biblioteki
229 Version: %{STDC_VERSION}
230 Requires: libstdc++ = %{STDC_VERSION}
231 Requires: %{name}-c++
232 Obsoletes: libg++-devel
234 %description -n libstdc++-devel
235 This is the GNU implementation of the standard C++ libraries. This
236 package includes the header files and libraries needed for C++
239 %description -l pl -n libstdc++-devel
240 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
241 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
242 programowaniu w jêzyku C++.
244 %package -n libstdc++-static
245 Summary: Static c++ standard library
246 Summary(pl): Biblioeka statyczna c++
247 Group: Development/Libraries
248 Group(de): Entwicklung/Libraries
249 Group(fr): Development/Librairies
250 Group(pl): Programowanie/Biblioteki
251 Version: %{STDC_VERSION}
252 Requires: libstdc++-devel = %{STDC_VERSION}
254 %description -n libstdc++-static
255 Static c++ standard library.
257 %description -l pl -n libstdc++-static
258 Biblioteka statyczna C++.
261 Summary: The C Pre Processor
262 Summary(pl): Preprocesor C
263 Group: Development/Languages
264 Group(de): Entwicklung/Sprachen
265 Group(pl): Programowanie/Jêzyki
269 The C preprocessor is a "macro processor" that is used automatically
270 by the C compiler to transform your program before actual compilation.
271 It is called a macro processor because it allows you to define
272 "macros", which are brief abbreviations for longer constructs.
274 The C preprocessor provides four separate facilities that you can use
277 - Inclusion of header files. These are files of declarations that can
278 be substituted into your program.
279 - Macro expansion. You can define "macros", which are abbreviations
280 for arbitrary fragments of C code, and then the C preprocessor will
281 replace the macros with their definitions throughout the program.
282 - Conditional compilation. Using special preprocessing directives, you
283 can include or exclude parts of the program according to various
285 - Line control. If you use a program to combine or rearrange source
286 files into an intermediate file which is then compiled, you can use
287 line control to inform the compiler of where each source line
288 originally came from.
290 %description -l pl -n cpp
291 Przeprocesor C jest "makro procesorem" który jest automatycznie
292 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
293 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
294 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
295 d³ugich konstrukcji w jêzyku C.
297 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
299 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
300 deklaracji polecenia do³±czenia innego pliku.
301 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
302 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
303 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
304 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
305 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
306 fragmenty obrabianego strumienia tekstów.
307 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
308 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
309 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
310 odpowiada fragment pliku wynikowego.
335 %ifarch sparc sparc32
354 %{?glibc22:%patch100 -p1}
358 rm -rf obj-%{_target_platform}
359 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
361 CFLAGS="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g}"
362 CXXFLAGS="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g}"
364 --prefix=%{_prefix} \
365 --infodir=%{_infodir} \
367 %ifnarch sparc sparc64
373 --with-gxx-include-dir="\$\{prefix\}/include/g++" \
376 PATH=$PATH:/sbin:%{_sbindir}
377 touch ../gcc/c-gperf.h
379 %{__make} LDFLAGS_FOR_TARGET="%{!?debug:-s}" \
384 rm -rf $RPM_BUILD_ROOT
385 install -d $RPM_BUILD_ROOT%{_datadir}
387 cd obj-%{_target_platform}
388 PATH=$PATH:/sbin:%{_sbindir}
391 prefix=$RPM_BUILD_ROOT%{_prefix} \
392 mandir=$RPM_BUILD_ROOT%{_mandir} \
393 infodir=$RPM_BUILD_ROOT%{_infodir}
396 prefix=$RPM_BUILD_ROOT%{_prefix} \
397 mandir=$RPM_BUILD_ROOT%{_mandir} \
398 infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
400 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
402 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
403 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
404 install %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1/
406 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
408 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
410 install -d $RPM_BUILD_ROOT/lib
411 (cd $RPM_BUILD_ROOT; \
412 ln -sf ../`dirname usr/lib/gcc-lib/%{_target_cpu}*/*/cpp`/cpp $RPM_BUILD_ROOT/lib/cpp)
414 gzip -9nf ../READ* ../ChangeLog ../gcc/ch/chill.brochure
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
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
440 %post -p /sbin/ldconfig -n libstdc++
441 %postun -p /sbin/ldconfig -n libstdc++
444 rm -rf $RPM_BUILD_ROOT
447 %defattr(644,root,root,755)
448 %doc READ* ChangeLog.gz
450 %dir %{_libdir}/gcc-lib
451 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
452 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
453 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
455 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
456 %attr(755,root,root) %{_bindir}/gcc
457 %attr(755,root,root) %{_bindir}/gcov
458 %attr(755,root,root) %{_bindir}/protoize
459 %attr(755,root,root) %{_bindir}/unprotoize
460 %attr(755,root,root) %{_bindir}/cc
462 %{_mandir}/man1/gcc.1*
463 %{_mandir}/man1/gcov.1*
466 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
467 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
468 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
469 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
470 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
473 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
476 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
478 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
479 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
480 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
481 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
482 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
483 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
484 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
485 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
486 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
487 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
490 %defattr(644,root,root,755)
492 %{_mandir}/man1/g++.1.gz
494 %attr(755,root,root) %{_bindir}/g++
495 %attr(755,root,root) %{_bindir}/c++
496 %attr(755,root,root) %{_bindir}/c++filt
497 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
499 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
500 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
501 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
502 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
505 %defattr(644,root,root,755)
507 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
509 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
510 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
513 %defattr(644,root,root,755)
515 %attr(755,root,root) %{_bindir}/g77
516 %attr(755,root,root) %{_bindir}/f77
520 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
521 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
523 %{_mandir}/man1/g77.1*
524 %{_mandir}/man1/f77.1*
526 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
529 %defattr(644,root,root,755)
530 %doc gcc/ch/chill.brochure.gz
532 %attr(755,root,root) %{_bindir}/chill
536 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
537 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
538 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
541 %defattr(644,root,root,755)
543 %attr(755,root,root) %{_bindir}/gcj
544 %attr(755,root,root) %{_bindir}/gcjh
545 %attr(755,root,root) %{_bindir}/jcf-dump
546 %attr(755,root,root) %{_bindir}/jv-scan
548 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
549 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
552 %defattr(644,root,root,755)
553 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
555 %files -n libstdc++-devel
556 %defattr(644,root,root,755)
558 %attr(755,root,root) %{_libdir}/libstdc++.so
560 %files -n libstdc++-static
561 %defattr(644,root,root,755)
562 %attr(644,root,root) %{_libdir}/libstdc++.a
565 %defattr(644,root,root,755)
566 %attr(755,root,root) /lib/cpp
568 %{_mandir}/man1/cpp.1*
569 %{_mandir}/man1/cccp.1*
570 %{_infodir}/cpp.info*.gz
572 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp