1 %define STDC_VERSION 2.10.0
2 %define GCJ_VERSION 2.95.1
3 Summary: GNU Compiler Collection
4 Summary(pl): Kolekcja kompilatorów GNU
9 Group: Development/Languages
10 Group(pl): Programowanie/Jêzyki
11 Source0: ftp://ftp.gnu.org/pub/gnu/gcc/%{name}-%{version}.tar.gz
12 Source1: ftp://sourceware.cygnus.com/pub/java/libgcj-%{GCJ_VERSION}.tar.gz
13 Patch0: gcc-info.patch
14 Patch1: gcc-libgcj-config.patch
15 Patch2: gcc-pld-linux.patch
16 Patch3: gcc-libstdc++.patch
17 Patch4: gcc-bootstrap.patch
18 Patch5: gcc-cpp-macro-doc.patch
19 Patch6: gcc-default-arch.patch
20 Patch7: gcc-cvs-updates.patch
21 Patch8: gcc-alpha-ev5-fix.patch
22 Patch9: gcc-libstdc++-out-of-mem.patch
23 Patch10: gcc-libstdc++-valarray.patch
24 Patch11: gcc-libstdc++-wstring.patch
25 Patch12: gcc-libstdc++-wall3.patch
26 Patch13: gcc-libstdc++-bastring.patch
27 Patch14: gcc-manpage.patch
28 Patch15: gcc-cpp-dos-newlines.patch
29 Patch16: gcc-g++-is-tree.patch
30 Patch17: gcc-gpc.patch
31 Patch18: gcc-arm-config.patch
32 Patch19: gcc-m68k-pic.patch
33 Patch20: gcc-sparc32-rfi.patch
34 Patch21: gcc-builtin-apply.patch
35 Patch22: gcc-ppc-ice.patch
36 Patch23: gcc-ppc-descriptions.patch
37 Patch24: gcc-ppc-andrew-dwarf-eh.patch
38 Requires: binutils >= 2.9.1.0.25
41 Prereq: /usr/sbin/fix-info-dir
42 URL: http://www.gnu.org/
43 BuildRoot: /tmp/%{name}-%{version}-root
46 A compiler aimed at integrating all the optimizations and features
47 necessary for a high-performance and stable development environment.
50 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
51 wyprodukowania szybkiego i stablinego kodu wynikowego.
54 Summary: C++ support for gcc
55 Summary(fr): Support C++ pour le compilateur gcc
56 Summary(pl): Wspomaganie C++ dla kompilatora gcc
57 Summary(tr): gcc için C++ desteði
58 Group: Development/Languages
59 Group(pl): Programowanie/Jêzyki
64 This package adds C++ support to the GNU C compiler. It includes support
65 for most of the current C++ specification, including templates and
66 exception handling. It does not include a standard C++ library, which
67 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 - sie ist
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 bibliothéque
79 C++ standard, qui est disponible séparément.
81 %description -l pl c++
82 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc.
83 Posiada 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 aykýrý durum
88 iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart C++ kitaplýðý bu
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(pl): Programowanie/Jêzyki
103 This package adds Objective C support to the GNU C compiler. Objective C is
104 a object oriented derivative of the C language, mainly used on systems
105 running NeXTSTEP. This package does not include the standard objective C
108 %description -l de objc
109 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support. Objective
110 C ist ein objektorientiertes Derivat von C, das zur Hauptsache auf Systemen
111 mit NeXTSTEP zum Einsatz kommt. Die Standard-Objective-C-Objekt-Library ist
112 nicht Teil des Pakets.
114 %description -l fr objc
115 Ce package ajoute un support Objective C au compilateur C GNU. L'Objective C
116 est un langage orienté objetdérivé du langage C, principalement utilisé sur
117 les systèmes NeXTSTEP. Ce package n'inclue pas la bibliothéque Objective C
120 %description -l pl objc
121 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W pakiecie nie
122 ma jeszcze bibliotek C-obj.
124 %description -l tr objc
125 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C, C
126 dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan sistemlerde
127 yaygýn olarak kullanýlýr. Standart Objective C nesne kitaplýðý bu pakette
131 Summary: Fortran 77 support for gcc
132 Summary(pl): Wspomaganie Fortran 77 dla gcc
133 Group: Development/Languages
134 Group(pl): Programowanie/Jêzyki
135 Prereq: /usr/sbin/fix-info-dir
139 This apckage adds support for compiling Fortran 77 programs with the GNU
142 %description -l pl g77
143 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc.
144 Jest 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(pl): Programowanie/Jêzyki
151 Requires: %{name} = %{version}
152 Prereq: /usr/sbin/fix-info-dir
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
159 name for what is now ITU, the International Telecommunications Union.
160 It is is language in the Modula2 family, and targets many of the
161 same applications as Ada (especially large embedded systems).
162 Chill was never used much in the United States, but is still
163 being used in 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(pl): Programowanie/Jêzyki
170 Requires: %{name} = %{version}
171 Requires: %{name}-libgcj = %{version}
174 This package adds experimental support for compiling Java(tm) programs and
175 bytecode into native code. To use this you will also need the gcc-libgcj
179 Summary: Java runtime library for gcc
181 URL: http://sourceware.cygnus.com/java/
185 The Java runtime library. You will need this package to compile your Java
186 programs using the gcc Java compiler (gcj).
188 %package libgcj-static
189 Summary: Static java runtime library for gcc
190 Group: Development/Libraries
191 URL: http://sourceware.cygnus.com/java/
192 Requires: %{name}-libgcj = %{version}
194 %description libgcj-static
195 The static java runtime library. You will need this package to staticly
196 compile your Java programs using the gcc Java compiler (gcj).
198 %package -n libstdc++
199 Summary: GNU c++ library
200 Summary(pl): Biblioteki GNU C++
202 Group(pl): Biblioteki
203 Version: %{STDC_VERSION}
206 %description -n libstdc++
207 This is the GNU implementation of the standard C++ libraries, along with
208 additional GNU tools. This package includes the shared libraries
209 necessary to run C++ applications.
211 %description -l de -n libstdc++
212 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit weiteren
213 GNU-Tools. Dieses Paket enthält die zum Ausführen von C++-Anwendungen
214 erforderlichen gemeinsam genutzten Libraries.
216 %description -l fr -n libstdc++
217 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que des
218 outils GNU supplémentaires. Ce package comprend les librairies partagées
219 nécessaires à l'exécution d'application C++.
221 %description -l pl -n libstdc++
222 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych bibliotek
223 C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do uruchomienia
224 aplikacji napisanych w C++.
226 %description -l tr -n libstdc++
227 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
228 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
230 %package -n libstdc++-devel
231 Summary: Header files and libraries for C++ development
232 Summary(de): Header-Dateien und Libraries zur Entwicklung mit C++
233 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++.
234 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
235 Group: Development/Libraries
236 Group(pl): Programowanie/Biblioteki
237 Version: %{STDC_VERSION}
238 Requires: libstdc++ = %{STDC_VERSION}
239 Obsoletes: libg++-devel
241 %description -n libstdc++-devel
242 This is the GNU implementation of the standard C++ libraries. This package
243 includes the header files and libraries needed for C++ development.
245 %description -l pl -n libstdc++-devel
246 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych bibliotek
247 C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy programowaniu
250 %package -n libstdc++-static
251 Summary: Static c++ standard library
252 Summary(pl): Biblioeka statyczna c++
253 Group: Development/Libraries
254 Group(pl): Programowanie/Biblioteki
255 Version: %{STDC_VERSION}
256 Requires: libstdc++-devel = %{STDC_VERSION}
258 %description -n libstdc++-static
259 Static c++ standard library.
261 %description -l pl -n libstdc++-static
262 Biblioteka statyczna C++.
265 Summary: The C Pre Processor
266 Summary(pl): Preprocesor C
267 Group: Development/Languages
268 Group(pl): Programowanie/Jêzyki
269 Prereq: /usr/sbin/fix-info-dir
273 The C preprocessor is a "macro processor" that is used automatically by the
274 C compiler to transform your program before actual compilation. It is called
275 a macro processor because it allows you to define "macros", which are brief
276 abbreviations for longer constructs.
278 The C preprocessor provides four separate facilities that you can use as you
281 * Inclusion of header files. These are files of declarations that
282 can be substituted into your program.
283 * Macro expansion. You can define "macros", which are abbreviations for
284 arbitrary fragments of C code, and then the C preprocessor will replace
285 the macros with their definitions throughout the program.
286 * Conditional compilation. Using special preprocessing directives,
287 you can include or exclude parts of the program according to various
289 * Line control. If you use a program to combine or rearrange source
290 files into an intermediate file which is then compiled, you can use line
291 control to inform the compiler of where each source line originally came
294 %description -l pl -n cpp
295 Przeprocesor C jest "makro procesorem" który jest automatycznie u¿ywany
296 przez kompilator C do obróbki kompilowanego programu przed w³a¶ciw±
297 kompilacj±. Jest on nazywany makroprocesorem, poniewa¿ umo¿liwia
298 definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie d³ugich konstrukcji
301 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
303 * Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
304 deklaracji polecenia do³±czenia innego pliku.
305 * Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
306 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
307 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
308 * Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
309 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne fragmenty
310 obrabianego strumienia tekstów.
311 * Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom podlega
312 wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania s±
313 zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
314 odpowiada fragment pliku wynikowego.
319 mv libgcj-%{GCJ_VERSION} libgcj
320 mv libgcj/boehm-gc libgcj/libjava libgcj/zlib libgcj/zip .
349 rm -rf obj-%{_target_platform}
350 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
352 CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="-s" \
354 --prefix=%{_prefix} \
355 --infodir=%{_infodir} \
357 %ifnarch sparc sparc64
363 --with-gxx-include-dir="\$\{prefix\}/include/g++" \
366 PATH=$PATH:/sbin:%{_sbindir}
367 touch ../gcc/c-gperf.h
369 make LDFLAGS_FOR_TARGET="-s" \
375 rm -rf $RPM_BUILD_ROOT
376 install -d $RPM_BUILD_ROOT%{_datadir}
378 cd obj-%{_target_platform}
379 PATH=$PATH:/sbin:%{_sbindir}
382 prefix=$RPM_BUILD_ROOT%{_prefix} \
383 mandir=$RPM_BUILD_ROOT%{_mandir} \
384 infodir=$RPM_BUILD_ROOT%{_infodir}
387 prefix=$RPM_BUILD_ROOT%{_prefix} \
388 mandir=$RPM_BUILD_ROOT%{_mandir} \
389 infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
391 strip $RPM_BUILD_ROOT%{_bindir}/* || :
393 strip $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/{cc1,cc1chill,cc1obj,cc1plus,cpp,f771,collect2,jc1,jvgenmain}
394 strip --strip-unneeded $RPM_BUILD_ROOT%{_libdir}/libstdc++.so.*.*.*
396 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
398 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
399 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
401 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
403 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
405 install -d $RPM_BUILD_ROOT/lib
406 (cd $RPM_BUILD_ROOT; \
407 ln -sf ../`dirname usr/lib/gcc-lib/%{_target_cpu}*/*/cpp`/cpp $RPM_BUILD_ROOT/lib/cpp)
409 gzip -9nf $RPM_BUILD_ROOT%{_datadir}/{info/*.info*,man/man1/*} \
410 ../READ* ../ChangeLog ../gcc/ch/chill.brochure
413 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
416 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
419 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
422 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
425 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
428 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
431 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
434 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
436 %post libgcj -p /sbin/ldconfig
438 %post -p /sbin/ldconfig -n libstdc++
439 %postun -p /sbin/ldconfig -n libstdc++
442 rm -rf $RPM_BUILD_ROOT
445 %defattr(644,root,root,755)
446 %doc READ* ChangeLog.gz
448 %dir %{_libdir}/gcc-lib
449 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
450 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
451 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
453 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
454 %attr(755,root,root) %{_bindir}/gcc
455 %attr(755,root,root) %{_bindir}/gcov
456 %attr(755,root,root) %{_bindir}/protoize
457 %attr(755,root,root) %{_bindir}/unprotoize
458 %attr(755,root,root) %{_bindir}/cc
460 %{_mandir}/man1/gcc.1*
463 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
464 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
465 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
466 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
467 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
470 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
473 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
475 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
476 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
477 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
478 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
479 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
480 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
481 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
482 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
483 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
484 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
487 %defattr(644,root,root,755)
489 %{_mandir}/man1/g++.1.gz
491 %attr(755,root,root) %{_bindir}/g++
492 %attr(755,root,root) %{_bindir}/c++
493 %attr(755,root,root) %{_bindir}/c++filt
494 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
496 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
497 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
498 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
499 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
502 %defattr(644,root,root,755)
504 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
506 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
507 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
510 %defattr(644,root,root,755)
512 %attr(755,root,root) %{_bindir}/g77
513 %attr(755,root,root) %{_bindir}/f77
517 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
518 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
520 %{_mandir}/man1/g77.1*
521 %{_mandir}/man1/f77.1*
523 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
526 %defattr(644,root,root,755)
527 %doc gcc/ch/chill.brochure.gz
529 %attr(755,root,root) %{_bindir}/chill
533 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
534 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
535 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
538 %defattr(644,root,root,755)
540 %attr(755,root,root) %{_bindir}/gcj
541 %attr(755,root,root) %{_bindir}/gcjh
542 %attr(755,root,root) %{_bindir}/jcf-dump
543 %attr(755,root,root) %{_bindir}/jv-convert
544 %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)
554 %attr(755,root,root) %{_libdir}/lib*gcj*.so
555 %attr(755,root,root) %{_libdir}/lib*gcj*.so.*.*.*
558 %defattr(644,root,root,755)
560 %{_libdir}/lib*gcj*.a
561 %{_libdir}/lib*gcj*.la
564 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
566 %files -n libstdc++-devel
567 %defattr(644,root,root,755)
569 %attr(755,root,root) %{_libdir}/libstdc++.so
571 %files -n libstdc++-static
572 %attr(644,root,root) %{_libdir}/libstdc++.a
575 %defattr(644,root,root,755)
576 %attr(755,root,root) /lib/cpp
578 %{_mandir}/man1/cpp.1*
579 %{_mandir}/man1/cccp.1*
580 %{_infodir}/cpp.info*.gz
582 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp