]> git.pld-linux.org Git - packages/gcc4.git/blob - gcc4.spec
- added bcond for gcc(ada) prov bootstrap on Ac builders
[packages/gcc4.git] / gcc4.spec
1 #
2 # Conditional build:
3 # _without_ada          - build without ADA support
4 # _without_java         - build without Java support
5 # _without_objc         - build without objc support
6 # _with_bootstrap       - don't BR gcc(ada) (temporary for Ac upgrade bootstrap)
7 # _with_pp              - build with ProPolice
8 #
9 %define         DASHED_SNAP     %{nil}
10 %define         SNAP            %(echo %{DASHED_SNAP} | sed -e "s#-##g")
11 %define         GCC_VERSION     3.3.2
12 %define         KSI_VERSION     1.1.0.1567
13
14 Summary:        GNU C Compiler
15 Summary(pl):    Kompilator C GNU
16 Summary(pt_BR): C Compilador GNU (GCC)
17 Name:           gcc
18 Version:        %{GCC_VERSION}
19 Release:        0.1
20 Epoch:          5
21 License:        GPL
22 Group:          Development/Languages
23 Source0:        ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
24 # Source0-md5:  65999f654102f5438ac8562d13a6eced
25 Source1:        ftp://ftp.pld-linux.org/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
26 # Source1-md5:  66f07491b44f06928fd95b0e65bb8cd3
27 Source2:        http://ep09.kernel.pl/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
28 # Source2-md5:  4736f3422ddfb808423b745629acc321
29 Patch0:         %{name}-info.patch
30 Patch1:         %{name}-paths.patch
31 Patch2:         %{name}-nolocalefiles.patch
32 Patch3:         %{name}-ada-link-new-libgnat.patch
33 # -- stolen patches from RH --
34 Patch10:        gcc32-ada-link.patch
35 Patch11:        gcc32-boehm-gc-libs.patch
36 Patch12:        gcc32-bogus-inline.patch
37 Patch13:        gcc32-c++-nrv-test.patch
38 Patch14:        gcc32-c++-tsubst-asm.patch
39 Patch15:        gcc32-debug-pr7241.patch
40 Patch16:        gcc32-duplicate-decl.patch
41 Patch17:        gcc32-dwarf2-pr6381.patch
42 Patch18:        gcc32-dwarf2-pr6436-test.patch
43 Patch19:        gcc32-fde-merge-compat.patch
44 Patch20:        gcc32-i386-memtest-test.patch
45 Patch21:        gcc32-inline-label.patch
46 Patch22:        gcc32-java-no-rpath.patch
47 Patch23:        gcc32-test-rh65771.patch
48 Patch24:        gcc32-test-rotate.patch
49 Patch25:        %{name}-3.3.1-propolice.patch
50 BuildRequires:  autoconf
51 BuildRequires:  binutils >= 2.14
52 BuildRequires:  bison
53 BuildRequires:  fileutils >= 4.0.41
54 BuildRequires:  gcc
55 %{!?_without_ada:%{!?_with_bootstrap:BuildRequires:     gcc(ada)}}
56 %{!?_without_ada:BuildRequires: gcc-ada}
57 BuildRequires:  glibc-devel >= 2.2.5-20
58 BuildRequires:  perl-devel
59 BuildRequires:  texinfo >= 4.1
60 BuildRequires:  zlib-devel
61 BuildRequires:  gettext-devel
62 Requires:       binutils >= 2.14
63 Requires:       cpp = %{epoch}:%{GCC_VERSION}
64 Requires:       libgcc = %{epoch}:%{GCC_VERSION}
65 %{!?_without_ada:Provides: gcc(ada)}
66 Conflicts:      glibc-devel < 2.2.5-20
67 URL:            http://gcc.gnu.org/
68 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69
70 %define         _slibdir        /lib
71 %ifarch sparc64
72 %define         _slibdir64      /lib64
73 %define         _libdir         /usr/lib
74 %define         rpmcflags       -O2 -mtune=ultrasparc
75 %endif
76
77 %description
78 A compiler aimed at integrating all the optimizations and features
79 necessary for a high-performance and stable development environment.
80
81 %description -l pl
82 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
83 wyprodukowania szybkiego i stablinego kodu wynikowego.
84
85 %description -l pt_BR
86 Este pacote adiciona infraestrutura básica e suporte a linguagem C
87 ao Gnu Compiler Collection.
88
89 %package -n libgcc
90 Summary:        Shared gcc library
91 Summary(pl):    Biblioteka gcc
92 Summary(pt_BR): Biblioteca runtime para o GCC
93 Group:          Libraries
94 Version:        %{GCC_VERSION}
95 Obsoletes:      libgcc1
96
97 %description -n libgcc
98 Shared gcc library.
99
100 %description -n libgcc -l pl
101 Biblioteka dynamiczna gcc.
102
103 %description -n libgcc -l pt_BR
104 Biblioteca runtime para o GCC.
105
106 %package c++
107 Summary:        C++ support for gcc
108 Summary(pl):    Obs³uga C++ dla gcc
109 Summary(pt_BR): Suporte C++ para o gcc
110 Group:          Development/Languages
111 Obsoletes:      egcc-c++
112 Obsoletes:      egcs-c++
113 Requires:       gcc = %{epoch}:%{GCC_VERSION}
114
115 %description c++
116 This package adds C++ support to the GNU C compiler. It includes
117 support for most of the current C++ specification, including templates
118 and exception handling. It does not include a standard C++ library,
119 which is available separately.
120
121 %description c++ -l de
122 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
123 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
124 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
125 sie ist getrennt erhältlich.
126
127 %description c++ -l fr
128 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
129 support pour la plupart des spécifications actuelles de C++, dont les
130 modéles et la gestion des exceptions. Il ne comprend pas une
131 bibliothéque C++ standard, qui est disponible séparément.
132
133 %description c++ -l pl
134 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
135 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
136 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
137
138 %description c++ -l pt_BR
139 Este pacote adiciona suporte C++ para o gcc.
140
141 %description c++ -l tr
142 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
143 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
144 C++ kitaplýðý bu pakette yer almaz.
145
146 %package objc
147 Summary:        Objective C support for gcc
148 Summary(de):    Objektive C-Unterstützung für gcc
149 Summary(fr):    Gestion d'Objective C pour gcc
150 Summary(pl):    Obs³uga obiektowego C dla kompilatora gcc
151 Summary(tr):    gcc için Objective C desteði
152 Group:          Development/Languages
153 Obsoletes:      egcc-objc
154 Obsoletes:      egcs-objc
155 Requires:       libobjc = %{epoch}:%{GCC_VERSION}
156 Requires:       gcc = %{epoch}:%{GCC_VERSION}
157
158 %description objc
159 This package adds Objective C support to the GNU C compiler. Objective
160 C is a object oriented derivative of the C language, mainly used on
161 systems running NeXTSTEP. This package does not include the standard
162 objective C object library.
163
164 %description objc -l de
165 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
166 Objective C ist ein objektorientiertes Derivat von C, das zur
167 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
168 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
169
170 %description objc -l fr
171 Ce package ajoute un support Objective C au compilateur C GNU.
172 L'Objective C est un langage orienté objetdérivé du langage C,
173 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
174 pas la bibliothéque Objective C standard.
175
176 %description objc -l pl
177 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
178 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
179 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
180 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
181
182 %description objc -l tr
183 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
184 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
185 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
186 kitaplýðý bu pakette yer almaz.
187
188 %package -n libobjc
189 Summary:        Objective C Libraries
190 Summary(pl):    Biblioteki Obiektowego C
191 Group:          Libraries
192 Version:        %{GCC_VERSION}
193 Obsoletes:      libobjc1
194
195 %description -n libobjc
196 Objective C Libraries.
197
198 %description -n libobjc -l pl
199 Biblioteki Obiektowego C.
200
201 %package -n libobjc-static
202 Summary:        Static Objective C Libraries
203 Summary(pl):    Statyczne Biblioteki Obiektowego C
204 Group:          Development/Libraries
205 Version:        %{GCC_VERSION}
206 Requires:       libobjc = %{epoch}:%{GCC_VERSION}
207
208 %description -n libobjc-static
209 Static Objective C Libraries.
210
211 %description -n libobjc-static -l pl
212 Statyczne biblioteki Obiektowego C.
213
214 %package g77
215 Summary:        Fortran 77 support for gcc
216 Summary(pl):    Obs³uga Fortranu 77 dla gcc
217 Summary(pt_BR): Suporte Fortran 77 para o GCC
218 Group:          Development/Languages/Fortran
219 Version:        %{GCC_VERSION}
220 Obsoletes:      egcs-g77
221 Requires:       libg2c = %{epoch}:%{GCC_VERSION}
222
223 %description g77
224 This apckage adds support for compiling Fortran 77 programs with the
225 GNU compiler.
226
227 %description g77 -l pl
228 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
229 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
230
231 %description g77 -l pt_BR
232 Suporte Fortran 77 para o GCC.
233
234 %package -n libg2c
235 Summary:        Fortran 77 Libraries
236 Summary(pl):    Biblioteki Fortranu 77
237 Group:          Libraries
238 Version:        %{GCC_VERSION}
239
240 %description -n libg2c
241 Fortran 77 Libraries.
242
243 %description -n libg2c -l pl
244 Biblioteki Fortranu 77.
245
246 %package -n libg2c-static
247 Summary:        Static Fortran 77 Libraries
248 Summary(pl):    Statyczne Biblioteki Fortranu 77
249 Group:          Development/Libraries
250 Version:        %{GCC_VERSION}
251 Requires:       libg2c = %{epoch}:%{GCC_VERSION}
252
253 %description -n libg2c-static
254 Static Fortran 77 Libraries.
255
256 %description -n libg2c-static -l pl
257 Statyczne biblioteki Fortranu 77.
258
259 %package java
260 Summary:        Java support for gcc
261 Summary(pl):    Obs³uga Javy dla gcc
262 Group:          Development/Languages/Java
263 Version:        %{GCC_VERSION}
264 Requires:       %{name} = %{epoch}:%{version}
265 Requires:       libgcj >= 3.0.0
266 Requires:       libgcj-devel >= 3.0.0
267 Requires:       java-shared
268 Provides:       gcj = %{epoch}:%{GCC_VERSION}-%{release}
269
270 %description java
271 This package adds experimental support for compiling Java(tm) programs
272 and bytecode into native code. To use this you will also need the
273 libgcj package.
274
275 %description java -l pl
276 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
277 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
278 by³o przeprowadziæ kompilacjê.
279
280 %package java-tools
281 Summary:        Shared java tools
282 Summary(pl):    Wspó³dzielone narzêdzia javy
283 Group:          Development/Languages/Java
284 Version:        %{GCC_VERSION}
285 Provides:       jar = %{epoch}:%{GCC_VERSION}-%{release}
286 Provides:       java-shared
287 Obsoletes:      fastjar
288 Obsoletes:      java-shared
289 Obsoletes:      jar
290
291 %description java-tools
292 This package contains tools that are common for every Java(tm) implementation,
293 such as rmic or jar.
294
295 %description java-tools -l pl
296 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji Javy(tm), takie
297 jak rmic czy jar.
298
299 %package -n libgcj
300 Summary:        Java Class Libraries
301 Summary(pl):    Biblioteki Klas Javy
302 Group:          Libraries
303 Version:        %{GCC_VERSION}
304 Requires:       zlib
305 Obsoletes:      libgcj3
306
307 %description -n libgcj
308 Java Class Libraries.
309
310 %description -n libgcj -l pl
311 Biblioteki Klas Javy.
312
313 %package -n libgcj-devel
314 Summary:        Development files for Java Class Libraries
315 Summary(pl):    Pliki nag³ówkowe dla Bibliotek Klas Javy
316 Group:          Development/Libraries
317 Version:        %{GCC_VERSION}
318 Requires:       libgcj = %{epoch}:%{GCC_VERSION}
319 Requires:       %{name}-java
320 Obsoletes:      libgcj3-devel
321
322 %description -n libgcj-devel
323 Development files for Java Class Libraries.
324
325 %description -n libgcj-devel -l pl
326 Pliki nag³ówkowe dla Bibliotek Klas Javy.
327
328 %package -n libgcj-static
329 Summary:        Static Java Class Libraries
330 Summary(pl):    Statyczne Biblioteki Klas Javy
331 Group:          Development/Libraries
332 Version:        %{GCC_VERSION}
333 Requires:       libstdc++-devel = %{epoch}:%{GCC_VERSION}
334 Requires:       libgcj-devel = %{epoch}:%{GCC_VERSION}
335
336 %description -n libgcj-static
337 Static Java Class Libraries.
338
339 %description -n libgcj-static -l pl
340 Statyczne Biblioteki Klas Javy.
341
342 %package -n libstdc++
343 Summary:        GNU c++ library
344 Summary(pl):    Biblioteki GNU C++
345 Summary(pt_BR): Biblioteca C++ GNU
346 Group:          Libraries
347 Version:        %{GCC_VERSION}
348 Obsoletes:      libg++
349 Obsoletes:      libstdc++3
350
351 %description -n libstdc++
352 This is the GNU implementation of the standard C++ libraries, along
353 with additional GNU tools. This package includes the shared libraries
354 necessary to run C++ applications.
355
356 %description -n libstdc++ -l de
357 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
358 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
359 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
360
361 %description -n libstdc++ -l es
362 Este es el soporte de las bibliotecas padrón del C++, junto con
363 herramientas GNU adicionales. El paquete incluye las bibliotecas
364 compartidas necesarias para ejecutar aplicaciones C++.
365
366 %description -n libstdc++ -l fr
367 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
368 des outils GNU supplémentaires. Ce package comprend les librairies
369 partagées nécessaires à l'exécution d'application C++.
370
371 %description -n libstdc++ -l pl
372 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
373 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
374 uruchomienia aplikacji napisanych w C++.
375
376 %description -n libstdc++ -l pt_BR
377 Este pacote é uma implementação da biblioteca padrão C++ v3, um
378 subconjunto do padrão ISO 14882.
379
380 %description -n libstdc++ -l tr
381 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
382 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
383
384 %package -n libstdc++-devel
385 Summary:        Header files and documentatino for C++ development
386 Summary(de):    Header-Dateien zur Entwicklung mit C++
387 Summary(fr):    Fichiers d'en-tête et biblitothèques pour développer en C++
388 Summary(pl):    Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
389 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
390 Summary(tr):    C++ ile program geliþtirmek için gerekli dosyalar
391 Group:          Development/Libraries
392 Version:        %{GCC_VERSION}
393 Requires:       libstdc++ = %{epoch}:%{GCC_VERSION}
394 Requires:       %{name}-c++ = %{epoch}:%{GCC_VERSION}
395 Obsoletes:      libg++-devel
396 Obsoletes:      libstdc++3-devel
397
398 %description -n libstdc++-devel
399 This is the GNU implementation of the standard C++ libraries. This
400 package includes the header files needed for C++ development and
401 library documentation.
402
403 %description -n libstdc++-devel -l es
404 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este paquete
405 incluye los archivos de inclusión y bibliotecas necesarios para desarrollo de
406 programas en lenguaje C++.
407
408 %description -n libstdc++-devel -l pl
409 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
410 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
411 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
412
413 %description -n libstdc++-devel -l pt_BR
414 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias para
415 desenvolvimento de programas C++.
416
417 %package -n libstdc++-static
418 Summary:        Static C++ standard library
419 Summary(pl):    Statyczna biblioteka standardowa C++
420 Group:          Development/Libraries
421 Version:        %{GCC_VERSION}
422 Requires:       libstdc++-devel = %{epoch}:%{GCC_VERSION}
423
424 %description -n libstdc++-static
425 Static C++ standard library.
426
427 %description -n libstdc++-static -l pl
428 Statycza biblioteka standardowa C++.
429
430 %package -n libffi
431 Summary:        Foreign Function Interface library
432 Summary(pl):    Biblioteka zewnêtrznych wywo³añ funkcji
433 Group:          Libraries
434 Version:        %{GCC_VERSION}
435
436 %description -n libffi
437 The libffi library provides a portable, high level programming
438 interface to various calling conventions. This allows a programmer to
439 call any function specified by a call interface description at run
440 time.
441
442 %description -n libffi -l pl
443 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego miêdzymordzia
444 do ró¿nych konwencji wywo³añ funkcji. Pozwala to programi¶cie wywo³ywaæ
445 dowolne funkcje podaj±c konwencjê wywo³ania w czasie wykonania.
446
447 %package -n libffi-devel
448 Summary:        Development files for Foreign Function Interface library
449 Summary(pl):    Pliki nag³ówkowe dla libffi
450 Group:          Development/Libraries
451 Version:        %{GCC_VERSION}
452 Requires:       libffi = %{epoch}:%{GCC_VERSION}
453
454 %description -n libffi-devel
455 Development files for Foreign Function Interface library.
456
457 %description -n libffi-devel -l pl
458 Pliki nag³ówkowe dla libffi.
459
460 %package -n libffi-static
461 Summary:        Static Foreign Function Interface library
462 Summary(pl):    Statyczna biblioteka libffi
463 Group:          Development/Libraries
464 Version:        %{GCC_VERSION}
465 Requires:       libffi-devel = %{epoch}:%{GCC_VERSION}
466
467 %description -n libffi-static
468 Static Foreign Function Interface library.
469
470 %description -n libffi-static -l pl
471 Statyczna biblioteka libffi.
472
473 %package ada
474 Summary:        Ada support for gcc
475 Summary(pl):    Obs³uga Ady do gcc
476 Group:          Development/Languages
477 Version:        %{GCC_VERSION}
478 Requires:       libgnat = %{epoch}:%{GCC_VERSION}
479 Requires:       gcc = %{epoch}:%{GCC_VERSION}
480 Obsoletes:      gcc-gnat
481 Obsoletes:      gnat-devel
482
483 %description ada
484 This package adds experimental support for compiling Ada programs.
485
486 %description ada -l pl
487 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
488 w Adzie.
489
490 %package -n libgnat
491 Summary:        Ada standard libraries
492 Summary(pl):    Biblioteki standardowe dla Ady
493 Group:          Libraries
494 Version:        %{GCC_VERSION}
495 Obsoletes:      gnat
496 Obsoletes:      libgnat1
497
498 %description -n libgnat
499 This package contains shared libraries needed to run programs written
500 in Ada.
501
502 %description -n libgnat -l pl
503 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów napisanych
504 w Adzie.
505
506 %package -n libgnat-static
507 Summary:        Static Ada standard libraries
508 Summary(pl):    Statyczne biblioteki standardowe dla Ady
509 Group:          Libraries
510 Version:        %{GCC_VERSION}
511 Obsoletes:      gnat-static
512
513 %description -n libgnat-static
514 This package contains static libraries for programs written in Ada.
515
516 %description -n libgnat-static -l pl
517 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
518 Adzie.
519
520 %package ksi
521 Summary:        Ksi support for gcc
522 Summary(pl):    Obs³uga Ksi dla gcc
523 Version:        %{GCC_VERSION}.%{KSI_VERSION}
524 Group:          Development/Languages
525 Requires:       gcc = %{epoch}:%{GCC_VERSION}
526
527 %description ksi
528 This package adds experimental support for compiling Ksi programs
529 into native code. You proabably don't need it, unless your are going
530 to develop a compiler using Ksi as intermediate representation or
531 you are using such compiler (like Gont).
532
533 %description ksi -l pl
534 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
535 w Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba
536 ¿e zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
537 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
538
539 %package -n cpp
540 Summary:        The C Pre Processor
541 Summary(pl):    Preprocesor C
542 Summary(pt_BR): Preprocessador para a linguagem C
543 Group:          Development/Languages
544 Version:        %{GCC_VERSION}
545 Obsoletes:      egcs-cpp
546 Obsoletes:      gcc-cpp
547
548 %description -n cpp
549 The C preprocessor is a "macro processor" that is used automatically
550 by the C compiler to transform your program before actual compilation.
551 It is called a macro processor because it allows you to define
552 "macros", which are brief abbreviations for longer constructs.
553
554 The C preprocessor provides four separate facilities that you can use
555 as you see fit:
556
557 - Inclusion of header files. These are files of declarations that can
558   be substituted into your program.
559 - Macro expansion. You can define "macros", which are abbreviations
560   for arbitrary fragments of C code, and then the C preprocessor will
561   replace the macros with their definitions throughout the program.
562 - Conditional compilation. Using special preprocessing directives, you
563   can include or exclude parts of the program according to various
564   conditions.
565 - Line control. If you use a program to combine or rearrange source
566   files into an intermediate file which is then compiled, you can use
567   line control to inform the compiler of where each source line
568   originally came from.
569
570 %description -n cpp -l es
571 Um preprocessador para a linguagem C.
572
573 %description -n cpp -l pl
574 Przeprocesor C jest "makro procesorem" który jest automatycznie
575 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
576 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
577 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
578 d³ugich konstrukcji w jêzyku C.
579
580 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
581
582 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
583   deklaracji polecenia do³±czenia innego pliku.
584 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
585   których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
586   indentyfikatora deklarowan± wcze¶niej warto¶ci±.
587 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
588   ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
589   fragmenty obrabianego strumienia tekstów.
590 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
591   podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
592   s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
593   odpowiada fragment pliku wynikowego.
594
595 %description -n cpp -l pt_BR
596 O preprocessador C é um "processador de macros", que é utilizado pelo
597 compilador C para fazer algumas modificações no seu programa, antes da
598 compilação em si. Ele é chamado de "processador de macros" porque
599 permite a você definir "macros", que são abreviações para construções
600 mais complicadas.
601
602 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
603 arquivos de cabeçalho; expansão de macros; compilação condicional;
604 e controle da numeração das linhas do programa.
605
606 %prep
607 %setup -q -a1 -n %{name}-%{GCC_VERSION}
608 mv ksi-%{KSI_VERSION} gcc/ksi
609
610 %patch0 -p1
611 %patch1 -p1
612 %patch2 -p1
613 %patch3 -p1
614
615 %patch10 -p1
616 %patch11
617 %patch12
618 %patch13
619 %patch14
620 %patch15
621
622 %patch16
623 %patch17
624 %patch18
625 %patch19
626 %patch20
627 %patch21
628 %patch22
629 %patch23
630 %patch24
631 %{?_with_pp:%patch25 -p1}
632
633 # because we distribute modified version of gcc...
634 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
635 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
636
637 %build
638 # cd gcc && autoconf; cd ..
639 # autoconf is not needed!
640 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
641
642 CFLAGS="%{rpmcflags}" \
643 CXXFLAGS="%{rpmcflags}" \
644 TEXCONFIG=false ../configure \
645         --prefix=%{_prefix} \
646         --infodir=%{_infodir} \
647         --mandir=%{_mandir} \
648         --enable-shared \
649         --enable-threads=posix \
650         --enable-__cxa_atexit \
651         --enable-languages="c,c++,f77%{!?_without_objc:,objc}%{!?_without_ada:,ada}%{!?_without_java:,java},ksi" \
652         --enable-c99 \
653         --enable-long-long \
654         --enable-multilib \
655         --enable-nls \
656         --with-gnu-as \
657         --with-gnu-ld \
658         --with-system-zlib \
659         --with-slibdir=%{_slibdir} \
660         --without-x \
661         %{_target_platform}
662
663 PATH=$PATH:/sbin:%{_sbindir}
664
665 cd ..
666 %{__make} -C obj-%{_target_platform} bootstrap-lean \
667         LDFLAGS_FOR_TARGET="%{rpmldflags}" \
668         mandir=%{_mandir} \
669         infodir=%{_infodir}
670
671 %if 0%{!?_without_ada:1}
672 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
673         LDFLAGS_FOR_TARGET="%{rpmldflags}" \
674         mandir=%{_mandir} \
675         infodir=%{_infodir}
676 %endif
677
678 %install
679 rm -rf $RPM_BUILD_ROOT
680 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
681
682 cd obj-%{_target_platform}
683 PATH=$PATH:/sbin:%{_sbindir}
684
685 %{__make} install \
686         DESTDIR=$RPM_BUILD_ROOT
687
688 %ifarch sparc64
689 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
690         $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
691 %endif
692
693 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
694 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
695
696 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
697 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
698
699 %if 0%{!?_without_ada:1}
700 # move ada shared libraries to proper place...
701 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.so.1 \
702         $RPM_BUILD_ROOT%{_libdir}/
703 # check if symlink to be made is valid
704 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
705 ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
706 ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
707 ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
708 ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
709 %endif
710
711 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
712
713 cd ..
714
715 %if %{!?_without_java:1}%{?_without_java:0}
716 install -d java-doc
717 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
718 cp -f fastjar/README java-doc/README.fastjar
719 cp -f libffi/README java-doc/README.libffi
720 cp -f libffi/LICENSE java-doc/LICENSE.libffi
721 %endif
722
723 %if %{!?_without_objc:1}0
724 cp -f libobjc/README gcc/objc/README.libobjc
725 %endif
726
727 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc-lib/*/%{version}
728 for f in libstdc++.la libsupc++.la %{!?_without_java:libgcj.la} ; do
729         perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
730 done
731 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
732 for f in libstdc++.la libsupc++.la libg2c.la \
733         %{!?_without_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
734         %{!?_without_objc:libobjc.la}; do
735         perl -pi -e "s@^libdir='.*@libdir='/usr/lib'@" $RPM_BUILD_ROOT%{_libdir}/$f
736 done
737
738 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
739 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
740
741 # include/ contains install-tools/include/* and headers that were fixed up
742 # by fixincludes, we don't want former
743 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/)
744 mkdir $gccdir/tmp
745 # we have to save these however
746 mv -f $gccdir/include/{%{!?_without_objc:objc,}g2c.h,syslimits.h%{!?_without_java:,gcj}} $gccdir/tmp
747 rm -rf $gccdir/include
748 mv -f $gccdir/tmp $gccdir/include
749 cp $gccdir/install-tools/include/*.h $gccdir/include
750 # but we don't want anything more from install-tools
751 rm -rf $gccdir/install-tools/
752
753 %find_lang %{name}
754 %find_lang libstdc\+\+
755
756 %clean
757 rm -rf $RPM_BUILD_ROOT
758
759 %post
760 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
761
762 %postun
763 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
764
765 %post g77
766 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
767
768 %postun g77
769 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
770
771 %post java
772 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
773
774 %postun java
775 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
776
777 %post ksi
778 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
779
780 %postun ksi
781 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
782
783 %post -n cpp
784 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
785
786 %postun -n cpp
787 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
788
789 %post   -p /sbin/ldconfig -n libgcc
790 %postun -p /sbin/ldconfig -n libgcc
791 %post   -p /sbin/ldconfig -n libstdc++
792 %postun -p /sbin/ldconfig -n libstdc++
793 %post   -p /sbin/ldconfig -n libobjc
794 %postun -p /sbin/ldconfig -n libobjc
795 %post   -p /sbin/ldconfig -n libg2c
796 %postun -p /sbin/ldconfig -n libg2c
797 %post   -p /sbin/ldconfig -n libgcj
798 %postun -p /sbin/ldconfig -n libgcj
799 %post   -p /sbin/ldconfig -n libgnat
800 %postun -p /sbin/ldconfig -n libgnat
801 %post   -p /sbin/ldconfig -n libffi
802 %postun -p /sbin/ldconfig -n libffi
803
804 %files -f %{name}.lang
805 %defattr(644,root,root,755)
806 %doc READ* ChangeLog
807 %dir %{_libdir}/gcc-lib
808 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
809 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
810 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
811 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc*
812 %attr(755,root,root) %{_bindir}/gcc
813 %attr(755,root,root) %{_bindir}/gccbug
814 %attr(755,root,root) %{_bindir}/gcov
815 %attr(755,root,root) %{_bindir}/cc
816
817 %{_mandir}/man1/gcc.1*
818 %{_mandir}/man1/cc.1*
819 %{_mandir}/man1/gcov.1*
820 %lang(fr) %{_mandir}/fr/man1/gcc.1*
821 %lang(ja) %{_mandir}/ja/man1/gcc.1*
822 %{_infodir}/gcc*
823
824 %attr(755,root,root) %{_slibdir}*/lib*.so
825 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
826 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc_eh.a
827 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
828 %attr(644,root,root) %{_libdir}*/gcc-lib/%{_target_cpu}*/*/crt*.o
829 %ifarch sparc64
830 %{_libdir}/gcc-lib/%{_target_cpu}*/*/*/libgcc.a
831 %{_libdir}/gcc-lib/%{_target_cpu}*/*/*/libgcc_eh.a
832 %attr(644,root,root) %{_libdir}*/gcc-lib/%{_target_cpu}*/*/*/crt*.o
833 %endif
834 %ifarch ppc
835 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ecrt*.o
836 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ncrt*.o
837 %{_libdir}/gcc-lib/%{_target_cpu}*/*/nof
838 %dir %{_libdir}/nof
839 %endif
840 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
841 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
842
843 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/*.h
844 %exclude %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
845
846 %files -n libgcc
847 %defattr(644,root,root,755)
848 %attr(755,root,root) %{_slibdir}*/lib*.so.*
849
850 %files c++
851 %defattr(644,root,root,755)
852 %attr(755,root,root) %{_bindir}/g++
853 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-g++
854 %attr(755,root,root) %{_bindir}/c++
855 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-c++
856 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
857 %{_libdir}*/libsupc++.la
858 %ifarch ppc
859 %{_libdir}/nof/libsupc++.la
860 %{_libdir}/nof/libsupc++.a
861 %endif
862 %{_libdir}*/libsupc++.a
863 %{_mandir}/man1/g++.1*
864 %lang(ja) %{_mandir}/ja/man1/g++.1*
865
866 %files -n libstdc++ -f libstdc++.lang
867 %defattr(644,root,root,755)
868 %attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
869 %ifarch ppc
870 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
871 %endif
872
873 %files -n libstdc++-devel
874 %defattr(644,root,root,755)
875 %doc libstdc++-v3/docs/html
876 %dir %{_includedir}/c++
877 %{_includedir}/c++/%{GCC_VERSION}
878 %attr(755,root,root) %{_libdir}*/libstdc++.so
879 %{_libdir}*/libstdc++.la
880 %ifarch ppc
881 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
882 %{_libdir}/nof/libstdc++.la
883 %endif
884
885 %files -n libstdc++-static
886 %defattr(644,root,root,755)
887 %{_libdir}*/libstdc++.a
888 %ifarch ppc
889 %{_libdir}/nof/libstdc++.a
890 %endif
891
892 %if %{!?_without_objc:1}0
893 %files objc
894 %defattr(644,root,root,755)
895 %doc gcc/objc/READ*
896 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
897 %attr(755,root,root) %{_libdir}*/libobjc.so
898 %{_libdir}*/libobjc.la
899 %ifarch ppc
900 %attr(755,root,root) %{_libdir}/nof/libobjc.so
901 %{_libdir}/nof/libobjc.la
902 %endif
903 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
904
905 %files -n libobjc
906 %defattr(644,root,root,755)
907 %attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
908 %ifarch ppc
909 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
910 %endif
911
912 %files -n libobjc-static
913 %defattr(644,root,root,755)
914 %{_libdir}*/libobjc.a
915 %ifarch ppc
916 %{_libdir}/nof/libobjc.a
917 %endif
918 %endif
919
920 %files g77
921 %defattr(644,root,root,755)
922 %attr(755,root,root) %{_bindir}/g77
923 %attr(755,root,root) %{_bindir}/f77
924 %{_infodir}/g77*
925 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
926 %{_libdir}*/libfrtbegin.a
927 %{_libdir}*/libg2c.la
928 %attr(755,root,root) %{_libdir}*/libg2c.so
929 %ifarch ppc
930 %{_libdir}/nof/libfrtbegin.a
931 %{_libdir}/nof/libg2c.la
932 %attr(755,root,root) %{_libdir}/nof/libg2c.so
933 %endif
934 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
935 %{_mandir}/man1/g77.1*
936 %{_mandir}/man1/f77.1*
937 %lang(ja) %{_mandir}/ja/man1/g77.1*
938 %lang(ja) %{_mandir}/ja/man1/f77.1*
939
940 %files -n libg2c
941 %defattr(644,root,root,755)
942 %attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
943 %ifarch ppc
944 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
945 %endif
946
947 %files -n libg2c-static
948 %defattr(644,root,root,755)
949 %{_libdir}*/libg2c.a
950 %ifarch ppc
951 %{_libdir}/nof/libg2c.a
952 %endif
953
954 %if %{!?_without_java:1}%{?_without_java:0}
955 %files java
956 %defattr(644,root,root,755)
957 %doc java-doc/*
958 %attr(755,root,root) %{_bindir}/gcj*
959 %attr(755,root,root) %{_bindir}/gij
960 %attr(755,root,root) %{_bindir}/jcf-dump
961 %attr(755,root,root) %{_bindir}/jv-*
962 %attr(755,root,root) %{_bindir}/grepjar
963 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcj
964 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
965 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
966 %{_infodir}/gcj*
967 %{_mandir}/man1/jcf-*
968 %{_mandir}/man1/jv-*
969 %{_mandir}/man1/gij*
970 %{_mandir}/man1/gcj*
971 %{_mandir}/man1/grepjar*
972
973 %files java-tools
974 %defattr(644,root,root,755)
975 %attr(755,root,root) %{_bindir}/rmi*
976 %attr(755,root,root) %{_bindir}/jar
977 %{_mandir}/man1/rmi*
978 %{_mandir}/man1/jar*
979 %{_infodir}/fastjar*
980
981 %files -n libgcj
982 %defattr(644,root,root,755)
983 %attr(755,root,root) %{_bindir}/addr2name.awk
984 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
985 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
986 %ifarch ppc
987 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
988 %endif
989
990 %files -n libgcj-devel
991 %defattr(644,root,root,755)
992 %{_includedir}/java
993 %{_includedir}/javax
994 #%%{_includedir}/org
995 %{_includedir}/gcj
996 %{_includedir}/j*.h
997 %{_includedir}/gnu/*
998 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/gcj
999 %dir %{_libdir}/security
1000 %{_libdir}/security/*
1001 %dir %{_datadir}/java
1002 %{_datadir}/java/libgcj*.jar
1003 %{_libdir}/lib*cj.spec
1004 %{_libdir}/lib*cj*.la
1005 %attr(755,root,root) %{_libdir}/lib*cj*.so
1006 %attr(755,root,root) %{_libdir}/lib-org-*.so
1007 %{_libdir}/lib-org-*.la
1008 %ifarch ppc
1009 %{_libdir}/nof/lib*cj*.la
1010 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1011 %endif
1012
1013 %files -n libgcj-static
1014 %defattr(644,root,root,755)
1015 %{_libdir}/lib*cj*.a
1016 %{_libdir}/lib-org-*.a
1017 %ifarch ppc
1018 %{_libdir}/nof/lib*cj*.a
1019 %endif
1020
1021 %files -n libffi
1022 %defattr(644,root,root,755)
1023 %attr(755,root,root) %{_libdir}/libffi-*.so
1024
1025 %files -n libffi-devel
1026 %defattr(644,root,root,755)
1027 %attr(755,root,root) %{_libdir}/libffi.so
1028 %{_libdir}/libffi.la
1029 %{_includedir}/ffi*
1030
1031 %files -n libffi-static
1032 %defattr(644,root,root,755)
1033 %{_libdir}/libffi.a
1034 %endif
1035
1036 %if 0%{!?_without_ada:1}
1037 %files ada
1038 %defattr(644,root,root,755)
1039 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/gnat1
1040 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adainclude
1041 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib
1042 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.ali
1043 %ifnarch ppc
1044 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgmem.a
1045 %endif
1046 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/Makefile.adalib
1047 %attr(755,root,root) %{_bindir}/gnat*
1048 %{_infodir}/gnat*
1049 %attr(755,root,root) %{_libdir}/libgnat*.so
1050 %attr(755,root,root) %{_libdir}/libgnarl*.so
1051
1052 %files -n libgnat
1053 %defattr(644,root,root,755)
1054 %attr(755,root,root) %{_libdir}/libgna*.so.1
1055
1056 %files -n libgnat-static
1057 %defattr(644,root,root,755)
1058 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgna*.a
1059 %endif
1060
1061 %files ksi
1062 %defattr(644,root,root,755)
1063 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1064 %{_infodir}/ksi*
1065 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ksi1
1066
1067 %files -n cpp
1068 %defattr(644,root,root,755)
1069 %attr(755,root,root) %{_slibdir}/cpp
1070 %attr(755,root,root) %{_bindir}/cpp
1071 %{_mandir}/man1/cpp.1*
1072 %lang(ja) %{_mandir}/ja/man1/cpp.1*
1073 %{_infodir}/cpp*
This page took 0.107603 seconds and 4 git commands to generate.