]> git.pld-linux.org Git - packages/gcc.git/blob - gcc.spec
- updated summary
[packages/gcc.git] / gcc.spec
1 %define         STDC_VERSION 2.10.0
2 %define         GCJ_VERSION 2.95.1
3 Summary:        GNU Compiler Collection
4 Summary(pl):    Kolekcja kompilatorów GNU
5 Name:           gcc
6 Version:        2.95.2
7 Release:        1
8 Copyright:      GPL
9 Group:          Development/Languages
10 Group(pl):      Programowanie/Jêzyki
11 Source0:        ftp://ftp.gnu.org/pub/gnu/gcc/%{name}-%{version}.tar.gz
12 Source1:        ftp://sourceware.cygnus.com/pub/java/libgcj-%{GCJ_VERSION}.tar.gz
13 Patch0:         gcc-info.patch
14 Patch1:         gcc-libgcj-config.patch
15 Patch2:         gcc-pld-linux.patch
16 Patch3:         gcc-libstdc++.patch
17 Requires:       binutils >= 2.9.1.0.25
18 Requires:       cpp 
19 Obsoletes:      egcs
20 Prereq:         /usr/sbin/fix-info-dir
21 URL:            http://www.gnu.org/
22 BuildRoot:      /tmp/%{name}-%{version}-root
23
24 %description
25 A compiler aimed at integrating all the optimizations and features
26 necessary for a high-performance and stable development environment.
27
28 %description -l pl
29 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
30 wyprodukowania szybkiego i stablinego kodu wynikowego.
31
32 %package c++
33 Summary:        C++ support for gcc
34 Summary(fr):    Support C++ pour le compilateur gcc
35 Summary(pl):    Wspomaganie C++ dla kompilatora gcc
36 Summary(tr):    gcc için C++ desteði
37 Group:          Development/Languages
38 Group(pl):      Programowanie/Jêzyki
39 Obsoletes:      egcc-c++
40 Obsoletes:      egcs-c++
41
42 %description c++
43 This package adds C++ support to the GNU C compiler. It includes support
44 for most of the current C++ specification, including templates and
45 exception handling. It does not include a standard C++ library, which
46 is available separately.
47
48 %description -l de c++
49 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
50 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
51 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten - sie ist
52 getrennt erhältlich.
53
54 %description -l fr c++
55 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
56 support pour la plupart des spécifications actuelles de C++, dont les 
57 modéles et la gestion des exceptions. Il ne comprend pas une bibliothéque
58 C++ standard, qui est disponible séparément.
59
60 %description -l pl c++
61 Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc.
62 Posiada wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
63 natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
64
65 %description -l tr c++
66 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve aykýrý durum
67 iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart C++ kitaplýðý bu
68 pakette yer almaz.
69
70 %package objc
71 Summary:        Objective C support for gcc
72 Summary(de):    Objektive C-Unterstützung für gcc
73 Summary(fr):    Gestion d'Objective C pour gcc
74 Summary(pl):    Wspomaganie obiektowego C dla kompilatora gcc
75 Summary(tr):    gcc için Objective C desteði
76 Group:          Development/Languages
77 Group(pl):      Programowanie/Jêzyki
78 Obsoletes:      egcc-objc
79 Obsoletes:      egcs-objc
80
81 %description objc
82 This package adds Objective C support to the GNU C compiler. Objective C is
83 a object oriented derivative of the C language, mainly used on systems
84 running NeXTSTEP. This package does not include the standard objective C
85 object library.
86
87 %description -l de objc
88 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support. Objective
89 C ist ein objektorientiertes Derivat von C, das zur Hauptsache auf Systemen
90 mit NeXTSTEP zum Einsatz kommt. Die Standard-Objective-C-Objekt-Library ist
91 nicht Teil des Pakets.
92
93 %description -l fr objc
94 Ce package ajoute un support Objective C au compilateur C GNU. L'Objective C
95 est un langage orienté objetdérivé du langage C, principalement utilisé sur
96 les systèmes NeXTSTEP. Ce package n'inclue pas la bibliothéque Objective C
97 standard.
98
99 %description -l pl objc
100 Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc.  W pakiecie nie
101 ma jeszcze bibliotek C-obj.
102
103 %description -l tr objc
104 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C, C
105 dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan sistemlerde
106 yaygýn olarak kullanýlýr. Standart Objective C nesne kitaplýðý bu pakette
107 yer almaz.
108
109 %package g77
110 Summary:        Fortran 77 support for gcc
111 Summary(pl):    Wspomaganie Fortran 77 dla gcc
112 Group:          Development/Languages
113 Group(pl):      Programowanie/Jêzyki
114 Prereq:         /usr/sbin/fix-info-dir
115 Obsoletes:      egcs-g77
116
117 %description g77
118 This apckage adds support for compiling Fortran 77 programs with the GNU
119 compiler.
120
121 %description -l pl g77
122 Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc.
123 Jest potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
124
125 %package chill
126 Summary:        CHILL support for gcc
127 Summary(pl):    Wspomoganie CHILL dla gcc
128 Group:          Development/Languages
129 Group(pl):      Programowanie/Jêzyki
130 Requires:       %{name} = %{version}
131 Prereq:         /usr/sbin/fix-info-dir
132
133 %description chill
134 This package adds support for compiling CHILL programs with the GNU
135 compiler.
136
137 Chill is the "CCITT High-Level Language", where CCITT is the old
138 name for what is now ITU, the International Telecommunications Union.
139 It is is language in the Modula2 family, and targets many of the
140 same applications as Ada (especially large embedded systems).
141 Chill was never used much in the United States, but is still
142 being used in Europe, Brazil, Korea, and other places.
143
144 %package java
145 Summary:        Java support for gcc
146 Summary(pl):    Wspomoganie Java dla gcc
147 Group:          Development/Languages
148 Group(pl):      Programowanie/Jêzyki
149 Requires:       %{name} = %{version}
150 Requires:       %{name}-libgcj = %{version}
151
152 %description java
153 This package adds experimental support for compiling Java(tm) programs and
154 bytecode into native code. To use this you will also need the gcc-libgcj
155 package.
156
157 %package libgcj
158 Summary:        Java runtime library for gcc
159 Group:          Libraries
160 URL:            http://sourceware.cygnus.com/java/
161 Requires:       zip >= 2.1
162
163 %description libgcj
164 The Java runtime library. You will need this package to compile your Java
165 programs using the gcc Java compiler (gcj).
166
167 %package libgcj-static
168 Summary:        Static java runtime library for gcc
169 Group:          Development/Libraries
170 URL:            http://sourceware.cygnus.com/java/
171 Requires:       %{name}-libgcj = %{version}
172
173 %description libgcj-static
174 The static java runtime library. You will need this package to staticly
175 compile your Java programs using the gcc Java compiler (gcj).
176
177 %package -n libstdc++
178 Summary:        GNU c++ library
179 Summary(pl):    Biblioteki GNU C++ 
180 Group:          Libraries
181 Group(pl):      Biblioteki
182 Version:        %{STDC_VERSION}
183 Obsoletes:      libg++
184
185 %description -n libstdc++
186 This is the GNU implementation of the standard C++ libraries, along with
187 additional GNU tools. This package includes the shared libraries
188 necessary to run C++ applications.
189
190 %description -l de -n libstdc++
191 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit weiteren
192 GNU-Tools. Dieses Paket enthält die zum Ausführen von C++-Anwendungen
193 erforderlichen gemeinsam genutzten Libraries.
194
195 %description -l fr -n libstdc++
196 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que des
197 outils GNU supplémentaires. Ce package comprend les librairies partagées
198 nécessaires à l'exécution d'application C++.
199
200 %description -l pl -n libstdc++  
201 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych bibliotek
202 C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do uruchomienia
203 aplikacji napisanych w C++.
204
205 %description -l tr -n libstdc++
206 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
207 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
208
209 %package -n libstdc++-devel
210 Summary:        Header files and libraries for C++ development
211 Summary(de):    Header-Dateien und Libraries zur Entwicklung mit C++
212 Summary(fr):    Fichiers d'en-tête et biblitothèques pour développer en C++.
213 Summary(tr):    C++ ile program geliþtirmek için gerekli dosyalar
214 Group:          Development/Libraries
215 Group(pl):      Programowanie/Biblioteki
216 Version:        %{STDC_VERSION}
217 Requires:       libstdc++ = %{STDC_VERSION}
218 Obsoletes:      libg++-devel
219
220 %description -n libstdc++-devel
221 This is the GNU implementation of the standard C++ libraries.  This package
222 includes the header files and libraries needed for C++ development.
223
224 %description -l pl -n libstdc++-devel
225 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych bibliotek
226 C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy programowaniu
227 w jêzyku C++.
228
229 %package -n libstdc++-static
230 Summary:        Static c++ standard library
231 Summary(pl):    Biblioeka statyczna c++
232 Group:          Development/Libraries
233 Group(pl):      Programowanie/Biblioteki
234 Version:        %{STDC_VERSION}
235 Requires:       libstdc++-devel = %{STDC_VERSION}
236
237 %description -n libstdc++-static
238 Static c++ standard library.
239
240 %description -l pl -n libstdc++-static
241 Biblioteka statyczna C++.
242
243 %package -n cpp
244 Summary:        The C Pre Processor
245 Summary(pl):    Preprocesor C
246 Group:          Development/Languages
247 Group(pl):      Programowanie/Jêzyki
248 Prereq:         /usr/sbin/fix-info-dir
249 Obsoletes:      egcs-cpp
250
251 %description -n cpp
252 The C preprocessor is a "macro processor" that is used automatically by the
253 C compiler to transform your program before actual compilation. It is called
254 a macro processor because it allows you to define "macros", which are brief
255 abbreviations for longer constructs.
256
257 The C preprocessor provides four separate facilities that you can use as you
258 see fit:
259
260 * Inclusion of header files.  These are files of declarations that
261   can be substituted into your program.
262 * Macro expansion.  You can define "macros", which are abbreviations for
263   arbitrary fragments of C code, and then the C preprocessor will replace
264   the macros with their definitions throughout the program.
265 * Conditional compilation.  Using special preprocessing directives,
266   you can include or exclude parts of the program according to various
267   conditions.
268 * Line control.  If you use a program to combine or rearrange source
269   files into an intermediate file which is then compiled, you can use line
270   control to inform the compiler of where each source line originally came
271   from.
272
273 %description -l pl -n cpp
274 Przeprocesor C jest "makro procesorem" który jest automatycznie u¿ywany
275 przez kompilator C do obróbki kompilowanego programu przed w³a¶ciw±
276 kompilacj±. Jest on nazywany makroprocesorem, poniewa¿ umo¿liwia
277 definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie d³ugich konstrukcji
278 w jêzyku C.
279
280 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
281
282 * Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
283   deklaracji polecenia do³±czenia innego pliku.
284 * Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
285   których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
286   indentyfikatora deklarowan± wcze¶niej warto¶ci±.
287 * Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
288   ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne fragmenty
289   obrabianego strumienia tekstów.
290 * Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom podlega
291   wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania s±
292   zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
293   odpowiada fragment pliku wynikowego.
294
295 %prep
296 %setup -q
297 %setup -q -a1 -D -T
298 mv libgcj-%{GCJ_VERSION} libgcj
299 mv libgcj/boehm-gc libgcj/libjava libgcj/zlib libgcj/zip .
300 %patch0 -p1
301 %patch1 -p1
302 %patch2 -p1
303 %patch3 -p1
304
305 %build
306 rm -rf obj-%{_target_platform}
307 install -d obj-%{_target_platform} && cd obj-%{_target_platform} 
308
309 CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="-s" \
310 ../configure \
311         --prefix=%{_prefix} \
312         --infodir=%{_infodir} \
313         --enable-shared \
314         --enable-threads \
315         --enable-haifa \
316         --with-gnu-as \
317         --with-gnu-ld \
318         --with-gxx-include-dir="\$\{prefix\}/include/g++" \
319         %{_target_platform}
320
321 PATH=$PATH:/sbin:%{_sbindir}
322 touch  ../gcc/c-gperf.h
323
324 make LDFLAGS_FOR_TARGET="-s" \
325         bootstrap-lean \
326         mandir=%{_mandir} \
327         infodir=%{_infodir}
328
329 %install
330 rm -rf $RPM_BUILD_ROOT
331 install -d $RPM_BUILD_ROOT%{_datadir}
332
333 cd obj-%{_target_platform}
334 PATH=$PATH:/sbin:%{_sbindir}
335
336 make install \
337         prefix=$RPM_BUILD_ROOT%{_prefix} \
338         mandir=$RPM_BUILD_ROOT%{_mandir} \
339         infodir=$RPM_BUILD_ROOT%{_infodir}
340
341 make install \
342         prefix=$RPM_BUILD_ROOT%{_prefix} \
343         mandir=$RPM_BUILD_ROOT%{_mandir} \
344         infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
345
346 strip $RPM_BUILD_ROOT%{_bindir}/* || :
347
348 strip $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/{cc1,cc1chill,cc1obj,cc1plus,cpp,f771,collect2,jc1,jvgenmain}
349 strip --strip-unneeded $RPM_BUILD_ROOT%{_libdir}/libstdc++.so.*.*.*
350
351 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
352
353 echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
354 echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
355
356 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
357
358 (cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
359
360 install -d $RPM_BUILD_ROOT/lib
361 (cd $RPM_BUILD_ROOT; \
362 ln -sf ../`dirname usr/lib/gcc-lib/%{_target_cpu}*/*/cpp`/cpp $RPM_BUILD_ROOT/lib/cpp)
363
364 gzip -9nf $RPM_BUILD_ROOT%{_datadir}/{info/*.info*,man/man1/*} \
365           ../READ* ../ChangeLog ../gcc/ch/chill.brochure
366
367 %post
368 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
369
370 %postun
371 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
372
373 %post g77
374 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
375
376 %postun g77
377 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
378
379 %post chill
380 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
381
382 %postun chill
383 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
384
385 %post -n cpp
386 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
387
388 %postun -n cpp
389 /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
390
391 %post libgcj  -p /sbin/ldconfig
392
393 %post   -p /sbin/ldconfig -n libstdc++
394 %postun -p /sbin/ldconfig -n libstdc++
395
396 %clean
397 rm -rf $RPM_BUILD_ROOT
398
399 %files
400 %defattr(644,root,root,755)
401 %doc READ* ChangeLog.gz
402
403 %dir %{_libdir}/gcc-lib
404 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
405 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
406 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
407
408 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
409 %attr(755,root,root) %{_bindir}/gcc
410 %attr(755,root,root) %{_bindir}/gcov
411 %attr(755,root,root) %{_bindir}/protoize
412 %attr(755,root,root) %{_bindir}/unprotoize
413 %attr(755,root,root) %{_bindir}/cc
414
415 %{_mandir}/man1/gcc.1*
416 %{_infodir}/gcc*
417
418 %{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
419 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
420 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
421 %{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
422 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
423
424 %ifnarch alpha
425 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
426 %endif
427
428 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
429
430 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
431 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
432 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
433 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
434 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
435 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
436 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
437 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
438 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
439 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
440
441 %files c++
442 %defattr(644,root,root,755)
443
444 %{_mandir}/man1/g++.1.gz
445
446 %attr(755,root,root) %{_bindir}/g++
447 %attr(755,root,root) %{_bindir}/c++
448 %attr(755,root,root) %{_bindir}/c++filt
449 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
450
451 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
452 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
453 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
454 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
455
456 %files objc
457 %defattr(644,root,root,755)
458
459 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
460
461 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
462 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
463
464 %files g77
465 %defattr(644,root,root,755)
466
467 %attr(755,root,root) %{_bindir}/g77
468 %attr(755,root,root) %{_bindir}/f77
469
470 %{_infodir}/g77*
471
472 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
473 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
474
475 %{_mandir}/man1/g77.1*
476 %{_mandir}/man1/f77.1*
477
478 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
479
480 %files chill
481 %defattr(644,root,root,755)
482 %doc gcc/ch/chill.brochure.gz
483
484 %attr(755,root,root) %{_bindir}/chill
485
486 %{_infodir}/chill*
487
488 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
489 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
490 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
491
492 %files java
493 %defattr(644,root,root,755)
494
495 %attr(755,root,root) %{_bindir}/gcj
496 %attr(755,root,root) %{_bindir}/gcjh
497 %attr(755,root,root) %{_bindir}/jcf-dump
498 %attr(755,root,root) %{_bindir}/jv-convert
499 %attr(755,root,root) %{_bindir}/jv-scan
500
501 %{_libdir}/*.spec
502
503 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
504 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
505
506 %files libgcj
507 %defattr(644,root,root,755)
508
509 %attr(755,root,root) %{_libdir}/lib*gcj*.so
510 %attr(755,root,root) %{_libdir}/lib*gcj*.so.*.*.*
511
512 %files libgcj-static
513 %defattr(644,root,root,755)
514
515 %{_libdir}/lib*gcj*.a
516 %{_libdir}/lib*gcj*.la
517
518 %files -n libstdc++
519 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
520
521 %files -n libstdc++-devel
522 %defattr(644,root,root,755) 
523 %{_includedir}/g++
524 %attr(755,root,root) %{_libdir}/libstdc++.so
525
526 %files -n libstdc++-static
527 %attr(644,root,root) %{_libdir}/libstdc++.a
528
529 %files -n cpp
530 %defattr(644,root,root,755)
531 %attr(755,root,root) /lib/cpp
532
533 %{_mandir}/man1/cpp.1*
534 %{_mandir}/man1/cccp.1*
535 %{_infodir}/cpp.info*.gz
536
537 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp
This page took 0.143261 seconds and 4 git commands to generate.