3 # _without_ada - build without ADA support
4 # _without_java - build without Java support
5 # _without_objc - build without objc support
8 # - make separate libffi{,-devel,-static}
10 %define DASHED_SNAP %{nil}
11 %define SNAP %(echo %{DASHED_SNAP} | sed -e "s#-##g")
12 %define GCC_VERSION 3.3
13 %define KSI_VERSION 1.1.0.1567
15 Summary: GNU C Compiler
16 Summary(pl): Kompilator C GNU
17 Summary(pt_BR): C Compilador GNU (GCC)
19 Version: %{GCC_VERSION}
23 Group: Development/Languages
24 Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
25 Source1: ftp://ftp.pld.org.pl/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
26 Source2: %{name}-non-english-man-pages.tar.bz2
27 Patch0: %{name}-info.patch
28 Patch1: %{name}-paths.patch
29 Patch4: %{name}-nolocalefiles.patch
30 Patch6: %{name}-ada-link-new-libgnat.patch
31 # -- stolen patches from RH --
32 Patch10: gcc32-ada-link.patch
33 Patch16: gcc32-boehm-gc-libs.patch
34 Patch17: gcc32-bogus-inline.patch
35 Patch18: gcc32-c++-nrv-test.patch
36 Patch20: gcc32-c++-tsubst-asm.patch
37 Patch22: gcc32-debug-pr7241.patch
39 Patch24: gcc32-duplicate-decl.patch
40 Patch25: gcc32-dwarf2-pr6381.patch
41 Patch26: gcc32-dwarf2-pr6436-test.patch
42 Patch27: gcc32-fde-merge-compat.patch
44 Patch32: gcc32-i386-memtest-test.patch
45 Patch36: gcc32-inline-label.patch
46 Patch37: gcc32-java-no-rpath.patch
47 Patch40: gcc32-test-rh65771.patch
48 Patch41: gcc32-test-rotate.patch
49 BuildRequires: autoconf
51 BuildRequires: fileutils >= 4.0.41
53 %{!?_without_ada:BuildRequires: gcc-ada}
54 BuildRequires: glibc-devel >= 2.2.5-20
55 BuildRequires: perl-devel
56 BuildRequires: texinfo >= 4.1
57 BuildRequires: zlib-devel
58 BuildRequires: gettext-devel
59 Requires: binutils >= 2.12.90.0.4
60 Requires: cpp = %{GCC_VERSION}
61 Requires: libgcc = %{GCC_VERSION}
62 Conflicts: glibc-devel < 2.2.5-20
63 URL: http://gcc.gnu.org/
64 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69 A compiler aimed at integrating all the optimizations and features
70 necessary for a high-performance and stable development environment.
73 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
74 wyprodukowania szybkiego i stablinego kodu wynikowego.
77 Este pacote adiciona infraestrutura básica e suporte a linguagem C
78 ao Gnu Compiler Collection.
81 Summary: Shared gcc library
82 Summary(pl): Biblioteka gcc
83 Summary(pt_BR): Biblioteca runtime para o GCC
85 Version: %{GCC_VERSION}
88 %description -n libgcc
91 %description -n libgcc -l pl
92 Biblioteka dynamiczna gcc.
94 %description -n libgcc -l pt_BR
95 Biblioteca runtime para o GCC.
98 Summary: C++ support for gcc
99 Summary(pl): Obs³uga C++ dla gcc
100 Summary(pt_BR): Suporte C++ para o gcc
101 Group: Development/Languages
104 Requires: gcc = %{GCC_VERSION}
107 This package adds C++ support to the GNU C compiler. It includes
108 support for most of the current C++ specification, including templates
109 and exception handling. It does not include a standard C++ library,
110 which is available separately.
112 %description c++ -l de
113 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
114 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
115 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
116 sie ist getrennt erhältlich.
118 %description c++ -l fr
119 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
120 support pour la plupart des spécifications actuelles de C++, dont les
121 modéles et la gestion des exceptions. Il ne comprend pas une
122 bibliothéque C++ standard, qui est disponible séparément.
124 %description c++ -l pl
125 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
126 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
127 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
129 %description c++ -l pt_BR
130 Este pacote adiciona suporte C++ para o gcc.
132 %description c++ -l tr
133 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
134 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
135 C++ kitaplýðý bu pakette yer almaz.
138 Summary: Objective C support for gcc
139 Summary(de): Objektive C-Unterstützung für gcc
140 Summary(fr): Gestion d'Objective C pour gcc
141 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
142 Summary(tr): gcc için Objective C desteði
143 Group: Development/Languages
146 Requires: libobjc = %{GCC_VERSION}
147 Requires: gcc = %{GCC_VERSION}
150 This package adds Objective C support to the GNU C compiler. Objective
151 C is a object oriented derivative of the C language, mainly used on
152 systems running NeXTSTEP. This package does not include the standard
153 objective C object library.
155 %description objc -l de
156 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
157 Objective C ist ein objektorientiertes Derivat von C, das zur
158 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
159 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
161 %description objc -l fr
162 Ce package ajoute un support Objective C au compilateur C GNU.
163 L'Objective C est un langage orienté objetdérivé du langage C,
164 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
165 pas la bibliothéque Objective C standard.
167 %description objc -l pl
168 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
169 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
170 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
171 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
173 %description objc -l tr
174 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
175 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
176 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
177 kitaplýðý bu pakette yer almaz.
180 Summary: Objective C Libraries
181 Summary(pl): Biblioteki Obiektowego C
183 Version: %{GCC_VERSION}
186 %description -n libobjc
187 Objective C Libraries.
189 %description -n libobjc -l pl
190 Biblioteki Obiektowego C.
192 %package -n libobjc-static
193 Summary: Static Objective C Libraries
194 Summary(pl): Statyczne Biblioteki Obiektowego C
195 Group: Development/Libraries
196 Version: %{GCC_VERSION}
197 Requires: libobjc = %{GCC_VERSION}
199 %description -n libobjc-static
200 Static Objective C Libraries.
202 %description -n libobjc-static -l pl
203 Statyczne biblioteki Obiektowego C.
206 Summary: Fortran 77 support for gcc
207 Summary(pl): Obs³uga Fortranu 77 dla gcc
208 Summary(pt_BR): Suporte Fortran 77 para o GCC
209 Group: Development/Languages/Fortran
210 Version: %{GCC_VERSION}
212 Requires: libg2c = %{GCC_VERSION}
215 This apckage adds support for compiling Fortran 77 programs with the
218 %description g77 -l pl
219 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
220 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
222 %description g77 -l pt_BR
223 Suporte Fortran 77 para o GCC.
226 Summary: Fortran 77 Libraries
227 Summary(pl): Biblioteki Fortranu 77
229 Version: %{GCC_VERSION}
231 %description -n libg2c
232 Fortran 77 Libraries.
234 %description -n libg2c -l pl
235 Biblioteki Fortranu 77.
237 %package -n libg2c-static
238 Summary: Static Fortran 77 Libraries
239 Summary(pl): Statyczne Biblioteki Fortranu 77
240 Group: Development/Libraries
241 Version: %{GCC_VERSION}
242 Requires: libg2c = %{GCC_VERSION}
244 %description -n libg2c-static
245 Static Fortran 77 Libraries.
247 %description -n libg2c-static -l pl
248 Statyczne biblioteki Fortranu 77.
251 Summary: Java support for gcc
252 Summary(pl): Obs³uga Javy dla gcc
253 Group: Development/Languages/Java
254 Version: %{GCC_VERSION}
255 Requires: %{name} = %{version}
256 Requires: libgcj >= 3.0.0
257 Requires: libgcj-devel >= 3.0.0
258 Requires: java-shared
259 Provides: gcj = %{epoch}:%{GCC_VERSION}-%{release}
262 This package adds experimental support for compiling Java(tm) programs
263 and bytecode into native code. To use this you will also need the
266 %description -l pl java
267 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
268 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
269 by³o przeprowadziæ kompilacjê.
272 Summary: Shared java tools
273 Summary(pl): Wspó³dzielone narzêdzia javy
274 Group: Development/Languages/Java
275 Version: %{GCC_VERSION}
276 Provides: jar = %{epoch}:%{GCC_VERSION}-%{release}
277 Provides: java-shared
279 Obsoletes: java-shared
282 %description java-tools
283 This package contains tools that are common for every Java(tm) implementation,
286 %description java-tools -l pl
287 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji Javy(tm), takie
291 Summary: Java Class Libraries
292 Summary(pl): Biblioteki Klas Javy
294 Version: %{GCC_VERSION}
298 %description -n libgcj
299 Java Class Libraries.
301 %description -n libgcj -l pl
302 Biblioteki Klas Javy.
304 %package -n libgcj-devel
305 Summary: Development files for Java Class Libraries
306 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
307 Group: Development/Libraries
308 Version: %{GCC_VERSION}
309 Requires: libgcj = %{GCC_VERSION}
310 Requires: %{name}-java
311 Obsoletes: libgcj3-devel
313 %description -n libgcj-devel
314 Development files for Java Class Libraries.
316 %description -n libgcj-devel -l pl
317 Pliki nag³ówkowe dla Bibliotek Klas Javy.
319 %package -n libgcj-static
320 Summary: Static Java Class Libraries
321 Summary(pl): Statyczne Biblioteki Klas Javy
322 Group: Development/Libraries
323 Version: %{GCC_VERSION}
324 Requires: libstdc++-devel = %{GCC_VERSION}
325 Requires: libgcj-devel = %{GCC_VERSION}
327 %description -n libgcj-static
328 Static Java Class Libraries.
330 %description -n libgcj-static -l pl
331 Statyczne Biblioteki Klas Javy.
333 %package -n libstdc++
334 Summary: GNU c++ library
335 Summary(pl): Biblioteki GNU C++
336 Summary(pt_BR): Biblioteca C++ GNU
338 Version: %{GCC_VERSION}
340 Obsoletes: libstdc++3
342 %description -n libstdc++
343 This is the GNU implementation of the standard C++ libraries, along
344 with additional GNU tools. This package includes the shared libraries
345 necessary to run C++ applications.
347 %description -n libstdc++ -l de
348 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
349 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
350 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
352 %description -n libstdc++ -l es
353 Este es el soporte de las bibliotecas padrón del C++, junto con
354 herramientas GNU adicionales. El paquete incluye las bibliotecas
355 compartidas necesarias para ejecutar aplicaciones C++.
357 %description -n libstdc++ -l fr
358 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
359 des outils GNU supplémentaires. Ce package comprend les librairies
360 partagées nécessaires à l'exécution d'application C++.
362 %description -n libstdc++ -l pl
363 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
364 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
365 uruchomienia aplikacji napisanych w C++.
367 %description -n libstdc++ -l pt_BR
368 Este pacote é uma implementação da biblioteca padrão C++ v3, um
369 subconjunto do padrão ISO 14882.
371 %description -n libstdc++ -l tr
372 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
373 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
375 %package -n libstdc++-devel
376 Summary: Header files and documentatino for C++ development
377 Summary(de): Header-Dateien zur Entwicklung mit C++
378 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
379 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
380 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
381 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
382 Group: Development/Libraries
383 Version: %{GCC_VERSION}
384 Requires: libstdc++ = %{GCC_VERSION}
385 Requires: %{name}-c++ = %{GCC_VERSION}
386 Obsoletes: libg++-devel
387 Obsoletes: libstdc++3-devel
389 %description -n libstdc++-devel
390 This is the GNU implementation of the standard C++ libraries. This
391 package includes the header files needed for C++ development and
392 library documentation.
394 %description -n libstdc++-devel -l es
395 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este paquete
396 incluye los archivos de inclusión y bibliotecas necesarios para desarrollo de
397 programas en lenguaje C++.
399 %description -n libstdc++-devel -l pl
400 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
401 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
402 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
404 %description -n libstdc++-devel -l pt_BR
405 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias para
406 desenvolvimento de programas C++.
408 %package -n libstdc++-static
409 Summary: Static C++ standard library
410 Summary(pl): Statyczna biblioteka standardowa C++
411 Group: Development/Libraries
412 Version: %{GCC_VERSION}
413 Requires: libstdc++-devel = %{GCC_VERSION}
415 %description -n libstdc++-static
416 Static C++ standard library.
418 %description -n libstdc++-static -l pl
419 Statycza biblioteka standardowa C++.
422 Summary: Ada support for gcc
423 Summary(pl): Obs³uga Ady do gcc
424 Group: Development/Languages
425 Version: %{GCC_VERSION}
426 Requires: libgnat = %{GCC_VERSION}
427 Requires: gcc = %{GCC_VERSION}
429 Obsoletes: gnat-devel
432 This package adds experimental support for compiling Ada programs.
434 %description -l pl ada
435 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
439 Summary: Ada standard libraries
440 Summary(pl): Biblioteki standardowe dla Ady
442 Version: %{GCC_VERSION}
446 %description -n libgnat
447 This package contains shared libraries needed to run programs written
450 %description -n libgnat -l pl
451 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów napisanych
454 %package -n libgnat-static
455 Summary: Static Ada standard libraries
456 Summary(pl): Statyczne biblioteki standardowe dla Ady
458 Version: %{GCC_VERSION}
459 Obsoletes: gnat-static
461 %description -n libgnat-static
462 This package contains static libraries for programs written in Ada.
464 %description -n libgnat-static -l pl
465 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
469 Summary: Ksi support for gcc
470 Summary(pl): Obs³uga Ksi dla gcc
471 Version: %{GCC_VERSION}.%{KSI_VERSION}
472 Group: Development/Languages
473 Requires: gcc = %{GCC_VERSION}
476 This package adds experimental support for compiling Ksi programs
477 into native code. You proabably don't need it, unless your are going
478 to develop a compiler using Ksi as intermediate representation or
479 you are using such compiler (like Gont).
481 %description ksi -l pl
482 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
483 w Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba
484 ¿e zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
485 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
488 Summary: The C Pre Processor
489 Summary(pl): Preprocesor C
490 Summary(pt_BR): Preprocessador para a linguagem C
491 Group: Development/Languages
492 Version: %{GCC_VERSION}
497 The C preprocessor is a "macro processor" that is used automatically
498 by the C compiler to transform your program before actual compilation.
499 It is called a macro processor because it allows you to define
500 "macros", which are brief abbreviations for longer constructs.
502 The C preprocessor provides four separate facilities that you can use
505 - Inclusion of header files. These are files of declarations that can
506 be substituted into your program.
507 - Macro expansion. You can define "macros", which are abbreviations
508 for arbitrary fragments of C code, and then the C preprocessor will
509 replace the macros with their definitions throughout the program.
510 - Conditional compilation. Using special preprocessing directives, you
511 can include or exclude parts of the program according to various
513 - Line control. If you use a program to combine or rearrange source
514 files into an intermediate file which is then compiled, you can use
515 line control to inform the compiler of where each source line
516 originally came from.
518 %description -n cpp -l es
519 Um preprocessador para a linguagem C.
521 %description -n cpp -l pl
522 Przeprocesor C jest "makro procesorem" który jest automatycznie
523 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
524 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
525 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
526 d³ugich konstrukcji w jêzyku C.
528 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
530 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
531 deklaracji polecenia do³±czenia innego pliku.
532 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
533 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
534 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
535 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
536 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
537 fragmenty obrabianego strumienia tekstów.
538 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
539 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
540 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
541 odpowiada fragment pliku wynikowego.
543 %description -n cpp -l pt_BR
544 O preprocessador C é um "processador de macros", que é utilizado pelo
545 compilador C para fazer algumas modificações no seu programa, antes da
546 compilação em si. Ele é chamado de "processador de macros" porque
547 permite a você definir "macros", que são abreviações para construções
550 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
551 arquivos de cabeçalho; expansão de macros; compilação condicional;
552 e controle da numeração das linhas do programa.
555 %setup -q -a1 -n %{name}-%{GCC_VERSION}
556 mv ksi-%{KSI_VERSION} gcc/ksi
580 perl -p -i -e 's/";/ (PLD Linux)";/' gcc/version.c
583 # cd gcc && autoconf; cd ..
584 # autoconf is not needed!
585 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
587 CFLAGS="%{rpmcflags}" \
588 CXXFLAGS="%{rpmcflags}" \
589 TEXCONFIG=false ../configure \
590 --prefix=%{_prefix} \
591 --infodir=%{_infodir} \
592 --mandir=%{_mandir} \
594 --enable-threads=posix \
595 --enable-__cxa_atexit \
596 --enable-languages="c,c++,f77%{?!_without_objc:,objc}%{!?_without_ada:,ada}%{!?_without_java:,java},ksi" \
604 --with-slibdir=%{_slibdir} \
608 PATH=$PATH:/sbin:%{_sbindir}
610 # this dirty hack is relict of setting, where objdir is subdir of srcdir
611 %if %{!?_without_ada:1}%{?_without_ada:0}
612 sed -e 's/srcdir=\$(fsrcdir)/srcdir=\$(fsrcdir) VPATH=\$(fsrcdir)/' \
613 gcc/ada/Makefile > makefile.tmp
614 mv -f makefile.tmp gcc/ada/Makefile
618 %{__make} -C obj-%{_target_platform} bootstrap-lean \
619 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
623 %if %{!?_without_ada:1}%{?_without_ada:0}
624 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
625 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
631 rm -rf $RPM_BUILD_ROOT
632 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
634 cd obj-%{_target_platform}
635 PATH=$PATH:/sbin:%{_sbindir}
638 DESTDIR=$RPM_BUILD_ROOT
640 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
641 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
643 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
644 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
646 %if %{!?_without_ada:1}%{?_without_ada:0}
647 # move ada shared libraries to proper place...
648 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.so.1 \
649 $RPM_BUILD_ROOT%{_libdir}/
650 # check if symlink to be made is valid
651 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
652 ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
653 ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
654 ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
655 ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
658 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
662 %if %{!?_without_java:1}%{?_without_java:0}
664 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
665 cp -f fastjar/README java-doc/README.fastjar
666 cp -f libffi/README java-doc/README.libffi
667 cp -f libffi/LICENSE java-doc/LICENSE.libffi
670 %if %{?!_without_objc:1}0
671 cp -f libobjc/README gcc/objc/README.libobjc
674 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc-lib/*/%{version}
675 for f in libstdc++.la libsupc++.la %{!?_without_java:libgcj.la} ; do
676 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
678 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
679 for f in libstdc++.la libsupc++.la libg2c.la \
680 %{!?_without_java:libgcj.la} %{!?_without_objc:libobjc.la}; do
681 perl -pi -e "s@^libdir='.*@libdir='/usr/lib'@" $RPM_BUILD_ROOT%{_libdir}/$f
684 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
685 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
687 # include/ contains install-tools/include/* and headers that were fixed up
688 # by fixincludes, we don't want former
689 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/)
691 # we have to save these however
692 mv -f $gccdir/include/{%{?!_without_objc:objc,}g2c.h,syslimits.h%{?!_without_java:,gcj}} $gccdir/tmp
693 rm -rf $gccdir/include
694 mv -f $gccdir/tmp $gccdir/include
695 cp $gccdir/install-tools/include/*.h $gccdir/include
696 # but we don't want anything more from install-tools
697 rm -rf $gccdir/install-tools/
700 %find_lang libstdc\+\+
703 rm -rf $RPM_BUILD_ROOT
706 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
709 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
712 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
715 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
718 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
721 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
724 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
727 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
730 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
733 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
735 %post -p /sbin/ldconfig -n libgcc
736 %postun -p /sbin/ldconfig -n libgcc
737 %post -p /sbin/ldconfig -n libstdc++
738 %postun -p /sbin/ldconfig -n libstdc++
739 %post -p /sbin/ldconfig -n libobjc
740 %postun -p /sbin/ldconfig -n libobjc
741 %post -p /sbin/ldconfig -n libg2c
742 %postun -p /sbin/ldconfig -n libg2c
743 %post -p /sbin/ldconfig -n libgcj
744 %postun -p /sbin/ldconfig -n libgcj
745 %post -p /sbin/ldconfig -n libgnat
746 %postun -p /sbin/ldconfig -n libgnat
748 %files -f %{name}.lang
749 %defattr(644,root,root,755)
751 %dir %{_libdir}/gcc-lib
752 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
753 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
754 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
755 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
756 %attr(755,root,root) %{_bindir}/gcc
757 %attr(755,root,root) %{_bindir}/gccbug
758 %attr(755,root,root) %{_bindir}/gcov
759 %attr(755,root,root) %{_bindir}/cc
761 %{_mandir}/man1/gcc.1*
762 %{_mandir}/man1/cc.1*
763 %{_mandir}/man1/gcov.1*
764 %lang(fr) %{_mandir}/fr/man1/gcc.1*
765 %lang(ja) %{_mandir}/ja/man1/gcc.1*
768 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
769 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc_eh.a
770 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
771 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
773 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ecrt*.o
774 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ncrt*.o
775 %{_libdir}/gcc-lib/%{_target_cpu}*/*/nof
778 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
779 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
781 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/*.h
782 %exclude %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
785 %defattr(644,root,root,755)
786 %attr(755,root,root) %{_slibdir}/lib*.so*
789 %defattr(644,root,root,755)
790 %attr(755,root,root) %{_bindir}/g++
791 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-g++
792 %attr(755,root,root) %{_bindir}/c++
793 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-c++
794 #%%attr(755,root,root) %{_bindir}/c++filt
795 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
796 %{_libdir}/libsupc++.la
798 %{_libdir}/nof/libsupc++.la
799 %{_libdir}/nof/libsupc++.a
801 %{_libdir}/libsupc++.a
802 %{_mandir}/man1/g++.1*
803 %lang(es) %{_mandir}/es/man1/c++filt.1*
804 %lang(ja) %{_mandir}/ja/man1/g++.1*
806 %files -n libstdc++ -f libstdc++.lang
807 %defattr(644,root,root,755)
808 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
810 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
813 %files -n libstdc++-devel
814 %defattr(644,root,root,755)
815 %doc libstdc++-v3/docs/html
816 %dir %{_includedir}/c++
817 %{_includedir}/c++/%{GCC_VERSION}
818 %attr(755,root,root) %{_libdir}/libstdc++.so
819 %{_libdir}/libstdc++.la
821 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
822 %{_libdir}/nof/libstdc++.la
825 %files -n libstdc++-static
826 %defattr(644,root,root,755)
827 %{_libdir}/libstdc++.a
829 %{_libdir}/nof/libstdc++.a
832 %if %{?!_without_objc:1}0
834 %defattr(644,root,root,755)
836 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
837 %attr(755,root,root) %{_libdir}/libobjc.so
838 %{_libdir}/libobjc.la
840 %attr(755,root,root) %{_libdir}/nof/libobjc.so
841 %{_libdir}/nof/libobjc.la
843 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
846 %defattr(644,root,root,755)
847 %attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
849 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
852 %files -n libobjc-static
853 %defattr(644,root,root,755)
856 %{_libdir}/nof/libobjc.a
861 %defattr(644,root,root,755)
862 %attr(755,root,root) %{_bindir}/g77
863 %attr(755,root,root) %{_bindir}/f77
865 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
866 %{_libdir}/libfrtbegin.a
868 %attr(755,root,root) %{_libdir}/libg2c.so
870 %{_libdir}/nof/libfrtbegin.a
871 %{_libdir}/nof/libg2c.la
872 %attr(755,root,root) %{_libdir}/nof/libg2c.so
874 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
875 %{_mandir}/man1/g77.1*
876 %{_mandir}/man1/f77.1*
877 %lang(ja) %{_mandir}/ja/man1/g77.1*
878 %lang(ja) %{_mandir}/ja/man1/f77.1*
881 %defattr(644,root,root,755)
882 %attr(755,root,root) %{_libdir}/libg2c.so.*.*.*
884 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
887 %files -n libg2c-static
888 %defattr(644,root,root,755)
891 %{_libdir}/nof/libg2c.a
894 %if %{!?_without_java:1}%{?_without_java:0}
896 %defattr(644,root,root,755)
898 %attr(755,root,root) %{_bindir}/gcj*
899 %attr(755,root,root) %{_bindir}/gij
900 %attr(755,root,root) %{_bindir}/jcf-dump
901 %attr(755,root,root) %{_bindir}/jv-*
902 %attr(755,root,root) %{_bindir}/grepjar
903 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcj
904 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
905 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
907 %{_mandir}/man1/jcf-*
911 %{_mandir}/man1/grepjar*
914 %defattr(644,root,root,755)
915 %attr(755,root,root) %{_bindir}/rmi*
916 %attr(755,root,root) %{_bindir}/jar
922 %defattr(644,root,root,755)
923 %attr(755,root,root) %{_bindir}/addr2name.awk
924 %attr(755,root,root) %{_libdir}/lib*cj*.so.*
925 %attr(755,root,root) %{_libdir}/lib-org*.so.*
927 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
930 %files -n libgcj-devel
931 %defattr(644,root,root,755)
938 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/gcj
939 %dir %{_libdir}/security
940 %{_libdir}/security/*
941 %dir %{_datadir}/java
942 %{_datadir}/java/libgcj*.jar
943 %{_libdir}/lib*cj.spec
944 %{_libdir}/lib*cj*.la
945 %attr(755,root,root) %{_libdir}/lib*cj*.so
946 %attr(755,root,root) %{_libdir}/lib-org-*.so
947 %attr(755,root,root) %{_libdir}/lib-org-*.la
949 %{_libdir}/nof/lib*cj*.la
950 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
953 %files -n libgcj-static
954 %defattr(644,root,root,755)
956 %{_libdir}/lib-org-*.a
958 %{_libdir}/nof/lib*cj*.a
962 %if %{!?_without_ada:1}%{?_without_ada:0}
964 %defattr(644,root,root,755)
965 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/gnat1
966 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adainclude
967 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib
968 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.ali
970 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgmem.a
972 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/Makefile.adalib
973 %attr(755,root,root) %{_bindir}/gnat*
975 %attr(755,root,root) %{_libdir}/libgnat*.so
976 %attr(755,root,root) %{_libdir}/libgnarl*.so
979 %defattr(644,root,root,755)
980 %attr(755,root,root) %{_libdir}/libgna*.so.1
982 %files -n libgnat-static
983 %defattr(644,root,root,755)
984 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgna*.a
988 %defattr(644,root,root,755)
989 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
991 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ksi1
994 %defattr(644,root,root,755)
995 %attr(755,root,root) %{_slibdir}/cpp
996 %attr(755,root,root) %{_bindir}/cpp
997 #%%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp0
998 #%%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/tradcpp0
999 %{_mandir}/man1/cpp.1*
1000 %lang(ja) %{_mandir}/ja/man1/cpp.1*