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