3 # _without_ada - build without ADA support
4 # _without_java - build without Java support
5 # _without_objc - build without objc support
7 %define DASHED_SNAP %{nil}
8 %define SNAP %(echo %{DASHED_SNAP} | sed -e "s#-##g")
9 %define GCC_VERSION 3.2.3
10 %define KSI_VERSION pre55
12 Summary: GNU C Compiler
13 Summary(pl): Kompilator C GNU
14 Summary(pt_BR): C Compilador GNU (GCC)
16 Version: %{GCC_VERSION}
20 Group: Development/Languages
21 Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
22 Source1: ftp://ftp.pld.org.pl/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
23 Source2: %{name}-non-english-man-pages.tar.bz2
24 Patch0: %{name}-slibdir.patch
25 Patch1: %{name}-paths.patch
26 Patch2: %{name}-ada-no-addr2line.patch
27 Patch3: %{name}-ada-no-prefix.o.patch
28 Patch4: %{name}-nolocalefiles.patch
29 Patch5: %{name}-gcc-page.c.patch
30 Patch6: %{name}-info.patch
31 Patch7: %{name}-ada-link-new-libgnat.patch
32 # -- stolen patches from RH --
33 Patch11: gcc32-attr-visibility.patch
34 Patch12: gcc32-attr-visibility2.patch
35 Patch13: gcc32-attr-visibility3.patch
36 Patch14: gcc32-attr-visibility4.patch
37 Patch15: gcc32-attr-visibility5.patch
38 Patch16: gcc32-boehm-gc-libs.patch
39 Patch17: gcc32-bogus-inline.patch
40 Patch18: gcc32-c++-nrv-test.patch
41 Patch20: gcc32-c++-tsubst-asm.patch
42 Patch21: gcc32-cfg-eh.patch
43 Patch22: gcc32-debug-pr7241.patch
45 Patch24: gcc32-duplicate-decl.patch
46 Patch25: gcc32-dwarf2-pr6381.patch
47 Patch26: gcc32-dwarf2-pr6436-test.patch
48 Patch27: gcc32-fde-merge-compat.patch
50 Patch29: gcc32-hard-reg-sharing.patch
51 Patch30: gcc32-hard-reg-sharing2.patch
52 Patch31: gcc32-i386-default-momit-leaf-frame-pointer.patch
53 Patch32: gcc32-i386-memtest-test.patch
54 Patch33: gcc32-i386-no-default-momit-leaf-frame-pointer.patch
55 Patch34: gcc32-i386-pic-label-thunk.patch
56 Patch35: gcc32-i386-profile-olfp.patch
57 Patch36: gcc32-inline-label.patch
58 Patch37: gcc32-java-no-rpath.patch
59 Patch38: gcc32-pr6842.patch
60 Patch39: gcc32-sparc-sll1.patch
61 Patch40: gcc32-test-rh65771.patch
62 Patch41: gcc32-test-rotate.patch
63 BuildRequires: autoconf
65 BuildRequires: fileutils >= 4.0.41
67 %{!?_without_ada:BuildRequires: gcc-ada}
68 BuildRequires: glibc-devel >= 2.2.5-20
69 BuildRequires: perl-devel
70 BuildRequires: texinfo >= 4.1
71 BuildRequires: zlib-devel
72 BuildRequires: gettext-devel
73 Requires: binutils >= 2.12.90.0.4
74 Requires: cpp = %{GCC_VERSION}
75 Requires: libgcc = %{GCC_VERSION}
76 Conflicts: glibc-devel < 2.2.5-20
77 URL: http://gcc.gnu.org/
78 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
83 A compiler aimed at integrating all the optimizations and features
84 necessary for a high-performance and stable development environment.
87 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
88 wyprodukowania szybkiego i stablinego kodu wynikowego.
91 Este pacote adiciona infraestrutura básica e suporte a linguagem C
92 ao Gnu Compiler Collection.
95 Summary: Shared gcc library
96 Summary(pl): Biblioteka gcc
97 Summary(pt_BR): Biblioteca runtime para o GCC
99 Version: %{GCC_VERSION}
102 %description -n libgcc
105 %description -n libgcc -l pl
106 Biblioteka dynamiczna gcc.
108 %description -n libgcc -l pt_BR
109 Biblioteca runtime para o GCC.
112 Summary: C++ support for gcc
113 Summary(pl): Obs³uga C++ dla gcc
114 Summary(pt_BR): Suporte C++ para o gcc
115 Group: Development/Languages
118 Requires: gcc = %{GCC_VERSION}
121 This package adds C++ support to the GNU C compiler. It includes
122 support for most of the current C++ specification, including templates
123 and exception handling. It does not include a standard C++ library,
124 which is available separately.
126 %description c++ -l de
127 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
128 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
129 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
130 sie ist getrennt erhältlich.
132 %description c++ -l fr
133 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
134 support pour la plupart des spécifications actuelles de C++, dont les
135 modéles et la gestion des exceptions. Il ne comprend pas une
136 bibliothéque C++ standard, qui est disponible séparément.
138 %description c++ -l pl
139 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
140 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
141 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
143 %description c++ -l pt_BR
144 Este pacote adiciona suporte C++ para o gcc.
146 %description c++ -l tr
147 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
148 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
149 C++ kitaplýðý bu pakette yer almaz.
152 Summary: Objective C support for gcc
153 Summary(de): Objektive C-Unterstützung für gcc
154 Summary(fr): Gestion d'Objective C pour gcc
155 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
156 Summary(tr): gcc için Objective C desteði
157 Group: Development/Languages
160 Requires: libobjc = %{GCC_VERSION}
161 Requires: gcc = %{GCC_VERSION}
164 This package adds Objective C support to the GNU C compiler. Objective
165 C is a object oriented derivative of the C language, mainly used on
166 systems running NeXTSTEP. This package does not include the standard
167 objective C object library.
169 %description objc -l de
170 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
171 Objective C ist ein objektorientiertes Derivat von C, das zur
172 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
173 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
175 %description objc -l fr
176 Ce package ajoute un support Objective C au compilateur C GNU.
177 L'Objective C est un langage orienté objetdérivé du langage C,
178 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
179 pas la bibliothéque Objective C standard.
181 %description objc -l pl
182 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
183 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
184 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
185 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
187 %description objc -l tr
188 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
189 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
190 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
191 kitaplýðý bu pakette yer almaz.
194 Summary: Objective C Libraries
195 Summary(pl): Biblioteki Obiektowego C
197 Version: %{GCC_VERSION}
200 %description -n libobjc
201 Objective C Libraries.
203 %description -n libobjc -l pl
204 Biblioteki Obiektowego C.
206 %package -n libobjc-static
207 Summary: Static Objective C Libraries
208 Summary(pl): Statyczne Biblioteki Obiektowego C
209 Group: Development/Libraries
210 Version: %{GCC_VERSION}
211 Requires: libobjc = %{GCC_VERSION}
213 %description -n libobjc-static
214 Static Objective C Libraries.
216 %description -n libobjc-static -l pl
217 Statyczne biblioteki Obiektowego C.
220 Summary: Fortran 77 support for gcc
221 Summary(pl): Obs³uga Fortranu 77 dla gcc
222 Summary(pt_BR): Suporte Fortran 77 para o GCC
223 Group: Development/Languages/Fortran
224 Version: %{GCC_VERSION}
226 Requires: libg2c = %{GCC_VERSION}
229 This apckage adds support for compiling Fortran 77 programs with the
232 %description g77 -l pl
233 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
234 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
236 %description g77 -l pt_BR
237 Suporte Fortran 77 para o GCC.
240 Summary: Fortran 77 Libraries
241 Summary(pl): Biblioteki Fortranu 77
243 Version: %{GCC_VERSION}
245 %description -n libg2c
246 Fortran 77 Libraries.
248 %description -n libg2c -l pl
249 Biblioteki Fortranu 77.
251 %package -n libg2c-static
252 Summary: Static Fortran 77 Libraries
253 Summary(pl): Statyczne Biblioteki Fortranu 77
254 Group: Development/Libraries
255 Version: %{GCC_VERSION}
256 Requires: libg2c = %{GCC_VERSION}
258 %description -n libg2c-static
259 Static Fortran 77 Libraries.
261 %description -n libg2c-static -l pl
262 Statyczne biblioteki Fortranu 77.
265 Summary: Java support for gcc
266 Summary(pl): Obs³uga Javy dla gcc
267 Group: Development/Languages/Java
268 Version: %{GCC_VERSION}
269 Requires: %{name} = %{version}
270 Requires: libgcj >= 3.0.0
271 Requires: libgcj-devel >= 3.0.0
272 Requires: java-shared
273 Provides: gcj = %{epoch}:%{GCC_VERSION}-%{release}
276 This package adds experimental support for compiling Java(tm) programs
277 and bytecode into native code. To use this you will also need the
280 %description -l pl java
281 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
282 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
283 by³o przeprowadziæ kompilacjê.
286 Summary: Shared java tools
287 Summary(pl): Wspó³dzielone narzêdzia javy
288 Group: Development/Languages/Java
289 Version: %{GCC_VERSION}
290 Provides: jar = %{epoch}:%{GCC_VERSION}-%{release}
291 Provides: java-shared
293 Obsoletes: java-shared
296 %description java-tools
297 This package contains tools that are common for every Java(tm) implementation,
300 %description java-tools -l pl
301 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji Javy(tm), takie
305 Summary: Java Class Libraries
306 Summary(pl): Biblioteki Klas Javy
308 Version: %{GCC_VERSION}
312 %description -n libgcj
313 Java Class Libraries.
315 %description -n libgcj -l pl
316 Biblioteki Klas Javy.
318 %package -n libgcj-devel
319 Summary: Development files for Java Class Libraries
320 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
321 Group: Development/Libraries
322 Version: %{GCC_VERSION}
323 Requires: libgcj = %{GCC_VERSION}
324 Requires: %{name}-java
325 Obsoletes: libgcj3-devel
327 %description -n libgcj-devel
328 Development files for Java Class Libraries.
330 %description -n libgcj-devel -l pl
331 Pliki nag³ówkowe dla Bibliotek Klas Javy.
333 %package -n libgcj-static
334 Summary: Static Java Class Libraries
335 Summary(pl): Statyczne Biblioteki Klas Javy
336 Group: Development/Libraries
337 Version: %{GCC_VERSION}
338 Requires: libstdc++-devel = %{GCC_VERSION}
339 Requires: libgcj-devel = %{GCC_VERSION}
341 %description -n libgcj-static
342 Static Java Class Libraries.
344 %description -n libgcj-static -l pl
345 Statyczne Biblioteki Klas Javy.
347 %package -n libstdc++
348 Summary: GNU c++ library
349 Summary(pl): Biblioteki GNU C++
350 Summary(pt_BR): Biblioteca C++ GNU
352 Version: %{GCC_VERSION}
354 Obsoletes: libstdc++3
356 %description -n libstdc++
357 This is the GNU implementation of the standard C++ libraries, along
358 with additional GNU tools. This package includes the shared libraries
359 necessary to run C++ applications.
361 %description -n libstdc++ -l de
362 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
363 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
364 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
366 %description -n libstdc++ -l es
367 Este es el soporte de las bibliotecas padrón del C++, junto con
368 herramientas GNU adicionales. El paquete incluye las bibliotecas
369 compartidas necesarias para ejecutar aplicaciones C++.
371 %description -n libstdc++ -l fr
372 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
373 des outils GNU supplémentaires. Ce package comprend les librairies
374 partagées nécessaires à l'exécution d'application C++.
376 %description -n libstdc++ -l pl
377 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
378 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
379 uruchomienia aplikacji napisanych w C++.
381 %description -n libstdc++ -l pt_BR
382 Este pacote é uma implementação da biblioteca padrão C++ v3, um
383 subconjunto do padrão ISO 14882.
385 %description -n libstdc++ -l tr
386 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
387 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
389 %package -n libstdc++-devel
390 Summary: Header files and documentatino for C++ development
391 Summary(de): Header-Dateien zur Entwicklung mit C++
392 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
393 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
394 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
395 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
396 Group: Development/Libraries
397 Version: %{GCC_VERSION}
398 Requires: libstdc++ = %{GCC_VERSION}
399 Requires: %{name}-c++
400 Obsoletes: libg++-devel
401 Obsoletes: libstdc++3-devel
403 %description -n libstdc++-devel
404 This is the GNU implementation of the standard C++ libraries. This
405 package includes the header files needed for C++ development and
406 library documentation.
408 %description -n libstdc++-devel -l es
409 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este paquete
410 incluye los archivos de inclusión y bibliotecas necesarios para desarrollo de
411 programas en lenguaje C++.
413 %description -n libstdc++-devel -l pl
414 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
415 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
416 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
418 %description -n libstdc++-devel -l pt_BR
419 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias para
420 desenvolvimento de programas C++.
422 %package -n libstdc++-static
423 Summary: Static C++ standard library
424 Summary(pl): Statyczna biblioteka standardowa C++
425 Group: Development/Libraries
426 Version: %{GCC_VERSION}
427 Requires: libstdc++-devel = %{GCC_VERSION}
429 %description -n libstdc++-static
430 Static C++ standard library.
432 %description -n libstdc++-static -l pl
433 Statycza biblioteka standardowa C++.
436 Summary: Ada support for gcc
437 Summary(pl): Obs³uga Ady do gcc
438 Group: Development/Languages
439 Version: %{GCC_VERSION}
440 Requires: libgnat = %{GCC_VERSION}
441 Requires: gcc = %{GCC_VERSION}
443 Obsoletes: gnat-devel
446 This package adds experimental support for compiling Ada programs.
448 %description -l pl ada
449 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
453 Summary: Ada standard libraries
454 Summary(pl): Biblioteki standardowe dla Ady
456 Version: %{GCC_VERSION}
460 %description -n libgnat
461 This package contains shared libraries needed to run programs written
464 %description -n libgnat -l pl
465 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów napisanych
468 %package -n libgnat-static
469 Summary: Static Ada standard libraries
470 Summary(pl): Statyczne biblioteki standardowe dla Ady
472 Version: %{GCC_VERSION}
473 Obsoletes: gnat-static
475 %description -n libgnat-static
476 This package contains static libraries for programs written in Ada.
478 %description -n libgnat-static -l pl
479 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
483 Summary: Ksi support for gcc
484 Summary(pl): Obs³uga Ksi dla gcc
485 Version: %{GCC_VERSION}.%{KSI_VERSION}
486 Group: Development/Languages
487 Requires: gcc = %{GCC_VERSION}
490 This package adds experimental support for compiling Ksi programs
491 into native code. You proabably don't need it, unless your are going
492 to develop a compiler using Ksi as intermediate representation or
493 you are using such compiler (like Gont).
495 %description ksi -l pl
496 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
497 w Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba
498 ¿e zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
499 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
502 Summary: The C Pre Processor
503 Summary(pl): Preprocesor C
504 Summary(pt_BR): Preprocessador para a linguagem C
505 Group: Development/Languages
506 Version: %{GCC_VERSION}
511 The C preprocessor is a "macro processor" that is used automatically
512 by the C compiler to transform your program before actual compilation.
513 It is called a macro processor because it allows you to define
514 "macros", which are brief abbreviations for longer constructs.
516 The C preprocessor provides four separate facilities that you can use
519 - Inclusion of header files. These are files of declarations that can
520 be substituted into your program.
521 - Macro expansion. You can define "macros", which are abbreviations
522 for arbitrary fragments of C code, and then the C preprocessor will
523 replace the macros with their definitions throughout the program.
524 - Conditional compilation. Using special preprocessing directives, you
525 can include or exclude parts of the program according to various
527 - Line control. If you use a program to combine or rearrange source
528 files into an intermediate file which is then compiled, you can use
529 line control to inform the compiler of where each source line
530 originally came from.
532 %description -n cpp -l es
533 Um preprocessador para a linguagem C.
535 %description -n cpp -l pl
536 Przeprocesor C jest "makro procesorem" który jest automatycznie
537 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
538 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
539 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
540 d³ugich konstrukcji w jêzyku C.
542 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
544 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
545 deklaracji polecenia do³±czenia innego pliku.
546 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
547 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
548 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
549 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
550 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
551 fragmenty obrabianego strumienia tekstów.
552 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
553 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
554 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
555 odpowiada fragment pliku wynikowego.
557 %description -n cpp -l pt_BR
558 O preprocessador C é um "processador de macros", que é utilizado pelo
559 compilador C para fazer algumas modificações no seu programa, antes da
560 compilação em si. Ele é chamado de "processador de macros" porque
561 permite a você definir "macros", que são abreviações para construções
564 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
565 arquivos de cabeçalho; expansão de macros; compilação condicional;
566 e controle da numeração das linhas do programa.
569 %setup -q -a1 -n %{name}-%{GCC_VERSION}
570 mv ksi-%{KSI_VERSION} gcc/ksi
612 perl -p -i -e 's/";/ (PLD Linux)";/' gcc/version.c
615 # cd gcc && autoconf; cd ..
616 # autoconf is not needed!
617 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
619 CFLAGS="%{rpmcflags}" \
620 CXXFLAGS="%{rpmcflags}" \
621 TEXCONFIG=false ../configure \
622 --prefix=%{_prefix} \
623 --infodir=%{_infodir} \
624 --mandir=%{_mandir} \
626 --enable-threads=posix \
627 --enable-__cxa_atexit \
628 --enable-languages="c,c++,f77,gcov%{?!_without_objc:,objc},ksi%{!?_without_ada:,ada}%{!?_without_java:,java}" \
636 --with-slibdir=%{_slibdir} \
640 PATH=$PATH:/sbin:%{_sbindir}
642 # this dirty hack is relict of setting, where objdir is subdir of srcdir
643 %if %{!?_without_ada:1}%{?_without_ada:0}
644 sed -e 's/srcdir=\$(fsrcdir)/srcdir=\$(fsrcdir) VPATH=\$(fsrcdir)/' \
645 gcc/ada/Makefile > makefile.tmp
646 mv -f makefile.tmp gcc/ada/Makefile
650 %{__make} -C obj-%{_target_platform} bootstrap-lean \
651 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
655 %if %{!?_without_ada:1}%{?_without_ada:0}
656 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
657 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
661 # make Gnat Reference Manual
662 %{__make} -C obj-%{_target_platform}/gcc/ada doc
666 rm -rf $RPM_BUILD_ROOT
667 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
669 cd obj-%{_target_platform}
670 PATH=$PATH:/sbin:%{_sbindir}
673 prefix=$RPM_BUILD_ROOT%{_prefix} \
674 mandir=$RPM_BUILD_ROOT%{_mandir} \
675 infodir=$RPM_BUILD_ROOT%{_infodir} \
676 slibdir=$RPM_BUILD_ROOT/lib
678 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
679 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
681 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
682 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
684 %if %{!?_without_ada:1}%{?_without_ada:0}
685 # move ada shared libraries to proper place...
686 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*-*so.1 \
687 $RPM_BUILD_ROOT%{_libdir}
688 rm -f $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.so.1
689 (cd $RPM_BUILD_ROOT%{_libdir} && \
690 ln -s libgnat-*so.1 libgnat.so.1 && ln -s libgnat-*so.1 libgnat.so && \
691 ln -s libgnarl-*so.1 libgnarl.so.1 && ln -s libgnarl-*so.1 libgnarl.so)
694 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
698 %if %{!?_without_ada:1}%{?_without_ada:0}
699 install obj-%{_target_platform}/gcc/ada/gnat_rm.info* $RPM_BUILD_ROOT%{_infodir}
700 install obj-%{_target_platform}/gcc/ada/gnat_ug_unx.info* $RPM_BUILD_ROOT%{_infodir}
703 %if %{!?_without_java:1}%{?_without_java:0}
705 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
706 cp -f fastjar/README java-doc/README.fastjar
707 cp -f libffi/README java-doc/README.libffi
708 cp -f libffi/LICENSE java-doc/LICENSE.libffi
711 %if %{?!_without_objc:1}0
712 cp -f libobjc/README gcc/objc/README.libobjc
715 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc-lib/*/%{version}
716 for f in libstdc++.la libsupc++.la %{!?_without_java:libgcj.la} ; do
717 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
719 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
720 for f in libstdc++.la libsupc++.la libg2c.la \
721 %{!?_without_java:libgcj.la} %{!?_without_objc:libobjc.la}; do
722 perl -pi -e "s@^libdir='.*@libdir='/usr/lib'@" $RPM_BUILD_ROOT%{_libdir}/$f
725 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
726 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
729 %find_lang libstdc\+\+
732 rm -rf $RPM_BUILD_ROOT
735 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
738 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
741 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
744 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
747 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
750 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
753 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
756 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
759 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
762 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
764 %post -p /sbin/ldconfig -n libgcc
765 %postun -p /sbin/ldconfig -n libgcc
766 %post -p /sbin/ldconfig -n libstdc++
767 %postun -p /sbin/ldconfig -n libstdc++
768 %post -p /sbin/ldconfig -n libobjc
769 %postun -p /sbin/ldconfig -n libobjc
770 %post -p /sbin/ldconfig -n libg2c
771 %postun -p /sbin/ldconfig -n libg2c
772 %post -p /sbin/ldconfig -n libgcj
773 %postun -p /sbin/ldconfig -n libgcj
774 %post -p /sbin/ldconfig -n libgnat
775 %postun -p /sbin/ldconfig -n libgnat
777 %files -f %{name}.lang
778 %defattr(644,root,root,755)
780 %dir %{_libdir}/gcc-lib
781 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
782 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
783 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
784 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
785 %attr(755,root,root) %{_bindir}/gcc
786 %attr(755,root,root) %{_bindir}/gccbug
787 %attr(755,root,root) %{_bindir}/gcov
788 %attr(755,root,root) %{_bindir}/cc
790 %{_mandir}/man1/gcc.1*
791 %{_mandir}/man1/cc.1*
792 %{_mandir}/man1/gcov.1*
793 %lang(fr) %{_mandir}/fr/man1/gcc.1*
794 %lang(ja) %{_mandir}/ja/man1/gcc.1*
797 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
798 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc_eh.a
799 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
800 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
802 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ecrt*.o
803 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ncrt*.o
804 %{_libdir}/gcc-lib/%{_target_cpu}*/*/nof
807 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
808 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
810 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
811 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
812 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
813 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
814 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
815 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
816 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
817 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
819 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/mmintrin.h
820 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/xmmintrin.h
823 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/altivec.h
824 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/ppc-asm.h
828 %defattr(644,root,root,755)
829 %attr(755,root,root) %{_slibdir}/lib*.so*
832 %defattr(644,root,root,755)
833 %attr(755,root,root) %{_bindir}/g++
834 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-g++
835 %attr(755,root,root) %{_bindir}/c++
836 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-c++
837 %attr(755,root,root) %{_bindir}/c++filt
838 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
839 %{_libdir}/libsupc++.la
841 %{_libdir}/nof/libsupc++.la
842 %{_libdir}/nof/libsupc++.a
844 %{_libdir}/libsupc++.a
845 %{_mandir}/man1/g++.1*
846 %lang(es) %{_mandir}/es/man1/c++filt.1*
847 %lang(ja) %{_mandir}/ja/man1/g++.1*
849 %files -n libstdc++ -f libstdc++.lang
850 %defattr(644,root,root,755)
851 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
853 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
856 %files -n libstdc++-devel
857 %defattr(644,root,root,755)
858 %doc libstdc++-v3/docs/html
859 %dir %{_includedir}/c++
860 %{_includedir}/c++/%{GCC_VERSION}
861 %attr(755,root,root) %{_libdir}/libstdc++.so
862 %{_libdir}/libstdc++.la
864 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
865 %{_libdir}/nof/libstdc++.la
868 %files -n libstdc++-static
869 %defattr(644,root,root,755)
870 %{_libdir}/libstdc++.a
872 %{_libdir}/nof/libstdc++.a
875 %if %{?!_without_objc:1}0
877 %defattr(644,root,root,755)
879 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
880 %attr(755,root,root) %{_libdir}/libobjc.so
881 %{_libdir}/libobjc.la
883 %attr(755,root,root) %{_libdir}/nof/libobjc.so
884 %{_libdir}/nof/libobjc.la
886 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
889 %defattr(644,root,root,755)
890 %attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
892 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
895 %files -n libobjc-static
896 %defattr(644,root,root,755)
899 %{_libdir}/nof/libobjc.a
904 %defattr(644,root,root,755)
905 %attr(755,root,root) %{_bindir}/g77
906 %attr(755,root,root) %{_bindir}/f77
908 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
909 %{_libdir}/libfrtbegin.a
911 %attr(755,root,root) %{_libdir}/libg2c.so
913 %{_libdir}/nof/libfrtbegin.a
914 %{_libdir}/nof/libg2c.la
915 %attr(755,root,root) %{_libdir}/nof/libg2c.so
917 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
918 %{_mandir}/man1/g77.1*
919 %{_mandir}/man1/f77.1*
920 %lang(ja) %{_mandir}/ja/man1/g77.1*
921 %lang(ja) %{_mandir}/ja/man1/f77.1*
924 %defattr(644,root,root,755)
925 %attr(755,root,root) %{_libdir}/libg2c.so.*.*.*
927 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
930 %files -n libg2c-static
931 %defattr(644,root,root,755)
934 %{_libdir}/nof/libg2c.a
937 %if %{!?_without_java:1}%{?_without_java:0}
939 %defattr(644,root,root,755)
941 %attr(755,root,root) %{_bindir}/gcj*
942 %attr(755,root,root) %{_bindir}/gij
943 %attr(755,root,root) %{_bindir}/jcf-dump
944 %attr(755,root,root) %{_bindir}/jv-*
945 %attr(755,root,root) %{_bindir}/grepjar
946 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
947 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
949 %{_mandir}/man1/jcf-*
955 %defattr(644,root,root,755)
956 %attr(755,root,root) %{_bindir}/rmi*
957 %attr(755,root,root) %{_bindir}/jar
961 %defattr(644,root,root,755)
962 %attr(755,root,root) %{_bindir}/addr2name.awk
963 %attr(755,root,root) %{_libdir}/lib*cj*.so.*
965 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
968 %files -n libgcj-devel
969 %defattr(644,root,root,755)
976 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/gcj
977 %dir %{_libdir}/security
978 %{_libdir}/security/*
979 %dir %{_datadir}/java
980 %{_datadir}/java/libgcj*.jar
981 %{_libdir}/lib*cj.spec
982 %{_libdir}/lib*cj*.la
983 %attr(755,root,root) %{_libdir}/lib*cj*.so
985 %{_libdir}/nof/lib*cj*.la
986 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
989 %files -n libgcj-static
990 %defattr(644,root,root,755)
993 %{_libdir}/nof/lib*cj*.a
997 %if %{!?_without_ada:1}%{?_without_ada:0}
999 %defattr(644,root,root,755)
1000 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/gnat1
1001 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adainclude
1002 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib
1003 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.ali
1005 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgmem.a
1007 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/Makefile.adalib
1008 %attr(755,root,root) %{_bindir}/gnat*
1010 %attr(755,root,root) %{_libdir}/libgnat.so*
1011 %attr(755,root,root) %{_libdir}/libgnarl.so*
1014 %defattr(644,root,root,755)
1015 %attr(755,root,root) %{_libdir}/libgna*-*so.1
1017 %files -n libgnat-static
1018 %defattr(644,root,root,755)
1019 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgna*.a
1023 %defattr(644,root,root,755)
1024 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1026 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ksi1
1029 %defattr(644,root,root,755)
1030 %attr(755,root,root) %{_slibdir}/cpp
1031 %attr(755,root,root) %{_bindir}/cpp
1032 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp0
1033 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/tradcpp0
1034 %{_mandir}/man1/cpp.1*
1035 %lang(ja) %{_mandir}/ja/man1/cpp.1*