1 Summary: GNU C Compiler
2 Summary(pl): Kompilator GNU
7 Group: Development/Languages
8 Group(pl): Programowanie/Jêzyki
9 Source0: ftp://ftp.gnu.org/pub/gnu/gcc/%{name}-%{version}.tar.gz
10 Source1: ftp://sourceware.cygnus.com/pub/java/libgcj-%{version}.tar.gz
11 Source2: libstdc++-compat.tar.gz
12 Patch0: gcc-info.patch
13 Patch1: gcc-libgcj-config.patch
14 Patch2: gcc-pld-linux.patch
15 Requires: binutils >= 2.9.1.0.25
17 URL: http://www.gnu.org/
18 BuildRoot: /tmp/%{name}-%{version}-root
19 %define STDC_VERSION 2.10.0
20 %define GCJ_VERSION 2.95
23 A compiler aimed at integrating all the optimizations and features
24 necessary for a high-performance and stable development environment.
27 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
28 wyprodukowania szybkiego i stablinego kodu wynikowego.
31 Summary: C++ support for gcc
32 Summary(fr): Support C++ pour le compilateur gcc.
33 Summary(pl): Wspomaganie C++ dla kompilatora gcc
34 Summary(tr): gcc için C++ desteði
35 Group: Development/Languages
36 Group(pl): Programowanie/Jêzyki
40 This package adds C++ support to the GNU C compiler. It includes support
41 for most of the current C++ specification, including templates and
42 exception handling. It does not include a standard C++ library, which
43 is available separately.
45 %description -l de c++
46 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
47 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
48 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten - sie ist
51 %description -l fr c++
52 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
53 support pour la plupart des spécifications actuelles de C++, dont les
54 modéles et la gestion des exceptions. Il ne comprend pas une bibliothéque
55 C++ standard, qui est disponible séparément.
57 %description -l pl c++
58 Programy z tego pakietu zapewniaj± wsparcie do C++ do GNU C kompilatora.
59 Posiada wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
60 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
62 %description -l tr c++
63 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve aykýrý durum
64 iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart C++ kitaplýðý bu
68 Summary: Objective C support for gcc
69 Summary(de): Objektive C-Unterstützung für gcc
70 Summary(fr): Gestion d'Objective C pour gcc
71 Summary(pl): Wspomaganie obiektowego C dla kompilatora gcc
72 Summary(tr): gcc için Objective C desteði
73 Group: Development/Languages
74 Group(pl): Programowanie/Jêzyki
78 This package adds Objective C support to the GNU C compiler. Objective C is
79 a object oriented derivative of the C language, mainly used on systems
80 running NeXTSTEP. This package does not include the standard objective C
83 %description -l de objc
84 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support. Objective
85 C ist ein objektorientiertes Derivat von C, das zur Hauptsache auf Systemen
86 mit NeXTSTEP zum Einsatz kommt. Die Standard-Objective-C-Objekt-Library ist
87 nicht Teil des Pakets.
89 %description -l fr objc
90 Ce package ajoute un support Objective C au compilateur C GNU. L'Objective C
91 est un langage orienté objetdérivé du langage C, principalement utilisé sur
92 les systèmes NeXTSTEP. Ce package n'inclue pas la bibliothéque Objective C
95 %description -l pl objc
96 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W pakiecie nie
97 ma jeszcze bibliotek C-obj.
99 %description -l tr objc
100 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C, C
101 dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan sistemlerde
102 yaygýn olarak kullanýlýr. Standart Objective C nesne kitaplýðý bu pakette
106 Summary: Fortran 77 support for gcc
107 Summary(pl): Wspomaganie Fortran 77 dla gcc
108 Group: Development/Languages
109 Group(pl): Programowanie/Jêzyki
110 Prereq: /sbin/install-info
113 This apckage adds support for compiling Fortran 77 programs with the GNU
116 %description -l pl g77
117 Ten pakiet jest wspomaganiem Fortran 77 dla kompilatora gcc.
118 Jest u¿yteczny kompilowania programów pisanych w jêzyku Fortran 77.
121 Summary: CHILL support for gcc
122 Summary(pl): Wspomoganie CHILL dla gcc
123 Group: Development/Languages
124 Group(pl): Programowanie/Jêzyki
125 Requires: %{name} = %{version}
126 Prereq: /sbin/install-info
129 This package adds support for compiling CHILL programs with the GNU
132 Chill is the "CCITT High-Level Language", where CCITT is the old
133 name for what is now ITU, the International Telecommunications Union.
134 It is is language in the Modula2 family, and targets many of the
135 same applications as Ada (especially large embedded systems).
136 Chill was never used much in the United States, but is still
137 being used in Europe, Brazil, Korea, and other places.
140 Summary: Java support for gcc
141 Summary(pl): Wspomoganie Java dla gcc
142 Group: Development/Languages
143 Group(pl): Programowanie/Jêzyki
144 Requires: %{name} = %{version}
145 Requires: %{name}-libgcj = %{version}
148 This package adds experimental support for compiling Java(tm) programs and
149 bytecode into native code. To use this you will also need the gcc-libgcj
153 Summary: Java runtime library for gcc
155 URL: http://sourceware.cygnus.com/java/
159 The Java runtime library. You will need this package to compile your Java
160 programs using the gcc Java compiler (gcj).
162 %package libgcj-static
163 Summary: Static java runtime library for gcc
164 Group: Development/Libraries
165 URL: http://sourceware.cygnus.com/java/
166 Requires: %{name}-libgcj = %{version}
168 %description libgcj-static
169 The static java runtime library. You will need this package to staticly
170 compile your Java programs using the gcc Java compiler (gcj).
172 %package -n libstdc++
173 Summary: GNU c++ library
174 Summary(pl): Biblioteki GNU C++
176 Group(pl): Biblioteki
177 Version: %{STDC_VERSION}
180 %description -n libstdc++
181 This is the GNU implementation of the standard C++ libraries, along with
182 additional GNU tools. This package includes the shared libraries
183 necessary to run C++ applications.
185 %description -l de -n libstdc++
186 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit weiteren
187 GNU-Tools. Dieses Paket enthält die zum Ausführen von C++-Anwendungen
188 erforderlichen gemeinsam genutzten Libraries.
190 %description -l fr -n libstdc++
191 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que des
192 outils GNU supplémentaires. Ce package comprend les librairies partagées
193 nécessaires à l'exécution d'application C++.
195 %description -l pl -n libstdc++
196 Pakiet ten zawiera biblioteki bêd±ce inplementacj± standardowych bibliotek
197 C++, znajduj± siê w nim biblioteki dynamiczne niezbêdne do uruchomienia
200 %description -l tr -n libstdc++
201 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
202 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
204 %package -n libstdc++-compat
205 Summary: Old GNU c++ library
206 Summary(pl): Biblioteki GNU C++
208 Group(pl): Biblioteki
209 Version: %{STDC_VERSION}
211 %description -n libstdc++-compat
212 This is the GNU implementation of the standard C++ libraries, This package
213 includes the old shared libraries necessary to run C++ applications.
215 %description -l pl -n libstdc++-compat
216 Pakiet ten zawiera biblioteki bêd±ce inplementacj± standardowych bibliotek
217 C++, znajduj± siê w nim poprzednie wersje bibliotek dynamicznych niezbêdnych
218 do uruchomienia aplikacji C++.
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(pl): Programowanie/Biblioteki
227 Version: %{STDC_VERSION}
228 Requires: libstdc++ = %{STDC_VERSION}
229 Obsoletes: libg++-devel
231 %description -n libstdc++-devel
232 This is the GNU implementation of the standard C++ libraries. This package
233 includes the header files and libraries needed for C++ development.
235 %description -l pl -n libstdc++-devel
236 Pakiet ten zawiera biblioteki bêd±ce inplementacj± standardowych bibliotek
237 C++, znajduj± siê w nim biblioteki i pliki nag³ówków wykorzystywane do
238 programowania w jêzyku C++.
240 %package -n libstdc++-static
241 Summary: Static c++ standard library
242 Summary(pl): Biblioeka statyczna c++
243 Group: Development/Libraries
244 Group(pl): Programowanie/Biblioteki
245 Version: %{STDC_VERSION}
246 Requires: libstdc++-devel = %{STDC_VERSION}
248 %description -n libstdc++-static
249 Static c++ standard library.
251 %description -l pl -n libstdc++-static
252 Biblioeka statyczna c++.
255 Summary: The C Pre Processor
256 Summary(pl): Preprocesor C
257 Group: Development/Languages
258 Group(pl): Programowanie/Jêzyki
259 Prereq: /sbin/install-info
263 The C preprocessor is a "macro processor" that is used automatically by the
264 C compiler to transform your program before actual compilation. It is called
265 a macro processor because it allows you to define "macros", which are brief
266 abbreviations for longer constructs.
268 The C preprocessor provides four separate facilities that you can use as you
271 * Inclusion of header files. These are files of declarations that
272 can be substituted into your program.
273 * Macro expansion. You can define "macros", which are abbreviations for
274 arbitrary fragments of C code, and then the C preprocessor will replace
275 the macros with their definitions throughout the program.
276 * Conditional compilation. Using special preprocessing directives,
277 you can include or exclude parts of the program according to various
279 * Line control. If you use a program to combine or rearrange source
280 files into an intermediate file which is then compiled, you can use line
281 control to inform the compiler of where each source line originally came
284 %description -l pl -n cpp
285 Przeprocesor C jest "makro procesorem" który jest automatycznie u¿ywaney
286 przez kompilator C do obróbki kompilowanego programu przed w³a¶ciw±
287 kompilacj±. Jest on nazywany makroprocesorem poniewa¿ poniewa¿ umo¿liwia
288 definiowanie i rozwijanie makr umo¿liwiaj±cych kracanie d³ugich konstrukcji
291 Preprocesor C umo¿liwia wykonywanie czterech róznych typow operacji:
293 * Inkluzja (do³aczenie) plików (np. nag³ówkowych). W³±cza pliki w miejscu
294 deklaracji polecenia do³±czenia inefgo pliku.
295 * Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
296 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
297 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
298 * Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
299 ¶rodowisku preprocesora s± w³±czane warunkowo b±æ nie pewne fragmenty
300 obrabianego strumienia tekstów.
301 * Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom podlega
302 wynikowy strumieñ danych w wyniku rozwijania makr i inkluzji s±
303 zapamiêtywane informacje o tym z której linii pliku ¼ród³owego
304 odpowiada fragment czy liniia pliku wynikowego.
309 mv libgcj-%{GCJ_VERSION} libgcj
310 mv libgcj/boehm-gc libgcj/libjava libgcj/zlib libgcj/zip .
315 tar xzf %{SOURCE2} -C compat
318 rm -rf obj-%{_target_platform}
319 install -d obj-%{_target_platform} && cd obj-%{_target_platform}
321 CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="-s" \
323 --prefix=%{_prefix} \
324 --infodir=%{_infodir} \
332 PATH=$PATH:/sbin:%{_sbindir}
333 touch ../gcc/c-gperf.h
335 make LDFLAGS_FOR_TARGET="-s" \
341 rm -rf $RPM_BUILD_ROOT
342 install -d $RPM_BUILD_ROOT%{_datadir}
344 cd obj-%{_target_platform}
345 PATH=$PATH:/sbin:%{_sbindir}
348 prefix=$RPM_BUILD_ROOT%{_prefix} \
349 mandir=$RPM_BUILD_ROOT%{_mandir} \
350 infodir=$RPM_BUILD_ROOT%{_infodir}
353 prefix=$RPM_BUILD_ROOT%{_prefix} \
354 mandir=$RPM_BUILD_ROOT%{_mandir} \
355 infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
357 strip $RPM_BUILD_ROOT%{_bindir}/* || :
359 strip $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/{cc1,cc1chill,cc1obj,cc1plus,cpp,f771,collect2,jc1,jvgenmain}
360 strip --strip-unneeded $RPM_BUILD_ROOT%{_libdir}/libstdc++-3-*.*.*.*.so
362 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
364 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
365 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
367 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
369 (cd $RPM_BUILD_ROOT%{_libdir} ; \
370 ln -sf libstdc++-3-*.*.*.*.so $RPM_BUILD_ROOT%{_libdir}/libstdc++.so; \
371 ln -sf libstdc++-3-*.*.*.*.a $RPM_BUILD_ROOT%{_libdir}/libstdc++.a)
373 mv -f $RPM_BUILD_ROOT%{_includedir}/g++-3 $RPM_BUILD_ROOT%{_includedir}/g++
375 install -d $RPM_BUILD_ROOT/lib
376 (cd $RPM_BUILD_ROOT; \
377 ln -sf ../`dirname usr/lib/gcc-lib/%{_target_cpu}*/*/cpp`/cpp $RPM_BUILD_ROOT/lib/cpp)
379 #install the compatibility libstdc++ library
380 [ -d ../compat/$RPM_ARCH ] && install -s ../compat/$RPM_ARCH/* $RPM_BUILD_ROOT%{_libdir}/
382 gzip -9nf $RPM_BUILD_ROOT%{_datadir}/{info/*.info*,man/man1/*} \
383 ../READ* ../ChangeLog ../gcc/ch/chill.brochure
386 /sbin/install-info %{_infodir}/gcc.info.gz /etc/info-dir
389 if [ "$1" = "0" ]; then
390 /sbin/install-info %{_infodir}/gcc.info.gz /etc/info-dir
394 /sbin/install-info %{_infodir}/g77.info.gz /etc/info-dir
397 if [ "$1" = "0" ]; then
398 /sbin/install-info %{_infodir}/g77.info.gz /etc/info-dir
402 /sbin/install-info %{_infodir}/chill.info.gz /etc/info-dir
405 if [ "$1" = "0" ]; then
406 /sbin/install-info %{_infodir}/chill.info.gz /etc/info-dir
410 /sbin/install-info %{_infodir}/cpp.info.gz /etc/info-dir
413 if [ "$1" = "0" ]; then
414 /sbin/install-info %{_infodir}/cpp.info.gz /etc/info-dir
417 %post libgcj -p /sbin/ldconfig
419 %post -p /sbin/ldconfig -n libstdc++
420 %postun -p /sbin/ldconfig -n libstdc++
423 rm -rf $RPM_BUILD_ROOT
426 %defattr(644,root,root,755)
427 %doc READ* ChangeLog.gz
429 %dir %{_libdir}/gcc-lib
430 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
431 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
432 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
434 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
435 %attr(755,root,root) %{_bindir}/gcc
436 %attr(755,root,root) %{_bindir}/gcov
437 %attr(755,root,root) %{_bindir}/protoize
438 %attr(755,root,root) %{_bindir}/unprotoize
439 %attr(755,root,root) %{_bindir}/cc
441 %{_mandir}/man1/gcc.1*
444 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
445 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
446 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
447 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
448 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
451 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
454 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
456 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
457 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
458 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
459 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
460 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
461 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
462 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
463 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
464 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
465 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
468 %defattr(644,root,root,755)
470 %{_mandir}/man1/g++.1.gz
472 %attr(755,root,root) %{_bindir}/g++
473 %attr(755,root,root) %{_bindir}/c++
474 %attr(755,root,root) %{_bindir}/c++filt
475 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
477 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
478 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
479 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
480 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
483 %defattr(644,root,root,755)
485 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
487 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
488 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
491 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_bindir}/g77
494 %attr(755,root,root) %{_bindir}/f77
498 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
499 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
501 %{_mandir}/man1/g77.1*
502 %{_mandir}/man1/f77.1*
504 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
507 %defattr(644,root,root,755)
508 %doc gcc/ch/chill.brochure.gz
510 %attr(755,root,root) %{_bindir}/chill
514 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
515 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
516 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
519 %defattr(644,root,root,755)
521 %attr(755,root,root) %{_bindir}/gcj
522 %attr(755,root,root) %{_bindir}/gcjh
523 %attr(755,root,root) %{_bindir}/jcf-dump
524 %attr(755,root,root) %{_bindir}/jv-convert
525 %attr(755,root,root) %{_bindir}/jv-scan
529 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
530 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
533 %defattr(644,root,root,755)
535 %attr(755,root,root) %{_libdir}/lib*gcj*.so
536 %attr(755,root,root) %{_libdir}/lib*gcj*.so.*.*.*
539 %defattr(644,root,root,755)
541 %{_libdir}/lib*gcj*.a
542 %{_libdir}/lib*gcj*.la
545 %attr(755,root,root) %{_libdir}/libstdc++-3-*.*.*.*.so
547 %files -n libstdc++-compat
548 %defattr(644,root,root,755)
550 %files -n libstdc++-devel
551 %defattr(644,root,root,755)
553 %attr(755,root,root) %{_libdir}/libstdc++.so
555 %files -n libstdc++-static
556 %attr(644,root,root) %{_libdir}/libstdc++.a
559 %defattr(644,root,root,755)
560 %attr(755,root,root) /lib/cpp
562 %{_mandir}/man1/cpp.1*
563 %{_mandir}/man1/cccp.1*
564 %{_infodir}/cpp.info*.gz
566 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp