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