add packaging
[platform/upstream/gcc48.git] / packaging / gcc.spec.in
1 %define fast_build 1
2
3 # Ada currently fails to build on a few platforms, enable it only
4 # on those that work
5 # Note that AdaCore only supports %ix86, x86_64 and ia64
6 %ifarch %ix86 x86_64
7 %define build_ada !0%{?building_libjava:1}%{?building_libffi:1}
8 %else
9 %define build_ada 0
10 %endif
11
12 %define quadmath_arch %ix86 x86_64 ia64
13
14 # We don't want to build java
15 %ifarch mips
16 %define build_java 0
17 %define build_libjava 0
18 %else
19 %define build_java 1
20 %define build_libjava 0%{?building_libjava:1}%{?building_libffi:1}%{?building_testsuite:1}
21 %endif
22
23 %define build_cp 1
24 %define build_fortran 1
25 %define build_objc 1
26 %define build_objcp !0%{?building_libjava:1}%{?building_libffi:1}
27 %define build_with_mudflap 0
28
29 %if %{build_objcp}
30 %define build_cp 1
31 %define build_objc 1
32 %endif
33
34 %if %{build_libjava}
35 %define build_cp 1
36 %endif
37
38 # For optional compilers only build C, C++ and Fortran
39 ##%if 0%{?build_optional_compiler:1}%{?build_optional_compiler_languages:1}
40 %if 0%{!?building_libffi:1}
41 %define build_ada 0
42 %define build_java 0
43 %define build_libjava 0
44 %define build_objc 1
45 %define build_objcp 1
46 %endif
47
48
49 Name:         gcc@base_ver@
50 BuildRequires: bison
51 BuildRequires: flex
52 BuildRequires: gettext-tools
53 BuildRequires: makeinfo
54 BuildRequires: glibc-devel-32bit
55 BuildRequires: mpc-devel
56 BuildRequires: mpfr-devel
57 BuildRequires: perl
58 BuildRequires: texinfo
59 BuildRequires: zlib-devel
60 %ifarch %ix86 x86_64 %arm
61 BuildRequires: cloog-devel
62 BuildRequires: ppl-devel
63 %endif
64 %if %{build_ada}
65 %define hostsuffix -4.7
66 BuildRequires: gcc47-ada
67 %endif
68 %if 0%{?building_libjava:1}%{?building_testsuite:1}
69 BuildRequires: fastjar
70 BuildRequires: unzip
71 %endif
72 %if 0%{?building_libffi:1}
73 BuildRequires: pkg-config
74 %endif
75 %ifarch ia64
76 BuildRequires: libunwind-devel
77 %endif
78 %if 0%{?run_tests:1}
79 BuildRequires: dejagnu
80 BuildRequires: expect
81 BuildRequires: gdb
82 %endif
83
84 # Define version number of libgcc_s
85 %ifarch hppa
86 %define libgcc_s 4
87 %else
88 %define libgcc_s 1
89 %endif
90 %ifarch ppc
91 # We support building the nof libraries, but don't want this in the
92 # regular rpms
93 %define build_nof 0
94 %else
95 %define build_nof 0
96 %endif
97
98 %define separate_bi32 0
99 %define separate_bi64 0
100 %ifarch x86_64 
101 %define separate_bi32 1
102 %endif
103
104 # Define two macros to trigger -32bit or -64bit package variants
105 %define separate_biarch 0
106 %if %{separate_bi32}
107 %define separate_biarch 1
108 %define separate_biarch_suffix -32bit
109 %endif
110 %if %{separate_bi64}
111 %define separate_biarch 1
112 %define separate_biarch_suffix -64bit
113 %endif
114
115 %ifarch x86_64
116 # 64-bit is primary build target
117 %define build_primary_64bit 1
118 %else
119 %define build_primary_64bit 0
120 %endif
121
122 %define biarch_libjava 0
123
124 # COMMON-BEGIN
125 %define biarch_targets x86_64 
126
127 URL:          http://gcc.gnu.org/
128 Version: 4.7.2
129 Release:      1
130 %define gcc_version %(echo %version | sed 's/_.*//')
131 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
132 %define snapshot_date %(echo %version | sed 's/[34]\.[0-9]\.[0-6]//' | sed 's/_/-/')
133 %define binsuffix -4.7
134 # COMMON-END
135
136 %if !0%{?building_libjava:1}%{?building_libffi:1}%{?building_testsuite:1}
137 Requires: binutils glibc-devel
138 Requires: cpp@base_ver@ = %{version}-%{release}
139 %if 0%{!?build_optional_compiler:1}
140 Requires: libgcc%{libgcc_s} >= %{version}-%{release}
141 Requires: libgomp1 >= %{version}-%{release}
142 %if %{build_with_mudflap}
143 Requires: libmudflap0 >= %{version}-%{release}
144 Requires: libmudflapth0 >= %{version}-%{release}
145 %endif
146 %else
147 Requires: libgcc@base_ver@ = %{version}-%{release}
148 Requires: libgomp@base_ver@ = %{version}-%{release}
149 %endif
150 %endif
151
152 # COMMON-BEGIN
153 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
154 Source:         gcc-%{gcc_version}%{snapshot_date}.tar.bz2
155 Source1:        change_spec
156 Source2:        libgcj47-rpmlintrc
157 Source3:        gcc47-rpmlintrc
158 Source4:        ecj.jar
159 Source5:        README.First-for.SuSE.packagers
160 Source6:        baselibs.conf
161
162 # GCC-TESTSUITE-DELETE-BEGIN
163 # LIBFFI-DELETE-BEGIN
164 # LIBJAVA-DELETE-BEGIN
165 Group:          Development/Languages/C and C++
166 Summary:        The GNU C Compiler and Support Files
167 License:        GPL-3.0+
168
169 %description
170 Core package for the GNU Compiler Collection, including the C language
171 frontend.
172
173 Language frontends other than C are split to different sub-packages,
174 namely gcc-ada, gcc-c++, gcc-fortran, gcc-java, gcc-objc and
175 gcc-obj-c++.
176
177
178
179 # COMMON-END
180 %package -n gcc@base_ver@-32bit
181 Summary:      The GNU C Compiler 32bit support
182 Group:        Development/Languages/C and C++
183 Requires: gcc@base_ver@ = %{version}-%{release}
184 %if 0%{!?build_optional_compiler:1}
185 Requires: libgcc%{libgcc_s}-32bit >= %{version}-%{release}
186 Requires: libgomp1-32bit >= %{version}-%{release}
187 %if %{build_with_mudflap}
188 Requires: libmudflap0-32bit >= %{version}-%{release}
189 Requires: libmudflapth0-32bit >= %{version}-%{release}
190 %endif
191 %else
192 Requires: libgcc@base_ver@-32bit = %{version}-%{release}
193 Requires: libgomp@base_ver@-32bit = %{version}-%{release}
194 %endif
195 Requires: glibc-devel-32bit
196
197 %description -n gcc@base_ver@-32bit
198 This package contains 32bit support for the GNU Compiler Collection.
199
200 %package -n gcc@base_ver@-64bit
201 Summary:      The GNU C Compiler 64bit support
202 Group:        Development/Languages/C and C++
203 Requires: gcc@base_ver@ = %{version}-%{release}
204 %if 0%{!?build_optional_compiler:1}
205 Requires: libgcc%{libgcc_s}-64bit >= %{version}-%{release}
206 Requires: libgomp1-64bit >= %{version}-%{release}
207 %if %{build_with_mudflap}
208 Requires: libmudflap0-64bit >= %{version}-%{release}
209 Requires: libmudflapth0-64bit >= %{version}-%{release}
210 %endif
211 %else
212 Requires: libgcc@base_ver@-64bit = %{version}-%{release}
213 Requires: libgomp@base_ver@-64bit = %{version}-%{release}
214 %endif
215 Requires: glibc-devel-64bit
216
217 %description -n gcc@base_ver@-64bit
218 This package contains 64bit support for the GNU Compiler Collection.
219
220
221 %package locale
222 Summary:      Locale Data for the GNU Compiler Collection
223 License:        GPL-3.0+
224 Group:        Development/Languages/C and C++
225 Requires: gcc@base_ver@ = %{version}-%{release}
226
227 %description locale
228 Locale data for the GNU Compiler Collection (GCC) to give error message
229 in the current locale.
230
231
232 %package c++
233 Summary:      The GNU C++ Compiler
234 License:        GPL-3.0+
235 Group:        Development/Languages/C and C++
236 Requires: gcc@base_ver@ = %{version}-%{release}
237 Requires: libstdc++@base_ver@-devel = %{version}-%{release}
238
239 %description c++
240 This package contains the GNU compiler for C++.
241
242 # PACKAGE-BEGIN
243 %package -n libstdc++@base_ver@-devel@variant@
244 Summary:      Include Files and Libraries mandatory for Development
245 License:        GPL-3.0-with-GCC-exception
246 Group:        Development/Languages/C and C++
247 %if 0%{!?build_optional_compiler:1}
248 Requires: libstdc++6@variant@ >= %{version}-%{release}
249 %else
250 Requires: libstdc++@base_ver@@variant@ = %{version}-%{release}
251 %endif
252 Requires: glibc-devel@variant@
253 %ifarch ia64
254 Requires: libunwind-devel
255 %endif
256
257 %description -n libstdc++@base_ver@-devel@variant@
258 This package contains all the headers and libraries of the standard C++
259 library. It is needed for compiling C++ code.
260 # PACKAGE-END
261
262 %package -n libstdc++@base_ver@-doc
263 Summary:      Documentation for the GNU C++ standard library
264 License:        GPL-3.0+
265 Group:        Documentation/HTML
266 BuildArch:    noarch
267
268 %description -n libstdc++@base_ver@-doc
269 Extensive HTML documentation for the GNU C++ standard library.
270
271
272 # PACKAGE-BEGIN
273 %package -n libgcc@base_ver@@variant@
274 Summary:      C compiler runtime library
275 License:        GPL-3.0-with-GCC-exception
276 Group:        System/Base
277 %if 0%{!?build_optional_compiler:1}
278 Provides: libgcc%{libgcc_s}@variant@ = %{version}-%{release}
279 Conflicts: libgcc%{libgcc_s}@variant@ < %{version}-%{release}
280 %else
281 Autoprov: no
282 %endif
283
284 %description -n libgcc@base_ver@@variant@
285 Libgcc is needed for dynamically linked C programs.
286
287 %post -n libgcc@base_ver@@variant@
288 /sbin/ldconfig
289
290 %postun -n libgcc@base_ver@@variant@
291 /sbin/ldconfig
292 # PACKAGE-END
293
294 # PACKAGE-BEGIN
295 %package -n libgomp@base_ver@@variant@
296 Summary:      The GNU compiler collection OpenMP runtime library
297 License:        GPL-3.0-with-GCC-exception
298 Group:        System/Base
299 %if 0%{!?build_optional_compiler:1}
300 Provides: libgomp1@variant@ = %{version}-%{release}
301 Conflicts: libgomp1@variant@ < %{version}-%{release}
302 %else
303 Autoprov: no
304 %endif
305
306 %description -n libgomp@base_ver@@variant@
307 This is the OpenMP runtime library needed by OpenMP enabled programs
308 that were built with the -fopenmp compiler option and by programs that
309 were auto-parallelized via the -ftree-parallelize-loops compiler
310 option.
311
312
313 %post -n libgomp@base_ver@@variant@
314 /sbin/ldconfig
315
316 %postun -n libgomp@base_ver@@variant@
317 /sbin/ldconfig
318 # PACKAGE-END
319
320 # PACKAGE-BEGIN
321 %package -n libstdc++@base_ver@@variant@
322 Summary:      The standard C++ shared library
323 License:        GPL-3.0-with-GCC-exception
324 Group:        System/Libraries
325 %if 0%{!?build_optional_compiler:1}
326 Provides: libstdc++6@variant@ = %{version}-%{release}
327 Conflicts: libstdc++6@variant@ < %{version}-%{release}
328 %else
329 Autoprov: no
330 %endif
331
332 %description -n libstdc++@base_ver@@variant@
333 The standard C++ library, needed for dynamically linked C++ programs.
334
335
336 %post -n libstdc++@base_ver@@variant@
337 /sbin/ldconfig
338
339 %postun -n libstdc++@base_ver@@variant@
340 /sbin/ldconfig
341 # PACKAGE-END
342
343
344 %package info
345 Summary:      Documentation for the GNU compiler collection
346 License:      GFDL-1.2
347 Group:        Documentation/Other
348 BuildArch:    noarch
349
350 %description info
351 GNU info-pages for the GNU compiler collection covering both user-level
352 and internals documentation.
353
354
355 # PACKAGE-BEGIN
356 %package objc@variant@
357 Summary:      GNU Objective C Compiler
358 License:        GPL-3.0+
359 Group:        Development/Languages/Other
360 Requires: gcc@base_ver@ = %{version}-%{release}
361 Requires: libobjc2@variant@ >= %{version}-%{release}
362
363 %description objc@variant@
364 This package contains the GNU Objective C compiler. Objective C is an
365 object oriented language, created by Next Inc. and used in their
366 Nextstep OS. The source code is available in the gcc package.
367 # PACKAGE-END
368
369 # PACKAGE-BEGIN
370 %package -n libobjc@base_ver@@variant@
371 Summary:      Library for the GNU Objective C Compiler
372 License:        GPL-3.0-with-GCC-exception
373 Group:        Development/Libraries/Other
374 Provides: libobjc2@variant@ = %{version}-%{release}
375 Conflicts: libobjc2@variant@ < %{version}-%{release}
376
377 %description -n libobjc@base_ver@@variant@
378 The library for the GNU Objective C compiler.
379
380 %post -n libobjc@base_ver@@variant@
381 /sbin/ldconfig
382
383 %postun -n libobjc@base_ver@@variant@
384 /sbin/ldconfig
385 # PACKAGE-END
386
387 %package obj-c++
388 Summary:      GNU Objective C++ Compiler
389 License:        GPL-3.0+
390 Group:        Development/Languages/Other
391 Requires: gcc@base_ver@-objc = %{version}-%{release}
392 Requires: gcc@base_ver@-c++ = %{version}-%{release}
393
394 %description obj-c++
395 This package contains the GNU Objective C++ compiler. Objective C++ is an
396 object oriented language, created by Next Inc. and used in their
397 Nextstep OS. The source code is available in the gcc package.
398
399
400 %package -n cpp@base_ver@
401 Summary:      The GCC Preprocessor
402 License:        GPL-3.0+
403 Group:        Development/Languages/C and C++
404
405 %description -n cpp@base_ver@
406 This Package contains just the preprocessor that is used by the X11
407 packages.
408
409
410 # PACKAGE-BEGIN
411 %package ada@variant@
412 Summary:      GNU Ada95 Compiler Based on GCC (GNAT)
413 License:        GPL-3.0+
414 Group:        Development/Languages/Other
415 Requires: gcc@base_ver@@variant@ = %{version}-%{release}
416 Requires: libada@base_ver@@variant@ = %{version}-%{release}
417
418 %description ada@variant@
419 This package contains an Ada95 compiler and associated development
420 tools based on the GNU GCC technology. Ada95 is the object oriented
421 successor of the Ada83 language. To build this package from source you
422 must have installed a binary version to bootstrap the compiler.
423 # PACKAGE-END
424
425 # PACKAGE-BEGIN
426 %package -n libada@base_ver@@variant@
427 Summary:      GNU Ada Runtime Libraries
428 License:      GPL-3.0-with-GCC-exception
429 Group:        System/Libraries
430 Provides: libgnarl-4_7@variant@ = %{version}-%{release}
431 Conflicts: libgnarl-4_7@variant@ < %{version}-%{release}
432 Provides: libgnat-4_7@variant@ = %{version}-%{release}
433 Conflicts: libgnat-4_7@variant@ < %{version}-%{release}
434
435 %description -n libada@base_ver@@variant@
436 This package contains the shared libraries required to run programs
437 compiled with the GNU Ada compiler (GNAT) if they are compiled to use
438 shared libraries. It also contains the shared libraries for the
439 Implementation of the Ada Semantic Interface Specification (ASIS), the
440 implementation of Distributed Systems Programming (GLADE) and the Posix
441 1003.5 Binding (Florist).
442
443 %post -n libada@base_ver@@variant@
444 /sbin/ldconfig
445
446 %postun -n libada@base_ver@@variant@
447 /sbin/ldconfig
448 # PACKAGE-END
449
450 # PACKAGE-BEGIN
451 %package fortran@variant@
452 Summary:      The GNU Fortran Compiler and Support Files
453 License:        GPL-3.0+
454 Group:        Development/Languages/Fortran
455 Requires: gcc@base_ver@ = %{version}-%{release}
456 %if 0%{!?build_optional_compiler:1}
457 Requires: libgfortran3@variant@ >= %{version}-%{release}
458 %ifarch %quadmath_arch
459 Requires: libquadmath0@variant@ >= %{version}-%{release}
460 %endif
461 %else
462 Requires: libgfortran@base_ver@@variant@ = %{version}-%{release}
463 %ifarch %quadmath_arch
464 Requires: libquadmath@base_ver@@variant@ = %{version}-%{release}
465 %endif
466 %endif
467
468 %description fortran@variant@
469 This is the Fortran compiler of the GNU Compiler Collection (GCC).
470 # PACKAGE-END
471
472 # PACKAGE-BEGIN
473 %package -n libgfortran@base_ver@@variant@
474 Summary:      The GNU Fortran Compiler Runtime Library
475 License:        GPL-3.0-with-GCC-exception
476 Group:        Development/Languages/Fortran
477 %if 0%{!?build_optional_compiler:1}
478 Provides: libgfortran3@variant@ = %{version}-%{release}
479 Conflicts: libgfortran3@variant@ < %{version}-%{release}
480 %ifarch %quadmath_arch
481 Requires: libquadmath0@variant@ >= %{version}-%{release}
482 %endif
483 %else
484 %ifarch %quadmath_arch
485 Requires: libquadmath@base_ver@@variant@ = %{version}-%{release}
486 %endif
487 Autoprov: no
488 %endif
489
490 %description -n libgfortran@base_ver@@variant@
491 The runtime library needed to run programs compiled with the Fortran compiler
492 of the GNU Compiler Collection (GCC).
493
494 %post -n libgfortran@base_ver@@variant@
495 /sbin/ldconfig
496
497 %postun -n libgfortran@base_ver@@variant@
498 /sbin/ldconfig
499 # PACKAGE-END
500
501 # PACKAGE-BEGIN
502 %package -n libquadmath@base_ver@@variant@
503 Summary:      The GNU Fortran Compiler Quadmath Runtime Library
504 License:        LGPL-2.1
505 Group:        Development/Languages/Fortran
506 %if 0%{!?build_optional_compiler:1}
507 Provides: libquadmath0@variant@ = %{version}-%{release}
508 Conflicts: libquadmath0@variant@ < %{version}-%{release}
509 %else
510 Autoprov: no
511 %endif
512
513 %description -n libquadmath@base_ver@@variant@
514 The runtime library needed to run programs compiled with the Fortran compiler
515 of the GNU Compiler Collection (GCC) and quadruple precision floating point
516 operations.
517
518 %post -n libquadmath@base_ver@@variant@
519 /sbin/ldconfig
520
521 %postun -n libquadmath@base_ver@@variant@
522 /sbin/ldconfig
523 # PACKAGE-END
524
525 # PACKAGE-BEGIN
526 %package -n libmudflap@base_ver@@variant@
527 Summary:      The Mudflap Extension Runtime Library
528 License:        GPL-3.0-with-GCC-exception
529 Group:        Development/Languages/C and C++
530 Provides: libmudflap0@variant@ = %{version}-%{release}
531 Conflicts: libmudflap0@variant@ < %{version}-%{release}
532 Provides: libmudflapth0@variant@ = %{version}-%{release}
533 Conflicts: libmudflapth0@variant@ < %{version}-%{release}
534
535 %description -n libmudflap@base_ver@@variant@
536 This is the Mudflap Extension Runtime Library.
537
538 %post -n libmudflap@base_ver@@variant@
539 /sbin/ldconfig
540
541 %postun -n libmudflap@base_ver@@variant@
542 /sbin/ldconfig
543 # PACKAGE-END
544
545
546 %package -n libgcj@base_ver@
547 # LIBJAVA-DELETE-END
548 Summary:      Java Runtime Library for gcc
549 License:      GPL-2.0-with-classpath-exception
550 Group:        System/Libraries
551 %define gcj_sover 13
552 Provides: libgcj%{gcj_sover} = %{version}-%{release}
553 Conflicts: libgcj%{gcj_sover} < %{version}-%{release}
554 Provides: libgij%{gcj_sover} = %{version}-%{release}
555 Conflicts: libgij%{gcj_sover} < %{version}-%{release}
556 Provides: libgcj-tools%{gcj_sover} = %{version}-%{release}
557 Conflicts: libgcj-tools%{gcj_sover} < %{version}-%{release}
558
559 %description -n libgcj@base_ver@
560 This library is needed if you want to use the GNU Java compiler, gcj.
561 Source code for this package is in gcc.
562
563 %post -n libgcj@base_ver@
564 /sbin/ldconfig
565
566 %postun -n libgcj@base_ver@
567 /sbin/ldconfig
568
569
570 %package -n gcc@base_ver@-java
571 Summary:      The GNU Java Compiler
572 License:        GPL-3.0+
573 Group:        Development/Languages/Java
574 Requires: gcc@base_ver@ = %{version}
575 Requires: libgcj@base_ver@-devel = %{version}-%{release}
576
577 %description -n gcc@base_ver@-java
578 The Java compiler from the GCC-tools-suite.
579
580
581 %package -n libgcj_bc@base_ver@
582 Summary:      Fake library for BC-ABI compatibility.
583 License:        GPL-2.0-with-classpath-exception
584 Group:        Development/Libraries/Java
585 Provides: libgcj_bc1 = %{version}-%{release}
586 Conflicts: libgcj_bc1 < %{version}-%{release}
587 # libgcj_bc is special in that it just contains a symlink to
588 # a proper libgcj version.  So require that library and add
589 # provides for the shlib version as created at link time
590 Requires: libgcj%{gcj_sover}
591 %ifarch x86_64 
592 Provides: libgcj_bc.so.1()(64bit)
593 %else
594 Provides: libgcj_bc.so.1
595 %endif
596
597
598 %description -n libgcj_bc@base_ver@
599 A fake library that is used at link time only. It ensures that
600 binaries built with the BC-ABI link against a constant SONAME.
601 This way, BC-ABI binaries continue to work if the SONAME underlying
602 libgcj.so changes.
603
604
605 %package -n libgcj@base_ver@-jar
606 Summary:      Java runtime library (jar files).
607 License:        GPL-2.0-with-classpath-exception
608 Group:        Development/Libraries/Java
609
610 %description -n libgcj@base_ver@-jar
611 These are the jar files that go along with the gcj front end to gcc.
612
613
614 %package -n libgcj@base_ver@-devel
615 Summary:      Include Files and Libraries mandatory for Development.
616 License:        GPL-2.0-with-classpath-exception
617 Group:        Development/Libraries/Java
618 Requires: libstdc++@base_ver@-devel = %{version}
619 Requires: libgcj%{gcj_sover} >= %{version}-%{release}
620 Requires: libgcj_bc1 >= %{version}-%{release}
621 Requires: libgcj@base_ver@-jar = %{version}-%{release}
622 Requires: gtk2-devel
623 Requires: libart_lgpl-devel
624 Requires: glibc-devel
625 Requires: zlib-devel
626 %ifarch ia64
627 Requires: libunwind-devel
628 %endif
629
630 %description -n libgcj@base_ver@-devel
631 This package contains all necessary include files and libraries needed
632 to develop applications that require these.
633
634
635 %package -n gcc@base_ver@-gij
636 Summary:      Java Bytecode Interpreter for gcc
637 License:      GPL-2.0-with-classpath-exception
638 Group:        Development/Libraries/Java
639 Requires: libgcj%{gcj_sover} >= %{version}-%{release}
640
641 %description -n gcc@base_ver@-gij
642 This package contains the java bytecode interpreter gij and related tools.
643
644 # LIBFFI-DELETE-END
645 # PACKAGE-BEGIN
646 %package -n libffi@base_ver@@variant@
647 Summary:      Foreign Function Interface library
648 License:        BSD-3-Clause
649 Group:        Development/Languages/C and C++
650 Provides: g-wrap:/usr/lib/libffi.so.4
651 Provides: libffi4@variant@ = %{version}-%{release}
652 Conflicts: libffi4@variant@ < %{version}-%{release}
653
654 %description -n libffi@base_ver@@variant@
655 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
656
657 %post -n libffi@base_ver@@variant@
658 /sbin/ldconfig
659
660 %postun -n libffi@base_ver@@variant@
661 /sbin/ldconfig
662 # PACKAGE-END
663
664 # PACKAGE-BEGIN
665 %package -n libffi@base_ver@-devel@variant@
666 Summary:      Foreign Function Interface library development files
667 License:        BSD 3-Clause
668 Group:        Development/Languages/C and C++
669 Requires: libffi4@variant@ >= %{version}-%{release}
670 Provides: libffi-devel@variant@ = %{version}-%{release}
671 Conflicts: libffi-devel@variant@ < %{version}-%{release}
672
673 %description -n libffi@base_ver@-devel@variant@
674 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
675 # PACKAGE-END
676
677 %package -n gcc@base_ver@-testresults
678 # GCC-TESTSUITE-DELETE-END
679 Summary:      Testsuite results
680 License:        SUSE-Public-Domain
681 Group:        Development/Languages/C and C++
682
683 %description -n gcc@base_ver@-testresults
684 Results from running the gcc and target library testsuites.
685
686
687 # COMMON-BEGIN
688
689 # Define the canonical target and host architecture
690 #   %gcc_target_arch  is supposed to be the full target triple
691 #   %TARGET_ARCH      is the canonicalized CPU part
692 #   %CONFIGURE_TARGET is the target triple used for --target=
693 %if 0%{?gcc_target_arch:1}
694 %define CONFIGURE_TARGET %{gcc_target_arch}
695 %define TARGET_ARCH %(echo %{gcc_target_arch} | cut -d - -f 1 | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
696 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
697 %define CONFIGURE_TARGET i586-tizen-linux
698 %endif
699 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7l"
700 %define CONFIGURE_TARGET armv7l-tizen-linux-gnueabi
701 %endif
702 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7hl"
703 %define CONFIGURE_TARGET armv7hl-tizen-linux-gnueabi
704 %endif
705 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7el"
706 %define CONFIGURE_TARGET armv7el-tizen-linux-gnueabi
707 %endif
708 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5el"
709 %define CONFIGURE_TARGET armv5el-tizen-linux-gnueabi
710 %endif
711 %else
712 %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
713 %endif
714 %define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
715
716 %define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
717
718 %ifarch %arm
719 %define GCCDIST %{HOST_ARCH}-tizen-linux-gnueabi
720 %else
721 %define GCCDIST %{HOST_ARCH}-tizen-linux
722 %endif
723
724 %define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
725 %define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
726
727 # COMMON-END
728
729 # Versionspecific directories
730 %define versmainlibdir %{libsubdir}
731 %define versmainlibdirbi32 %{libsubdir}/32
732 %define versmainlibdirbi64 %{libsubdir}/64
733 %if %{build_primary_64bit}
734 %define versmainlibdirbi %{versmainlibdirbi32}
735 %else
736 %define versmainlibdirbi %{versmainlibdirbi64}
737 %endif
738
739 %if 0%{?build_optional_compiler:1}
740 %define mainlibdir %{versmainlibdir}
741 %define mainlibdirbi32 %{versmainlibdirbi32}
742 %define mainlibdirbi64 %{versmainlibdirbi64}
743 %define noflibdir %{versnoflibdir}
744 %define mainlibdirbi %{versmainlibdirbi}
745 %else
746 %define mainlibdir %{_libdir}
747 %define mainlibdirbi32 %{_prefix}/lib
748 %define mainlibdirbi64 %{_prefix}/lib64
749 %define noflibdir %{_prefix}/lib/nof
750 %if %{build_primary_64bit}
751 %define mainlibdirbi %{mainlibdirbi32}
752 %else
753 %define mainlibdirbi %{mainlibdirbi64}
754 %endif
755 %endif
756
757
758 # Now define a few macros that make it easy to package libs and
759 # related files just to the right package, without caring for the
760 # exact path the files are in.
761 #   %mainlib  package X from all dirs that belong to the main package
762 #   %biarchlib   package X from all dirs that belong to the -32/64bit package
763 # by default, nof libs go where the 32bit libs go.
764 %if %{build_nof}
765 %define mainlib() %{mainlibdir}/%1\
766 %{noflibdir}/%1\
767 %{nil}
768 %else
769 %define mainlib() %{mainlibdir}/%1\
770 %{nil}
771 %endif
772 %define biarchlib() %{nil}
773 %if %{biarch}
774 %if !%{separate_biarch}
775 %if %{build_nof}
776 %define mainlib() %{mainlibdir}/%1\
777 %{mainlibdirbi}/%1\
778 %{noflibdir}/%1\
779 %{nil}
780 %else
781 %define mainlib() %{mainlibdir}/%1\
782 %{mainlibdirbi}/%1\
783 %{nil}
784 %endif
785 %else
786 %if %{build_nof}
787 %define biarchlib() %{mainlibdirbi}/%1\
788 %{noflibdir}/%1\
789 %{nil}
790 %define mainlib() %{mainlibdir}/%1\
791 %{nil}
792 %else
793 %define biarchlib() %{mainlibdirbi}/%1\
794 %{nil}
795 %endif
796 %endif
797 %endif
798
799 %if %{build_nof}
800 %define versmainlib() %{versmainlibdir}/%1\
801 %{versnoflibdir}/%1\
802 %{nil}
803 %else
804 %define versmainlib() %{versmainlibdir}/%1\
805 %{nil}
806 %endif
807 %define versbiarchlib() %{nil}
808 %if %{biarch}
809 %if !%{separate_biarch}
810 %if %{build_nof}
811 %define versmainlib() %{versmainlibdir}/%1\
812 %{versmainlibdirbi}/%1\
813 %{versnoflibdir}/%1\
814 %{nil}
815 %else
816 %define versmainlib() %{versmainlibdir}/%1\
817 %{versmainlibdirbi}/%1\
818 %{nil}
819 %endif
820 %else
821 %if %{build_nof}
822 %define versbiarchlib() %{versmainlibdirbi}/%1\
823 %{versnoflibdir}/%1\
824 %{nil}
825 %define versmainlib() %{versmainlibdir}/%1\
826 %{nil}
827 %else
828 %define versbiarchlib() %{versmainlibdirbi}/%1\
829 %{nil}
830 %endif
831 %endif
832 %endif
833
834
835 # COMMON-BEGIN
836
837 %prep
838 %setup -q -n gcc-%{gcc_version}%{snapshot_date}
839
840 %build
841 # Avoid rebuilding of generated files
842 contrib/gcc_update --touch
843 # Avoid fucking up testsuite results with Java and indirect dispatch
844 export LD_AS_NEEDED=0
845 # Split version file into version used for directories (X.Y) and
846 # version to report with --version (X.Y.Z).
847 # See also gcc-dir-version.patch.
848 # Also decrement the patchlevel version by one
849 if test `cat gcc/DEV-PHASE` == "prerelease"; then
850   ( cat gcc/BASE-VER | cut -d '.' -f 1-2 | tr -d '\n'; echo -n .; cat gcc/BASE-VER | cut -d '.' -f 3 | tr '0123456789' '0012345678' ) > gcc/FULL-VER
851 else
852   mv gcc/BASE-VER gcc/FULL-VER
853 fi
854 cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
855
856 rm -rf obj-%{GCCDIST}
857 mkdir obj-%{GCCDIST}
858 cd obj-%{GCCDIST}
859 RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
860 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
861 %ifarch %ix86
862 # -mcpu is superceded by -mtune but -mtune is not supported by
863 # our bootstrap compiler.  -mcpu gives a warning that stops
864 # the build process, so remove it for now.  Also remove all other
865 # -march and -mtune flags.  They are superseeded by proper
866 # default compiler settings now.
867 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
868 %endif
869 %if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
870 # Kill all -march/tune/cpu because that screws building the target libs
871 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
872 %endif
873 # Replace 2 spaces by one finally
874 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/  / /g'`
875
876 languages=c
877 %if %{build_cp}
878 languages=$languages,c++
879 %endif
880 %if %{build_objc}
881 languages=$languages,objc
882 %endif
883 %if %{build_fortran}
884 languages=$languages,fortran
885 %endif
886 %if %{build_objcp}
887 languages=$languages,obj-c++
888 %endif
889 %if %{build_java}
890 languages=$languages,java
891 %endif
892 %if %{build_ada}
893 languages=$languages,ada
894 %endif
895
896 J=%{?jobs:%jobs}
897 if test -z "$J"; then
898   J=$(getconf _NPROCESSORS_CONF)
899   JL=$(($J * 2))
900 else
901   test 1 -gt "$J" && J=1
902   JL=$(($(getconf _NPROCESSORS_CONF)*2))
903 fi
904 if test "$J" == "0"; then
905   J=1
906 fi
907 if test "$JL" == "0"; then
908   JL=1
909 fi
910 PARALLEL="-j$J -l$JL"
911
912 # we don't want some miscompiles in the testsuite, or some fault in
913 # the compiler to kill the machine.  Hence we limit the amount of memory
914 # by the physical RAM plus half of swap
915 #MEM=$(free -m | awk '/^Mem:/ {print $2}')
916 #SWAP=$(free -m | awk '/^Swap:/ {print $2}')
917 #ulimit -v $(((MEM + SWAP/2)*1024))
918
919 # In general we want to ship release checking enabled compilers
920 # and run BETA with checking enabled.
921 #ENABLE_CHECKING="--enable-checking=yes"
922 ENABLE_CHECKING="--enable-checking=release"
923
924 # Work around tail/head -1 changes
925 export _POSIX2_VERSION=199209
926
927 # configure tries to parse include/features.h to detect
928 # if glibc supports SSP.  When cross compiling we would need
929 # to install a cross glibc, which we don't, or make the whole
930 # thing point to the native glibc, which is in /, hence the
931 # --with-sysroot=/
932
933 %if %{build_ada}
934 # Using the host gnatmake like
935 #   CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
936 #   GNATMAKE="gnatmake%{hostsuffix}"
937 # doesn't work due to PR33857, so an un-suffixed gnatmake has to be
938 # available
939 mkdir -p host-tools/bin
940 cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
941 cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
942 cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
943 cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
944 ln -sf /usr/%{_lib} host-tools/%{_lib}
945 export PATH="`pwd`/host-tools/bin:$PATH"
946 %endif
947 #%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
948 #%else
949 #       --enable-threads=posix \
950 #%endif
951 #       --enable-shared \
952 CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
953 TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \
954 ../configure \
955         --prefix=%{_prefix} \
956         --infodir=%{_infodir} \
957         --mandir=%{_mandir} \
958         --libdir=%{_libdir} \
959         --libexecdir=%{_libdir} \
960         --enable-languages=$languages \
961         $ENABLE_CHECKING \
962         --with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
963         --enable-ssp \
964         --disable-libssp \
965         --disable-libitm \
966 %if 0%{?fast_build}
967         --disable-bootstrap \
968 %endif
969         --disable-plugin \
970         --with-bugurl="http://bugs.tizen.org/" \
971         --with-pkgversion="Tizen Linux" \
972 %if !%{build_libjava}
973         --disable-libgcj \
974 %else
975         --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
976         --with-ecj-jar=%{libsubdir}/ecj.jar \
977         --disable-java-awt \
978 %if !%{biarch_libjava}
979         --disable-libjava-multilib \
980 %endif
981 %endif
982 %if !%{build_with_mudflap}
983         --disable-libmudflap \
984 %endif
985         --with-slibdir=/%{_lib} \
986         --with-system-zlib \
987         --enable-__cxa_atexit \
988         --enable-libstdcxx-allocator=new \
989         --disable-libstdcxx-pch \
990         --enable-version-specific-runtime-libs \
991         --enable-linker-build-id \
992 %if 0%{?gcc_target_arch:1}
993 %if 0%{?gcc_icecream:1}
994         --with-build-sysroot=/ \
995         --with-sysroot=%{_prefix}/%{gcc_target_arch}%{?canonical_target_abi:%canonical_target_abi} \
996         --with-gxx-include-dir=%{_prefix}/%{gcc_target_arch}%{?canonical_target_abi:%canonical_target_abi}/usr/include/c++/%{gcc_dir_version} \
997         --enable-linux-futex \
998 %endif
999 %if 0%{?canonical_target:1}
1000         --with-build-time-tools=/usr/%{canonical_target}-tizen-linux%{?canonical_target_abi:%canonical_target_abi}/bin \
1001 %endif
1002 %if 0%{?build_static:1}
1003         --disable-shared \
1004 %endif
1005 %if "%{TARGET_ARCH}" == "spu"
1006         --with-sysroot=/usr/spu \
1007         --with-gxx-include-dir=%{_prefix}/spu/include/c++/%{gcc_dir_version} \
1008         --with-newlib \
1009 %endif
1010         --disable-nls \
1011         --target=%{CONFIGURE_TARGET} \
1012 %else
1013         --program-suffix=%{binsuffix} \
1014         --enable-linux-futex \
1015 %ifarch ia64
1016         --with-system-libunwind \
1017 %else
1018         --without-system-libunwind \
1019 %endif
1020 %endif
1021 %if "%{TARGET_ARCH}" == "armv5tel"
1022         --with-arch=armv5te \
1023         --with-float=soft \
1024         --with-mode=arm \
1025         --with-abi=aapcs-linux \
1026         --disable-sjlj-exceptions \
1027 %endif
1028 %if "%{TARGET_ARCH}" == "armv7el" 
1029         --with-arch=armv7-a \
1030         --with-tune=cortex-a9 \
1031         --with-float=soft \
1032         --with-abi=softfp \
1033         --with-fpu=vfpv3 \
1034         --disable-sjlj-exceptions \
1035 %endif
1036 %if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl"
1037         --with-arch=armv7-a \
1038         --with-tune=cortex-a9 \
1039         --with-float=hard \
1040         --with-abi=aapcs-linux \
1041         --with-fpu=vfpv3-d16 \
1042         --disable-sjlj-exceptions \
1043 %endif
1044 %if "%{TARGET_ARCH}" == "i586"
1045         --with-arch-32=i586 \
1046         --with-tune=generic \
1047 %endif
1048 %if "%{TARGET_ARCH}" == "x86_64"
1049         --with-arch-32=i586 \
1050         --with-tune=generic \
1051 %endif
1052         --build=%{GCCDIST}
1053
1054 # COMMON-END
1055
1056 %if 0%{?building_libffi:1}
1057 make stage1-bubble $PARALLEL
1058 make all-target-libffi $PARALLEL
1059 %else
1060 # Only run profiled bootstrap on archs where it works
1061 #%ifarch %ix86 x86_64 ppc ppc64 ia64
1062 #make profiledbootstrap-lean STAGE1_CFLAGS="-O -g" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
1063 #%else
1064 %ifarch %arm
1065 STAGE1_FLAGS="-O0"
1066 %else
1067 STAGE1_FLAGS="-O -g"
1068 %endif
1069 #make bootstrap-lean STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
1070 make STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
1071 #%endif
1072 #make -C gcc proto
1073 make info
1074 %if 0%{?run_tests:1}
1075 echo "Run testsuite"
1076 (make -C %{GCCDIST}/libstdc++-v3 check-abi || true)
1077 mv %{GCCDIST}/libstdc++-v3/testsuite/libstdc++.log %{GCCDIST}/libstdc++-v3/testsuite/libstdc++-abi.log
1078 mv %{GCCDIST}/libstdc++-v3/testsuite/libstdc++.sum %{GCCDIST}/libstdc++-v3/testsuite/libstdc++-abi.sum
1079 make -k check $PARALLEL || true
1080 mkdir ../testresults
1081 ../contrib/test_summary | tee ../testresults/test_summary.txt
1082 %endif
1083 %endif
1084
1085 %install
1086 export NO_BRP_CHECK_BYTECODE_VERSION=true
1087 cd obj-%{GCCDIST}
1088 # GCC-TESTSUITE-DELETE-BEGIN
1089 # Work around tail/head -1 changes
1090 export _POSIX2_VERSION=199209
1091 export LIBRARY_PATH=$RPM_BUILD_ROOT%{libsubdir}:$RPM_BUILD_ROOT%{mainlibdirbi}
1092 %if 0%{?building_libffi:1}
1093 make -C %{GCCDIST}/libffi install DESTDIR=$RPM_BUILD_ROOT
1094 %else
1095 %if 0%{?building_libjava:1}
1096 make -C %{GCCDIST}/libjava install DESTDIR=$RPM_BUILD_ROOT
1097 make -C gcc java.install-man DESTDIR=$RPM_BUILD_ROOT
1098 make -C gcc java.install-common DESTDIR=$RPM_BUILD_ROOT
1099 make -C gcc install-common DESTDIR=$RPM_BUILD_ROOT COMPILERS='jc1$(exeext) jvgenmain$(exeext)'
1100 # install-common also installs collect2, gcov and the g++ and gfortran driver
1101 %if %{build_cp}
1102 rm $RPM_BUILD_ROOT%{_prefix}/bin/g++%{binsuffix}
1103 %endif
1104 %if %{build_fortran}
1105 rm $RPM_BUILD_ROOT%{_prefix}/bin/gfortran%{binsuffix}
1106 %endif
1107 rm $RPM_BUILD_ROOT%{_prefix}/bin/gcov%{binsuffix}
1108 rm $RPM_BUILD_ROOT%{libsubdir}/collect2
1109 %else
1110 make install DESTDIR=$RPM_BUILD_ROOT
1111 %if %{build_java}
1112 make -C gcc java.uninstall DESTDIR=$RPM_BUILD_ROOT
1113 make -C gcc java.install-info DESTDIR=$RPM_BUILD_ROOT
1114 rm $RPM_BUILD_ROOT%{_prefix}/bin/jcf-dump%{binsuffix}
1115 rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1
1116 rm $RPM_BUILD_ROOT%{libsubdir}/jc1
1117 rm $RPM_BUILD_ROOT%{libsubdir}/jvgenmain
1118 %endif
1119 %endif
1120 %endif
1121
1122 # Remove libffi installed files if we did not want to build it
1123 %if !0%{?building_libffi:1}
1124 rm -f $RPM_BUILD_ROOT%{mainlibdir}/libffi.*
1125 %if %{biarch}
1126   rm -f $RPM_BUILD_ROOT%{mainlibdirbi}/libffi.*
1127 %endif
1128 rm -f $RPM_BUILD_ROOT%{libsubdir}/include/ffi.h
1129 rm -f $RPM_BUILD_ROOT%{libsubdir}/include/ffitarget.h
1130 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi%{binsuffix}.3*
1131 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_call%{binsuffix}.3*
1132 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_prep_cif%{binsuffix}.3*
1133 %endif
1134
1135 # Remove some useless .la files
1136 for lib in libobjc libgfortran libgfortranbegin libquadmath libcaf_single \
1137     libmudflap libmudflapth libgomp libstdc++ libsupc++ libgcj-tools libgij; do
1138   rm -f $RPM_BUILD_ROOT%{versmainlibdir}/$lib.la
1139 %if %{biarch}
1140   rm -f $RPM_BUILD_ROOT%{versmainlibdirbi}/$lib.la
1141 %endif
1142 done
1143
1144 mkdir -p $RPM_BUILD_ROOT%{_libdir}
1145 %if %{biarch}
1146 %if %{build_primary_64bit}
1147 mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
1148 %else
1149 mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib64
1150 %endif
1151 %endif
1152
1153 # LIBFFI-DELETE-BEGIN
1154 # LIBJAVA-DELETE-BEGIN
1155 %if %{build_cp}
1156 # Merge multilib c++config.h to allow omitting the duplicate and
1157 # identical other arch specific headers
1158 dir_ml=
1159 cxxconfig="`find %{GCCDIST}/libstdc++-v3/include -name c++config.h`"
1160 for i in `find %{GCCDIST}/[36]*/libstdc++-v3/include -name c++config.h 2>/dev/null`; do
1161   if ! diff -up $cxxconfig $i; then
1162     file_32=x
1163     file_64=x
1164     case $i in
1165       %{GCCDIST}/32/*)
1166         file_32=$i
1167         file_64=$cxxconfig
1168         dir_ml=32
1169         ;;
1170       %{GCCDIST}/64/*)
1171         file_32=$cxxconfig
1172         file_64=$i
1173         dir_ml=64
1174         ;;
1175     esac
1176     if ! ( test -f "$file_32" && test -f "$file_64" ); then
1177       echo "Urgs?"
1178       exit 1
1179     fi
1180     
1181     cat > $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/bits/c++config.h <<EOF
1182 #ifndef _CPP_CPPCONFIG_WRAPPER
1183 #define _CPP_CPPCONFIG_WRAPPER 1
1184 #include <bits/wordsize.h>
1185 #if __WORDSIZE == 32
1186 `cat $file_32`
1187 #else
1188 `cat $file_64`
1189 #endif
1190 #endif
1191 EOF
1192     break
1193   fi
1194 done
1195 rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/[36]*
1196 if ! test -z "$dir_ml"; then
1197   ln -s . $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/$dir_ml
1198 fi
1199 %endif
1200 # LIBJAVA-DELETE-END
1201
1202 %if 0%{!?build_optional_compiler:1}
1203 # move shared libs from versionspecific dir to main libdir
1204 for libname in \
1205 %if 0%{?building_libjava:1}
1206   libgcj libgij libgcj-tools \
1207 %else
1208 %if %{build_fortran}
1209   libgfortran \
1210 %ifarch %quadmath_arch
1211   libquadmath \
1212 %endif
1213 %endif
1214 %if %{build_objc}
1215   libobjc \
1216 %endif
1217 %if %{build_cp}
1218   libstdc++ \
1219 %endif
1220   libgomp \
1221 %if %{build_with_mudflap}
1222   libmudflap libmudflapth \
1223 %endif
1224 %endif
1225     ; do
1226   for lib in `find $RPM_BUILD_ROOT%{versmainlibdir} -maxdepth 1 -name $libname.so.*`; do
1227     mv $lib $RPM_BUILD_ROOT%{mainlibdir}/
1228   done
1229   ln -sf %{mainlibdir}/`readlink $RPM_BUILD_ROOT%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
1230          $RPM_BUILD_ROOT%{versmainlibdir}/$libname.so
1231 %if %{biarch}
1232   if test -d $RPM_BUILD_ROOT%{versmainlibdirbi}; then
1233     for lib in `find $RPM_BUILD_ROOT%{versmainlibdirbi} -maxdepth 1 -name "$libname.so.*"`; do
1234       mv $lib $RPM_BUILD_ROOT%{mainlibdirbi}/
1235     done
1236     ln -sf %{mainlibdirbi}/`readlink $RPM_BUILD_ROOT%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
1237          $RPM_BUILD_ROOT%{versmainlibdirbi}/$libname.so
1238   fi
1239 %endif
1240 done
1241 %if %{build_cp}
1242 %if !0%{?building_libjava:1}
1243 # And we want to move the shlib gdb pretty printers to a more sane
1244 # place so ldconfig does not complain
1245 mkdir -p $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}
1246 mv $RPM_BUILD_ROOT%{mainlibdir}/libstdc++.so.*-gdb.py $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}/
1247 sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}/libstdc++.so.*-gdb.py
1248 %if %{biarch}
1249   if test -d $RPM_BUILD_ROOT%{versmainlibdirbi}; then
1250     mkdir -p $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}
1251     mv $RPM_BUILD_ROOT%{mainlibdirbi}/libstdc++.so.*-gdb.py $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}/
1252     sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}/libstdc++.so.*-gdb.py
1253   fi
1254 %endif
1255 %endif
1256 %endif
1257 %if 0%{?building_libjava:1}
1258 # libgcj_bc is special as the .so file is actually a different
1259 # library as the library refered to by the SONAME which should
1260 # be a simple link to our libgcj.
1261 for lib in `find $RPM_BUILD_ROOT%{versmainlibdir} -maxdepth 1 -name libgcj_bc.so.*`; do
1262   rm $lib
1263 done
1264 ln -s libgcj.so.%{gcj_sover} $RPM_BUILD_ROOT%{mainlibdir}/libgcj_bc.so.1
1265 %if %{biarch_libjava}
1266 for lib in `find $RPM_BUILD_ROOT%{versmainlibdirbi} -maxdepth 1 -name libgcj_bc.so.*`; do
1267   rm $lib
1268 done
1269 ln -s libgcj.so.%{gcj_sover} $RPM_BUILD_ROOT%{mainlibdirbi}/libgcj_bc.so.1
1270 %endif
1271 %endif
1272 %endif
1273
1274 # LIBJAVA-DELETE-BEGIN
1275 %if 0%{!?build_optional_compiler:1}
1276 # Move libgcc_s around
1277 if test -L $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so; then
1278   rm -f $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so
1279   ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdir}/libgcc_s.so
1280 else
1281   mv $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdir}/
1282 fi
1283 chmod a+x $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so.%{libgcc_s}
1284 %if %{biarch}
1285 %if %{build_primary_64bit}
1286 if test -L $RPM_BUILD_ROOT/lib/libgcc_s.so; then
1287   rm -f $RPM_BUILD_ROOT/lib/libgcc_s.so
1288   ln -sf /lib/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s.so
1289 else
1290   mv $RPM_BUILD_ROOT/lib/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/
1291 fi
1292 ln -sf %{versmainlibdirbi32}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s_32.so
1293 chmod a+x $RPM_BUILD_ROOT/lib/libgcc_s.so.%{libgcc_s}
1294 %else
1295 # 32-bit biarch systems
1296 if test -L $RPM_BUILD_ROOT/lib64/libgcc_s.so; then
1297   rm -f $RPM_BUILD_ROOT/lib64/libgcc_s.so
1298   ln -sf /lib64/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s.so
1299 else
1300   mv $RPM_BUILD_ROOT/lib64/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/
1301 fi
1302 ln -sf %{versmainlibdirbi64}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s_64.so
1303 chmod a+x $RPM_BUILD_ROOT/lib64/libgcc_s.so.%{libgcc_s}
1304 %endif
1305 %endif
1306 %else
1307 # Move libgcc_s around
1308 mv $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdir}/
1309 if test -L $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so; then
1310   rm -f $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so
1311   ln -sf %{versmainlibdir}/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdir}/libgcc_s.so
1312 else
1313   mv $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdir}/
1314 fi
1315 chmod a+x $RPM_BUILD_ROOT%{versmainlibdir}/libgcc_s.so.%{libgcc_s}
1316 %if %{biarch}
1317 %if %{build_primary_64bit}
1318 mv $RPM_BUILD_ROOT/lib/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi32}/
1319 if test -L $RPM_BUILD_ROOT/lib/libgcc_s.so; then
1320   rm -f $RPM_BUILD_ROOT/lib/libgcc_s.so
1321   ln -sf %{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s.so
1322 else
1323   mv $RPM_BUILD_ROOT/lib/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/
1324 fi
1325 ln -sf %{versmainlibdirbi32}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s_32.so
1326 chmod a+x $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s}
1327 %else
1328 # 32-bit biarch systems
1329 mv $RPM_BUILD_ROOT/lib64/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi64}/
1330 if test -L $RPM_BUILD_ROOT/lib64/libgcc_s.so; then
1331   rm -f $RPM_BUILD_ROOT/lib64/libgcc_s.so
1332   ln -sf %{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s.so
1333 else
1334   mv $RPM_BUILD_ROOT/lib64/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/
1335 fi
1336 ln -sf %{versmainlibdirbi64}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s_64.so
1337 chmod a+x $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s}
1338 %endif
1339 %endif
1340 %endif
1341
1342 # Provide a defaults.spec file which adds a proper rpath
1343 %if 0%{?build_optional_compiler:1}
1344 cat > $RPM_BUILD_ROOT%{libsubdir}/defaults.spec << EOF
1345 *link:
1346 + %%{!m32:%%{!m64:-rpath=%{libsubdir}}} %%{m32:-rpath=%{libsubdir}/32} %%{m64:-rpath=%{libsubdir}/64}
1347 EOF
1348 %endif
1349 # LIBJAVA-DELETE-END
1350 # LIBFFI-DELETE-END
1351
1352 %if %{build_ada}
1353 mv $RPM_BUILD_ROOT%{libsubdir}/adalib/lib*-*.so $RPM_BUILD_ROOT%{_libdir}
1354 ln -sf %{_libdir}/libgnarl%{binsuffix}.so $RPM_BUILD_ROOT%{libsubdir}/adalib/libgnarl.so
1355 ln -sf %{_libdir}/libgnat%{binsuffix}.so $RPM_BUILD_ROOT%{libsubdir}/adalib/libgnat.so
1356 chmod a+x $RPM_BUILD_ROOT%{_libdir}/libgna*-*.so
1357 %if %{biarch}
1358 mv $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/lib*-*.so $RPM_BUILD_ROOT%{mainlibdirbi}/
1359 ln -sf %{mainlibdirbi}/libgnarl%{binsuffix}.so $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/libgnarl.so
1360 ln -sf %{mainlibdirbi}/libgnat%{binsuffix}.so $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/libgnarl.so
1361 chmod a+x $RPM_BUILD_ROOT%{mainlibdirbi}/libgna*-*.so
1362 %endif
1363 %endif
1364
1365 rm -f $RPM_BUILD_ROOT%{_prefix}/bin/c++%{binsuffix}
1366
1367 # Remove some crap from the .la files:
1368 for l in `find $RPM_BUILD_ROOT -name '*.la'`; do
1369   echo "changing $l"
1370 # -e '/^dependency_libs/s|%{libsubdir}/\([^.]*\)\.la |%{_libdir}/\1\.la |g'
1371   sed -e '/^dependency_libs/s| -L%{_builddir}/[^ ]*||g' \
1372       -e '/^dependency_libs/s| -L/usr/%{GCCDIST}/bin||g' \
1373       -e '/^dependency_libs/s|-lm \(-lm \)*|-lm |' \
1374       -e '/^dependency_libs/s|-L[^ ]* ||g' \
1375 %if %{biarch}
1376 %if %{build_primary_64bit}
1377       -e '/^libdir/s|%{_libdir}/32|%{_prefix}/lib|' \
1378       -e '/^libdir/s|lib64/\.\./||' \
1379 %else
1380       -e '/^libdir/s|%{_libdir}/64|%{_prefix}/lib64|' \
1381 %endif
1382 %endif
1383       < $l  > $l.new
1384   mv $l.new $l
1385 done
1386
1387 # GCC-TESTSUITE-DELETE-END
1388 %if 0%{?run_tests:1} 
1389 cp `find . -name "*.sum"` ../testresults/
1390 cp `find . -name "*.log"  \! -name "config.log" | grep -v 'acats.\?/tests' ` ../testresults/
1391 chmod 644 ../testresults/*
1392 %endif
1393 # GCC-TESTSUITE-DELETE-BEGIN
1394 # LIBFFI-DELETE-BEGIN
1395 %if %{build_cp}
1396 # Find C++ and Java headers
1397 find $RPM_BUILD_ROOT%{_prefix}/include/c++ \
1398   -regex ".*/\(org\|gcj\|gnu\|java\|javax\)" -prune \
1399   -o \( -type d -printf "%%%%dir " , \
1400         -printf "%{_prefix}/include/c++/%%P\n" \) > ../c++-headers
1401 %endif
1402 # LIBFFI-DELETE-END
1403 # Remove files that we do not need to clean up filelist
1404 rm -f $RPM_BUILD_ROOT%{_prefix}/bin/%{GCCDIST}-*
1405 rm -rf $RPM_BUILD_ROOT%{libsubdir}/install-tools
1406 #rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libgcj%{binsuffix}.pc
1407 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/root
1408 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/curses.h
1409 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/asm-*
1410 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/linux
1411 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/sound
1412 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/features.h
1413 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/ncurses.h
1414 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/stdio.h
1415 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/zutil.h
1416 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/X11
1417 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/bits
1418 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/obstack.h
1419 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/spe.h
1420 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/tgmath.h
1421 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/bits
1422 rm -rf $RPM_BUILD_ROOT%{libsubdir}/include-fixed/sys
1423 # no plugins
1424 rm -rf $RPM_BUILD_ROOT%{libsubdir}/plugin
1425 rm -f  $RPM_BUILD_ROOT%{_infodir}/dir
1426 rm -f  $RPM_BUILD_ROOT%{_prefix}/bin/gccbug%{binsuffix}
1427
1428 %if !0%{?building_libjava:1}%{?building_libffi:1}
1429 # delete compile flag tracking from crt files
1430 crt_list=$RPM_BUILD_ROOT%{versmainlibdir}/crt*.o
1431 %if %{biarch}
1432 %if %{build_primary_64bit}
1433 crt32_list=$RPM_BUILD_ROOT%{versmainlibdirbi32}/crt*.o
1434 %else
1435 crt64_list=$RPM_BUILD_ROOT%{versmainlibdirbi64}/crt*.o
1436 %endif
1437 %endif
1438 for o in $crt_list $crt32_list $crt64_list; do
1439   objcopy -R ".comment.SUSE.OPTs" $o
1440 done
1441 %endif
1442
1443 %if 0%{?building_libjava:1}
1444 # gcj -static doesn't work properly anyway, unless using --whole-archive
1445 # let's save the space instead.
1446 find $RPM_BUILD_ROOT -name libgcj.a \
1447         -o -name libgcj-tools.a \
1448         -o -name libgij.a \
1449         -o -name libjvm.a \
1450         -o -name libgcj_bc.a \
1451   | xargs rm -f
1452
1453 find $RPM_BUILD_ROOT -name libgcj.spec | xargs \
1454   sed -i -e 's/lib: /&%%{static:%%eJava programs cannot be linked statically}/'
1455
1456 # security files have broken install locations, also they cause conflicts
1457 # between libgcj versions.  Simply delete them here, libgcj will use its
1458 # defaults in this case (which is what these files contain anyway).
1459 rm $RPM_BUILD_ROOT%{_libdir}/logging.properties
1460 rm -r $RPM_BUILD_ROOT%{_libdir}/security
1461 %endif
1462
1463 %if 0%{?building_libffi:1}
1464 # Move libffi headers, remove empty libffi libtool file
1465 mkdir -p $RPM_BUILD_ROOT%{_prefix}/include
1466 mv $RPM_BUILD_ROOT%{libsubdir}/include/ffitarget.h $RPM_BUILD_ROOT%{_prefix}/include/
1467 mv $RPM_BUILD_ROOT%{libsubdir}/include/ffi.h $RPM_BUILD_ROOT%{_prefix}/include/
1468 rm -f $RPM_BUILD_ROOT%{mainlibdir}/libffi.la
1469 %if %{biarch}
1470 rm -f $RPM_BUILD_ROOT%{mainlibdirbi}/libffi.la
1471 %endif
1472 # Generate a simple pkg-config file
1473 mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig
1474 echo -e 'Name: libffi\nVersion: 3.0.9\nDescription: libffi\nLibs: -lffi' > $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libffi.pc
1475 %endif
1476
1477 %if %{build_java}
1478 %if !%{build_libjava}
1479 rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1
1480 rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj-dbtool%{binsuffix}.1
1481 rm $RPM_BUILD_ROOT%{_mandir}/man1/gij%{binsuffix}.1
1482 rm $RPM_BUILD_ROOT%{_mandir}/man1/grmic%{binsuffix}.1
1483 rm $RPM_BUILD_ROOT%{_mandir}/man1/gc-analyze%{binsuffix}.1
1484 rm $RPM_BUILD_ROOT%{_mandir}/man1/aot-compile%{binsuffix}.1
1485 rm $RPM_BUILD_ROOT%{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1
1486 %endif
1487 rm -f $RPM_BUILD_ROOT%{_datadir}/gcc%{binsuffix}/python/libjava/aotcompile.py
1488 rm -f $RPM_BUILD_ROOT%{_datadir}/gcc%{binsuffix}/python/libjava/classfile.py
1489 %endif
1490 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
1491 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
1492 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
1493 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
1494 %if %{build_nof}
1495 rm -f $RPM_BUILD_ROOT%{_prefix}/lib/nof/libiberty.a
1496 %endif
1497 %if %{biarch}
1498 %if %{build_primary_64bit}
1499 rm -f $RPM_BUILD_ROOT%{_prefix}/lib/libiberty.a
1500 %else
1501 rm -f $RPM_BUILD_ROOT%{_prefix}/lib64/libiberty.a
1502 %endif
1503 %endif
1504 rm -f $RPM_BUILD_ROOT%{libsubdir}/liblto_plugin.a
1505 rm -f $RPM_BUILD_ROOT%{libsubdir}/liblto_plugin.la
1506
1507 # LIBFFI-DELETE-BEGIN
1508 %if 0%{?building_libjava:1}
1509 # For building libjava only we need to delete other info docs
1510 rm $RPM_BUILD_ROOT%{_infodir}/cp-tools.info*
1511 # Remove stale manpages for binaries we do not build
1512 rm $RPM_BUILD_ROOT%{_mandir}/man1/gjdoc%{binsuffix}.1
1513 # For building the java frontend we need to copy the ecj jar
1514 mkdir -p $RPM_BUILD_ROOT%{libsubdir}
1515 cp $RPM_SOURCE_DIR/ecj.jar $RPM_BUILD_ROOT%{libsubdir}
1516 %else
1517 # For regular build, some info files do not get renamed properly.
1518 # Do so here.
1519 mv $RPM_BUILD_ROOT%{_infodir}/libgomp.info $RPM_BUILD_ROOT%{_infodir}/libgomp%{binsuffix}.info
1520 %if %{build_fortran} 
1521 %ifarch %quadmath_arch
1522 mv $RPM_BUILD_ROOT%{_infodir}/libquadmath.info $RPM_BUILD_ROOT%{_infodir}/libquadmath%{binsuffix}.info
1523 %endif
1524 %endif
1525 %if %{build_ada}
1526 mv $RPM_BUILD_ROOT%{_infodir}/gnat-style.info $RPM_BUILD_ROOT%{_infodir}/gnat-style%{binsuffix}.info
1527 mv $RPM_BUILD_ROOT%{_infodir}/gnat_rm.info $RPM_BUILD_ROOT%{_infodir}/gnat_rm%{binsuffix}.info
1528 mv $RPM_BUILD_ROOT%{_infodir}/gnat_ugn.info $RPM_BUILD_ROOT%{_infodir}/gnat_ugn%{binsuffix}.info
1529 %endif
1530 %endif
1531
1532 # LIBJAVA-DELETE-BEGIN
1533 cd ..
1534 %find_lang gcc@base_ver@-locale --all-name
1535
1536 %post info
1537 %install_info --info-dir=%{_infodir} %{_infodir}/cpp%{binsuffix}.info.gz
1538 %install_info --info-dir=%{_infodir} %{_infodir}/cppinternals%{binsuffix}.info.gz
1539 %install_info --info-dir=%{_infodir} %{_infodir}/gcc%{binsuffix}.info.gz
1540 %install_info --info-dir=%{_infodir} %{_infodir}/gccint%{binsuffix}.info.gz
1541 %install_info --info-dir=%{_infodir} %{_infodir}/gccinstall%{binsuffix}.info.gz
1542 %install_info --info-dir=%{_infodir} %{_infodir}/libgomp%{binsuffix}.info.gz
1543 %if %{build_fortran} 
1544 %install_info --info-dir=%{_infodir} %{_infodir}/gfortran%{binsuffix}.info.gz
1545 %ifarch %quadmath_arch
1546 %install_info --info-dir=%{_infodir} %{_infodir}/libquadmath%{binsuffix}.info.gz
1547 %endif
1548 %endif
1549 %if %{build_java}
1550 %install_info --info-dir=%{_infodir} %{_infodir}/gcj%{binsuffix}.info.gz
1551 %endif
1552 %if %{build_ada}
1553 %install_info --info-dir=%{_infodir} %{_infodir}/gnat-style%{binsuffix}.info.gz
1554 %install_info --info-dir=%{_infodir} %{_infodir}/gnat_rm%{binsuffix}.info.gz
1555 %install_info --info-dir=%{_infodir} --section="GNU Ada tools" --entry="* GNAT User's Guide: (gnat_ugn). GNAT User's Guide for Unix Platforms" %{_infodir}/gnat_ugn%{binsuffix}.info.gz
1556 %endif
1557
1558 %postun info
1559 %install_info_delete --info-dir=%{_infodir} %{_infodir}/cpp%{binsuffix}.info.gz
1560 %install_info_delete --info-dir=%{_infodir} %{_infodir}/cppinternals%{binsuffix}.info.gz
1561 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gcc%{binsuffix}.info.gz
1562 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gccint%{binsuffix}.info.gz
1563 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gccinstall%{binsuffix}.info.gz
1564 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libgomp%{binsuffix}.info.gz
1565 %if %{build_fortran}
1566 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gfortran%{binsuffix}.info.gz
1567 %ifarch %quadmath_arch
1568 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libquadmath%{binsuffix}.info.gz
1569 %endif
1570 %endif
1571 %if %{build_java}
1572 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gcj%{binsuffix}.info.gz
1573 %endif
1574 %if %{build_ada}
1575 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gnat-style%{binsuffix}.info.gz
1576 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gnat_rm%{binsuffix}.info.gz
1577 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gnat_ugn%{binsuffix}.info.gz
1578 %endif
1579
1580
1581 %files
1582 %defattr(-,root,root)
1583 %dir %{_libdir}/gcc
1584 %dir %{_libdir}/gcc/%{GCCDIST}
1585 %dir %{libsubdir}
1586 %dir %{libsubdir}/include
1587 %dir %{libsubdir}/include-fixed
1588 %if %{biarch}
1589 %if %{build_primary_64bit}
1590 %dir %{libsubdir}/32
1591 %else
1592 %dir %{libsubdir}/64
1593 %endif
1594 %endif
1595 %if %{build_nof}
1596 %dir %{libsubdir}/nof
1597 %endif
1598 %{_prefix}/bin/gcc%{binsuffix}
1599 %{_prefix}/bin/gcov%{binsuffix}
1600 %{_prefix}/bin/gcc-ar%{binsuffix}
1601 %{_prefix}/bin/gcc-nm%{binsuffix}
1602 %{_prefix}/bin/gcc-ranlib%{binsuffix}
1603 %{libsubdir}/collect2
1604 %{libsubdir}/lto1
1605 %{libsubdir}/lto-wrapper
1606 %{libsubdir}/liblto_plugin.so*
1607 %{libsubdir}/include-fixed/README
1608 %{libsubdir}/include-fixed/limits.h
1609 %{libsubdir}/include-fixed/syslimits.h
1610 %{libsubdir}/include/omp.h
1611 %{libsubdir}/include/float.h
1612 %{libsubdir}/include/iso646.h
1613 %{libsubdir}/include/stdarg.h
1614 %{libsubdir}/include/stdbool.h
1615 %{libsubdir}/include/stdfix.h
1616 %{libsubdir}/include/stddef.h
1617 %{libsubdir}/include/uchar.h
1618 %{libsubdir}/include/unwind.h
1619 %{libsubdir}/include/varargs.h
1620 %{libsubdir}/include/stdint.h
1621 %{libsubdir}/include/stdint-gcc.h
1622 %{libsubdir}/include/stdnoreturn.h
1623 %{libsubdir}/include/stdalign.h
1624 %ifarch %arm
1625 %{libsubdir}/include/mmintrin.h
1626 %{libsubdir}/include/arm_neon.h
1627 %{libsubdir}/include/unwind-arm-common.h
1628 %endif
1629 %ifarch %ix86 x86_64
1630 %{libsubdir}/include/cross-stdarg.h
1631 %{libsubdir}/include/cpuid.h
1632 %{libsubdir}/include/mm3dnow.h
1633 %{libsubdir}/include/mmintrin.h
1634 %{libsubdir}/include/ammintrin.h
1635 %{libsubdir}/include/bmmintrin.h
1636 %{libsubdir}/include/emmintrin.h
1637 %{libsubdir}/include/immintrin.h
1638 %{libsubdir}/include/avxintrin.h
1639 %{libsubdir}/include/pmmintrin.h
1640 %{libsubdir}/include/xmmintrin.h
1641 %{libsubdir}/include/tmmintrin.h
1642 %{libsubdir}/include/nmmintrin.h
1643 %{libsubdir}/include/smmintrin.h
1644 %{libsubdir}/include/wmmintrin.h
1645 %{libsubdir}/include/x86intrin.h
1646 %{libsubdir}/include/ia32intrin.h
1647 %{libsubdir}/include/mm_malloc.h
1648 %{libsubdir}/include/fma4intrin.h
1649 %{libsubdir}/include/xopintrin.h
1650 %{libsubdir}/include/lwpintrin.h
1651 %{libsubdir}/include/popcntintrin.h
1652 %{libsubdir}/include/bmiintrin.h
1653 %{libsubdir}/include/tbmintrin.h
1654 %{libsubdir}/include/avx2intrin.h
1655 %{libsubdir}/include/bmi2intrin.h
1656 %{libsubdir}/include/fmaintrin.h
1657 %{libsubdir}/include/lzcntintrin.h
1658 %{libsubdir}/include/f16cintrin.h
1659 %endif
1660 %if %{build_with_mudflap}
1661 %{libsubdir}/include/mf-runtime.h
1662 %endif
1663 %versmainlib *crt*.o
1664 %versmainlib libgcc*.a
1665 %versmainlib libgcov.a
1666 %versmainlib libgcc_s*.so
1667 %if %{build_with_mudflap}
1668 %versmainlib libmudflap.a
1669 %versmainlib libmudflap.so
1670 %versmainlib libmudflapth.a
1671 %versmainlib libmudflapth.so
1672 %endif
1673 %versmainlib libgomp.so
1674 %versmainlib libgomp.a
1675 %versmainlib libgomp.spec
1676 %doc %{_mandir}/man1/gcc%{binsuffix}.1.gz
1677 %doc %{_mandir}/man1/gcov%{binsuffix}.1.gz
1678 %if 0%{?build_optional_compiler:1}
1679 %{libsubdir}/defaults.spec
1680 %endif
1681
1682 %if %{separate_biarch}
1683 %files -n gcc@base_ver@%{separate_biarch_suffix}
1684 %defattr(-,root,root)
1685 %versbiarchlib *crt*.o
1686 %versbiarchlib libgcc*.a
1687 %versbiarchlib libgcov.a
1688 %versbiarchlib libgcc_s*.so
1689 %if %{build_with_mudflap}
1690 %versbiarchlib libmudflap.a
1691 %versbiarchlib libmudflap.so
1692 %versbiarchlib libmudflapth.a
1693 %versbiarchlib libmudflapth.so
1694 %endif
1695 %versbiarchlib libgomp.so
1696 %versbiarchlib libgomp.a
1697 %versbiarchlib libgomp.spec
1698 %endif
1699
1700 %files locale -f gcc@base_ver@-locale.lang
1701
1702 %if %{build_cp}
1703 %files c++
1704 %defattr(-,root,root)
1705 %dir %{_libdir}/gcc
1706 %dir %{_libdir}/gcc/%{GCCDIST}
1707 %dir %{libsubdir}
1708 %{_prefix}/bin/g++%{binsuffix}
1709 %doc %{_mandir}/man1/g++%{binsuffix}.1.gz
1710 %{libsubdir}/cc1plus
1711
1712 %files -n libstdc++@base_ver@
1713 %defattr(-,root,root)
1714 %if %{build_nof}
1715 %dir %{noflibdir}
1716 %endif
1717 %mainlib libstdc++.so.*
1718
1719 %if %{separate_biarch}
1720 %files -n libstdc++@base_ver@%{separate_biarch_suffix}
1721 %defattr(-,root,root)
1722 %biarchlib libstdc++.so.*
1723 %endif
1724
1725 %files -n libstdc++@base_ver@-devel -f c++-headers
1726 %defattr(-,root,root)
1727 %versmainlib libstdc++.a
1728 %versmainlib libstdc++.so
1729 %versmainlib libsupc++.a
1730 %dir %{_datadir}/gdb
1731 %dir %{_datadir}/gdb/auto-load
1732 %dir %{_datadir}/gdb/auto-load%{_prefix}
1733 %dir %{_datadir}/gdb/auto-load/%{mainlibdir}
1734 %{_datadir}/gdb/auto-load/%{mainlibdir}/libstdc++.so.*-gdb.py
1735 %{_datadir}/gcc%{binsuffix}
1736
1737 %if %{separate_biarch}
1738 %files -n libstdc++@base_ver@-devel%{separate_biarch_suffix}
1739 %defattr(-,root,root)
1740 %versbiarchlib libstdc++.a
1741 %versbiarchlib libstdc++.so
1742 %versbiarchlib libsupc++.a
1743 %dir %{_datadir}/gdb/auto-load/%{mainlibdirbi}
1744 %{_datadir}/gdb/auto-load/%{mainlibdirbi}/libstdc++.so.*-gdb.py
1745 %endif
1746
1747 %files -n libstdc++@base_ver@-doc
1748 %defattr(-,root,root)
1749 %doc libstdc++-v3/doc/html
1750 %endif
1751
1752 %files -n libgcc@base_ver@
1753 %defattr(-,root,root)
1754 %if 0%{!?build_optional_compiler:1}
1755 /%{_lib}/libgcc_s.so.%{libgcc_s}
1756 %if %{build_nof}
1757 %dir /lib/nof
1758 /lib/nof/libgcc_s.so.%{libgcc_s}
1759 %endif
1760 %if %{biarch}
1761 %if %{build_primary_64bit}
1762 %if !%{separate_bi32}
1763 /lib/libgcc_s.so.%{libgcc_s}
1764 %endif
1765 %else
1766 %if !%{separate_bi64}
1767 /lib64/libgcc_s.so.%{libgcc_s}
1768 %endif
1769 %endif
1770 %endif
1771 %else
1772 %versmainlib libgcc_s.so.%{libgcc_s}
1773 %endif
1774
1775 %if %{separate_bi64}
1776 %files -n libgcc@base_ver@-64bit
1777 %defattr(-,root,root)
1778 %if 0%{!?build_optional_compiler:1}
1779 /lib64/libgcc_s.so.%{libgcc_s}
1780 %else
1781 %versbiarchlib libgcc_s.so.%{libgcc_s}
1782 %endif
1783 %endif
1784
1785 %if %{separate_bi32}
1786 %files -n libgcc@base_ver@-32bit
1787 %defattr(-,root,root)
1788 %if 0%{!?build_optional_compiler:1}
1789 /lib/libgcc_s.so.%{libgcc_s}
1790 %else
1791 %versbiarchlib libgcc_s.so.%{libgcc_s}
1792 %endif
1793 %endif
1794
1795
1796 %files -n libgomp@base_ver@
1797 %defattr(-,root,root)
1798 %mainlib libgomp.so.1*
1799
1800 %if %{separate_biarch}
1801 %files -n libgomp@base_ver@%{separate_biarch_suffix}
1802 %defattr(-,root,root)
1803 %biarchlib libgomp.so.1*
1804 %endif
1805
1806
1807 %if %{build_fortran}
1808 %files fortran
1809 %defattr(-,root,root)
1810 %dir %{libsubdir}/finclude
1811 %{_prefix}/bin/gfortran%{binsuffix}
1812 %{libsubdir}/f951
1813 %{libsubdir}/finclude/*
1814 %versmainlib libgfortran.a
1815 %versmainlib libgfortran.so
1816 %versmainlib libgfortran.spec
1817 %versmainlib libgfortranbegin.a
1818 %versmainlib libcaf_single.a
1819 %ifarch %quadmath_arch
1820 %{libsubdir}/include/quadmath.h
1821 %{libsubdir}/include/quadmath_weak.h
1822 %versmainlib libquadmath.a
1823 %versmainlib libquadmath.so
1824 %endif
1825 %doc %{_mandir}/man1/gfortran%{binsuffix}.1.gz
1826
1827 %if %{separate_biarch}
1828 %files fortran%{separate_biarch_suffix}
1829 %defattr(-,root,root)
1830 %versbiarchlib libgfortran.a
1831 %versbiarchlib libgfortran.so
1832 %versbiarchlib libgfortran.spec
1833 %versbiarchlib libgfortranbegin.a
1834 %versbiarchlib libcaf_single.a
1835 %ifarch %quadmath_arch
1836 %versbiarchlib libquadmath.a
1837 %versbiarchlib libquadmath.so
1838 %endif
1839 %endif
1840
1841 %files -n libgfortran@base_ver@
1842 %defattr(-,root,root)
1843 %mainlib libgfortran.so.*
1844
1845 %if %{separate_biarch}
1846 %files -n libgfortran@base_ver@%{separate_biarch_suffix}
1847 %defattr(-,root,root)
1848 %biarchlib libgfortran.so.*
1849 %endif
1850
1851 %ifarch %quadmath_arch
1852 %files -n libquadmath@base_ver@
1853 %defattr(-,root,root)
1854 %mainlib libquadmath.so.*
1855
1856 %if %{separate_biarch}
1857 %files -n libquadmath@base_ver@%{separate_biarch_suffix}
1858 %defattr(-,root,root)
1859 %biarchlib libquadmath.so.*
1860 %endif
1861 %endif
1862 %endif
1863
1864 %if %{build_with_mudflap}
1865 %files -n libmudflap@base_ver@
1866 %defattr(-,root,root)
1867 %mainlib libmudflap.so.0*
1868 %mainlib libmudflapth.so.0*
1869
1870 %if %{separate_biarch}
1871 %files -n libmudflap@base_ver@%{separate_biarch_suffix}
1872 %defattr(-,root,root)
1873 %biarchlib libmudflap.so.0*
1874 %biarchlib libmudflapth.so.0*
1875 %endif
1876 %endif
1877
1878 %files info
1879 %defattr(-,root,root)
1880 %doc %{_infodir}/cpp%{binsuffix}.info*.gz
1881 %doc %{_infodir}/cppinternals%{binsuffix}.info*.gz
1882 %doc %{_infodir}/gcc%{binsuffix}.info*.gz
1883 %doc %{_infodir}/gccint%{binsuffix}.info*.gz
1884 %doc %{_infodir}/gccinstall%{binsuffix}.info*.gz
1885 %doc %{_infodir}/libgomp%{binsuffix}.info*.gz
1886 %if %{build_fortran}
1887 %doc %{_infodir}/gfortran%{binsuffix}.info*.gz
1888 %ifarch %quadmath_arch
1889 %doc %{_infodir}/libquadmath%{binsuffix}.info*.gz
1890 %endif
1891 %endif
1892 %if %{build_java}
1893 %doc %{_infodir}/gcj%{binsuffix}.info*.gz
1894 %endif
1895 %if %{build_ada}
1896 %doc %{_infodir}/gnat-style%{binsuffix}.info*gz
1897 %doc %{_infodir}/gnat_rm%{binsuffix}.info*gz
1898 %doc %{_infodir}/gnat_ugn%{binsuffix}.info*gz
1899 %endif
1900
1901 %files -n cpp@base_ver@
1902 %defattr(-,root,root)
1903 %dir %{_libdir}/gcc
1904 %dir %{_libdir}/gcc/%{GCCDIST}
1905 %dir %{libsubdir}
1906 %{_prefix}/bin/cpp%{binsuffix}
1907 %{libsubdir}/cc1
1908 #%{libsubdir}/specs
1909 %doc %{_mandir}/man1/cpp%{binsuffix}.1.gz
1910
1911 %if %{build_objc}
1912 %files objc
1913 %defattr(-,root,root)
1914 %{libsubdir}/cc1obj
1915 %{libsubdir}/include/objc
1916 %versmainlib libobjc.a
1917 %versmainlib libobjc.so
1918
1919 %if %{separate_biarch}
1920 %files objc%{separate_biarch_suffix}
1921 %defattr(-,root,root)
1922 %versbiarchlib libobjc.a
1923 %versbiarchlib libobjc.so
1924 %endif
1925
1926 %files -n libobjc@base_ver@
1927 %defattr(-,root,root)
1928 %mainlib libobjc.so.*
1929
1930 %if %{separate_biarch}
1931 %files -n libobjc@base_ver@%{separate_biarch_suffix}
1932 %defattr(-,root,root)
1933 %biarchlib libobjc.so.*
1934 %endif
1935 %endif
1936
1937
1938 %if %{build_objcp}
1939 %files obj-c++
1940 %defattr(-,root,root)
1941 %{libsubdir}/cc1objplus
1942 %endif
1943
1944
1945 %if %{build_ada}
1946 %files ada
1947 %defattr(-,root,root)
1948 %dir %{_libdir}/gcc
1949 %dir %{_libdir}/gcc/%{GCCDIST}
1950 %dir %{libsubdir}
1951 %{_prefix}/bin/gnat*
1952 %dir %{versmainlibdir}/adainclude
1953 %dir %{versmainlibdir}/adalib
1954 %{versmainlibdir}/adainclude
1955 %{versmainlibdir}/adalib/*.ali
1956 %{versmainlibdir}/adalib/*.a
1957 %{versmainlibdir}/adalib/libgnarl.so
1958 %{versmainlibdir}/adalib/libgnat.so
1959 %{versmainlibdir}/gnat1
1960
1961 %if %{separate_biarch}
1962 %files ada%{separate_biarch_suffix}
1963 %defattr(-,root,root)
1964 %dir %{versmainlibdirbi}/adainclude
1965 %dir %{versmainlibdirbi}/adalib
1966 %{versmainlibdirbi}/adainclude
1967 %{versmainlibdirbi}/adalib/*.ali
1968 %{versmainlibdirbi}/adalib/*.a
1969 %{versmainlibdirbi}/adalib/libgnarl.so
1970 %{versmainlibdirbi}/adalib/libgnat.so
1971 %endif
1972
1973 %files -n libada@base_ver@
1974 %defattr(-,root,root)
1975 %mainlib libgnarl-*.so
1976 %mainlib libgnat-*.so
1977
1978 %if %{separate_biarch}
1979 %files -n libada@base_ver@%{separate_biarch_suffix}
1980 %defattr(-,root,root)
1981 %biarchlib libgnarl-*.so
1982 %biarchlib libgnat-*.so
1983 %endif
1984 %endif
1985 # LIBJAVA-DELETE-END
1986
1987
1988 %if %{build_java}
1989 %if 0%{?building_libjava:1}
1990 %files -n gcc@base_ver@-java
1991 %defattr(-,root,root)
1992 %{_prefix}/bin/gcj%{binsuffix}
1993 %{_prefix}/bin/gcjh%{binsuffix}
1994 %{_prefix}/bin/gcj-dbtool%{binsuffix}
1995 %{_prefix}/bin/jcf-dump%{binsuffix}
1996 %{_prefix}/bin/jv-convert%{binsuffix}
1997 %{_prefix}/bin/gc-analyze%{binsuffix}
1998 %{_prefix}/bin/aot-compile%{binsuffix}
1999 %{_prefix}/bin/rebuild-gcj-db%{binsuffix}
2000 %{libsubdir}/jc1
2001 %{libsubdir}/jvgenmain
2002 %{libsubdir}/ecj.jar
2003 %{libsubdir}/ecj1
2004 %doc %{_mandir}/man1/gcj%{binsuffix}.1.gz
2005 %doc %{_mandir}/man1/gcjh%{binsuffix}.1.gz
2006 %doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz
2007 %doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz
2008 %doc %{_mandir}/man1/jv-convert%{binsuffix}.1.gz
2009 %doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz
2010 %doc %{_mandir}/man1/aot-compile%{binsuffix}.1.gz
2011 %doc %{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1.gz
2012 %endif
2013 %endif
2014
2015 %if %{build_java}
2016 %if %{build_libjava}
2017 %files -n libgcj@base_ver@
2018 %defattr(-,root,root)
2019 %dir %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}
2020 %dir %{_libdir}/gcc
2021 %dir %{_libdir}/gcc/%{GCCDIST}
2022 %dir %{libsubdir}
2023 %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/classmap.db
2024 # We usually do not multilib libjava
2025 %if %{biarch_libjava}
2026 %versbiarchlib libgcj.la
2027 %biarchlib libgcj.so.*
2028 %biarchlib libgij.so.*
2029 %biarchlib libgcj-tools.so.*
2030 %else
2031 %versmainlib libgcj.la
2032 %mainlib libgcj.so.*
2033 %mainlib libgij.so.*
2034 %mainlib libgcj-tools.so.*
2035 %endif
2036 %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/libjvm.la
2037 %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/libjvm.so
2038 %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/libjavamath.la
2039 %{_libdir}/gcj-%{gcc_dir_version}-%{gcj_sover}/libjavamath.so
2040
2041 %files -n libgcj_bc@base_ver@
2042 %defattr(-,root,root)
2043 %if %{biarch_libjava}
2044 %biarchlib libgcj_bc.so.*
2045 %else
2046 %mainlib libgcj_bc.so.*
2047 %endif
2048
2049 %files -n libgcj@base_ver@-jar
2050 %defattr(-,root,root)
2051 %{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar
2052 %{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar
2053
2054 %files -n libgcj@base_ver@-devel
2055 %defattr(-,root,root)
2056 %dir %{_prefix}/include/c++
2057 %dir %{libsubdir}
2058 %dir %{libsubdir}/include
2059 %dir %{gxxinclude}
2060 %{_libdir}/pkgconfig/libgcj%{binsuffix}.pc
2061 %{libsubdir}/include/jawt.h
2062 %{libsubdir}/include/jawt_md.h
2063 %{libsubdir}/include/jni.h
2064 %{libsubdir}/include/jni_md.h
2065 %{libsubdir}/include/jvmpi.h
2066 %{gxxinclude}/gnu
2067 %{gxxinclude}/gcj
2068 %{gxxinclude}/java
2069 %{gxxinclude}/javax
2070 %{gxxinclude}/org
2071 %{gxxinclude}/sun
2072 %{libsubdir}/include/gcj
2073 %if %{biarch_libjava}
2074 %versbiarchlib libgcj.so
2075 %versbiarchlib libgcj.spec
2076 %versbiarchlib libgcj-tools.so
2077 %versbiarchlib libgij.so
2078 %versbiarchlib libgcj_bc.so
2079 %else
2080 %versmainlib libgcj.so
2081 %versmainlib libgcj.spec
2082 %versmainlib libgcj-tools.so
2083 %versmainlib libgij.so
2084 %versmainlib libgcj_bc.so
2085 %endif
2086
2087 %files -n gcc@base_ver@-gij
2088 %defattr(-,root,root)
2089 %{_prefix}/bin/gij%{binsuffix}
2090 %{_prefix}/bin/gappletviewer%{binsuffix}
2091 %{_prefix}/bin/gjar%{binsuffix}
2092 %{_prefix}/bin/gjarsigner%{binsuffix}
2093 %{_prefix}/bin/gjavah%{binsuffix}
2094 %{_prefix}/bin/gkeytool%{binsuffix}
2095 %{_prefix}/bin/gnative2ascii%{binsuffix}
2096 %{_prefix}/bin/gorbd%{binsuffix}
2097 %{_prefix}/bin/grmic%{binsuffix}
2098 %{_prefix}/bin/grmid%{binsuffix}
2099 %{_prefix}/bin/grmiregistry%{binsuffix}
2100 %{_prefix}/bin/gserialver%{binsuffix}
2101 %{_prefix}/bin/gtnameserv%{binsuffix}
2102 %doc %{_mandir}/man1/gij%{binsuffix}.1.gz
2103 %doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz
2104 %doc %{_mandir}/man1/grmic%{binsuffix}.1.gz
2105 %doc %{_mandir}/man1/grmid%{binsuffix}.1.gz
2106 %doc %{_mandir}/man1/grmiregistry%{binsuffix}.1.gz
2107 %doc %{_mandir}/man1/gkeytool%{binsuffix}.1.gz
2108 %doc %{_mandir}/man1/gjar%{binsuffix}.1.gz
2109 %doc %{_mandir}/man1/gjarsigner%{binsuffix}.1.gz
2110 %doc %{_mandir}/man1/gjavah%{binsuffix}.1.gz
2111 %doc %{_mandir}/man1/gnative2ascii%{binsuffix}.1.gz
2112 %doc %{_mandir}/man1/gorbd%{binsuffix}.1.gz
2113 %doc %{_mandir}/man1/gserialver%{binsuffix}.1.gz
2114 %doc %{_mandir}/man1/gtnameserv%{binsuffix}.1.gz
2115 %endif
2116 %endif
2117 # LIBFFI-DELETE-END
2118
2119 %if %{build_java}
2120 %if 0%{?building_libffi:1}
2121 %files -n libffi@base_ver@
2122 %defattr(-,root,root)
2123 %mainlib libffi.so.*
2124
2125 %if %{separate_biarch}
2126 %files -n libffi@base_ver@%{separate_biarch_suffix}
2127 %defattr(-,root,root)
2128 %biarchlib libffi.so.*
2129 %endif
2130
2131 %files -n libffi@base_ver@-devel
2132 %defattr(-,root,root)
2133 %{_prefix}/include/ffi.h
2134 %{_prefix}/include/ffitarget.h
2135 %mainlib libffi.so
2136 %mainlib libffi.a
2137 %{_libdir}/pkgconfig/libffi.pc
2138 %doc %{_mandir}/man3/ffi%{binsuffix}.3.gz
2139 %doc %{_mandir}/man3/ffi_call%{binsuffix}.3.gz
2140 %doc %{_mandir}/man3/ffi_prep_cif%{binsuffix}.3.gz
2141
2142 %if %{separate_biarch}
2143 %files -n libffi@base_ver@-devel%{separate_biarch_suffix}
2144 %defattr(-,root,root)
2145 %biarchlib libffi.so
2146 %biarchlib libffi.a
2147 %endif
2148 %endif
2149 %endif
2150 # GCC-TESTSUITE-DELETE-END
2151
2152 %if 0%{?run_tests:1}
2153 %files -n gcc@base_ver@-testresults
2154 %defattr(-,root,root)
2155 %doc testresults/test_summary.txt
2156 %doc testresults/*.sum
2157 %doc testresults/*.log
2158 %endif
2159
2160
2161 %changelog