]> git.pld-linux.org Git - packages/gcc4.git/blob - gcc4.spec
- gcc-3.3's ada compiler is broken and segfaults.
[packages/gcc4.git] / gcc4.spec
1 #
2 # Conditional build:
3 %bcond_without  ada             # build without ADA support
4 %bcond_without  fortran         # build without Fortran support
5 %bcond_without  java            # build without Java support
6 %bcond_without  objc            # build without ObjC support
7
8 %bcond_with     bootstrap
9
10 %if %{with bootstrap}
11 %define         rpmcflags       -O
12 %undefine       with_fortran
13 %undefine       with_java
14 %undefine       with_objc
15 %endif
16
17 #
18 # TODO:
19 #               - http://gcc.gnu.org/PR11203 (inline-asm)
20 #               - http://gcc.gnu.org/PR18648 (missed tree-optimization)
21 #               - disable internal zlib usage
22 #               - translations from gcc.spec:HEAD
23 #
24 %define         _snap           20050130
25 #
26 Summary:        GNU Compiler Collection: the C compiler and shared files
27 Summary(pl):    Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
28 Name:           gcc
29 Epoch:          5
30 Version:        4.0.0
31 Release:        0.%{_snap}.2
32 License:        GPL
33 Group:          Development/Languages
34 #Source0:       ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.bz2
35 #Source0:       ftp://gcc.gnu.org/pub/gcc/prerelease-%{version}-%{_snap}/gcc-%{version}-%{_snap}.tar.bz2
36 #Source0:       ftp://gcc.gnu.org/pub/gcc/snapshots/4.0-%{_snap}/%{name}-4.0-%{_snap}.tar.bz2
37 Source0:        http://pld-nptl.ds14.agh.edu.pl/gcc-4.0-%{_snap}.tar.bz2
38 # Source0-md5:  5040ba840d0367c378f73c739418b3e2
39 Patch0:         %{name}-info.patch
40 Patch1:         %{name}-nolocalefiles.patch
41 Patch2:         %{name}-nodebug.patch
42 Patch3:         %{name}-ada-link-new-libgnat.patch
43 Patch4:         %{name}-ada-link.patch
44 URL:            http://gcc.gnu.org/
45 BuildRequires:  autoconf
46 BuildRequires:  automake
47 BuildRequires:  binutils >= 2:2.15.94.0.1
48 BuildRequires:  bison
49 BuildRequires:  fileutils >= 4.0.41
50 BuildRequires:  flex
51 %if %{with ada}
52 BuildRequires:  gcc(ada)
53 BuildRequires:  gcc-ada
54 %endif
55 BuildRequires:  gettext-devel
56 BuildRequires:  glibc-devel >= 2.2.5-20
57 BuildRequires:  gmp-devel
58 BuildRequires:  libmpfr-devel
59 BuildRequires:  perl-devel
60 BuildRequires:  texinfo >= 4.1
61 BuildRequires:  zlib-devel
62 Requires:       binutils >= 2:2.15.94.0.1
63 Requires:       libgcc = %{epoch}:%{version}-%{release}
64 Provides:       cpp = %{epoch}:%{version}-%{release}
65 %{?with_ada:Provides:   gcc(ada)}
66 Obsoletes:      cpp
67 Obsoletes:      egcs-cpp
68 Obsoletes:      gcc-cpp
69 Obsoletes:      gcc-ksi
70 Obsoletes:      gont
71 Conflicts:      glibc-devel < 2.2.5-20
72 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
73
74 %define         _slibdir        /%{_lib}
75
76 %description
77 A compiler aimed at integrating all the optimizations and features
78 necessary for a high-performance and stable development environment.
79
80 This package contains the C compiler and some files shared by various
81 parts of the GNU Compiler Collection. In order to use another GCC
82 compiler you will need to install the appropriate subpackage.
83
84 %description -l pl
85 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
86 wyprodukowania szybkiego i stabilnego kodu wynikowego.
87
88 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
89 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
90 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
91
92 %package -n libgcc
93 Summary:        Shared gcc library
94 Summary(pl):    Biblioteka gcc
95 Group:          Libraries
96 Obsoletes:      libgcc1
97
98 %description -n libgcc
99 Shared gcc library.
100
101 %description -n libgcc -l pl
102 Biblioteka dynamiczna gcc.
103
104 %package -n libmudflap
105 Summary:        GCC mudflap shared support library
106 Group:          Libraries
107
108 %description -n libmudflap
109 The libmudflap libraries are used by GCC for instrumenting pointer and
110 array dereferencing operations.
111
112 %package -n libmudflap-devel
113 Summary:        Development files for GCC mudflap library
114 Group:          Development/Libraries
115 Requires:       libmudflap = %{epoch}:%{version}-%{release}
116
117 %description -n libmudflap-devel
118 The libmudflap libraries are used by GCC for instrumenting pointer and
119 array dereferencing operations. This package contains development
120 files.
121
122 %package -n libmudflap-static
123 Summary:        Static GCC mudflap library
124 Group:          Development/Libraries
125 Requires:       libmudflap-devel = %{epoch}:%{version}-%{release}
126
127 %description -n libmudflap-static
128 The libmudflap libraries are used by GCC for instrumenting pointer and
129 array dereferencing operations. This package contains static
130 libraries.
131
132 %package ada
133 Summary:        Ada support for gcc
134 Summary(pl):    Obs³uga Ady do gcc
135 Group:          Development/Languages
136 Requires:       %{name} = %{epoch}:%{version}-%{release}
137 Requires:       libgnat = %{epoch}:%{version}-%{release}
138 Obsoletes:      gcc-gnat
139 Obsoletes:      gnat-devel
140
141 %description ada
142 This package adds experimental support for compiling Ada programs.
143
144 %description ada -l pl
145 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
146 Adzie.
147
148 %package -n libgnat
149 Summary:        Ada standard libraries
150 Summary(pl):    Biblioteki standardowe dla Ady
151 Group:          Development/Libraries
152 Obsoletes:      gnat
153 Obsoletes:      libgnat1
154
155 %description -n libgnat
156 This package contains shared libraries needed to run programs written
157 in Ada.
158
159 %description -n libgnat -l pl
160 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
161 napisanych w Adzie.
162
163 %package -n libgnat-static
164 Summary:        Static Ada standard libraries
165 Summary(pl):    Statyczne biblioteki standardowe dla Ady
166 Group:          Development/Libraries
167 Obsoletes:      gnat-static
168
169 %description -n libgnat-static
170 This package contains static libraries for programs written in Ada.
171
172 %description -n libgnat-static -l pl
173 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
174 Adzie.
175
176 %package c++
177 Summary:        C++ support for gcc
178 Summary(pl):    Obs³uga C++ dla gcc
179 Group:          Development/Languages
180 Requires:       %{name} = %{epoch}:%{version}-%{release}
181 Obsoletes:      egcc-c++
182 Obsoletes:      egcs-c++
183
184 %description c++
185 This package adds C++ support to the GNU Compiler Collection. It
186 includes support for most of the current C++ specification, including
187 templates and exception handling. It does not include a standard C++
188 library, which is available separately.
189
190 %description c++ -l pl
191 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
192 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
193 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
194
195 %package -n libstdc++
196 Summary:        GNU C++ library
197 Summary(pl):    Biblioteki GNU C++
198 Group:          Libraries
199 Obsoletes:      libg++
200 Obsoletes:      libstdc++3
201
202 %description -n libstdc++
203 This is the GNU implementation of the standard C++ libraries, along
204 with additional GNU tools. This package includes the shared libraries
205 necessary to run C++ applications.
206
207 %description -n libstdc++ -l pl
208 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
209 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
210 uruchomienia aplikacji napisanych w C++.
211
212 %package -n libstdc++-devel
213 Summary:        Header files and documentation for C++ development
214 Summary(pl):    Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
215 Group:          Development/Libraries
216 Requires:       %{name}-c++ = %{epoch}:%{version}-%{release}
217 Requires:       glibc-devel
218 Requires:       libstdc++ = %{epoch}:%{version}-%{release}
219 Obsoletes:      libg++-devel
220 Obsoletes:      libstdc++3-devel
221
222 %description -n libstdc++-devel
223 This is the GNU implementation of the standard C++ libraries. This
224 package includes the header files needed for C++ development and
225 library documentation.
226
227 %description -n libstdc++-devel -l pl
228 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
229 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
230 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
231
232 %package -n libstdc++-static
233 Summary:        Static C++ standard library
234 Summary(pl):    Statyczna biblioteka standardowa C++
235 Group:          Development/Libraries
236 Requires:       libstdc++-devel = %{epoch}:%{version}-%{release}
237
238 %description -n libstdc++-static
239 Static C++ standard library.
240
241 %description -n libstdc++-static -l pl
242 Statyczna biblioteka standardowa C++.
243
244 %package fortran
245 Summary:        Fortran 95 support for gcc
246 Summary(pl):    Obs³uga Fortranu 95 dla gcc
247 Group:          Development/Languages/Fortran
248 Requires:       libgfortran = %{epoch}:%{version}-%{release}
249 Obsoletes:      egcs-g77
250 Obsoletes:      gcc-g77
251
252 %description fortran
253 This package adds support for compiling Fortran 95 programs with the
254 GNU compiler.
255
256 %description fortran -l pl
257 Ten pakiet dodaje obs³ugê Fortranu 95 do kompilatora gcc. Jest
258 potrzebny do kompilowania programów pisanych w jêzyku Fortran 95.
259
260 %package -n libgfortran
261 Summary:        Fortran 95 Libraries
262 Summary(pl):    Biblioteki Fortranu 95
263 Group:          Development/Libraries
264 Obsoletes:      libg2c
265
266 %description -n libgfortran
267 Fortran 95 Libraries.
268
269 %description -n libgfortran -l pl
270 Biblioteki Fortranu 95.
271
272 %package -n libgfortran-static
273 Summary:        Static Fortran 95 Libraries
274 Summary(pl):    Statyczne Biblioteki Fortranu 95
275 Group:          Development/Libraries
276 Requires:       libgfortran = %{epoch}:%{version}-%{release}
277 Obsoletes:      libg2c-static
278
279 %description -n libgfortran-static
280 Static Fortran 95 Libraries.
281
282 %description -n libgfortran-static -l pl
283 Statyczne biblioteki Fortranu 95.
284
285 %package java
286 Summary:        Java support for gcc
287 Summary(pl):    Obs³uga Javy dla gcc
288 Group:          Development/Languages/Java
289 Requires:       %{name} = %{epoch}:%{version}-%{release}
290 Requires:       libgcj = %{epoch}:%{version}-%{release}
291 Requires:       libgcj-devel = %{epoch}:%{version}-%{release}
292 Requires:       java-shared
293 Provides:       gcj = %{epoch}:%{version}-%{release}
294
295 %description java
296 This package adds experimental support for compiling Java(tm) programs
297 and bytecode into native code. To use this you will also need the
298 libgcj package.
299
300 %description java -l pl
301 Wsparcie dla kompilowania programów Java(tm) zarówno do bajt-kodu jak
302 i do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
303 by³o przeprowadziæ kompilacjê.
304
305 %package -n libgcj
306 Summary:        Java Class Libraries
307 Summary(pl):    Biblioteki Klas Javy
308 Group:          Libraries
309 Requires:       zlib
310 Obsoletes:      libgcj3
311
312 %description -n libgcj
313 Java Class Libraries.
314
315 %description -n libgcj -l pl
316 Biblioteki Klas Javy.
317
318 %package -n libgcj-devel
319 Summary:        Development files for Java Class Libraries
320 Summary(pl):    Pliki nag³ówkowe dla Bibliotek Klas Javy
321 Group:          Development/Libraries
322 Requires:       libgcj = %{epoch}:%{version}-%{release}
323 Obsoletes:      libgcj3-devel
324
325 %description -n libgcj-devel
326 Development files for Java Class Libraries.
327
328 %description -n libgcj-devel -l pl
329 Pliki nag³ówkowe dla Bibliotek Klas Javy.
330
331 %package -n libgcj-static
332 Summary:        Static Java Class Libraries
333 Summary(pl):    Statyczne Biblioteki Klas Javy
334 Group:          Development/Libraries
335 Requires:       libgcj-devel = %{epoch}:%{version}-%{release}
336 Requires:       libstdc++-devel = %{epoch}:%{version}-%{release}
337
338 %description -n libgcj-static
339 Static Java Class Libraries.
340
341 %description -n libgcj-static -l pl
342 Statyczne Biblioteki Klas Javy.
343
344 %package -n libffi
345 Summary:        Foreign Function Interface library
346 Summary(pl):    Biblioteka zewnêtrznych wywo³añ funkcji
347 Group:          Libraries
348
349 %description -n libffi
350 The libffi library provides a portable, high level programming
351 interface to various calling conventions. This allows a programmer to
352 call any function specified by a call interface description at run
353 time.
354
355 %description -n libffi -l pl
356 Biblioteka libffi dostarcza przeno¶nego, wysokopoziomowego
357 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
358 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
359 czasie wykonania.
360
361 %package -n libffi-devel
362 Summary:        Development files for Foreign Function Interface library
363 Summary(pl):    Pliki nag³ówkowe dla libffi
364 Group:          Development/Libraries
365 Requires:       libffi = %{epoch}:%{version}-%{release}
366
367 %description -n libffi-devel
368 Development files for Foreign Function Interface library.
369
370 %description -n libffi-devel -l pl
371 Pliki nag³ówkowe dla libffi.
372
373 %package -n libffi-static
374 Summary:        Static Foreign Function Interface library
375 Summary(pl):    Statyczna biblioteka libffi
376 Group:          Development/Libraries
377 Requires:       libffi-devel = %{epoch}:%{version}-%{release}
378
379 %description -n libffi-static
380 Static Foreign Function Interface library.
381
382 %description -n libffi-static -l pl
383 Statyczna biblioteka libffi.
384
385 %package java-tools
386 Summary:        Shared java tools
387 Summary(pl):    Wspó³dzielone narzêdzia javy
388 Group:          Development/Languages/Java
389 Provides:       jar = %{epoch}:%{version}-%{release}
390 Provides:       java-shared
391 Obsoletes:      fastjar
392 Obsoletes:      java-shared
393 Obsoletes:      jar
394
395 %description java-tools
396 This package contains tools that are common for every Java(tm)
397 implementation, such as rmic or jar.
398
399 %description java-tools -l pl
400 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
401 Javy(tm), takie jak rmic czy jar.
402
403 %package objc
404 Summary:        Objective C support for gcc
405 Summary(pl):    Obs³uga obiektowego C dla kompilatora gcc
406 Group:          Development/Languages
407 Requires:       %{name} = %{epoch}:%{version}-%{release}
408 Requires:       libobjc = %{epoch}:%{version}-%{release}
409 Obsoletes:      egcc-objc
410 Obsoletes:      egcs-objc
411
412 %description objc
413 This package adds Objective C support to the GNU Compiler Collection.
414 Objective C is a object oriented derivative of the C language, mainly
415 used on systems running NeXTSTEP. This package does not include the
416 standard objective C object library.
417
418 %description objc -l pl
419 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
420 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
421 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
422 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
423
424 %package -n libobjc
425 Summary:        Objective C Libraries
426 Summary(pl):    Biblioteki Obiektowego C
427 Group:          Libraries
428 Obsoletes:      libobjc1
429
430 %description -n libobjc
431 Objective C Libraries.
432
433 %description -n libobjc -l pl
434 Biblioteki Obiektowego C.
435
436 %package -n libobjc-static
437 Summary:        Static Objective C Libraries
438 Summary(pl):    Statyczne Biblioteki Obiektowego C
439 Group:          Development/Libraries
440 Requires:       libobjc = %{epoch}:%{version}-%{release}
441
442 %description -n libobjc-static
443 Static Objective C Libraries.
444
445 %description -n libobjc-static -l pl
446 Statyczne biblioteki Obiektowego C.
447
448 %prep
449 # prerelease
450 #setup -q -n gcc-%{version}-%{_snap}
451 # snapshot
452 %setup -q -n gcc-4.0-%{_snap}
453 # final
454 #setup -q -n gcc-%{version}
455
456 %patch0 -p1
457 %patch1 -p1
458 %{!?debug:%patch2 -p1}
459 %patch3 -p1
460 %patch4 -p1
461
462 # because we distribute modified version of gcc...
463 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
464 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
465
466 mv ChangeLog ChangeLog.general
467
468 %build
469 cd gcc
470 %{__autoconf}
471 cd ..
472 cp -f /usr/share/automake/config.sub .
473
474 rm -rf obj-%{_target_platform}
475 install -d obj-%{_target_platform}
476 cd obj-%{_target_platform}
477
478 CFLAGS="%{rpmcflags}" \
479 CXXFLAGS="%{rpmcflags}" \
480 TEXCONFIG=false \
481 ../configure \
482         --prefix=%{_prefix} \
483         --libdir=%{_libdir} \
484         --libexecdir=%{_libexecdir} \
485         --infodir=%{_infodir} \
486         --mandir=%{_mandir} \
487         --enable-shared \
488         --enable-threads=posix \
489         --enable-__cxa_atexit \
490         --enable-languages="c,c++%{?with_fortran:,f95}%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
491         --enable-c99 \
492         --enable-long-long \
493 %ifarch amd64
494         --disable-multilib \
495 %else
496         --enable-multilib \
497 %endif
498         --enable-nls \
499         --with-gnu-as \
500         --with-gnu-ld \
501         --with-system-zlib \
502         --with-slibdir=%{_slibdir} \
503         --without-x \
504         --enable-cmath \
505         %{_target_platform}
506
507 cd ..
508
509 %{__make} -C obj-%{_target_platform} \
510         %{!?with_bootstrap:profiledbootstrap} \
511         GCJFLAGS="%{rpmcflags}" \
512         BOOT_CFLAGS="%{rpmcflags}" \
513         STAGE1_CFLAGS="%{rpmcflags}" \
514         LDFLAGS_FOR_TARGET="%{rpmldflags}" \
515         mandir=%{_mandir} \
516         infodir=%{_infodir}
517
518 %install
519 rm -rf $RPM_BUILD_ROOT
520 install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
521
522 cd obj-%{_target_platform}
523
524 %{__make} -j1 install \
525         mandir=%{_mandir} \
526         infodir=%{_infodir} \
527         DESTDIR=$RPM_BUILD_ROOT
528
529 install gcc/specs $RPM_BUILD_ROOT%{_libdir}/gcc/%{_target_platform}/%{version}
530
531 %ifarch sparc64
532 ln -sf  $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
533         $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
534 %endif
535
536 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
537 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
538
539 %if %{with fortran}
540 ln -sf gfortran $RPM_BUILD_ROOT%{_bindir}/g95
541 echo ".so gfortran.1" > $RPM_BUILD_ROOT%{_mandir}/man1/g95.1
542 %endif
543
544 %if %{with ada}
545 # move ada shared libraries to proper place...
546 mv -f   $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
547         $RPM_BUILD_ROOT%{_libdir}
548 # check if symlink to be made is valid
549 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so.1
550 ln -sf  libgnat-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so
551 ln -sf  libgnarl-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-4.0.so
552 ln -sf  libgnat-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
553 ln -sf  libgnarl-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
554 ln -sf  %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
555 %endif
556
557 cd ..
558
559 %if %{with java}
560 install -d java-doc
561 cp -f   libjava/READ* java-doc
562 cp -f   fastjar/README java-doc/README.fastjar
563 cp -f   libffi/README java-doc/README.libffi
564 cp -f   libffi/LICENSE java-doc/LICENSE.libffi
565 %endif
566 %if %{with objc}
567 cp -f   libobjc/README gcc/objc/README.libobjc
568 %endif
569
570 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
571 for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la};
572 do
573         perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
574 done
575 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
576 for f in libstdc++.la libsupc++.la \
577         %{?with_fortran:libgfortran.la libgfortranbegin.la} \
578         %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
579         %{?with_objc:libobjc.la};
580 do
581         perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
582 done
583
584 # include/ contains install-tools/include/* and headers that were fixed up
585 # by fixincludes, we don't want former
586 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
587 mkdir   $gccdir/tmp
588 # we have to save these however
589 %{?with_java:mv -f $gccdir/include/{gcj,libffi/ffitarget.h} $gccdir/tmp}
590 %{?with_objc:mv -f $gccdir/include/objc $gccdir/tmp}
591 mv -f   $gccdir/include/syslimits.h $gccdir/tmp
592 rm -rf  $gccdir/include
593  mv -f  $gccdir/tmp $gccdir/include
594 cp -f   $gccdir/install-tools/include/*.h $gccdir/include
595 # but we don't want anything more from install-tools
596 rm -rf  $gccdir/install-tools
597
598 %find_lang gcc
599 %find_lang libstdc\+\+
600
601 %clean
602 rm -rf $RPM_BUILD_ROOT
603
604 %post
605 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
606
607 %postun
608 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
609
610 %post ada
611 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
612
613 %postun ada
614 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
615
616 %post fortran
617 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
618
619 %postun fortran
620 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
621
622 %post java
623 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
624
625 %postun java
626 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
627
628 %post   -p /sbin/ldconfig -n libgcc
629 %postun -p /sbin/ldconfig -n libgcc
630 %post   -p /sbin/ldconfig -n libmudflap
631 %postun -p /sbin/ldconfig -n libmudflap
632 %post   -p /sbin/ldconfig -n libgnat
633 %postun -p /sbin/ldconfig -n libgnat
634 %post   -p /sbin/ldconfig -n libstdc++
635 %postun -p /sbin/ldconfig -n libstdc++
636 %post   -p /sbin/ldconfig -n libgfortran
637 %postun -p /sbin/ldconfig -n libgfortran
638 %post   -p /sbin/ldconfig -n libgcj
639 %postun -p /sbin/ldconfig -n libgcj
640 %post   -p /sbin/ldconfig -n libffi
641 %postun -p /sbin/ldconfig -n libffi
642 %post   -p /sbin/ldconfig -n libobjc
643 %postun -p /sbin/ldconfig -n libobjc
644
645 %files -f gcc.lang
646 %defattr(644,root,root,755)
647 %doc ChangeLog.general MAINTAINERS bugs.html faq.html
648 %doc gcc/{ChangeLog,ONEWS,README.Portability}
649 %dir %{_libdir}/gcc
650 %dir %{_libdir}/gcc/*
651 %dir %{_libdir}/gcc/*/*
652 %dir %{_libdir}/gcc/*/*/include
653
654 %attr(755,root,root) %{_bindir}/*-gcc*
655 %attr(755,root,root) %{_bindir}/gcc
656 %attr(755,root,root) %{_bindir}/gccbug
657 %attr(755,root,root) %{_bindir}/gcov
658 %attr(755,root,root) %{_bindir}/cc
659 %attr(755,root,root) %{_bindir}/cpp
660
661 %{_mandir}/man1/cc.1*
662 %{_mandir}/man1/cpp.1*
663 %{_mandir}/man1/gcc.1*
664 %{_mandir}/man1/gcov.1*
665
666 %{_infodir}/cpp*
667 %{_infodir}/gcc*
668
669 %attr(755,root,root) /lib/cpp
670
671 %attr(755,root,root) %{_slibdir}/lib*.so
672 %{_libdir}/gcc/*/*/libgcov.a
673 %{_libdir}/gcc/*/*/libgcc.a
674 %{_libdir}/gcc/*/*/libgcc_eh.a
675 %{_libdir}/gcc/*/*/specs
676 %attr(644,root,root) %{_libdir}/gcc/*/*/crt*.o
677 %ifarch sparc64
678 %{_libdir}/gcc/*/*/*/libgcc.a
679 %{_libdir}/gcc/*/*/*/libgcc_eh.a
680 %attr(644,root,root) %{_libdir}/gcc/*/*/*/crt*.o
681 %endif
682 %ifarch ppc
683 %attr(644,root,root) %{_libdir}/gcc/*/*/ecrt*.o
684 %attr(644,root,root) %{_libdir}/gcc/*/*/ncrt*.o
685 %{_libdir}/gcc/*/*/nof
686 %dir %{_libdir}/nof
687 %endif
688 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
689 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
690
691 %{_libdir}/gcc/*/*/include/*.h
692
693 %files -n libgcc
694 %defattr(644,root,root,755)
695 %attr(755,root,root) %{_slibdir}/lib*.so.*
696
697 %files -n libmudflap
698 %defattr(644,root,root,755)
699 %attr(755,root,root) %{_libdir}/libmudflap*.so.*.*.*
700
701 %files -n libmudflap-devel
702 %defattr(644,root,root,755)
703 %{_includedir}/mf-runtime.h
704 %{_libdir}/libmudflap*.la
705 %attr(755,root,root) %{_libdir}/libmudflap*.so
706
707 %files -n libmudflap-static
708 %defattr(644,root,root,755)
709 %{_libdir}/libmudflap*.a
710
711 %if %{with ada}
712 %files ada
713 %defattr(644,root,root,755)
714 %doc gcc/ada/ChangeLog
715 %attr(755,root,root) %{_bindir}/gnat*
716 %attr(755,root,root) %{_bindir}/gpr*
717 %attr(755,root,root) %{_libdir}/libgnarl*.so
718 %attr(755,root,root) %{_libdir}/libgnat*.so
719 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
720 %{_libdir}/gcc/*/*/adainclude
721 %dir %{_libdir}/gcc/*/*/adalib
722 %{_libdir}/gcc/*/*/adalib/*.ali
723 %{_libdir}/gcc/*/*/adalib/g-trasym.o
724 %{_libdir}/gcc/*/*/adalib/libgccprefix.a
725 %ifarch %{ix86}
726 %{_libdir}/gcc/*/*/adalib/libgmem.a
727 %endif
728 %{_datadir}/gnat
729 %{_infodir}/gnat*
730
731 %files -n libgnat
732 %defattr(644,root,root,755)
733 %attr(755,root,root) %{_libdir}/libgnarl*.so.1
734 %attr(755,root,root) %{_libdir}/libgnat*.so.1
735
736 %files -n libgnat-static
737 %defattr(644,root,root,755)
738 %{_libdir}/gcc/*/*/adalib/libgnarl.a
739 %{_libdir}/gcc/*/*/adalib/libgnat.a
740 %endif
741
742 %files c++
743 %defattr(644,root,root,755)
744 %doc gcc/cp/{ChangeLog,NEWS}
745 %attr(755,root,root) %{_bindir}/g++
746 %attr(755,root,root) %{_bindir}/*-g++
747 %attr(755,root,root) %{_bindir}/c++
748 %attr(755,root,root) %{_bindir}/*-c++
749 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
750 %{_libdir}/libsupc++.a
751 %{_libdir}/libsupc++.la
752 %{_mandir}/man1/g++.1*
753
754 %files -n libstdc++ -f libstdc++.lang
755 %defattr(644,root,root,755)
756 %doc libstdc++-v3/{ChangeLog,README}
757 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
758
759 %files -n libstdc++-devel
760 %defattr(644,root,root,755)
761 %doc libstdc++-v3/docs/html
762 %dir %{_includedir}/c++
763 %{_includedir}/c++/%{version}
764 %if %{with java}
765 %exclude %{_includedir}/c++/%{version}/java
766 %exclude %{_includedir}/c++/%{version}/javax
767 %exclude %{_includedir}/c++/%{version}/gcj
768 %exclude %{_includedir}/c++/%{version}/gnu
769 %endif
770 %exclude %{_includedir}/c++/%{version}/*/bits/stdc++.h.gch
771 %{_libdir}/libstdc++.la
772 %attr(755,root,root) %{_libdir}/libstdc++.so
773
774 %files -n libstdc++-static
775 %defattr(644,root,root,755)
776 %{_libdir}/libstdc++.a
777
778 %if %{with fortran}
779 %files fortran
780 %defattr(644,root,root,755)
781 %doc gcc/fortran/ChangeLog
782 %attr(755,root,root) %{_bindir}/g95
783 %attr(755,root,root) %{_bindir}/gfortran
784 %{_infodir}/gfortran*
785 %attr(755,root,root) %{_libdir}/gcc/*/*/f951
786 %{_libdir}/libgfortranbegin.a
787 %{_libdir}/libgfortranbegin.la
788 %{_libdir}/libgfortran.la
789 %attr(755,root,root) %{_libdir}/libgfortran.so
790 %{_mandir}/man1/g95.1*
791 %{_mandir}/man1/gfortran.1*
792
793 %files -n libgfortran
794 %defattr(644,root,root,755)
795 %doc libgfortran/{AUTHORS,README,ChangeLog}
796 %attr(755,root,root) %{_libdir}/libgfortran.so.*.*.*
797
798 %files -n libgfortran-static
799 %defattr(644,root,root,755)
800 %{_libdir}/libgfortran.a
801 %endif
802
803 %if %{with java}
804 %files java
805 %defattr(644,root,root,755)
806 %doc gcc/java/ChangeLog java-doc/*
807 %attr(755,root,root) %{_bindir}/gcj*
808 %attr(755,root,root) %{_bindir}/gij
809 %attr(755,root,root) %{_bindir}/grepjar
810 %attr(755,root,root) %{_bindir}/jcf-dump
811 %attr(755,root,root) %{_bindir}/jv-*
812 %attr(755,root,root) %{_bindir}/*-gcj*
813 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
814 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
815 %{_infodir}/gcj*
816 %{_mandir}/man1/gcj*
817 %{_mandir}/man1/gij*
818 %{_mandir}/man1/grepjar*
819 %{_mandir}/man1/jcf-*
820 %{_mandir}/man1/jv-*
821
822 %files java-tools
823 %defattr(644,root,root,755)
824 %attr(755,root,root) %{_bindir}/grmi*
825 %attr(755,root,root) %{_bindir}/fastjar
826 %{_mandir}/man1/grmi*
827 %{_mandir}/man1/fastjar*
828 %{_infodir}/fastjar*
829
830 %files -n libgcj
831 %defattr(644,root,root,755)
832 %doc libjava/{ChangeLog,LIBGCJ_LICENSE,NEWS,README,THANKS}
833 %attr(755,root,root) %{_bindir}/addr2name.awk
834 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
835 %attr(755,root,root) %{_libdir}/libgij.so.*.*.*
836 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
837 %{_libdir}/logging.properties
838
839 %files -n libgcj-devel
840 %defattr(644,root,root,755)
841 %{_includedir}/c++/%{version}/java
842 %{_includedir}/c++/%{version}/javax
843 %{_includedir}/c++/%{version}/gcj
844 %{_includedir}/c++/%{version}/gnu
845 %{_libdir}/gcc/*/*/include/gcj
846 %dir %{_libdir}/security
847 %{_libdir}/security/*
848 %{_javadir}/libgcj*.jar
849 %{_libdir}/lib*cj.spec
850 %{_libdir}/lib*cj*.la
851 %attr(755,root,root) %{_libdir}/lib*cj*.so
852 %{_libdir}/libgij.la
853 %attr(755,root,root) %{_libdir}/libgij.so
854 %attr(755,root,root) %{_libdir}/lib-org-*.so
855 %{_libdir}/lib-org-*.la
856 %{_pkgconfigdir}/libgcj.pc
857
858 %files -n libgcj-static
859 %defattr(644,root,root,755)
860 %{_libdir}/lib*cj*.a
861 %{_libdir}/libgij.a
862 %{_libdir}/lib-org-*.a
863
864 %files -n libffi
865 %defattr(644,root,root,755)
866 %doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
867 %attr(755,root,root) %{_libdir}/libffi.so.*.*.*
868
869 %files -n libffi-devel
870 %defattr(644,root,root,755)
871 %{_libdir}/gcc/*/*/include/ffitarget.h
872 %attr(755,root,root) %{_libdir}/libffi.so
873 %{_libdir}/libffi.la
874 %{_includedir}/ffi.h
875
876 %files -n libffi-static
877 %defattr(644,root,root,755)
878 %{_libdir}/libffi.a
879 %endif
880
881 %if %{with objc}
882 %files objc
883 %defattr(644,root,root,755)
884 %doc gcc/objc/README
885 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
886 %attr(755,root,root) %{_libdir}/libobjc.so
887 %{_libdir}/libobjc.la
888 %{_libdir}/gcc/*/*/include/objc
889
890 %files -n libobjc
891 %defattr(644,root,root,755)
892 %doc libobjc/{ChangeLog,README*}
893 %attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
894
895 %files -n libobjc-static
896 %defattr(644,root,root,755)
897 %{_libdir}/libobjc.a
898 %endif
This page took 0.147448 seconds and 4 git commands to generate.