]> git.pld-linux.org Git - packages/gcc3.4.git/blame_incremental - gcc3.4.spec
- updated gettext BR
[packages/gcc3.4.git] / gcc3.4.spec
... / ...
CommitLineData
1#
2# TODO:
3# - fix ada build errors
4# - provide as full gcc 3.x as possible without conflicting with gcc 4.x
5# - should be named gcc3.4 or so, gcc3 is too ambiguous
6# (there were 4 different ABIs and very different compatibility issues)
7#
8# Conditional build:
9%bcond_without cxx
10%bcond_with fortran
11%bcond_with ada # build without ADA support
12%bcond_with java # build without Java support
13%bcond_with objc # build without ObjC support
14%bcond_with ssp # build with stack-smashing protector support
15%bcond_with multilib # build with multilib support
16%ifnarch amd64 ppc64 s390x sparc64
17%undefine with_multilib
18%endif
19#
20Summary: GNU Compiler Collection: the C compiler and shared files
21Summary(es.UTF-8): Colección de compiladores GNU: el compilador C y ficheros compartidos
22Summary(pl.UTF-8): Kolekcja kompilatorów GNU: kompilator C i pliki współdzielone
23Summary(pt_BR.UTF-8): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
24Name: gcc3.4
25Version: 3.4.6
26Release: 1
27License: GPL
28Group: Development/Languages
29Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.bz2
30# Source0-md5: 4a21ac777d4b5617283ce488b808da7b
31Source2: http://www.trl.ibm.com/projects/security/ssp/gcc2_95_3/gcc_stack_protect.m4.gz
32# Source2-md5: 07d93ad5fc07ca44cdaba46c658820de
33Source3: %{name}-gcc_visibility.m4
34Patch0: %{name}-info.patch
35Patch1: %{name}-nolocalefiles.patch
36Patch2: %{name}-ada-link-new-libgnat.patch
37Patch3: %{name}-nodebug.patch
38Patch4: %{name}-ssp.patch
39Patch5: %{name}-ada-link.patch
40Patch6: %{name}-pr15666.patch
41#
42# -fvisibility={default|internal|hidden|protected}
43#
44# Set the default ELF image symbol visibility to the specified option.
45# All symbols will be marked with this unless overrided within the code.
46# Using this feature can very substantially improve linking and load times
47# of shared object libraries, produce more optimised code, provide near-perfect
48# API export and prevent symbol clashes. It is strongly recommended that you
49# use this in any shared objects you distribute.
50#
51# -fvisibility-inlines-hidden
52#
53# Causes all inlined methods to be marked with __attribute__((visibility("hidden")))
54# so that they do not appear in the export table of a DSO and do not require a PLT
55# indirection when used within the DSO. Enabling this option can have a dramatic
56# effect on load and link times of a DSO as it massively reduces the size
57# of the dynamic export table when the library makes heavy use of templates.
58# While it can cause bloating through duplication of code within each DSO
59# where it is used, often the wastage is less than the considerable space
60# occupied by a long symbol name in the export table which is typical when using
61# templates and namespaces.
62#
63# How to Write Shared Libraries: http://people.redhat.com/drepper/dsohowto.pdf
64#
65Patch7: %{name}-visibility.patch
66Patch8: %{name}-cxxabi.patch
67Patch9: %{name}-pr-rh.patch
68#
69Patch20: %{name}-ada-bootstrap.patch
70URL: http://gcc.gnu.org/
71BuildRequires: autoconf
72BuildRequires: automake
73BuildRequires: binutils >= 2:2.15.91.0.2
74BuildRequires: bison
75BuildRequires: fileutils >= 4.0.41
76BuildRequires: flex
77%if %{with ada}
78BuildRequires: gcc(ada)
79BuildRequires: gcc-ada
80%endif
81BuildRequires: gettext-tools
82BuildRequires: glibc-devel >= 2.2.5-20
83BuildRequires: perl-devel
84BuildRequires: texinfo >= 4.1
85BuildRequires: zlib-devel
86Requires: binutils >= 2:2.15.91.0.2
87Requires: gcc-dirs >= 1.0-3
88Provides: cpp = %{epoch}:%{version}-%{release}
89%{?with_ada:Provides: gcc(ada)}
90%{?with_ssp:Provides: gcc(ssp)}
91Obsoletes: gcc3
92Conflicts: glibc-devel < 2.2.5-20
93BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
94
95%define _slibdir /%{_lib}
96%ifarch amd64 ppc64 s390x sparc64
97%define _slibdir32 /lib
98%define _libdir32 /usr/lib
99%endif
100%ifarch sparc64
101%define rpmcflags -O2 -mtune=ultrasparc
102%endif
103
104%description
105A compiler aimed at integrating all the optimizations and features
106necessary for a high-performance and stable development environment.
107
108This package contains the C compiler and some files shared by various
109parts of the GNU Compiler Collection. In order to use another GCC
110compiler you will need to install the appropriate subpackage.
111
112%description -l es.UTF-8
113Un compilador que intenta integrar todas las optimalizaciones y
114características necesarias para un entorno de desarrollo eficaz y
115estable.
116
117Este paquete contiene el compilador de C y unos ficheros compartidos
118por varias partes de la colección de compiladores GNU (GCC). Para usar
119otro compilador de GCC será necesario que instale el subpaquete
120adecuado.
121
122%description -l pl.UTF-8
123Kompilator, posiadający duże możliwości optymalizacyjne niezbędne do
124wyprodukowania szybkiego i stabilnego kodu wynikowego.
125
126Ten pakiet zawiera kompilator C i pliki współdzielone przez różne
127części kolekcji kompilatorów GNU (GCC). Żeby używać innego kompilatora
128z GCC, trzeba zainstalować odpowiedni podpakiet.
129
130%description -l pt_BR.UTF-8
131Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
132GNU Compiler Collection.
133
134%package libgcc
135Summary: Shared gcc library
136Summary(es.UTF-8): Biblioteca compartida de gcc
137Summary(pl.UTF-8): Biblioteka gcc
138Summary(pt_BR.UTF-8): Biblioteca runtime para o GCC
139Group: Libraries
140Obsoletes: gcc3-libgcc
141
142%description libgcc
143Shared gcc library.
144
145%description libgcc -l es.UTF-8
146Biblioteca compartida de gcc.
147
148%description libgcc -l pl.UTF-8
149Biblioteka dynamiczna gcc.
150
151%description libgcc -l pt_BR.UTF-8
152Biblioteca runtime para o GCC.
153
154%package c++
155Summary: C++ support for gcc
156Summary(es.UTF-8): Soporte de C++ para gcc
157Summary(pl.UTF-8): Obsługa C++ dla gcc
158Summary(pt_BR.UTF-8): Suporte C++ para o gcc
159Group: Development/Languages
160Requires: %{name} = %{epoch}:%{version}-%{release}
161Obsoletes: gcc3-c++
162
163%description c++
164This package adds C++ support to the GNU Compiler Collection. It
165includes support for most of the current C++ specification, including
166templates and exception handling. It does not include a standard C++
167library, which is available separately.
168
169%description c++ -l de.UTF-8
170Dieses Paket enthält die C++-Unterstützung für den
171GNU-Compiler-Collection. Es unterstützt die aktuelle
172C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
173C++-Standard-Library ist nicht enthalten - sie ist getrennt
174erhältlich.
175
176%description c++ -l es.UTF-8
177Este paquete añade soporte de C++ al GCC (colección de compiladores
178GNU). Ello incluye el soporte para la mayoría de la especificación
179actual de C++, incluyendo plantillas y manejo de excepciones. No
180incluye la biblioteca estándar de C++, la que es disponible separada.
181
182%description c++ -l fr.UTF-8
183Ce package ajoute un support C++ a la collection de compilateurs GNU.
184Il comprend un support pour la plupart des spécifications actuelles de
185C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
186une bibliothéque C++ standard, qui est disponible séparément.
187
188%description c++ -l pl.UTF-8
189Ten pakiet dodaje obsługę C++ do kompilatora gcc. Ma wsparcie dla
190dużej ilości obecnych specyfikacji C++, nie zawiera natomiast
191standardowych bibliotek C++, które są w oddzielnym pakiecie.
192
193%description c++ -l pt_BR.UTF-8
194Este pacote adiciona suporte C++ para o gcc.
195
196%description c++ -l tr.UTF-8
197Bu paket, GNU C derleyicisine C++ desteği ekler. 'Template'ler ve
198aykırı durum işleme gibi çoğu güncel C++ tanımlarına uyar. Standart
199C++ kitaplığı bu pakette yer almaz.
200
201%package objc
202Summary: Objective C support for gcc
203Summary(de.UTF-8): Objektive C-Unterstützung für gcc
204Summary(es.UTF-8): Soporte de Objective C para gcc
205Summary(fr.UTF-8): Gestion d'Objective C pour gcc
206Summary(pl.UTF-8): Obsługa obiektowego C dla kompilatora gcc
207Summary(tr.UTF-8): gcc için Objective C desteği
208Group: Development/Languages
209Requires: %{name} = %{epoch}:%{version}-%{release}
210Requires: %{name}-libobjc = %{epoch}:%{version}-%{release}
211
212%description objc
213This package adds Objective C support to the GNU Compiler Collection.
214Objective C is a object oriented derivative of the C language, mainly
215used on systems running NeXTSTEP. This package does not include the
216standard objective C object library.
217
218%description objc -l de.UTF-8
219Dieses Paket ergänzt den GNU-Compiler-Collection durch
220Objective-C-Support. Objective C ist ein objektorientiertes Derivat
221von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
222Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
223
224%description objc -l es.UTF-8
225Este paquete añade soporte de Objective C al GCC (colección de
226compiladores GNU). Objective C es un lenguaje orientado a objetos
227derivado de C, principalmente usado en sistemas que funcionan bajo
228NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
229Objective C.
230
231%description objc -l fr.UTF-8
232Ce package ajoute un support Objective C a la collection de
233compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
234langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
235package n'inclue pas la bibliothéque Objective C standard.
236
237%description objc -l pl.UTF-8
238Ten pakiet dodaje obsługę obiektowego C do kompilatora gcc. Obiektowe
239C (objc) jest zorientowaną obiektowo pochodną języka C, używaną
240głównie w systemach używających NeXTSTEP. W pakiecie nie ma
241standardowej biblioteki objc (która znajduje się w osobnym pakiecie).
242
243%description objc -l tr.UTF-8
244Bu paket, GNU C derleyicisine Objective C desteği ekler. Objective C,
245C dilinin nesne yönelik bir türevidir ve NeXTSTEP altında çalışan
246sistemlerde yaygın olarak kullanılır. Standart Objective C nesne
247kitaplığı bu pakette yer almaz.
248
249%package libobjc
250Summary: Objective C Libraries
251Summary(es.UTF-8): Bibliotecas de Objective C
252Summary(pl.UTF-8): Biblioteki Obiektowego C
253Group: Libraries
254
255%description libobjc
256Objective C Libraries.
257
258%description libobjc -l es.UTF-8
259Bibliotecas de Objective C.
260
261%description libobjc -l pl.UTF-8
262Biblioteki Obiektowego C.
263
264%package libobjc-static
265Summary: Static Objective C Libraries
266Summary(es.UTF-8): Bibliotecas estáticas de Objective C
267Summary(pl.UTF-8): Statyczne Biblioteki Obiektowego C
268Group: Development/Libraries
269Requires: %{name}-libobjc = %{epoch}:%{version}-%{release}
270
271%description libobjc-static
272Static Objective C Libraries.
273
274%description libobjc-static -l es.UTF-8
275Bibliotecas estáticas de Objective C.
276
277%description libobjc-static -l pl.UTF-8
278Statyczne biblioteki Obiektowego C.
279
280%package g77
281Summary: Fortran 77 support for gcc
282Summary(es.UTF-8): Soporte de Fortran 77 para gcc
283Summary(pl.UTF-8): Obsługa Fortranu 77 dla gcc
284Summary(pt_BR.UTF-8): Suporte Fortran 77 para o GCC
285Group: Development/Languages/Fortran
286Requires: %{name}-libg2c = %{epoch}:%{version}-%{release}
287
288%description g77
289This package adds support for compiling Fortran 77 programs with the
290GNU compiler.
291
292%description g77 -l es.UTF-8
293Este paquete añade soporte para compilar programas escritos en Fortran
29477 con el compilador GNU.
295
296%description g77 -l pl.UTF-8
297Ten pakiet dodaje obsługę Fortranu 77 do kompilatora gcc. Jest
298potrzebny do kompilowania programów pisanych w języku Fortran 77.
299
300%description g77 -l pt_BR.UTF-8
301Suporte Fortran 77 para o GCC.
302
303%package libg2c
304Summary: Fortran 77 Libraries
305Summary(es.UTF-8): Bibliotecas de Fortran 77
306Summary(pl.UTF-8): Biblioteki Fortranu 77
307Group: Libraries
308
309%description libg2c
310Fortran 77 Libraries.
311
312%description libg2c -l es.UTF-8
313Bibliotecas de Fortran 77.
314
315%description libg2c -l pl.UTF-8
316Biblioteki Fortranu 77.
317
318%package libg2c-static
319Summary: Static Fortran 77 Libraries
320Summary(es.UTF-8): Bibliotecas estáticas de Fortran 77
321Summary(pl.UTF-8): Statyczne Biblioteki Fortranu 77
322Group: Development/Libraries
323Requires: %{name}-libg2c = %{epoch}:%{version}-%{release}
324
325%description libg2c-static
326Static Fortran 77 Libraries.
327
328%description libg2c-static -l es.UTF-8
329Bibliotecas estáticas de Fortran 77.
330
331%description libg2c-static -l pl.UTF-8
332Statyczne biblioteki Fortranu 77.
333
334%package java
335Summary: Java support for gcc
336Summary(es.UTF-8): Soporte de Java para gcc
337Summary(pl.UTF-8): Obsługa Javy dla gcc
338Group: Development/Languages/Java
339Requires: %{name} = %{epoch}:%{version}-%{release}
340Requires: %{name}-libgcj = %{epoch}:%{version}-%{release}
341Requires: %{name}-libgcj-devel = %{epoch}:%{version}-%{release}
342Requires: java-shared
343Provides: gcj = %{epoch}:%{version}-%{release}
344
345%description java
346This package adds experimental support for compiling Java(tm) programs
347and bytecode into native code. To use this you will also need the
348libgcj package.
349
350%description java -l es.UTF-8
351Este paquete añade soporte experimental para compilar programas
352Java(tm) y su bytecode en código nativo. Para usarlo también va a
353necesitar el paquete libgcj.
354
355%description java -l pl.UTF-8
356Wsparcie dla kompilowania programów Java(tm) zarówno do bajt-kodu jak
357i do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby można
358było przeprowadzić kompilację.
359
360%package java-tools
361Summary: Shared java tools
362Summary(es.UTF-8): Herramientas compartidas de Java
363Summary(pl.UTF-8): Współdzielone narzędzia javy
364Group: Development/Languages/Java
365Provides: jar = %{epoch}:%{version}-%{release}
366Provides: java-shared
367Obsoletes: fastjar
368Obsoletes: jar
369Obsoletes: java-shared
370
371%description java-tools
372This package contains tools that are common for every Java(tm)
373implementation, such as rmic or jar.
374
375%description java-tools -l es.UTF-8
376Este paquete contiene herramientas que son comunes para cada
377implementación de Java(tm), como rmic o jar.
378
379%description java-tools -l pl.UTF-8
380Pakiet ten zawiera narzędzia wspólne dla każdej implementacji
381Javy(tm), takie jak rmic czy jar.
382
383%package libgcj
384Summary: Java Class Libraries
385Summary(es.UTF-8): Bibliotecas de clases de Java
386Summary(pl.UTF-8): Biblioteki Klas Javy
387Group: Libraries
388Requires: zlib
389
390%description libgcj
391Java Class Libraries.
392
393%description libgcj -l es.UTF-8
394Bibliotecas de clases de Java.
395
396%description libgcj -l pl.UTF-8
397Biblioteki Klas Javy.
398
399%package libgcj-devel
400Summary: Development files for Java Class Libraries
401Summary(es.UTF-8): Ficheros de desarrollo para las bibliotecas de clases de Java
402Summary(pl.UTF-8): Pliki nagłówkowe dla Bibliotek Klas Javy
403Group: Development/Libraries
404Requires: %{name}-java = %{epoch}:%{version}-%{release}
405Requires: %{name}-libgcj = %{epoch}:%{version}-%{release}
406
407%description libgcj-devel
408Development files for Java Class Libraries.
409
410%description libgcj-devel -l es.UTF-8
411Ficheros de desarrollo para las bibliotecas de clases de Java.
412
413%description libgcj-devel -l pl.UTF-8
414Pliki nagłówkowe dla Bibliotek Klas Javy.
415
416%package libgcj-static
417Summary: Static Java Class Libraries
418Summary(es.UTF-8): Bibliotecas estáticas de clases de Java
419Summary(pl.UTF-8): Statyczne Biblioteki Klas Javy
420Group: Development/Libraries
421Requires: %{name}-libgcj-devel = %{epoch}:%{version}-%{release}
422Requires: %{name}-libstdc++-devel = %{epoch}:%{version}-%{release}
423
424%description libgcj-static
425Static Java Class Libraries.
426
427%description libgcj-static -l es.UTF-8
428Bibliotecas estáticas de clases de Java.
429
430%description libgcj-static -l pl.UTF-8
431Statyczne Biblioteki Klas Javy.
432
433%package libstdc++
434Summary: GNU c++ library
435Summary(es.UTF-8): Biblioteca C++ de GNU
436Summary(pl.UTF-8): Biblioteki GNU C++
437Summary(pt_BR.UTF-8): Biblioteca C++ GNU
438Group: Libraries
439Obsoletes: gcc3-libstdc++
440
441%description libstdc++
442This is the GNU implementation of the standard C++ libraries, along
443with additional GNU tools. This package includes the shared libraries
444necessary to run C++ applications.
445
446%description libstdc++ -l de.UTF-8
447Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
448weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
449C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
450
451%description libstdc++ -l es.UTF-8
452Este es el soporte de las bibliotecas padrón del C++, junto con
453herramientas GNU adicionales. El paquete incluye las bibliotecas
454compartidas necesarias para ejecutar aplicaciones C++.
455
456%description libstdc++ -l fr.UTF-8
457Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
458des outils GNU supplémentaires. Ce package comprend les librairies
459partagées nécessaires à l'exécution d'application C++.
460
461%description libstdc++ -l pl.UTF-8
462Pakiet ten zawiera biblioteki będące implementacją standardowych
463bibliotek C++. Znajdują się w nim biblioteki dynamiczne niezbędne do
464uruchomienia aplikacji napisanych w C++.
465
466%description libstdc++ -l pt_BR.UTF-8
467Este pacote é uma implementação da biblioteca padrão C++ v3, um
468subconjunto do padrão ISO 14882.
469
470%description libstdc++ -l tr.UTF-8
471Bu paket, standart C++ kitaplıklarının GNU gerçeklemesidir ve C++
472uygulamalarının koşturulması için gerekli kitaplıkları içerir.
473
474%package libstdc++-devel
475Summary: Header files and documentation for C++ development
476Summary(de.UTF-8): Header-Dateien zur Entwicklung mit C++
477Summary(es.UTF-8): Ficheros de cabecera y documentación para desarrollo C++
478Summary(fr.UTF-8): Fichiers d'en-tête et biblitothèques pour développer en C++
479Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja do biblioteki standardowej C++
480Summary(pt_BR.UTF-8): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
481Summary(tr.UTF-8): C++ ile program geliştirmek için gerekli dosyalar
482Group: Development/Libraries
483Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
484Requires: %{name}-libstdc++ = %{epoch}:%{version}-%{release}
485Requires: glibc-devel
486Obsoletes: gcc3-libstdc++-devel
487
488%description libstdc++-devel
489This is the GNU implementation of the standard C++ libraries. This
490package includes the header files needed for C++ development and
491library documentation.
492
493%description libstdc++-devel -l es.UTF-8
494Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
495paquete incluye los archivos de inclusión y bibliotecas necesarios
496para desarrollo de programas en lenguaje C++.
497
498%description libstdc++-devel -l pl.UTF-8
499Pakiet ten zawiera biblioteki będące implementacją standardowych
500bibliotek C++. Znajdują się w nim pliki nagłówkowe wykorzystywane przy
501programowaniu w języku C++ oraz dokumentacja biblioteki standardowej.
502
503%description libstdc++-devel -l pt_BR.UTF-8
504Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
505para desenvolvimento de programas C++.
506
507%package libstdc++-static
508Summary: Static C++ standard library
509Summary(es.UTF-8): Biblioteca estándar estática de C++
510Summary(pl.UTF-8): Statyczna biblioteka standardowa C++
511Group: Development/Libraries
512Requires: %{name}-libstdc++-devel = %{epoch}:%{version}-%{release}
513Obsoletes: gcc3-libstdc++-static
514
515%description libstdc++-static
516Static C++ standard library.
517
518%description libstdc++-static -l es.UTF-8
519Biblioteca estándar estática de C++.
520
521%description libstdc++-static -l pl.UTF-8
522Statyczna biblioteka standardowa C++.
523
524%package libffi
525Summary: Foreign Function Interface library
526Summary(es.UTF-8): Biblioteca de interfaz de funciones ajenas
527Summary(pl.UTF-8): Biblioteka zewnętrznych wywołań funkcji
528Group: Libraries
529
530%description libffi
531The libffi library provides a portable, high level programming
532interface to various calling conventions. This allows a programmer to
533call any function specified by a call interface description at run
534time.
535
536%description libffi -l es.UTF-8
537La biblioteca libffi provee una interfaz portable de programación de
538alto nivel para varias convenciones de llamada. Ello permite que un
539programador llame una función cualquiera especificada por una
540descripción de interfaz de llamada en el tiempo de ejecución.
541
542%description libffi -l pl.UTF-8
543Biblioteka libffi dostarcza przenośnego, wysokopoziomowego
544międzymordzia do różnych konwencji wywołań funkcji. Pozwala to
545programiście wywoływać dowolne funkcje podając konwencję wywołania w
546czasie wykonania.
547
548%package libffi-devel
549Summary: Development files for Foreign Function Interface library
550Summary(es.UTF-8): Ficheros de desarrollo para libffi
551Summary(pl.UTF-8): Pliki nagłówkowe dla libffi
552Group: Development/Libraries
553Requires: %{name}-libffi = %{epoch}:%{version}-%{release}
554
555%description libffi-devel
556Development files for Foreign Function Interface library.
557
558%description libffi-devel -l es.UTF-8
559Ficheros de desarrollo para libffi.
560
561%description libffi-devel -l pl.UTF-8
562Pliki nagłówkowe dla libffi.
563
564%package libffi-static
565Summary: Static Foreign Function Interface library
566Summary(es.UTF-8): Biblioteca libffi estática
567Summary(pl.UTF-8): Statyczna biblioteka libffi
568Group: Development/Libraries
569Requires: %{name}-libffi-devel = %{epoch}:%{version}-%{release}
570
571%description libffi-static
572Static Foreign Function Interface library.
573
574%description libffi-static -l es.UTF-8
575Biblioteca libffi estática.
576
577%description libffi-static -l pl.UTF-8
578Statyczna biblioteka libffi.
579
580%package ada
581Summary: Ada support for gcc
582Summary(es.UTF-8): Soporte de Ada para gcc
583Summary(pl.UTF-8): Obsługa Ady do gcc
584Group: Development/Languages
585Requires: %{name} = %{epoch}:%{version}-%{release}
586Requires: %{name}-libgnat = %{epoch}:%{version}-%{release}
587
588%description ada
589This package adds experimental support for compiling Ada programs.
590
591%description ada -l es.UTF-8
592Este paquete añade soporte experimental para compilar programas en
593Ada.
594
595%description ada -l pl.UTF-8
596Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
597Adzie.
598
599%package libgnat
600Summary: Ada standard libraries
601Summary(es.UTF-8): Bibliotecas estándares de Ada
602Summary(pl.UTF-8): Biblioteki standardowe dla Ady
603Group: Libraries
604
605%description libgnat
606This package contains shared libraries needed to run programs written
607in Ada.
608
609%description libgnat -l es.UTF-8
610Este paquete contiene las bibliotecas compartidas necesarias para
611ejecutar programas escritos en Ada.
612
613%description libgnat -l pl.UTF-8
614Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
615napisanych w Adzie.
616
617%package libgnat-static
618Summary: Static Ada standard libraries
619Summary(pl.UTF-8): Statyczne biblioteki standardowe dla Ady
620Group: Libraries
621
622%description libgnat-static
623This package contains static libraries for programs written in Ada.
624
625%description libgnat-static -l pl.UTF-8
626Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
627Adzie.
628
629%prep
630%setup -q -n gcc-%{version}
631
632%patch0 -p1
633%patch1 -p1
634%patch2 -p1
635%{!?debug:%patch3 -p1}
636%{?with_ssp:%patch4 -p1}
637%patch5 -p1
638%patch6 -p0
639%patch7 -p1
640%patch8 -p0
641%patch9 -p0
642
643%ifarch alpha ia64
644# needed for bootstrap using gcc 3.3.x on alpha
645# and even using the same 3.4.x(!) (but not Debian's 3.3.x) on ia64
646%patch20 -p2
647%endif
648
649# because we distribute modified version of gcc...
650perl -pi -e 's/(version.*)";/$1 %{?with_ssp:SSP }(PLD Linux)";/' gcc/version.c
651perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
652
653mv ChangeLog ChangeLog.general
654
655%build
656# because pr16276 patch modifies configure.ac
657cd gcc
658%{__autoconf}
659cd ..
660cp -f /usr/share/automake/config.sub .
661
662rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
663
664CC="%{__cc}"
665
666%if %{with multilib}
667cat > gcc64 <<"EOF"
668#!/bin/sh
669exec /usr/bin/gcc -m64 "$@"
670EOF
671chmod +x gcc64
672CC=`pwd`/gcc64
673%endif
674
675CFLAGS="%{rpmcflags}" \
676CXXFLAGS="%{rpmcflags}" \
677CC="$CC" \
678TEXCONFIG=false \
679../configure \
680 --prefix=%{_prefix} \
681 --libdir=%{_libdir} \
682 --libexecdir=%{_libdir} \
683 --infodir=%{_infodir} \
684 --mandir=%{_mandir} \
685 --program-suffix="3.4" \
686 --enable-version-specific-runtime-libs \
687 --enable-shared \
688 --enable-threads=posix \
689 --enable-__cxa_atexit \
690 --enable-languages="c%{?with_cxx:,c++}%{?with_fortran:,f77}%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
691 --enable-c99 \
692 --enable-long-long \
693%ifnarch ppc
694%if %{without multilib}
695 --disable-multilib \
696%endif
697%endif
698 --enable-nls \
699 --with-gnu-as \
700 --with-gnu-ld \
701 --with-system-zlib \
702 --with-slibdir=%{_slibdir} \
703 --without-x \
704 %{_target_platform}
705
706PATH=$PATH:/sbin:%{_sbindir}
707
708cd ..
709# - on alpha stage1 needs -O0 for 3.3->3.4 bootstrap (gnat from 3.3 is seriously broken)
710# - on ia64 use bootstrap-lean as profiledbootstrap is broken (PR 13882, 15836, 16108)
711%{__make} -C obj-%{_target_platform} \
712%ifarch ia64
713 bootstrap-lean \
714%else
715 profiledbootstrap \
716%endif
717 GCJFLAGS="%{rpmcflags}" \
718 BOOT_CFLAGS="%{rpmcflags}" \
719%ifarch alpha
720 STAGE1_CFLAGS="%{rpmcflags} -O0" \
721%else
722 STAGE1_CFLAGS="%{rpmcflags}" \
723%endif
724 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
725 mandir=%{_mandir} \
726 infodir=%{_infodir}
727
728%if %{with ada}
729# cannot build it in parallel
730for tgt in gnatlib-shared gnattools gnatlib; do
731%{__make} -C obj-%{_target_platform}/gcc $tgt \
732 BOOT_CFLAGS="%{rpmcflags}" \
733 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
734 mandir=%{_mandir} \
735 infodir=%{_infodir}
736done
737%endif
738
739%install
740rm -rf $RPM_BUILD_ROOT
741install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
742
743cd obj-%{_target_platform}
744PATH=$PATH:/sbin:%{_sbindir}
745
746%{__make} -j1 install \
747 mandir=%{_mandir} \
748 infodir=%{_infodir} \
749 DESTDIR=$RPM_BUILD_ROOT
750
751%ifarch sparc64
752ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
753 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
754%endif
755
756ln -sf gcc3.4 $RPM_BUILD_ROOT%{_bindir}/cc3.4
757echo ".so gcc3.4.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc3.4.1
758
759%if %{with fortran}
760ln -sf g773.4 $RPM_BUILD_ROOT%{_bindir}/f773.4
761echo ".so g773.4" > $RPM_BUILD_ROOT%{_mandir}/man1/f773.4
762%endif
763
764%if %{with ada}
765# move ada shared libraries to proper place...
766mv -f $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
767 $RPM_BUILD_ROOT%{_libdir}
768# check if symlink to be made is valid
769test -f $RPM_BUILD_ROOT%{_libdir}/libgnat3.4.so.1
770ln -sf libgnat3.4.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat3.4.so
771ln -sf libgnarl3.4.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl3.4.so
772ln -sf libgnat3.4.so $RPM_BUILD_ROOT%{_libdir}/libgnat3.4.so
773ln -sf libgnarl3.4.so $RPM_BUILD_ROOT%{_libdir}/libgnarl3.4.so
774%endif
775
776cd ..
777
778%if %{with java}
779install -d java-doc
780cp -f libjava/doc/cni.sgml libjava/READ* java-doc
781cp -f fastjar/README java-doc/README.fastjar
782cp -f libffi/README java-doc/README.libffi
783cp -f libffi/LICENSE java-doc/LICENSE.libffi
784%endif
785
786%if %{with objc}
787cp -f libobjc/README gcc/objc/README.libobjc
788%endif
789
790# include/ contains install-tools/include/* and headers that were fixed up
791# by fixincludes, we don't want former
792gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
793mkdir $gccdir/tmp
794# we have to save these however
795mv -f $gccdir/include/syslimits.h $gccdir/tmp
796%{?with_cxx:mv -f $gccdir/include/c++ $gccdir/tmp}
797%{?with_fortran:mv -f $gccdir/include/g2c.h $gccdir/tmp}
798%{?with_objc:mv -f $gccdir/include/objc $gccdir/tmp}
799%{?with_java:mv -f $gccdir/include/{libffi/ffitarget.h,gcj} $gccdir/tmp}
800rm -rf $gccdir/include
801mv -f $gccdir/tmp $gccdir/include
802cp $gccdir/install-tools/include/*.h $gccdir/include
803# but we don't want anything more from install-tools
804rm -rf $gccdir/install-tools
805
806%if %{with multilib}
807ln -sf %{_slibdir}/libgcc_s.so.1 $gccdir/libgcc_s.so
808ln -sf %{_slibdir32}/libgcc_s.so.1 $gccdir/libgcc_s_32.so
809%endif
810
811%if %{with ssp}
812zcat %{SOURCE2} > $RPM_BUILD_ROOT%{_aclocaldir}/gcc_stack_protect.m4
813%endif
814install %{SOURCE3} $RPM_BUILD_ROOT%{_aclocaldir}/gcc_visibility.m4
815
816%clean
817rm -rf $RPM_BUILD_ROOT
818
819%post
820[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
821
822%postun
823[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
824
825%post g77
826[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
827
828%postun g77
829[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
830
831%post java
832[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
833
834%postun java
835[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
836
837%post -p /sbin/ldconfig libgcc
838%postun -p /sbin/ldconfig libgcc
839%post -p /sbin/ldconfig libstdc++
840%postun -p /sbin/ldconfig libstdc++
841%post -p /sbin/ldconfig libobjc
842%postun -p /sbin/ldconfig libobjc
843%post -p /sbin/ldconfig libg2c
844%postun -p /sbin/ldconfig libg2c
845%post -p /sbin/ldconfig libgcj
846%postun -p /sbin/ldconfig libgcj
847%post -p /sbin/ldconfig libgnat
848%postun -p /sbin/ldconfig libgnat
849%post -p /sbin/ldconfig libffi
850%postun -p /sbin/ldconfig libffi
851
852%files
853%defattr(644,root,root,755)
854%doc ChangeLog.general MAINTAINERS NEWS bugs.html faq.html
855%doc gcc/{ChangeLog,ONEWS,README.Portability}
856%dir %{_libdir}/gcc/*/*
857%dir %{_libdir}/gcc/*/*/include
858%{?with_ssp:%{_aclocaldir}/gcc_stack_protect.m4}
859%{_aclocaldir}/gcc_visibility.m4
860
861%attr(755,root,root) %{_bindir}/*-gcc*
862%attr(755,root,root) %{_bindir}/gcc3.4
863%attr(755,root,root) %{_bindir}/gccbug3.4
864%attr(755,root,root) %{_bindir}/gcov3.4
865%attr(755,root,root) %{_bindir}/cc3.4
866%attr(755,root,root) %{_bindir}/cpp3.4
867
868%{_mandir}/man1/cc3.4.1*
869%{_mandir}/man1/cpp3.4.1*
870%{_mandir}/man1/gcc3.4.1*
871%{_mandir}/man1/gcov3.4.1*
872
873%attr(755,root,root) %{_slibdir}/lib*.so
874%ifarch ia64
875%{_slibdir}/libunwind.a
876%endif
877%{_libdir}/gcc/*/*/libgcov.a
878%{_libdir}/gcc/*/*/libgcc.a
879%{_libdir}/gcc/*/*/libgcc_eh.a
880%{_libdir}/gcc/*/*/specs
881%{_libdir}/gcc/*/*/crt*.o
882%if %{with multilib}
883%attr(755,root,root) %{_libdir}/gcc/*/*/libgcc_s*.so
884%{_libdir}/gcc/*/*/32/libgcc.a
885%{_libdir}/gcc/*/*/32/libgcc_eh.a
886%{_libdir}/gcc/*/*/32/libgcov.a
887%{_libdir}/gcc/*/*/32/crt*.o
888%endif
889%ifarch ppc
890%{_libdir}/gcc/*/*/ecrt*.o
891%{_libdir}/gcc/*/*/ncrt*.o
892%{_libdir}/gcc/*/*/nof
893%dir %{_libdir}/nof
894%endif
895%attr(755,root,root) %{_libdir}/gcc/*/*/cc1
896%attr(755,root,root) %{_libdir}/gcc/*/*/collect2
897
898%{_libdir}/gcc/*/*/include/*.h
899%{?with_fortran:%exclude %{_libdir}/gcc/*/*/include/g2c.h}
900
901%files libgcc
902%defattr(644,root,root,755)
903%attr(755,root,root) %{_slibdir}*/lib*.so.*
904%if %{with multilib}
905%attr(755,root,root) %{_slibdir32}/lib*.so.*
906%endif
907
908%if %{with cxx}
909%files c++
910%defattr(644,root,root,755)
911%doc gcc/cp/{ChangeLog,NEWS}
912%attr(755,root,root) %{_bindir}/g++3.4
913%attr(755,root,root) %{_bindir}/*-g++3.4
914%attr(755,root,root) %{_bindir}/c++3.4
915%attr(755,root,root) %{_bindir}/*-c++3.4
916%attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
917%{_libdir}/gcc/*/*/libsupc++.la
918%{_libdir}/gcc/*/*/libsupc++.a
919%ifarch ppc
920%{_libdir}/gcc/*/*/nof/libsupc++.la
921%{_libdir}/gcc/*/*/nof/libsupc++.a
922%endif
923%if %{with multilib}
924%{_libdir32}/gcc/*/*/libsupc++.la
925%{_libdir32}/gcc/*/*/libsupc++.a
926%endif
927%{_mandir}/man1/g++3.4.1*
928
929%files libstdc++
930%defattr(644,root,root,755)
931%doc libstdc++-v3.4/{ChangeLog,README}
932%attr(755,root,root) %{_libdir}/gcc/*/*/libstdc++.so.*.*.*
933%ifarch ppc
934%attr(755,root,root) %{_libdir}/nof/gcc/*/*/libstdc++.so.*.*.*
935%endif
936%if %{with multilib}
937%attr(755,root,root) %{_libdir32}/gcc/*/*/libstdc++.so.*.*.*
938%endif
939
940%files libstdc++-devel
941%defattr(644,root,root,755)
942%doc libstdc++-v3.4/docs/html
943%{_libdir}/gcc/*/*/include/c++
944%attr(755,root,root) %{_libdir}/gcc/*/*/libstdc++.so
945%{_libdir}/gcc/*/*/libstdc++.la
946%ifarch ppc
947%attr(755,root,root) %{_libdir}/gcc/*/*/nof/libstdc++.so
948%{_libdir}/gcc/*/*/nof/libstdc++.la
949%endif
950%if %{with multilib}
951%attr(755,root,root) %{_libdir32}/gcc/*/*/libstdc++.so
952%{_libdir32}/gcc/*/*/libstdc++.la
953%endif
954
955%files libstdc++-static
956%defattr(644,root,root,755)
957%{_libdir}/gcc/*/*/libstdc++.a
958%ifarch ppc
959%{_libdir}/gcc/*/*/nof/libstdc++.a
960%endif
961%if %{with multilib}
962%{_libdir32}/gcc/*/*/libstdc++.a
963%endif
964%endif
965
966%if %{with objc}
967%files objc
968%defattr(644,root,root,755)
969%doc gcc/objc/README
970%attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
971%attr(755,root,root) %{_libdir}/libobjc.so
972%{_libdir}/libobjc.la
973%ifarch ppc
974%attr(755,root,root) %{_libdir}/nof/libobjc.so
975%{_libdir}/nof/libobjc.la
976%endif
977%if %{with multilib}
978%attr(755,root,root) %{_libdir32}/libobjc.so
979%{_libdir32}/libobjc.la
980%endif
981%{_libdir}/gcc/*/*/include/objc
982
983%files libobjc
984%defattr(644,root,root,755)
985%doc libobjc/{ChangeLog,README*}
986%attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
987%ifarch ppc
988%attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
989%endif
990%if %{with multilib}
991%attr(755,root,root) %{_libdir32}/libobjc.so.*.*.*
992%endif
993
994%files libobjc-static
995%defattr(644,root,root,755)
996%{_libdir}/libobjc.a
997%ifarch ppc
998%{_libdir}/nof/libobjc.a
999%endif
1000%if %{with multilib}
1001%{_libdir32}/libobjc.a
1002%endif
1003%endif
1004
1005%if %{with fortran}
1006%files g77
1007%defattr(644,root,root,755)
1008%doc gcc/f/{BUGS,ChangeLog,NEWS}
1009%attr(755,root,root) %{_bindir}/g77-*
1010%attr(755,root,root) %{_bindir}/f77
1011#%{_infodir}/g77*
1012%attr(755,root,root) %{_libdir}/gcc/*/*/f771
1013%{_libdir}/libfrtbegin.a
1014%{_libdir}/libg2c.la
1015%attr(755,root,root) %{_libdir}/libg2c.so
1016%ifarch ppc
1017%{_libdir}/nof/libfrtbegin.a
1018%{_libdir}/nof/libg2c.la
1019%attr(755,root,root) %{_libdir}/nof/libg2c.so
1020%endif
1021%if %{with multilib}
1022%{_libdir32}/libfrtbegin.a
1023%{_libdir32}/libg2c.la
1024%attr(755,root,root) %{_libdir32}/libg2c.so
1025%endif
1026%{_libdir}/gcc/*/*/include/g2c.h
1027%{_mandir}/man1/g77.1*
1028%{_mandir}/man1/f77.1*
1029
1030%files libg2c
1031%defattr(644,root,root,755)
1032%doc libf2c/{ChangeLog,README,TODO}
1033%attr(755,root,root) %{_libdir}/libg2c.so.*.*.*
1034%ifarch ppc
1035%attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
1036%endif
1037%if %{with multilib}
1038%attr(755,root,root) %{_libdir32}/libg2c.so.*.*.*
1039%endif
1040
1041%files libg2c-static
1042%defattr(644,root,root,755)
1043%{_libdir}/libg2c.a
1044%ifarch ppc
1045%{_libdir}/nof/libg2c.a
1046%endif
1047%if %{with multilib}
1048%{_libdir32}/libg2c.a
1049%endif
1050%endif
1051
1052%if %{with java}
1053%files java
1054%defattr(644,root,root,755)
1055%doc gcc/java/ChangeLog java-doc/*
1056%attr(755,root,root) %{_bindir}/gcj*
1057%attr(755,root,root) %{_bindir}/gij
1058%attr(755,root,root) %{_bindir}/jcf-dump
1059%attr(755,root,root) %{_bindir}/jv-*
1060%attr(755,root,root) %{_bindir}/grepjar
1061%attr(755,root,root) %{_bindir}/*-gcj*
1062%attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1063%attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1064%{_infodir}/gcj*
1065%{_mandir}/man1/jcf-*
1066%{_mandir}/man1/jv-*
1067%{_mandir}/man1/gij*
1068%{_mandir}/man1/gcj*
1069%{_mandir}/man1/grepjar*
1070
1071%files java-tools
1072%defattr(644,root,root,755)
1073%attr(755,root,root) %{_bindir}/rmi*
1074%attr(755,root,root) %{_bindir}/jar
1075%{_mandir}/man1/rmi*
1076%{_mandir}/man1/jar*
1077%{_infodir}/fastjar*
1078
1079%files libgcj
1080%defattr(644,root,root,755)
1081%doc libjava/{ChangeLog,LIBGCJ_LICENSE,NEWS,README,THANKS}
1082%attr(755,root,root) %{_bindir}/addr2name.awk
1083%attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1084%attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
1085%ifarch ppc
1086%attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
1087%endif
1088%{_libdir}/logging.properties
1089
1090%files libgcj-devel
1091%defattr(644,root,root,755)
1092%{_includedir}/java
1093%{_includedir}/javax
1094%{_includedir}/gcj
1095%{_includedir}/j*.h
1096%{_includedir}/gnu/*
1097%{_libdir}/gcc/*/*/include/gcj
1098%dir %{_libdir}/security
1099%{_libdir}/security/*
1100%dir %{_datadir}/java
1101%{_datadir}/java/libgcj*.jar
1102%{_libdir}/lib*cj.spec
1103%{_libdir}/lib*cj*.la
1104%attr(755,root,root) %{_libdir}/lib*cj*.so
1105%attr(755,root,root) %{_libdir}/lib-org-*.so
1106%{_libdir}/lib-org-*.la
1107%ifarch ppc
1108%{_libdir}/nof/lib*cj*.la
1109%attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1110%endif
1111%{_pkgconfigdir}/libgcj.pc
1112
1113%files libgcj-static
1114%defattr(644,root,root,755)
1115%{_libdir}/lib*cj*.a
1116%{_libdir}/lib-org-*.a
1117%ifarch ppc
1118%{_libdir}/nof/lib*cj*.a
1119%endif
1120
1121%files libffi
1122%defattr(644,root,root,755)
1123%doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
1124%attr(755,root,root) %{_libdir}/libffi-*.so
1125
1126%files libffi-devel
1127%defattr(644,root,root,755)
1128%{_libdir}/gcc/*/*/include/ffitarget.h
1129%attr(755,root,root) %{_libdir}/libffi.so
1130%{_libdir}/libffi.la
1131%{_includedir}/ffi.h
1132
1133%files libffi-static
1134%defattr(644,root,root,755)
1135%{_libdir}/libffi.a
1136%endif
1137
1138%if %{with ada}
1139%files ada
1140%defattr(644,root,root,755)
1141%doc gcc/ada/ChangeLog
1142%attr(755,root,root) %{_bindir}/gnat*
1143%attr(755,root,root) %{_bindir}/gpr*
1144%attr(755,root,root) %{_libdir}/libgnarl*.so
1145%attr(755,root,root) %{_libdir}/libgnat*.so
1146%attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
1147%{_libdir}/gcc/*/*/adainclude
1148%dir %{_libdir}/gcc/*/*/adalib
1149%{_libdir}/gcc/*/*/adalib/*.ali
1150%{_libdir}/gcc/*/*/adalib/g-trasym.o
1151%{_libdir}/gcc/*/*/adalib/libgccprefix.a
1152%ifarch %{ix86}
1153%{_libdir}/gcc/*/*/adalib/libgmem.a
1154%endif
1155%{_datadir}/gnat
1156%{_infodir}/gnat*
1157
1158%files libgnat
1159%defattr(644,root,root,755)
1160%attr(755,root,root) %{_libdir}/libgnarl*.so.1
1161%attr(755,root,root) %{_libdir}/libgnat*.so.1
1162
1163%files libgnat-static
1164%defattr(644,root,root,755)
1165%{_libdir}/gcc/*/*/adalib/libgnarl.a
1166%{_libdir}/gcc/*/*/adalib/libgnat.a
1167%endif
This page took 0.049768 seconds and 5 git commands to generate.