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