Updating spec files with new scripts
[platform/upstream/gcc49.git] / packaging / gcc49.spec
1 #
2 # spec file for package gcc49
3 #
4 # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
5 #
6 # All modifications and additions to the file contributed by third parties
7 # remain the property of their copyright owners, unless otherwise agreed
8 # upon. The license for this file, and modifications and additions to the
9 # file, is the same license as for the pristine package itself (unless the
10 # license for the pristine package is not an Open Source License, in which
11 # case the license is the MIT License). An "Open Source License" is a
12 # license that conforms to the Open Source Definition (Version 1.9)
13 # published by the Open Source Initiative.
14
15 # Please submit bugfixes or comments via http://bugs.opensuse.org/
16 #
17
18 # norootforbuild
19 # icecream 0
20
21
22 %define build_ada 0
23
24 %define quadmath_arch %ix86 x86_64 ia64
25 %define tsan_arch x86_64
26 %define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm
27 %define itm_arch x86_64 %ix86 %arm ppc ppc64 ppc64le s390 s390x %sparc
28 %define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k
29 %define lsan_arch x86_64
30 %define ubsan_arch x86_64 %ix86 ppc ppc64 %arm
31 %if 0%{?build_libvtv:1}
32 %define vtv_arch x86_64 %ix86
33 %endif
34 %define cilkrts_arch x86_64 %ix86
35
36 # We don't want to build java
37 %define build_java 0
38 %define build_libjava 0
39
40 # Also go and objc aren't needed right now
41 %define build_objc 0
42 %define build_objcp 0
43 %define build_go 0
44
45 %define build_cp 1
46 %define build_fortran !0%{?building_libjava:1}%{?building_libffi:1}
47
48 %if %{build_objcp}
49 %define build_cp 1
50 %define build_objc 1
51 %endif
52
53 %if %{build_libjava}
54 %define build_cp 1
55 %endif
56
57 # For optional compilers only build C, C++ and Fortran
58 %if 0%{?build_optional_compiler_languages:1}
59 %define build_ada 0
60 %define build_java 0
61 %define build_libjava 0
62 %define build_objc 0
63 %define build_objcp 0
64 %define build_go 0
65 %endif
66
67 # Shared library SONAME versions
68 %ifarch hppa
69 %define libgcc_s 4
70 %else
71 %ifarch m68k
72 %define libgcc_s 2
73 %else
74 %define libgcc_s 1
75 %endif
76 %endif
77 %define libgcj_sover %{nil}
78 %define libgcj_bc_sover %{nil}
79 %define libffi_sover %{nil}
80 %define libgomp_sover %{nil}
81 %define libstdcxx_sover %{nil}
82 %define libobjc_sover %{nil}
83 %define libgfortran_sover %{nil}
84 %define libquadmath_sover %{nil}
85 %define libasan_sover %{nil}
86 %define libtsan_sover %{nil}
87 %define libatomic_sover %{nil}
88 %define libitm_sover %{nil}
89 %define libubsan_sover %{nil}
90 %define liblsan_sover %{nil}
91 %define libvtv_sover %{nil}
92 %define libcilkrts_sover %{nil}
93 %define libgo_sover %{nil}
94
95 # Shared library package suffix
96 # This is used for the "non-standard" set of libraries, the standard
97 # being defined by %product_libs_gcc_ver, the GCC version that should
98 # provide un-suffixed shared library packages following the shared-library
99 # policy.  Even suffixed variants should provide the shared-library policy
100 # mandated names and ensure they conflict with each other.
101 # Note that on SONAME changes of any library the %product_libs_gcc_ver
102 # define needs to be either split or the newest GCC version still providing
103 # the old SONAME needs to unconditionally produce an un-suffixed library
104 # if %product_libs_gcc_ver is newer than it.  Similar the _oldest_ GCC
105 # version first providing a new SONAME needs to unconditionally produce
106 # an un-suffixed library if %product_libs_gcc_ver is lower that it.
107 %if %{!?product_libs_gcc_ver:49}%{?product_libs_gcc_ver} != 49
108 %define pne 1
109 %endif
110 %define libgcc_s_suffix %{?pne:-gcc49}
111 # libgcj SONAME changes with every GCC version
112 %define libgcj_suffix %nil
113 %define libgcj_bc_suffix %{?pne:-gcc49}
114 %define libffi_suffix %{?pne:-gcc49}
115 %define libgomp_suffix %{?pne:-gcc49}
116 %define libstdcxx_suffix %{?pne:-gcc49}
117 %define libobjc_suffix %{?pne:-gcc49}
118 %define libgfortran_suffix %{?pne:-gcc49}
119 %define libquadmath_suffix %{?pne:-gcc49}
120 %define libasan_suffix %{?pne:-gcc49}
121 %define libtsan_suffix %{?pne:-gcc49}
122 %define libatomic_suffix %{?pne:-gcc49}
123 %define libitm_suffix %{?pne:-gcc49}
124
125
126 %define libubsan_suffix %{?pne:-gcc49}
127 %define liblsan_suffix %{?pne:-gcc49}
128 %define libvtv_suffix %{?pne:-gcc49}
129 %define libcilkrts_suffix %{?pne:-gcc49}
130 %define libgo_suffix %{?pne:-gcc49}
131
132 %define selfconflict() %1
133
134 Name:         gcc49
135 # With generated files in src we could drop the following
136 BuildRequires: bison
137 BuildRequires: flex
138 BuildRequires: gettext-devel
139 BuildRequires: makeinfo
140 # until here, but at least renaming and patching info files breaks this
141 BuildRequires: gcc-c++
142 BuildRequires: glibc-devel-32bit
143 BuildRequires: mpc-devel
144 BuildRequires: mpfr-devel
145 BuildRequires: perl
146 BuildRequires: zlib-devel
147 %ifarch %ix86 x86_64 ppc ppc64 s390 s390x ia64 %sparc hppa %arm aarch64
148 BuildRequires: cloog-isl-devel
149 BuildRequires: isl-devel
150 %endif
151 %if %{build_ada}
152 %define hostsuffix -4.9
153 BuildRequires: gcc49-ada
154 %endif
155 %if 0%{?building_libjava:1}%{?building_testsuite:1}
156 BuildRequires: fastjar
157 %endif
158 %if 0%{?building_libffi:1}
159 BuildRequires: pkg-config
160 %endif
161 %ifarch ia64
162 BuildRequires: libunwind-devel
163 %endif
164 %if 0%{?run_tests:1}
165 BuildRequires: dejagnu
166 BuildRequires: expect
167 BuildRequires: gdb
168 %endif
169
170 %define separate_bi32 0
171 %define separate_bi64 0
172 %ifarch ppc sparcv9
173 # Beware, this does _not_ separate libgcj, as for that one multilibing
174 # is inactive for the time being
175 %define separate_bi64 1
176 %endif
177 %ifarch x86_64 s390x ppc64 sparc64
178 %define separate_bi32 1
179 %endif
180
181 # Define two macros to trigger -32bit or -64bit package variants
182 %define separate_biarch 0
183 %if %{separate_bi32}
184 %define separate_biarch 1
185 %define separate_biarch_suffix -32bit
186 %endif
187 %if %{separate_bi64}
188 %define separate_biarch 1
189 %define separate_biarch_suffix -64bit
190 %endif
191
192 %ifarch x86_64 ia64 s390x alpha ppc64 sparc64 aarch64
193 # 64-bit is primary build target
194 %define build_primary_64bit 1
195 %else
196 %define build_primary_64bit 0
197 %endif
198
199 %define biarch_libjava 0
200
201 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
202
203 URL:          http://gcc.gnu.org/
204 Version: 4.9.1
205 Release:      1
206 %define gcc_dir_version 4.9
207 %define binsuffix -4.9
208
209 %if !0%{?building_libjava:1}%{?building_libffi:1}%{?building_testsuite:1}
210 Requires: binutils glibc-devel
211 Requires: cpp49 = %{version}-%{release}
212 Requires: libgcc_s%{libgcc_s} >= %{version}-%{release}
213 Requires: libgomp%{libgomp_sover} >= %{version}-%{release}
214 %ifarch %asan_arch
215 Requires: libasan%{libasan_sover} >= %{version}-%{release}
216 %endif
217 %ifarch %tsan_arch
218 Requires: libtsan%{libtsan_sover} >= %{version}-%{release}
219 %endif
220 %ifarch %atomic_arch
221 Requires: libatomic%{libatomic_sover} >= %{version}-%{release}
222 %endif
223 %ifarch %itm_arch
224 Requires: libitm%{libitm_sover} >= %{version}-%{release}
225 %endif
226 %ifarch %cilkrts_arch
227 Requires: libcilkrts%{libcilkrts_sover} >= %{version}-%{release}
228 %endif
229 %ifarch %lsan_arch
230 Requires: liblsan%{liblsan_sover} >= %{version}-%{release}
231 %endif
232 %ifarch %ubsan_arch
233 Requires: libubsan%{libubsan_sover} >= %{version}-%{release}
234 %endif
235 %ifarch %vtv_arch
236 Requires: libvtv%{libvtv_sover} >= %{version}-%{release}
237 %endif
238 Requires: gcc49-info gcc49-locale
239 %endif
240
241 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
242 Source:         gcc-%{version}.tar.bz2
243 Source1:        change_spec
244 Source2:        libffi49-rpmlintrc
245 Source3:        gcc49-rpmlintrc
246 Source4:        ecj.jar
247 Source5:        baselibs.conf
248 Source6:        libgcj49-rpmlintrc
249
250 Group:          Development/Building
251 Summary:        The GNU C Compiler and Support Files
252 License:        GPL-3.0+
253
254 %description
255 Core package for the GNU Compiler Collection, including the C language
256 frontend.
257
258 Language frontends other than C are split to different sub-packages,
259 namely gcc-ada, gcc-c++, gcc-fortran, gcc-java, gcc-objc and
260 gcc-obj-c++.
261
262
263
264 %package -n gcc49-32bit
265 Summary:      The GNU C Compiler 32bit support
266 Group:          Development/Building
267 Requires: gcc49 = %{version}-%{release}
268 Requires: libgcc_s%{libgcc_s}-32bit >= %{version}-%{release}
269 Requires: libgomp%{libgomp_sover}-32bit >= %{version}-%{release}
270 %ifarch %asan_arch
271 Requires: libasan%{libasan_sover}-32bit >= %{version}-%{release}
272 %endif
273 %ifarch %tsan_arch
274 # tsan on x86_64 has no multilib
275 %ifarch x86_64
276 %else
277 Requires: libtsan%{libtsan_sover}-32bit >= %{version}-%{release}
278 %endif
279 %endif
280 %ifarch %atomic_arch
281 Requires: libatomic%{libatomic_sover}-32bit >= %{version}-%{release}
282 %endif
283 %ifarch %itm_arch
284 Requires: libitm%{libitm_sover}-32bit >= %{version}-%{release}
285 %endif
286 %ifarch %cilkrts_arch
287 Requires: libcilkrts%{libcilkrts_sover}-32bit >= %{version}-%{release}
288 %endif
289 # lsan on x86_64 has no multilib
290 %ifarch x86_64
291 %else
292 %ifarch %lsan_arch
293 Requires: liblsan%{liblsan_sover} >= %{version}-%{release}
294 %endif
295 %endif
296 %ifarch %ubsan_arch
297 Requires: libubsan%{libubsan_sover}-32bit >= %{version}-%{release}
298 %endif
299 %ifarch %vtv_arch
300 Requires: libvtv%{libvtv_sover}-32bit >= %{version}-%{release}
301 %endif
302 Requires: glibc-devel-32bit
303
304 %description -n gcc49-32bit
305 This package contains 32bit support for the GNU Compiler Collection.
306
307 %package -n gcc49-64bit
308 Summary:      The GNU C Compiler 64bit support
309 Group:          Development/Building
310 Requires: gcc49 = %{version}-%{release}
311 Requires: libgcc_s%{libgcc_s}-64bit >= %{version}-%{release}
312 Requires: libgomp%{libgomp_sover}-64bit >= %{version}-%{release}
313 %ifarch %asan_arch
314 Requires: libasan%{libasan_sover}-64bit >= %{version}-%{release}
315 %endif
316 %ifarch %tsan_arch
317 Requires: libtsan%{libtsan_sover}-64bit >= %{version}-%{release}
318 %endif
319 %ifarch %atomic_arch
320 Requires: libatomic%{libatomic_sover}-64bit >= %{version}-%{release}
321 %endif
322 %ifarch %itm_arch
323 Requires: libitm%{libitm_sover}-64bit >= %{version}-%{release}
324 %endif
325 %ifarch %cilkrts_arch
326 Requires: libcilkrts%{libcilkrts_sover}-64bit >= %{version}-%{release}
327 %endif
328 %ifarch %lsan_arch
329 Requires: liblsan%{liblsan_sover}-64bit >= %{version}-%{release}
330 %endif
331 %ifarch %ubsan_arch
332 Requires: libubsan%{libubsan_sover}-64bit >= %{version}-%{release}
333 %endif
334 %ifarch %vtv_arch
335 Requires: libvtv%{libvtv_sover}-64bit >= %{version}-%{release}
336 %endif
337 Requires: glibc-devel-64bit
338
339 %description -n gcc49-64bit
340 This package contains 64bit support for the GNU Compiler Collection.
341
342
343 %package locale
344 Summary:      Locale Data for the GNU Compiler Collection
345 License:        GPL-3.0+
346 Group:          Development/Building
347 Requires: gcc49 = %{version}-%{release}
348
349 %description locale
350 Locale data for the GNU Compiler Collection (GCC) to give error message
351 in the current locale.
352
353
354 %package c++
355 Summary:      The GNU C++ Compiler
356 License:        GPL-3.0+
357 Group:        Development/Languages
358 Requires: gcc49 = %{version}-%{release}
359 Requires: libstdc++49-devel = %{version}-%{release}
360
361 %description c++
362 This package contains the GNU compiler for C++.
363
364 %package -n libstdc++49-devel
365 Summary:      Include Files and Libraries mandatory for Development
366 License:        GPL-3.0-with-GCC-exception
367 Group:          Development/Building
368 Requires: libstdc++%{libstdcxx_sover} >= %{version}-%{release}
369 Requires: glibc-devel
370 %ifarch ia64
371 Requires: libunwind-devel
372 %endif
373
374 %description -n libstdc++49-devel
375 This package contains all the headers and libraries of the standard C++
376 library. It is needed for compiling C++ code.
377 %package -n libstdc++49-devel-32bit
378 Summary:      Include Files and Libraries mandatory for Development
379 License:        GPL-3.0-with-GCC-exception
380 Group:          Development/Building
381 Requires: libstdc++%{libstdcxx_sover}-32bit >= %{version}-%{release}
382 Requires: glibc-devel-32bit
383 %ifarch ia64
384 Requires: libunwind-devel
385 %endif
386
387 %description -n libstdc++49-devel-32bit
388 This package contains all the headers and libraries of the standard C++
389 library. It is needed for compiling C++ code.
390 %package -n libstdc++49-devel-64bit
391 Summary:      Include Files and Libraries mandatory for Development
392 License:        GPL-3.0-with-GCC-exception
393 Group:          Development/Building
394 Requires: libstdc++%{libstdcxx_sover}-64bit >= %{version}-%{release}
395 Requires: glibc-devel-64bit
396 %ifarch ia64
397 Requires: libunwind-devel
398 %endif
399
400 %description -n libstdc++49-devel-64bit
401 This package contains all the headers and libraries of the standard C++
402 library. It is needed for compiling C++ code.
403
404
405 %package -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}
406 Summary:      C compiler runtime library
407 License:        GPL-3.0-with-GCC-exception
408 Group:          Development/Building
409 Provides:       libgcc_s%{libgcc_s} = %{version}-%{release}
410
411 %description -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}
412 Libgcc is needed for dynamically linked C programs.
413
414 %post -n libgcc_s%{libgcc_s}%{libgcc_s_suffix} -p /sbin/ldconfig
415
416 %postun -n libgcc_s%{libgcc_s}%{libgcc_s_suffix} -p /sbin/ldconfig
417 %package -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit
418 Summary:      C compiler runtime library
419 License:        GPL-3.0-with-GCC-exception
420 Group:          Development/Building
421 Provides:       libgcc_s%{libgcc_s}-32bit = %{version}-%{release}
422
423 %description -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit
424 Libgcc is needed for dynamically linked C programs.
425
426 %post -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit -p /sbin/ldconfig
427
428 %postun -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit -p /sbin/ldconfig
429 %package -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-64bit
430 Summary:      C compiler runtime library
431 License:        GPL-3.0-with-GCC-exception
432 Group:          Development/Building
433 Provides:       libgcc_s%{libgcc_s}-64bit = %{version}-%{release}
434
435 %description -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-64bit
436 Libgcc is needed for dynamically linked C programs.
437
438 %post -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-64bit -p /sbin/ldconfig
439
440 %postun -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-64bit -p /sbin/ldconfig
441
442 %package -n libgomp%{libgomp_sover}%{libgomp_suffix}
443 Summary:      The GNU compiler collection OpenMP runtime library
444 License:        GPL-3.0-with-GCC-exception
445 Group:          Development/Building
446 Provides:       libgomp%{libgomp_sover} = %{version}-%{release}
447
448 %description -n libgomp%{libgomp_sover}%{libgomp_suffix}
449 This is the OpenMP runtime library needed by OpenMP enabled programs
450 that were built with the -fopenmp compiler option and by programs that
451 were auto-parallelized via the -ftree-parallelize-loops compiler
452 option.
453
454
455 %post -n libgomp%{libgomp_sover}%{libgomp_suffix} -p /sbin/ldconfig
456
457 %postun -n libgomp%{libgomp_sover}%{libgomp_suffix} -p /sbin/ldconfig
458 %package -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit
459 Summary:      The GNU compiler collection OpenMP runtime library
460 License:        GPL-3.0-with-GCC-exception
461 Group:          Development/Building
462 Provides:       libgomp%{libgomp_sover}-32bit = %{version}-%{release}
463
464 %description -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit
465 This is the OpenMP runtime library needed by OpenMP enabled programs
466 that were built with the -fopenmp compiler option and by programs that
467 were auto-parallelized via the -ftree-parallelize-loops compiler
468 option.
469
470
471 %post -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit -p /sbin/ldconfig
472
473 %postun -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit -p /sbin/ldconfig
474 %package -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit
475 Summary:      The GNU compiler collection OpenMP runtime library
476 License:        GPL-3.0-with-GCC-exception
477 Group:          Development/Building
478 Provides:       libgomp%{libgomp_sover}-64bit = %{version}-%{release}
479
480 %description -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit
481 This is the OpenMP runtime library needed by OpenMP enabled programs
482 that were built with the -fopenmp compiler option and by programs that
483 were auto-parallelized via the -ftree-parallelize-loops compiler
484 option.
485
486
487 %post -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit -p /sbin/ldconfig
488
489 %postun -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit -p /sbin/ldconfig
490
491 %package -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}
492 Summary:      The standard C++ shared library
493 License:        GPL-3.0-with-GCC-exception
494 Group:          Development/Building
495 Requires:       libstdc++%{libstdcxx_sover}-locale
496 Provides:       libstdc++%{libstdcxx_sover} = %{version}-%{release}
497
498 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}
499 The standard C++ library, needed for dynamically linked C++ programs.
500
501
502 %post -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix} -p /sbin/ldconfig
503
504 %postun -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix} -p /sbin/ldconfig
505 %package -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit
506 Summary:      The standard C++ shared library
507 License:        GPL-3.0-with-GCC-exception
508 Group:          Development/Building
509 Requires:       libstdc++%{libstdcxx_sover}-locale
510 Provides:       libstdc++%{libstdcxx_sover}-32bit = %{version}-%{release}
511
512 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit
513 The standard C++ library, needed for dynamically linked C++ programs.
514
515
516 %post -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit -p /sbin/ldconfig
517
518 %postun -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit -p /sbin/ldconfig
519 %package -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit
520 Summary:      The standard C++ shared library
521 License:        GPL-3.0-with-GCC-exception
522 Group:          Development/Building
523 Requires:       libstdc++%{libstdcxx_sover}-locale
524 Provides:       libstdc++%{libstdcxx_sover}-64bit = %{version}-%{release}
525
526 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit
527 The standard C++ library, needed for dynamically linked C++ programs.
528
529
530 %post -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit -p /sbin/ldconfig
531
532 %postun -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit -p /sbin/ldconfig
533
534 %package -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-locale
535 Summary:        Locale Data for the standard C++ shared library
536 License:        GPL-3.0-with-GCC-exception
537 Group:          Development/Building
538 Provides:       libstdc++%{libstdcxx_sover}-locale = %{version}-%{release}
539
540 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-locale
541 The standard C++ library locale data.
542
543
544 %package info
545 Summary:      Documentation for the GNU compiler collection
546 License:      GFDL-1.2
547 Group:        Development/Building
548 BuildArch:    noarch
549
550 %description info
551 GNU info-pages for the GNU compiler collection covering both user-level
552 and internals documentation.
553
554
555 %package objc
556 Summary:      GNU Objective C Compiler
557 License:        GPL-3.0+
558 Group:        Development/Languages
559 Requires: gcc49 = %{version}-%{release}
560 Requires: libobjc%{libobjc_sover} >= %{version}-%{release}
561
562 %description objc
563 This package contains the GNU Objective C compiler. Objective C is an
564 object oriented language, created by Next Inc. and used in their
565 Nextstep OS. The source code is available in the gcc package.
566 %package objc-32bit
567 Summary:      GNU Objective C Compiler
568 License:        GPL-3.0+
569 Group:        Development/Languages
570 Requires: gcc49 = %{version}-%{release}
571 Requires: libobjc%{libobjc_sover}-32bit >= %{version}-%{release}
572
573 %description objc-32bit
574 This package contains the GNU Objective C compiler. Objective C is an
575 object oriented language, created by Next Inc. and used in their
576 Nextstep OS. The source code is available in the gcc package.
577 %package objc-64bit
578 Summary:      GNU Objective C Compiler
579 License:        GPL-3.0+
580 Group:        Development/Languages
581 Requires: gcc49 = %{version}-%{release}
582 Requires: libobjc%{libobjc_sover}-64bit >= %{version}-%{release}
583
584 %description objc-64bit
585 This package contains the GNU Objective C compiler. Objective C is an
586 object oriented language, created by Next Inc. and used in their
587 Nextstep OS. The source code is available in the gcc package.
588
589 %package -n libobjc%{libobjc_sover}%{libobjc_suffix}
590 Summary:      Library for the GNU Objective C Compiler
591 License:        GPL-3.0-with-GCC-exception
592 Group:        Development/Building
593 Provides:       libobjc%{libobjc_sover} = %{version}-%{release}
594
595 %description -n libobjc%{libobjc_sover}%{libobjc_suffix}
596 The library for the GNU Objective C compiler.
597
598 %post -n libobjc%{libobjc_sover}%{libobjc_suffix} -p /sbin/ldconfig
599
600 %postun -n libobjc%{libobjc_sover}%{libobjc_suffix} -p /sbin/ldconfig
601 %package -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit
602 Summary:      Library for the GNU Objective C Compiler
603 License:        GPL-3.0-with-GCC-exception
604 Group:        Development/Building
605 Provides:       libobjc%{libobjc_sover}-32bit = %{version}-%{release}
606
607 %description -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit
608 The library for the GNU Objective C compiler.
609
610 %post -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit -p /sbin/ldconfig
611
612 %postun -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit -p /sbin/ldconfig
613 %package -n libobjc%{libobjc_sover}%{libobjc_suffix}-64bit
614 Summary:      Library for the GNU Objective C Compiler
615 License:        GPL-3.0-with-GCC-exception
616 Group:        Development/Building
617 Provides:       libobjc%{libobjc_sover}-64bit = %{version}-%{release}
618
619 %description -n libobjc%{libobjc_sover}%{libobjc_suffix}-64bit
620 The library for the GNU Objective C compiler.
621
622 %post -n libobjc%{libobjc_sover}%{libobjc_suffix}-64bit -p /sbin/ldconfig
623
624 %postun -n libobjc%{libobjc_sover}%{libobjc_suffix}-64bit -p /sbin/ldconfig
625
626 %package obj-c++
627 Summary:      GNU Objective C++ Compiler
628 License:        GPL-3.0+
629 Group:        Development/Languages
630 Requires: gcc49-objc = %{version}-%{release}
631 Requires: gcc49-c++ = %{version}-%{release}
632
633 %description obj-c++
634 This package contains the GNU Objective C++ compiler. Objective C++ is an
635 object oriented language, created by Next Inc. and used in their
636 Nextstep OS. The source code is available in the gcc package.
637
638
639 %package -n cpp49
640 Summary:      The GCC Preprocessor
641 License:        GPL-3.0+
642 Group:        Development/Languages
643
644 %description -n cpp49
645 This Package contains just the preprocessor that is used by the X11
646 packages.
647
648
649 %package ada
650 Summary:      GNU Ada95 Compiler Based on GCC (GNAT)
651 License:        GPL-3.0+
652 Group:        Development/Languages
653 Requires: gcc49 = %{version}-%{release}
654 Requires: libada49 = %{version}-%{release}
655
656 %description ada
657 This package contains an Ada95 compiler and associated development
658 tools based on the GNU GCC technology. Ada95 is the object oriented
659 successor of the Ada83 language. To build this package from source you
660 must have installed a binary version to bootstrap the compiler.
661 %package ada-32bit
662 Summary:      GNU Ada95 Compiler Based on GCC (GNAT)
663 License:        GPL-3.0+
664 Group:        Development/Languages
665 Requires: gcc49-32bit = %{version}-%{release}
666 Requires: libada49-32bit = %{version}-%{release}
667
668 %description ada-32bit
669 This package contains an Ada95 compiler and associated development
670 tools based on the GNU GCC technology. Ada95 is the object oriented
671 successor of the Ada83 language. To build this package from source you
672 must have installed a binary version to bootstrap the compiler.
673 %package ada-64bit
674 Summary:      GNU Ada95 Compiler Based on GCC (GNAT)
675 License:        GPL-3.0+
676 Group:        Development/Languages
677 Requires: gcc49-64bit = %{version}-%{release}
678 Requires: libada49-64bit = %{version}-%{release}
679
680 %description ada-64bit
681 This package contains an Ada95 compiler and associated development
682 tools based on the GNU GCC technology. Ada95 is the object oriented
683 successor of the Ada83 language. To build this package from source you
684 must have installed a binary version to bootstrap the compiler.
685
686 %package -n libada49
687 Summary:      GNU Ada Runtime Libraries
688 License:      GPL-3.0-with-GCC-exception
689 Group:        Development/Languages
690 Provides: libgnarl-4_9 = %{version}-%{release}
691 Provides: libgnat-4_9 = %{version}-%{release}
692
693 %description -n libada49
694 This package contains the shared libraries required to run programs
695 compiled with the GNU Ada compiler (GNAT) if they are compiled to use
696 shared libraries. It also contains the shared libraries for the
697 Implementation of the Ada Semantic Interface Specification (ASIS), the
698 implementation of Distributed Systems Programming (GLADE) and the Posix
699 1003.5 Binding (Florist).
700
701 %post -n libada49 -p /sbin/ldconfig
702
703 %postun -n libada49 -p /sbin/ldconfig
704 %package -n libada49-32bit
705 Summary:      GNU Ada Runtime Libraries
706 License:      GPL-3.0-with-GCC-exception
707 Group:        Development/Languages
708 Provides: libgnarl-4_9-32bit = %{version}-%{release}
709 Provides: libgnat-4_9-32bit = %{version}-%{release}
710
711 %description -n libada49-32bit
712 This package contains the shared libraries required to run programs
713 compiled with the GNU Ada compiler (GNAT) if they are compiled to use
714 shared libraries. It also contains the shared libraries for the
715 Implementation of the Ada Semantic Interface Specification (ASIS), the
716 implementation of Distributed Systems Programming (GLADE) and the Posix
717 1003.5 Binding (Florist).
718
719 %post -n libada49-32bit -p /sbin/ldconfig
720
721 %postun -n libada49-32bit -p /sbin/ldconfig
722 %package -n libada49-64bit
723 Summary:      GNU Ada Runtime Libraries
724 License:      GPL-3.0-with-GCC-exception
725 Group:        Development/Languages
726 Provides: libgnarl-4_9-64bit = %{version}-%{release}
727 Provides: libgnat-4_9-64bit = %{version}-%{release}
728
729 %description -n libada49-64bit
730 This package contains the shared libraries required to run programs
731 compiled with the GNU Ada compiler (GNAT) if they are compiled to use
732 shared libraries. It also contains the shared libraries for the
733 Implementation of the Ada Semantic Interface Specification (ASIS), the
734 implementation of Distributed Systems Programming (GLADE) and the Posix
735 1003.5 Binding (Florist).
736
737 %post -n libada49-64bit -p /sbin/ldconfig
738
739 %postun -n libada49-64bit -p /sbin/ldconfig
740
741 %package fortran
742 Summary:      The GNU Fortran Compiler and Support Files
743 License:        GPL-3.0+
744 Group:        Development/Languages
745 Requires: gcc49 = %{version}-%{release}
746 Requires: libgfortran%{libgfortran_sover} >= %{version}-%{release}
747 %ifarch %quadmath_arch
748 Requires: libquadmath%{libquadmath_sover} >= %{version}-%{release}
749 %endif
750
751 %description fortran
752 This is the Fortran compiler of the GNU Compiler Collection (GCC).
753 %package fortran-32bit
754 Summary:      The GNU Fortran Compiler and Support Files
755 License:        GPL-3.0+
756 Group:        Development/Languages
757 Requires: gcc49 = %{version}-%{release}
758 Requires: libgfortran%{libgfortran_sover}-32bit >= %{version}-%{release}
759 %ifarch %quadmath_arch
760 Requires: libquadmath%{libquadmath_sover}-32bit >= %{version}-%{release}
761 %endif
762
763 %description fortran-32bit
764 This is the Fortran compiler of the GNU Compiler Collection (GCC).
765 %package fortran-64bit
766 Summary:      The GNU Fortran Compiler and Support Files
767 License:        GPL-3.0+
768 Group:        Development/Languages
769 Requires: gcc49 = %{version}-%{release}
770 Requires: libgfortran%{libgfortran_sover}-64bit >= %{version}-%{release}
771 %ifarch %quadmath_arch
772 Requires: libquadmath%{libquadmath_sover}-64bit >= %{version}-%{release}
773 %endif
774
775 %description fortran-64bit
776 This is the Fortran compiler of the GNU Compiler Collection (GCC).
777
778 %package -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}
779 Summary:      The GNU Fortran Compiler Runtime Library
780 License:        GPL-3.0-with-GCC-exception
781 Group:        Development/Languages
782 %ifarch %quadmath_arch
783 Requires: libquadmath%{libquadmath_sover} >= %{version}-%{release}
784 %endif
785 Provides:       libgfortran%{libgfortran_sover} = %{version}-%{release}
786
787 %description -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}
788 The runtime library needed to run programs compiled with the Fortran compiler
789 of the GNU Compiler Collection (GCC).
790
791 %post -n libgfortran%{libgfortran_sover}%{libgfortran_suffix} -p /sbin/ldconfig
792
793 %postun -n libgfortran%{libgfortran_sover}%{libgfortran_suffix} -p /sbin/ldconfig
794 %package -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit
795 Summary:      The GNU Fortran Compiler Runtime Library
796 License:        GPL-3.0-with-GCC-exception
797 Group:        Development/Languages
798 %ifarch %quadmath_arch
799 Requires: libquadmath%{libquadmath_sover}-32bit >= %{version}-%{release}
800 %endif
801 Provides:       libgfortran%{libgfortran_sover}-32bit = %{version}-%{release}
802
803 %description -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit
804 The runtime library needed to run programs compiled with the Fortran compiler
805 of the GNU Compiler Collection (GCC).
806
807 %post -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit -p /sbin/ldconfig
808
809 %postun -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit -p /sbin/ldconfig
810 %package -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-64bit
811 Summary:      The GNU Fortran Compiler Runtime Library
812 License:        GPL-3.0-with-GCC-exception
813 Group:        Development/Languages
814 %ifarch %quadmath_arch
815 Requires: libquadmath%{libquadmath_sover}-64bit >= %{version}-%{release}
816 %endif
817 Provides:       libgfortran%{libgfortran_sover}-64bit = %{version}-%{release}
818
819 %description -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-64bit
820 The runtime library needed to run programs compiled with the Fortran compiler
821 of the GNU Compiler Collection (GCC).
822
823 %post -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-64bit -p /sbin/ldconfig
824
825 %postun -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-64bit -p /sbin/ldconfig
826
827 %package -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}
828 Summary:      The GNU Fortran Compiler Quadmath Runtime Library
829 License:        LGPL-2.1
830 Group:        Development/Languages
831 Provides:       libquadmath%{libquadmath_sover} = %{version}-%{release}
832
833 %description -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}
834 The runtime library needed to run programs compiled with the Fortran compiler
835 of the GNU Compiler Collection (GCC) and quadruple precision floating point
836 operations.
837
838 %post -n libquadmath%{libquadmath_sover}%{libquadmath_suffix} -p /sbin/ldconfig
839
840 %postun -n libquadmath%{libquadmath_sover}%{libquadmath_suffix} -p /sbin/ldconfig
841 %package -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit
842 Summary:      The GNU Fortran Compiler Quadmath Runtime Library
843 License:        LGPL-2.1
844 Group:        Development/Languages
845 Provides:       libquadmath%{libquadmath_sover}-32bit = %{version}-%{release}
846
847 %description -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit
848 The runtime library needed to run programs compiled with the Fortran compiler
849 of the GNU Compiler Collection (GCC) and quadruple precision floating point
850 operations.
851
852 %post -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit -p /sbin/ldconfig
853
854 %postun -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit -p /sbin/ldconfig
855 %package -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-64bit
856 Summary:      The GNU Fortran Compiler Quadmath Runtime Library
857 License:        LGPL-2.1
858 Group:        Development/Languages
859 Provides:       libquadmath%{libquadmath_sover}-64bit = %{version}-%{release}
860
861 %description -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-64bit
862 The runtime library needed to run programs compiled with the Fortran compiler
863 of the GNU Compiler Collection (GCC) and quadruple precision floating point
864 operations.
865
866 %post -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-64bit -p /sbin/ldconfig
867
868 %postun -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-64bit -p /sbin/ldconfig
869
870 %package -n libitm%{libitm_sover}%{libitm_suffix}
871 Summary:      The GNU Compiler Transactional Memory Runtime Library
872 License:        MIT
873 Group:        Development/Languages
874 Provides:       libitm%{libitm_sover} = %{version}-%{release}
875
876 %description -n libitm%{libitm_sover}%{libitm_suffix}
877 The runtime library needed to run programs compiled with the
878 -fgnu-tm option of the GNU Compiler Collection (GCC).
879
880 %post -n libitm%{libitm_sover}%{libitm_suffix} -p /sbin/ldconfig
881
882 %postun -n libitm%{libitm_sover}%{libitm_suffix} -p /sbin/ldconfig
883 %package -n libitm%{libitm_sover}%{libitm_suffix}-32bit
884 Summary:      The GNU Compiler Transactional Memory Runtime Library
885 License:        MIT
886 Group:        Development/Languages
887 Provides:       libitm%{libitm_sover}-32bit = %{version}-%{release}
888
889 %description -n libitm%{libitm_sover}%{libitm_suffix}-32bit
890 The runtime library needed to run programs compiled with the
891 -fgnu-tm option of the GNU Compiler Collection (GCC).
892
893 %post -n libitm%{libitm_sover}%{libitm_suffix}-32bit -p /sbin/ldconfig
894
895 %postun -n libitm%{libitm_sover}%{libitm_suffix}-32bit -p /sbin/ldconfig
896 %package -n libitm%{libitm_sover}%{libitm_suffix}-64bit
897 Summary:      The GNU Compiler Transactional Memory Runtime Library
898 License:        MIT
899 Group:        Development/Languages
900 Provides:       libitm%{libitm_sover}-64bit = %{version}-%{release}
901
902 %description -n libitm%{libitm_sover}%{libitm_suffix}-64bit
903 The runtime library needed to run programs compiled with the
904 -fgnu-tm option of the GNU Compiler Collection (GCC).
905
906 %post -n libitm%{libitm_sover}%{libitm_suffix}-64bit -p /sbin/ldconfig
907
908 %postun -n libitm%{libitm_sover}%{libitm_suffix}-64bit -p /sbin/ldconfig
909
910 %package -n libasan%{libasan_sover}%{libasan_suffix}
911 Summary:      The GNU Compiler Address Sanitizer Runtime Library
912 License:        MIT
913 Group:        Development/Languages
914 Provides:       libasan%{libasan_sover} = %{version}-%{release}
915
916 %description -n libasan%{libasan_sover}%{libasan_suffix}
917 The runtime library needed to run programs compiled with the
918 -fsanitize=address option of the GNU Compiler Collection (GCC).
919
920 %post -n libasan%{libasan_sover}%{libasan_suffix} -p /sbin/ldconfig
921
922 %postun -n libasan%{libasan_sover}%{libasan_suffix} -p /sbin/ldconfig
923 %package -n libasan%{libasan_sover}%{libasan_suffix}-32bit
924 Summary:      The GNU Compiler Address Sanitizer Runtime Library
925 License:        MIT
926 Group:        Development/Languages
927 Provides:       libasan%{libasan_sover}-32bit = %{version}-%{release}
928
929 %description -n libasan%{libasan_sover}%{libasan_suffix}-32bit
930 The runtime library needed to run programs compiled with the
931 -fsanitize=address option of the GNU Compiler Collection (GCC).
932
933 %post -n libasan%{libasan_sover}%{libasan_suffix}-32bit -p /sbin/ldconfig
934
935 %postun -n libasan%{libasan_sover}%{libasan_suffix}-32bit -p /sbin/ldconfig
936 %package -n libasan%{libasan_sover}%{libasan_suffix}-64bit
937 Summary:      The GNU Compiler Address Sanitizer Runtime Library
938 License:        MIT
939 Group:        Development/Languages
940 Provides:       libasan%{libasan_sover}-64bit = %{version}-%{release}
941
942 %description -n libasan%{libasan_sover}%{libasan_suffix}-64bit
943 The runtime library needed to run programs compiled with the
944 -fsanitize=address option of the GNU Compiler Collection (GCC).
945
946 %post -n libasan%{libasan_sover}%{libasan_suffix}-64bit -p /sbin/ldconfig
947
948 %postun -n libasan%{libasan_sover}%{libasan_suffix}-64bit -p /sbin/ldconfig
949
950 %package -n libtsan%{libtsan_sover}%{libtsan_suffix}
951 Summary:      The GNU Compiler Thread Sanitizer Runtime Library
952 License:        MIT
953 Group:        Development/Languages
954 Provides:       libtsan%{libtsan_sover} = %{version}-%{release}
955
956 %description -n libtsan%{libtsan_sover}%{libtsan_suffix}
957 The runtime library needed to run programs compiled with the
958 -fsanitize=thread option of the GNU Compiler Collection (GCC).
959
960 %post -n libtsan%{libtsan_sover}%{libtsan_suffix} -p /sbin/ldconfig
961
962 %postun -n libtsan%{libtsan_sover}%{libtsan_suffix} -p /sbin/ldconfig
963 %package -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit
964 Summary:      The GNU Compiler Thread Sanitizer Runtime Library
965 License:        MIT
966 Group:        Development/Languages
967 Provides:       libtsan%{libtsan_sover}-32bit = %{version}-%{release}
968
969 %description -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit
970 The runtime library needed to run programs compiled with the
971 -fsanitize=thread option of the GNU Compiler Collection (GCC).
972
973 %post -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit -p /sbin/ldconfig
974
975 %postun -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit -p /sbin/ldconfig
976 %package -n libtsan%{libtsan_sover}%{libtsan_suffix}-64bit
977 Summary:      The GNU Compiler Thread Sanitizer Runtime Library
978 License:        MIT
979 Group:        Development/Languages
980 Provides:       libtsan%{libtsan_sover}-64bit = %{version}-%{release}
981
982 %description -n libtsan%{libtsan_sover}%{libtsan_suffix}-64bit
983 The runtime library needed to run programs compiled with the
984 -fsanitize=thread option of the GNU Compiler Collection (GCC).
985
986 %post -n libtsan%{libtsan_sover}%{libtsan_suffix}-64bit -p /sbin/ldconfig
987
988 %postun -n libtsan%{libtsan_sover}%{libtsan_suffix}-64bit -p /sbin/ldconfig
989
990 %package -n libatomic%{libatomic_sover}%{libatomic_suffix}
991 Summary:      The GNU Compiler Atomic Operations Runtime Library
992 License:      GPL-3.0-with-GCC-exception
993 Group:        Development/Languages
994 Provides:       libatomic%{libatomic_sover} = %{version}-%{release}
995
996 %description -n libatomic%{libatomic_sover}%{libatomic_suffix}
997 The runtime library for atomic operations of the GNU Compiler Collection (GCC).
998
999 %post -n libatomic%{libatomic_sover}%{libatomic_suffix} -p /sbin/ldconfig
1000
1001 %postun -n libatomic%{libatomic_sover}%{libatomic_suffix} -p /sbin/ldconfig
1002 %package -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit
1003 Summary:      The GNU Compiler Atomic Operations Runtime Library
1004 License:      GPL-3.0-with-GCC-exception
1005 Group:        Development/Languages
1006 Provides:       libatomic%{libatomic_sover}-32bit = %{version}-%{release}
1007
1008 %description -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit
1009 The runtime library for atomic operations of the GNU Compiler Collection (GCC).
1010
1011 %post -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit -p /sbin/ldconfig
1012
1013 %postun -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit -p /sbin/ldconfig
1014 %package -n libatomic%{libatomic_sover}%{libatomic_suffix}-64bit
1015 Summary:      The GNU Compiler Atomic Operations Runtime Library
1016 License:      GPL-3.0-with-GCC-exception
1017 Group:        Development/Languages
1018 Provides:       libatomic%{libatomic_sover}-64bit = %{version}-%{release}
1019
1020 %description -n libatomic%{libatomic_sover}%{libatomic_suffix}-64bit
1021 The runtime library for atomic operations of the GNU Compiler Collection (GCC).
1022
1023 %post -n libatomic%{libatomic_sover}%{libatomic_suffix}-64bit -p /sbin/ldconfig
1024
1025 %postun -n libatomic%{libatomic_sover}%{libatomic_suffix}-64bit -p /sbin/ldconfig
1026
1027 %package -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}
1028 Summary:      The GNU Compiler Cilk+ Runtime Library
1029 License:        MIT
1030 Group:        Development/Languages
1031 Provides:       libcilkrts%{libcilkrts_sover} = %{version}-%{release}
1032
1033 %description -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}
1034 The runtime library needed to run programs compiled with the
1035 -fcilkplus option of the GNU Compiler Collection (GCC).
1036
1037 %post -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix} -p /sbin/ldconfig
1038
1039 %postun -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix} -p /sbin/ldconfig
1040 %package -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit
1041 Summary:      The GNU Compiler Cilk+ Runtime Library
1042 License:        MIT
1043 Group:        Development/Languages
1044 Provides:       libcilkrts%{libcilkrts_sover}-32bit = %{version}-%{release}
1045
1046 %description -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit
1047 The runtime library needed to run programs compiled with the
1048 -fcilkplus option of the GNU Compiler Collection (GCC).
1049
1050 %post -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit -p /sbin/ldconfig
1051
1052 %postun -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit -p /sbin/ldconfig
1053 %package -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-64bit
1054 Summary:      The GNU Compiler Cilk+ Runtime Library
1055 License:        MIT
1056 Group:        Development/Languages
1057 Provides:       libcilkrts%{libcilkrts_sover}-64bit = %{version}-%{release}
1058
1059 %description -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-64bit
1060 The runtime library needed to run programs compiled with the
1061 -fcilkplus option of the GNU Compiler Collection (GCC).
1062
1063 %post -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-64bit -p /sbin/ldconfig
1064
1065 %postun -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-64bit -p /sbin/ldconfig
1066
1067 %package -n liblsan%{liblsan_sover}%{liblsan_suffix}
1068 Summary:      The GNU Compiler Leak Sanitizer Runtime Library
1069 License:        MIT
1070 Group:        Development/Languages
1071 Provides:       liblsan%{liblsan_sover} = %{version}-%{release}
1072
1073 %description -n liblsan%{liblsan_sover}%{liblsan_suffix}
1074 The runtime library needed to run programs compiled with the
1075 -fsanitize=leak option of the GNU Compiler Collection (GCC).
1076
1077 %post -n liblsan%{liblsan_sover}%{liblsan_suffix} -p /sbin/ldconfig
1078
1079 %postun -n liblsan%{liblsan_sover}%{liblsan_suffix} -p /sbin/ldconfig
1080 %package -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit
1081 Summary:      The GNU Compiler Leak Sanitizer Runtime Library
1082 License:        MIT
1083 Group:        Development/Languages
1084 Provides:       liblsan%{liblsan_sover}-32bit = %{version}-%{release}
1085
1086 %description -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit
1087 The runtime library needed to run programs compiled with the
1088 -fsanitize=leak option of the GNU Compiler Collection (GCC).
1089
1090 %post -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit -p /sbin/ldconfig
1091
1092 %postun -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit -p /sbin/ldconfig
1093 %package -n liblsan%{liblsan_sover}%{liblsan_suffix}-64bit
1094 Summary:      The GNU Compiler Leak Sanitizer Runtime Library
1095 License:        MIT
1096 Group:        Development/Languages
1097 Provides:       liblsan%{liblsan_sover}-64bit = %{version}-%{release}
1098
1099 %description -n liblsan%{liblsan_sover}%{liblsan_suffix}-64bit
1100 The runtime library needed to run programs compiled with the
1101 -fsanitize=leak option of the GNU Compiler Collection (GCC).
1102
1103 %post -n liblsan%{liblsan_sover}%{liblsan_suffix}-64bit -p /sbin/ldconfig
1104
1105 %postun -n liblsan%{liblsan_sover}%{liblsan_suffix}-64bit -p /sbin/ldconfig
1106
1107 %package -n libubsan%{libubsan_sover}%{libubsan_suffix}
1108 Summary:      The GNU Compiler Undefined Sanitizer Runtime Library
1109 License:        MIT
1110 Group:        Development/Languages
1111 Provides:       libubsan%{libubsan_sover} = %{version}-%{release}
1112
1113 %description -n libubsan%{libubsan_sover}%{libubsan_suffix}
1114 The runtime library needed to run programs compiled with the
1115 -fsanitize=undefined option of the GNU Compiler Collection (GCC).
1116
1117 %post -n libubsan%{libubsan_sover}%{libubsan_suffix} -p /sbin/ldconfig
1118
1119 %postun -n libubsan%{libubsan_sover}%{libubsan_suffix} -p /sbin/ldconfig
1120 %package -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit
1121 Summary:      The GNU Compiler Undefined Sanitizer Runtime Library
1122 License:        MIT
1123 Group:        Development/Languages
1124 Provides:       libubsan%{libubsan_sover}-32bit = %{version}-%{release}
1125
1126 %description -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit
1127 The runtime library needed to run programs compiled with the
1128 -fsanitize=undefined option of the GNU Compiler Collection (GCC).
1129
1130 %post -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit -p /sbin/ldconfig
1131
1132 %postun -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit -p /sbin/ldconfig
1133 %package -n libubsan%{libubsan_sover}%{libubsan_suffix}-64bit
1134 Summary:      The GNU Compiler Undefined Sanitizer Runtime Library
1135 License:        MIT
1136 Group:        Development/Languages
1137 Provides:       libubsan%{libubsan_sover}-64bit = %{version}-%{release}
1138
1139 %description -n libubsan%{libubsan_sover}%{libubsan_suffix}-64bit
1140 The runtime library needed to run programs compiled with the
1141 -fsanitize=undefined option of the GNU Compiler Collection (GCC).
1142
1143 %post -n libubsan%{libubsan_sover}%{libubsan_suffix}-64bit -p /sbin/ldconfig
1144
1145 %postun -n libubsan%{libubsan_sover}%{libubsan_suffix}-64bit -p /sbin/ldconfig
1146
1147 %package -n libvtv%{libvtv_sover}%{libvtv_suffix}
1148 Summary:      The GNU Compiler Vtable Verifier Runtime Library
1149 License:        MIT
1150 Group:        Development/Languages
1151 Provides:       libvtv%{libvtv_sover} = %{version}-%{release}
1152
1153 %description -n libvtv%{libvtv_sover}%{libvtv_suffix}
1154 The runtime library needed to run programs compiled with the
1155 -fvtable-verify option of the GNU Compiler Collection (GCC).
1156
1157 %post -n libvtv%{libvtv_sover}%{libvtv_suffix} -p /sbin/ldconfig
1158
1159 %postun -n libvtv%{libvtv_sover}%{libvtv_suffix} -p /sbin/ldconfig
1160 %package -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit
1161 Summary:      The GNU Compiler Vtable Verifier Runtime Library
1162 License:        MIT
1163 Group:        Development/Languages
1164 Provides:       libvtv%{libvtv_sover}-32bit = %{version}-%{release}
1165
1166 %description -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit
1167 The runtime library needed to run programs compiled with the
1168 -fvtable-verify option of the GNU Compiler Collection (GCC).
1169
1170 %post -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit -p /sbin/ldconfig
1171
1172 %postun -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit -p /sbin/ldconfig
1173 %package -n libvtv%{libvtv_sover}%{libvtv_suffix}-64bit
1174 Summary:      The GNU Compiler Vtable Verifier Runtime Library
1175 License:        MIT
1176 Group:        Development/Languages
1177 Provides:       libvtv%{libvtv_sover}-64bit = %{version}-%{release}
1178
1179 %description -n libvtv%{libvtv_sover}%{libvtv_suffix}-64bit
1180 The runtime library needed to run programs compiled with the
1181 -fvtable-verify option of the GNU Compiler Collection (GCC).
1182
1183 %post -n libvtv%{libvtv_sover}%{libvtv_suffix}-64bit -p /sbin/ldconfig
1184
1185 %postun -n libvtv%{libvtv_sover}%{libvtv_suffix}-64bit -p /sbin/ldconfig
1186
1187
1188 %package -n libgcj49
1189 Summary:      Java Runtime Library for gcc
1190 License:      GPL-2.0-with-classpath-exception
1191 Group:        Development/Building
1192 Requires:   libgcj49-jar = %{version}-%{release}
1193 Provides: libgcj%{libgcj_sover} = %{version}-%{release}
1194 Provides: libgij%{libgcj_sover} = %{version}-%{release}
1195 Provides: libgcj-tools%{libgcj_sover} = %{version}-%{release}
1196
1197 %description -n libgcj49
1198 This library is needed if you want to use the GNU Java compiler, gcj.
1199 Source code for this package is in gcc.
1200
1201 %post -n libgcj49 -p /sbin/ldconfig
1202
1203 %postun -n libgcj49 -p /sbin/ldconfig
1204
1205
1206 %package -n gcc49-java
1207 Summary:      The GNU Java Compiler
1208 License:        GPL-3.0+
1209 Group:        Development/Languages
1210 Requires: gcc49 = %{version}
1211 Requires: libgcj49-devel = %{version}-%{release}
1212
1213 %description -n gcc49-java
1214 The Java compiler from the GCC-tools-suite.
1215
1216
1217 %package -n libgcj_bc%{libgcj_bc_sover}%{libgcj_bc_suffix}
1218 Summary:      Fake library for BC-ABI compatibility.
1219 License:        GPL-2.0-with-classpath-exception
1220 Group:        Development/Languages
1221 # libgcj_bc is special in that it just contains a symlink to
1222 # a proper libgcj version.  So require that library and add
1223 # provides for the shlib version as created at link time
1224 Requires: libgcj%{libgcj_sover} >= %{version}-%{release}
1225 %ifarch x86_64 ia64 ppc64 s390x sparc64 aarch64
1226 Provides: libgcj_bc.so.%{libgcj_bc_sover}()(64bit)
1227 %else
1228 Provides: libgcj_bc.so.%{libgcj_bc_sover}
1229 %endif
1230 Provides:       libgcj_bc%{libgcj_bc_sover} = %{version}-%{release}
1231
1232 %description -n libgcj_bc%{libgcj_bc_sover}%{libgcj_bc_suffix}
1233 A fake library that is used at link time only. It ensures that
1234 binaries built with the BC-ABI link against a constant SONAME.
1235 This way, BC-ABI binaries continue to work if the SONAME underlying
1236 libgcj.so changes.
1237
1238
1239 %package -n libgcj49-jar
1240 Summary:      Java runtime library (jar files).
1241 License:        GPL-2.0-with-classpath-exception
1242 Group:        Development/Languages
1243
1244 %description -n libgcj49-jar
1245 These are the jar files that go along with the gcj front end to gcc.
1246
1247
1248 %package -n libgcj49-devel
1249 Summary:      Include Files and Libraries mandatory for Development.
1250 License:        GPL-2.0-with-classpath-exception
1251 Group:        Development/Languages
1252 Requires: libgcj%{libgcj_sover} >= %{version}-%{release}
1253 Requires: libgcj_bc%{libgcj_bc_sover} >= %{version}-%{release}
1254 Requires: libgcj49-jar = %{version}-%{release}
1255
1256 %description -n libgcj49-devel
1257 This package contains all necessary include files and libraries needed
1258 to develop applications that require these.
1259
1260
1261 %package -n gcc49-gij
1262 Summary:      Java Bytecode Interpreter for gcc
1263 License:      GPL-2.0-with-classpath-exception
1264 Group:        Development/Languages
1265 Requires: libgcj%{libgcj_sover} >= %{version}-%{release}
1266
1267 %description -n gcc49-gij
1268 This package contains the java bytecode interpreter gij and related tools.
1269
1270
1271 %package -n libstdc++49-doc
1272 Summary:      Documentation for the GNU C++ standard library
1273 License:        GPL-3.0+
1274 Group:        Development/Building
1275 BuildArch:    noarch
1276
1277 %description -n libstdc++49-doc
1278 Extensive HTML documentation for the GNU C++ standard library.
1279
1280
1281 %package -n libffi%{libffi_sover}%{libffi_suffix}
1282 Summary:      Foreign Function Interface library
1283 License:        BSD-3-Clause
1284 Group:        Development/Building
1285 Provides:       libffi%{libffi_sover} = %{version}-%{release}
1286
1287 %description -n libffi%{libffi_sover}%{libffi_suffix}
1288 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.
1289
1290 %post -n libffi%{libffi_sover}%{libffi_suffix} -p /sbin/ldconfig
1291
1292 %postun -n libffi%{libffi_sover}%{libffi_suffix} -p /sbin/ldconfig
1293 %package -n libffi%{libffi_sover}%{libffi_suffix}-32bit
1294 Summary:      Foreign Function Interface library
1295 License:        BSD-3-Clause
1296 Group:        Development/Building
1297 Provides:       libffi%{libffi_sover}-32bit = %{version}-%{release}
1298
1299 %description -n libffi%{libffi_sover}%{libffi_suffix}-32bit
1300 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.
1301
1302 %post -n libffi%{libffi_sover}%{libffi_suffix}-32bit -p /sbin/ldconfig
1303
1304 %postun -n libffi%{libffi_sover}%{libffi_suffix}-32bit -p /sbin/ldconfig
1305 %package -n libffi%{libffi_sover}%{libffi_suffix}-64bit
1306 Summary:      Foreign Function Interface library
1307 License:        BSD-3-Clause
1308 Group:        Development/Building
1309 Provides:       libffi%{libffi_sover}-64bit = %{version}-%{release}
1310
1311 %description -n libffi%{libffi_sover}%{libffi_suffix}-64bit
1312 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.
1313
1314 %post -n libffi%{libffi_sover}%{libffi_suffix}-64bit -p /sbin/ldconfig
1315
1316 %postun -n libffi%{libffi_sover}%{libffi_suffix}-64bit -p /sbin/ldconfig
1317
1318 %package -n libffi49-devel
1319 Summary:      Foreign Function Interface library development files
1320 License:        BSD 3-Clause
1321 Group:        Development/Building
1322 Requires: libffi%{libffi_sover} >= %{version}-%{release}
1323 Provides: libffi-devel = %{version}-%{release}
1324
1325 %description -n libffi49-devel
1326 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.
1327 %package -n libffi49-devel-32bit
1328 Summary:      Foreign Function Interface library development files
1329 License:        BSD 3-Clause
1330 Group:        Development/Building
1331 Requires: libffi%{libffi_sover}-32bit >= %{version}-%{release}
1332 Provides: libffi-devel-32bit = %{version}-%{release}
1333
1334 %description -n libffi49-devel-32bit
1335 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.
1336 %package -n libffi49-devel-64bit
1337 Summary:      Foreign Function Interface library development files
1338 License:        BSD 3-Clause
1339 Group:        Development/Building
1340 Requires: libffi%{libffi_sover}-64bit >= %{version}-%{release}
1341 Provides: libffi-devel-64bit = %{version}-%{release}
1342
1343 %description -n libffi49-devel-64bit
1344 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.
1345
1346 %package go
1347 Summary:      GNU Go Compiler
1348 License:        GPL-3.0+
1349 Group:        Development/Languages
1350 Requires: gcc49 = %{version}-%{release}
1351 Requires: libgo%{libgo_sover} >= %{version}-%{release}
1352
1353 %description go
1354 This package contains a Go compiler and associated development
1355 files based on the GNU GCC technology.
1356 %package go-32bit
1357 Summary:      GNU Go Compiler
1358 License:        GPL-3.0+
1359 Group:        Development/Languages
1360 Requires: gcc49-32bit = %{version}-%{release}
1361 Requires: libgo%{libgo_sover}-32bit >= %{version}-%{release}
1362
1363 %description go-32bit
1364 This package contains a Go compiler and associated development
1365 files based on the GNU GCC technology.
1366 %package go-64bit
1367 Summary:      GNU Go Compiler
1368 License:        GPL-3.0+
1369 Group:        Development/Languages
1370 Requires: gcc49-64bit = %{version}-%{release}
1371 Requires: libgo%{libgo_sover}-64bit >= %{version}-%{release}
1372
1373 %description go-64bit
1374 This package contains a Go compiler and associated development
1375 files based on the GNU GCC technology.
1376
1377 %package -n libgo%{libgo_sover}%{libgo_suffix}
1378 Summary:      GNU Go compiler runtime library
1379 License:        BSD-3-Clause
1380 Group:        Development/Languages
1381 Provides:       libgo%{libgo_sover} = %{version}-%{release}
1382
1383 %description -n libgo%{libgo_sover}%{libgo_suffix}
1384 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.
1385
1386 %post -n libgo%{libgo_sover}%{libgo_suffix} -p /sbin/ldconfig
1387
1388 %postun -n libgo%{libgo_sover}%{libgo_suffix} -p /sbin/ldconfig
1389 %package -n libgo%{libgo_sover}%{libgo_suffix}-32bit
1390 Summary:      GNU Go compiler runtime library
1391 License:        BSD-3-Clause
1392 Group:        Development/Languages
1393 Provides:       libgo%{libgo_sover}-32bit = %{version}-%{release}
1394
1395 %description -n libgo%{libgo_sover}%{libgo_suffix}-32bit
1396 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.
1397
1398 %post -n libgo%{libgo_sover}%{libgo_suffix}-32bit -p /sbin/ldconfig
1399
1400 %postun -n libgo%{libgo_sover}%{libgo_suffix}-32bit -p /sbin/ldconfig
1401 %package -n libgo%{libgo_sover}%{libgo_suffix}-64bit
1402 Summary:      GNU Go compiler runtime library
1403 License:        BSD-3-Clause
1404 Group:        Development/Languages
1405 Provides:       libgo%{libgo_sover}-64bit = %{version}-%{release}
1406
1407 %description -n libgo%{libgo_sover}%{libgo_suffix}-64bit
1408 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.
1409
1410 %post -n libgo%{libgo_sover}%{libgo_suffix}-64bit -p /sbin/ldconfig
1411
1412 %postun -n libgo%{libgo_sover}%{libgo_suffix}-64bit -p /sbin/ldconfig
1413
1414
1415 %package -n gcc49-testresults
1416 Summary:      Testsuite results
1417 License:        SUSE-Public-Domain
1418 Group:        Development/Languages
1419
1420 %description -n gcc49-testresults
1421 Results from running the gcc and target library testsuites.
1422
1423
1424
1425
1426 # Define the canonical target and host architecture
1427 #   %gcc_target_arch  is supposed to be the full target triple
1428 #   %TARGET_ARCH      is the canonicalized CPU part
1429 #   %CONFIGURE_TARGET is the target triple used for --target=
1430 %if 0%{?gcc_target_arch:1}
1431 %define CONFIGURE_TARGET %{gcc_target_arch}
1432 %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/;")
1433 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc"
1434 %define CONFIGURE_TARGET powerpc64-tizen-linux
1435 %endif
1436 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "powerpc64"
1437 %define CONFIGURE_TARGET powerpc64-tizen-linux
1438 %endif
1439 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "i586"
1440 %define CONFIGURE_TARGET i586-tizen-linux
1441 %endif
1442 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "aarch64"
1443 %define CONFIGURE_TARGET aarch64-tizen-linux
1444 %endif
1445 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7l"
1446 %define CONFIGURE_TARGET armv7l-tizen-linux-gnueabi
1447 %endif
1448 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv7hl"
1449 %define CONFIGURE_TARGET armv7hl-tizen-linux-gnueabi
1450 %endif
1451 %if 0%{?gcc_icecream:1} && %{TARGET_ARCH} == "armv5tel"
1452 %define CONFIGURE_TARGET armv5tel-tizen-linux-gnueabi
1453 %endif
1454 %else
1455 %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
1456 %endif
1457 %define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
1458
1459 %define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
1460 %ifarch ppc
1461 %define GCCDIST powerpc64-tizen-linux
1462 %else
1463 %ifarch %sparc
1464 %define GCCDIST sparc64-tizen-linux
1465 %else
1466 %ifarch %arm
1467 %define GCCDIST %{HOST_ARCH}-tizen-linux-gnueabi
1468 %else
1469 %define GCCDIST %{HOST_ARCH}-tizen-linux
1470 %endif
1471 %endif
1472 %endif
1473
1474 %define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
1475 %define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
1476
1477
1478 # Versionspecific directories
1479 %define versmainlibdir %{libsubdir}
1480 %define versmainlibdirbi32 %{libsubdir}/32
1481 %define versmainlibdirbi64 %{libsubdir}/64
1482 %ifarch ppc
1483 %define versmainlibdirbi32 %{libsubdir}
1484 %define versmainlibdirbi64 %{libsubdir}/64
1485 %endif
1486 %if %{build_primary_64bit}
1487 %define versmainlibdirbi %{versmainlibdirbi32}
1488 %else
1489 %define versmainlibdirbi %{versmainlibdirbi64}
1490 %endif
1491
1492 %define mainlibdir %{_libdir}
1493 %define mainlibdirbi32 %{_prefix}/lib
1494 %define mainlibdirbi64 %{_prefix}/lib64
1495 %if %{build_primary_64bit}
1496 %define mainlibdirbi %{mainlibdirbi32}
1497 %else
1498 %define mainlibdirbi %{mainlibdirbi64}
1499 %endif
1500
1501
1502 # Now define a few macros that make it easy to package libs and
1503 # related files just to the right package, without caring for the
1504 # exact path the files are in.
1505 #   %mainlib  package X from all dirs that belong to the main package
1506 #   %biarchlib   package X from all dirs that belong to the -32/64bit package
1507 %define mainlib() %{mainlibdir}/%1\
1508 %{nil}
1509 %define biarchlib() %{nil}
1510 %if %{biarch}
1511 %if !%{separate_biarch}
1512 %define mainlib() %{mainlibdir}/%1\
1513 %{mainlibdirbi}/%1\
1514 %{nil}
1515 %else
1516 %define biarchlib() %{mainlibdirbi}/%1\
1517 %{nil}
1518 %endif
1519 %endif
1520
1521 %define versmainlib() %{versmainlibdir}/%1\
1522 %{nil}
1523 %define versbiarchlib() %{nil}
1524 %if %{biarch}
1525 %if !%{separate_biarch}
1526 %define versmainlib() %{versmainlibdir}/%1\
1527 %{versmainlibdirbi}/%1\
1528 %{nil}
1529 %else
1530 %define versbiarchlib() %{versmainlibdirbi}/%1\
1531 %{nil}
1532 %endif
1533 %endif
1534
1535
1536
1537 %prep
1538 %setup -q -n gcc-%{version}
1539
1540 # We are configuring ppc as ppc64 but with switched multilibs.  Adjust
1541 # the libstdc++ abi testsuite baseline files accordingly
1542 %ifarch ppc
1543 if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
1544   mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
1545   mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
1546         libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
1547   mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
1548         libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
1549 fi
1550 %endif
1551
1552 %build
1553 # Avoid rebuilding of generated files
1554 contrib/gcc_update --touch
1555 # Avoid fucking up testsuite results with Java and indirect dispatch
1556 export LD_AS_NEEDED=0
1557 # Split version file into version used for directories (X.Y) and
1558 # version to report with --version (X.Y.Z).
1559 # See also gcc-dir-version.patch.
1560 # Also decrement the patchlevel version by one if possible and remove
1561 # the 'prerelease' tagging in this case
1562 if test `cat gcc/DEV-PHASE` == "prerelease"; then
1563   if test `cat gcc/BASE-VER | cut -d '.' -f 3` != "0"; then
1564     : > gcc/DEV-PHASE
1565   fi
1566   ( 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
1567 else
1568   mv gcc/BASE-VER gcc/FULL-VER
1569 fi
1570 cat gcc/FULL-VER | cut -d '.' -f 1-2 > gcc/BASE-VER
1571
1572 rm -rf obj-%{GCCDIST}
1573 mkdir obj-%{GCCDIST}
1574 cd obj-%{GCCDIST}
1575 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' -e 's/-fexceptions//' -e 's/\([[:space:]]\+.*-D_FORTIFY_SOURCE=\)[[:alnum:]]\+/\10/g'
1576 RPM_OPT_FLAGS="$RPM_OPT_FLAGS -D__USE_FORTIFY_LEVEL=0"`
1577 %ifarch %ix86
1578 # -mcpu is superceded by -mtune but -mtune is not supported by
1579 # our bootstrap compiler.  -mcpu gives a warning that stops
1580 # the build process, so remove it for now.  Also remove all other
1581 # -march and -mtune flags.  They are superseeded by proper
1582 # default compiler settings now.
1583 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'`
1584 %endif
1585 %ifarch s390 s390x
1586 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
1587 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
1588 %endif
1589 %if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
1590 # Kill all -march/tune/cpu because that screws building the target libs
1591 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
1592 %endif
1593 # Replace 2 spaces by one finally
1594 RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/  / /g'`
1595
1596 languages=c
1597 %if %{build_cp}
1598 languages=$languages,c++
1599 %endif
1600 %if %{build_objc}
1601 languages=$languages,objc
1602 %endif
1603 %if %{build_fortran}
1604 languages=$languages,fortran
1605 %endif
1606 %if %{build_objcp}
1607 languages=$languages,obj-c++
1608 %endif
1609 %if %{build_java}
1610 languages=$languages,java
1611 %endif
1612 %if %{build_ada}
1613 languages=$languages,ada
1614 %endif
1615 %if %{build_go}
1616 languages=$languages,go
1617 %endif
1618
1619 J=%{?jobs:%jobs}
1620 if test -z "$J"; then
1621   J=$(getconf _NPROCESSORS_CONF)
1622   JL=$(($J * 2))
1623 else
1624   test 1 -gt "$J" && J=1
1625   JL=$(($(getconf _NPROCESSORS_CONF)*2))
1626 fi
1627 if test "$J" == "0"; then
1628   J=1
1629 fi
1630 if test "$JL" == "0"; then
1631   JL=1
1632 fi
1633 PARALLEL="-j$J -l$JL"
1634
1635 # we don't want some miscompiles in the testsuite, or some fault in
1636 # the compiler to kill the machine.  Hence we limit the amount of memory
1637 # by the physical RAM plus half of swap
1638 #MEM=$(free -m | awk '/^Mem:/ {print $2}')
1639 #SWAP=$(free -m | awk '/^Swap:/ {print $2}')
1640 #ulimit -v $(((MEM + SWAP/2)*1024))
1641
1642 # In general we want to ship release checking enabled compilers
1643 # and run BETA with checking enabled.
1644 #ENABLE_CHECKING="--enable-checking=yes"
1645 ENABLE_CHECKING="--enable-checking=release"
1646
1647 # Work around tail/head -1 changes
1648 export _POSIX2_VERSION=199209
1649
1650 %if %{build_ada}
1651 # Using the host gnatmake like
1652 #   CC="gcc%{hostsuffix}" GNATBIND="gnatbind%{hostsuffix}"
1653 #   GNATMAKE="gnatmake%{hostsuffix}"
1654 # doesn't work due to PR33857, so an un-suffixed gnatmake has to be
1655 # available
1656 mkdir -p host-tools/bin
1657 cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
1658 cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
1659 cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
1660 cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
1661 ln -sf /usr/%{_lib} host-tools/%{_lib}
1662 export PATH="`pwd`/host-tools/bin:$PATH"
1663 %endif
1664 #%if 0%{?gcc_target_arch:1} && 0%{!?gcc_icecream:1}
1665 #%else
1666 #       --enable-threads=posix \
1667 #%endif
1668 #       --enable-shared \
1669 %if "%{TARGET_ARCH}" == "armv7l" || "%{TARGET_ARCH}" == "armv7hl"
1670 # temporary workaround for a miscompilation of hash functions in java code
1671 GCJ_EXTRA_FLAGS="-marm"
1672 %endif
1673
1674 CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
1675 TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS $GCJ_EXTRA_FLAGS" \
1676 ../configure \
1677         --prefix=%{_prefix} \
1678         --infodir=%{_infodir} \
1679         --mandir=%{_mandir} \
1680         --libdir=%{_libdir} \
1681         --libexecdir=%{_libdir} \
1682         --enable-languages=$languages \
1683         $ENABLE_CHECKING \
1684         --with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
1685         --enable-ssp \
1686         --disable-libssp \
1687         --disable-bootstrap \
1688 %if 0%{!?build_libvtv:1}
1689         --disable-libvtv \
1690 %endif
1691         --disable-plugin \
1692         --with-bugurl="http://bugs.tizen.org/" \
1693         --with-pkgversion="Tizen" \
1694 %if !%{build_fortran}
1695         --disable-libquadmath \
1696 %endif
1697 %if !%{build_libjava}
1698         --disable-libgcj \
1699 %else
1700         --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
1701         --with-ecj-jar=%{libsubdir}/ecj.jar \
1702         --disable-java-awt \
1703 %if !%{biarch_libjava}
1704         --disable-libjava-multilib \
1705 %endif
1706 %endif
1707         --with-slibdir=/%{_lib} \
1708         --with-system-zlib \
1709         --enable-__cxa_atexit \
1710         --enable-libstdcxx-allocator=new \
1711         --disable-libstdcxx-pch \
1712         --enable-version-specific-runtime-libs \
1713         --enable-linker-build-id \
1714         --enable-linux-futex \
1715         --program-suffix=%{binsuffix} \
1716 %if 0%{!?gcc_target_arch:1}
1717 %ifarch ia64
1718         --with-system-libunwind \
1719 %else
1720         --without-system-libunwind \
1721 %endif
1722 %endif
1723 %if 0%{?gcc_target_arch:1}
1724         --program-prefix=%{gcc_target_arch}- \
1725         --target=%{gcc_target_arch} \
1726         --disable-nls \
1727 %if 0%{?sysroot:1}
1728         --with-sysroot=%sysroot \
1729 %else
1730         --with-sysroot=%{_prefix}/%{gcc_target_arch} \
1731 %endif
1732 %if 0%{?build_sysroot:1}
1733         --with-build-sysroot=%{build_sysroot} \
1734 %else
1735 %if 0%{?sysroot:1}
1736         --with-build-sysroot=%{sysroot} \
1737 %else
1738         --with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
1739 %endif
1740 %endif
1741 %if 0%{?canonical_target:1}
1742         --with-build-time-tools=/usr/%{canonical_target}-tizen-linux%{?canonical_target_abi:%canonical_target_abi}/bin \
1743 %endif
1744 %if "%{TARGET_ARCH}" == "spu"
1745         --with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
1746         --with-newlib \
1747 %endif
1748 %endif
1749 %if "%{TARGET_ARCH}" == "armv5tel"
1750         --with-arch=armv5te \
1751         --with-float=soft \
1752         --with-mode=arm \
1753         --with-abi=aapcs-linux \
1754         --disable-sjlj-exceptions \
1755 %endif
1756 %if "%{TARGET_ARCH}" == "armv7l"
1757         --with-arch=armv7-a \
1758         --with-tune=cortex-a8 \
1759         --with-float=softfp \
1760         --with-fpu=vfpv3 \
1761         --with-mode=thumb \
1762         --disable-sjlj-exceptions \
1763 %endif
1764 %if "%{TARGET_ARCH}" == "armv7hl"
1765         --with-arch=armv7-a \
1766         --with-tune=cortex-a9 \
1767         --with-float=hard \
1768         --with-abi=aapcs-linux \
1769         --with-fpu=vfpv3-d16 \
1770         --disable-sjlj-exceptions \
1771 %endif
1772 %if  "%{TARGET_ARCH}" == "aarch64"
1773         --with-arch=armv8-a \
1774         --disable-sjlj-exceptions \
1775 %endif
1776 %if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64"
1777 %if "%{TARGET_ARCH}" == "powerpc"
1778         --with-cpu=default32 \
1779 %endif
1780 %if "%{TARGET_ARCH}" == "powerpc64le"
1781         --with-cpu=power7 \
1782 %else
1783         --with-cpu-64=power4 \
1784 %endif
1785         --enable-secureplt \
1786         --with-long-double-128 \
1787 %if "%{TARGET_ARCH}" == "powerpc64le"
1788         --disable-multilib \
1789 %endif
1790 %endif
1791 %if "%{TARGET_ARCH}" == "sparc64"
1792         --with-cpu=ultrasparc \
1793         --with-long-double-128 \
1794 %endif
1795 %if "%{TARGET_ARCH}" == "sparc"
1796         --with-cpu=v8 \
1797         --with-long-double-128 \
1798 %endif
1799 %if "%{TARGET_ARCH}" == "i586"
1800         --with-arch-32=i586 \
1801         --with-tune=generic \
1802 %endif
1803 %if "%{TARGET_ARCH}" == "x86_64"
1804         --with-arch-32=i586 \
1805         --with-tune=generic \
1806         --enable-multilib \
1807 %endif
1808 %if "%{TARGET_ARCH}" == "s390"
1809         --with-tune=zEC12 --with-arch=z196 \
1810         --with-long-double-128 \
1811         --enable-decimal-float \
1812 %endif
1813 %if "%{TARGET_ARCH}" == "s390x"
1814         --with-tune=zEC12 --with-arch=z196 \
1815         --with-long-double-128 \
1816         --enable-decimal-float \
1817 %endif
1818 %if "%{TARGET_ARCH}" == "m68k"
1819         --disable-multilib \
1820 %endif
1821         --build=%{GCCDIST} \
1822         --host=%{GCCDIST}
1823
1824
1825 %if 0%{?building_libffi:1}
1826 make stage1-bubble $PARALLEL
1827 make all-target-libffi $PARALLEL
1828 %else
1829 STAGE1_FLAGS="-g"
1830 # Only run profiled bootstrap on archs where it works and matters
1831 %ifarch ppc64le s390x
1832 make profiledbootstrap STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
1833 %else
1834 make STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
1835 %endif
1836 make info
1837 %if 0%{?building_libjava:1}
1838 make -C %{GCCDIST}/libstdc++-v3/doc doc-html-doxygen
1839 %endif
1840 %if 0%{?run_tests:1}
1841 echo "Run testsuite"
1842 (make -C %{GCCDIST}/libstdc++-v3 check-abi || true)
1843 mv %{GCCDIST}/libstdc++-v3/testsuite/libstdc++.log %{GCCDIST}/libstdc++-v3/testsuite/libstdc++-abi.log
1844 mv %{GCCDIST}/libstdc++-v3/testsuite/libstdc++.sum %{GCCDIST}/libstdc++-v3/testsuite/libstdc++-abi.sum
1845 # asan needs a whole shadow address space
1846 ulimit -v unlimited || true
1847 make -k check $PARALLEL || true
1848 mkdir ../testresults
1849 ../contrib/test_summary | tee ../testresults/test_summary.txt
1850 %endif
1851 %endif
1852
1853 %install
1854 export NO_BRP_CHECK_BYTECODE_VERSION=true
1855 cd obj-%{GCCDIST}
1856 # Work around tail/head -1 changes
1857 export _POSIX2_VERSION=199209
1858 export LIBRARY_PATH=$RPM_BUILD_ROOT%{libsubdir}:$RPM_BUILD_ROOT%{mainlibdirbi}
1859 %if 0%{?building_libffi:1}
1860 make -C %{GCCDIST}/libffi install DESTDIR=$RPM_BUILD_ROOT
1861 %else
1862 %if 0%{?building_libjava:1}
1863 make -C %{GCCDIST}/libjava install DESTDIR=$RPM_BUILD_ROOT
1864 make -C gcc java.install-man DESTDIR=$RPM_BUILD_ROOT
1865 make -C gcc java.install-common DESTDIR=$RPM_BUILD_ROOT
1866 make -C gcc install-common DESTDIR=$RPM_BUILD_ROOT COMPILERS='jc1$(exeext) jvgenmain$(exeext)'
1867 # copy the libstdc++ API reference
1868 cp -r %{GCCDIST}/libstdc++-v3/doc/doxygen/html ../libstdc++-v3/doc/html/api
1869 # install-common also installs collect2, gcov and the g++ and gfortran driver
1870 %if %{build_cp}
1871 rm $RPM_BUILD_ROOT%{_prefix}/bin/g++%{binsuffix}
1872 %endif
1873 %if %{build_fortran}
1874 rm $RPM_BUILD_ROOT%{_prefix}/bin/gfortran%{binsuffix}
1875 %endif
1876 rm $RPM_BUILD_ROOT%{_prefix}/bin/gcov%{binsuffix}
1877 rm $RPM_BUILD_ROOT%{libsubdir}/collect2
1878 %else
1879 make install DESTDIR=$RPM_BUILD_ROOT
1880 %if %{build_java}
1881 make -C gcc java.uninstall DESTDIR=$RPM_BUILD_ROOT
1882 make -C gcc java.install-info DESTDIR=$RPM_BUILD_ROOT
1883 rm $RPM_BUILD_ROOT%{_prefix}/bin/jcf-dump%{binsuffix}
1884 rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1
1885 rm $RPM_BUILD_ROOT%{libsubdir}/jc1
1886 rm $RPM_BUILD_ROOT%{libsubdir}/jvgenmain
1887 %endif
1888 %endif
1889 %endif
1890
1891 # Remove libffi installed files if we did not want to build it
1892 %if !0%{?building_libffi:1}
1893 rm -f $RPM_BUILD_ROOT%{mainlibdir}/libffi.*
1894 %if %{biarch}
1895   rm -f $RPM_BUILD_ROOT%{mainlibdirbi}/libffi.*
1896 %endif
1897 rm -f $RPM_BUILD_ROOT%{libsubdir}/include/ffi.h
1898 rm -f $RPM_BUILD_ROOT%{libsubdir}/include/ffitarget.h
1899 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi%{binsuffix}.3*
1900 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_call%{binsuffix}.3*
1901 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_prep_cif%{binsuffix}.3*
1902 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_prep_cif_var%{binsuffix}.3*
1903 %endif
1904
1905 # Remove some useless .la files
1906 for lib in libobjc libgfortran libgfortranbegin libquadmath libcaf_single \
1907     libgomp libstdc++ libsupc++ libgcj-tools libgij libgo \
1908     libasan libatomic libitm libtsan libcilkrts liblsan libubsan libvtv; do
1909   rm -f $RPM_BUILD_ROOT%{versmainlibdir}/$lib.la
1910 %if %{biarch}
1911   rm -f $RPM_BUILD_ROOT%{versmainlibdirbi}/$lib.la
1912 %endif
1913 done
1914
1915 mkdir -p $RPM_BUILD_ROOT%{_libdir}
1916 %if %{biarch}
1917 %if %{build_primary_64bit}
1918 mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
1919 %else
1920 mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib64
1921 %endif
1922 %endif
1923
1924 %if %{build_cp}
1925 # Merge multilib c++config.h to allow omitting the duplicate and
1926 # identical other arch specific headers
1927 dir_ml=
1928 cxxconfig="`find %{GCCDIST}/libstdc++-v3/include -name c++config.h`"
1929 for i in `find %{GCCDIST}/[36]*/libstdc++-v3/include -name c++config.h 2>/dev/null`; do
1930   if ! diff -up $cxxconfig $i; then
1931     file_32=x
1932     file_64=x
1933     case $i in
1934       %{GCCDIST}/32/*)
1935         file_32=$i
1936         file_64=$cxxconfig
1937         dir_ml=32
1938         ;;
1939       %{GCCDIST}/64/*)
1940         file_32=$cxxconfig
1941         file_64=$i
1942         dir_ml=64
1943         ;;
1944     esac
1945     if ! ( test -f "$file_32" && test -f "$file_64" ); then
1946       echo "Urgs?"
1947       exit 1
1948     fi
1949
1950     cat > $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/bits/c++config.h <<EOF
1951 #ifndef _CPP_CPPCONFIG_WRAPPER
1952 #define _CPP_CPPCONFIG_WRAPPER 1
1953 #include <bits/wordsize.h>
1954 #if __WORDSIZE == 32
1955 `cat $file_32`
1956 #else
1957 `cat $file_64`
1958 #endif
1959 #endif
1960 EOF
1961     break
1962   fi
1963 done
1964 rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/[36]*
1965 if ! test -z "$dir_ml"; then
1966   ln -s . $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/$dir_ml
1967 fi
1968 %endif
1969
1970 # move shared libs from versionspecific dir to main libdir
1971 for libname in \
1972 %if 0%{?building_libjava:1}
1973   libgcj libgij libgcj-tools \
1974 %else
1975 %if %{build_fortran}
1976   libgfortran \
1977 %ifarch %quadmath_arch
1978   libquadmath \
1979 %endif
1980 %endif
1981 %if %{build_objc}
1982   libobjc \
1983 %endif
1984 %if %{build_cp}
1985   libstdc++ \
1986 %endif
1987 %if %{build_go}
1988   libgo \
1989 %endif
1990   libgomp \
1991 %ifarch %atomic_arch
1992   libatomic \
1993 %endif
1994 %ifarch %itm_arch
1995   libitm \
1996 %endif
1997 %ifarch %asan_arch
1998   libasan \
1999 %endif
2000 %ifarch %tsan_arch
2001   libtsan \
2002 %endif
2003 %ifarch %cilkrts_arch
2004   libcilkrts \
2005 %endif
2006 %ifarch %lsan_arch
2007   liblsan \
2008 %endif
2009 %ifarch %ubsan_arch
2010   libubsan \
2011 %endif
2012 %ifarch %vtv_arch
2013   libvtv \
2014 %endif
2015 %endif
2016     ; do
2017   for lib in `find $RPM_BUILD_ROOT%{versmainlibdir} -maxdepth 1 -name $libname.so.*`; do
2018     mv $lib $RPM_BUILD_ROOT%{mainlibdir}/
2019   done
2020   ln -sf %{mainlibdir}/`readlink $RPM_BUILD_ROOT%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
2021          $RPM_BUILD_ROOT%{versmainlibdir}/$libname.so
2022 %if %{biarch}
2023   if test -d $RPM_BUILD_ROOT%{versmainlibdirbi}; then
2024     for lib in `find $RPM_BUILD_ROOT%{versmainlibdirbi} -maxdepth 1 -name "$libname.so.*"`; do
2025       mv $lib $RPM_BUILD_ROOT%{mainlibdirbi}/
2026     done
2027     ln -sf %{mainlibdirbi}/`readlink $RPM_BUILD_ROOT%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
2028          $RPM_BUILD_ROOT%{versmainlibdirbi}/$libname.so
2029   fi
2030 %endif
2031 done
2032 # FIXME, tsan and lsan are not multilib
2033 %ifarch %tsan_arch
2034 %if %{biarch}
2035 rm -f $RPM_BUILD_ROOT%{versmainlibdirbi}/libtsan.so
2036 %endif
2037 %endif
2038 %ifarch %lsan_arch
2039 %if %{biarch}
2040 rm -f $RPM_BUILD_ROOT%{versmainlibdirbi}/liblsan.so
2041 %endif
2042 %endif
2043 %if %{build_cp}
2044 %if !0%{?building_libjava:1}
2045 # And we want to move the shlib gdb pretty printers to a more sane
2046 # place so ldconfig does not complain
2047 mkdir -p $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}
2048 mv $RPM_BUILD_ROOT%{mainlibdir}/libstdc++.so.*-gdb.py $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}/
2049 sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}/libstdc++.so.*-gdb.py
2050 %if %{biarch}
2051   if test -d $RPM_BUILD_ROOT%{versmainlibdirbi}; then
2052     mkdir -p $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}
2053     mv $RPM_BUILD_ROOT%{mainlibdirbi}/libstdc++.so.*-gdb.py $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}/
2054     sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}/libstdc++.so.*-gdb.py
2055   fi
2056 %endif
2057 %endif
2058 %endif
2059 %if 0%{?building_libjava:1}
2060 # libgcj_bc is special as the .so file is actually a different
2061 # library as the library refered to by the SONAME which should
2062 # be a simple link to our libgcj.
2063 for lib in `find $RPM_BUILD_ROOT%{versmainlibdir} -maxdepth 1 -name libgcj_bc.so.*`; do
2064   rm $lib
2065 done
2066 ln -s libgcj.so.%{libgcj_sover} $RPM_BUILD_ROOT%{mainlibdir}/libgcj_bc.so.%{libgcj_bc_sover}
2067 %if %{biarch_libjava}
2068 for lib in `find $RPM_BUILD_ROOT%{versmainlibdirbi} -maxdepth 1 -name libgcj_bc.so.*`; do
2069   rm $lib
2070 done
2071 ln -s libgcj.so.%{libgcj_sover} $RPM_BUILD_ROOT%{mainlibdirbi}/libgcj_bc.so.%{libgcj_bc_sover}
2072 %endif
2073 mv $RPM_BUILD_ROOT%{libsubdir}/pkgconfig $RPM_BUILD_ROOT%{_libdir}/
2074 %endif
2075
2076 # Move libgcc_s around
2077 %ifarch aarch64
2078 if test -L $RPM_BUILD_ROOT/lib64/libgcc_s.so; then
2079   rm -f $RPM_BUILD_ROOT/lib64/libgcc_s.so
2080   ln -sf /lib64/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdir}/libgcc_s.so
2081 else
2082   mv $RPM_BUILD_ROOT/lib64/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdir}/
2083 fi
2084 chmod a+x $RPM_BUILD_ROOT/lib64/libgcc_s.so.%{libgcc_s}
2085 %else
2086 if test -L $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so; then
2087   rm -f $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so
2088   ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdir}/libgcc_s.so
2089 else
2090   mv $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdir}/
2091 fi
2092 chmod a+x $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so.%{libgcc_s}
2093 %endif
2094
2095 %if %{biarch}
2096 %if %{build_primary_64bit}
2097 if test -L $RPM_BUILD_ROOT/lib/libgcc_s.so; then
2098   rm -f $RPM_BUILD_ROOT/lib/libgcc_s.so
2099   ln -sf /lib/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s.so
2100 else
2101   mv $RPM_BUILD_ROOT/lib/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/
2102 fi
2103 ln -sf %{versmainlibdirbi32}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s_32.so
2104 chmod a+x $RPM_BUILD_ROOT/lib/libgcc_s.so.%{libgcc_s}
2105 %else
2106 # 32-bit biarch systems
2107 if test -L $RPM_BUILD_ROOT/lib64/libgcc_s.so; then
2108   rm -f $RPM_BUILD_ROOT/lib64/libgcc_s.so
2109   ln -sf /lib64/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s.so
2110 else
2111   mv $RPM_BUILD_ROOT/lib64/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/
2112 fi
2113 ln -sf %{versmainlibdirbi64}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s_64.so
2114 chmod a+x $RPM_BUILD_ROOT/lib64/libgcc_s.so.%{libgcc_s}
2115 %endif
2116 %endif
2117
2118
2119 %if %{build_ada}
2120 mv $RPM_BUILD_ROOT%{libsubdir}/adalib/lib*-*.so $RPM_BUILD_ROOT%{_libdir}
2121 ln -sf %{_libdir}/libgnarl%{binsuffix}.so $RPM_BUILD_ROOT%{libsubdir}/adalib/libgnarl.so
2122 ln -sf %{_libdir}/libgnat%{binsuffix}.so $RPM_BUILD_ROOT%{libsubdir}/adalib/libgnat.so
2123 chmod a+x $RPM_BUILD_ROOT%{_libdir}/libgna*-*.so
2124 %if %{biarch}
2125 mv $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/lib*-*.so $RPM_BUILD_ROOT%{mainlibdirbi}/
2126 ln -sf %{mainlibdirbi}/libgnarl%{binsuffix}.so $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/libgnarl.so
2127 ln -sf %{mainlibdirbi}/libgnat%{binsuffix}.so $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/libgnarl.so
2128 chmod a+x $RPM_BUILD_ROOT%{mainlibdirbi}/libgna*-*.so
2129 %endif
2130 %endif
2131
2132 rm -f $RPM_BUILD_ROOT%{_prefix}/bin/c++%{binsuffix}
2133
2134 # Remove some crap from the .la files:
2135 for l in `find $RPM_BUILD_ROOT -name '*.la'`; do
2136   echo "changing $l"
2137 # -e '/^dependency_libs/s|%{libsubdir}/\([^.]*\)\.la |%{_libdir}/\1\.la |g'
2138   sed -e '/^dependency_libs/s| -L%{_builddir}/[^ ]*||g' \
2139       -e '/^dependency_libs/s| -L/usr/%{GCCDIST}/bin||g' \
2140       -e '/^dependency_libs/s|-lm \(-lm \)*|-lm |' \
2141       -e '/^dependency_libs/s|-L[^ ]* ||g' \
2142 %if %{biarch}
2143 %if %{build_primary_64bit}
2144       -e '/^libdir/s|%{_libdir}/32|%{_prefix}/lib|' \
2145       -e '/^libdir/s|lib64/\.\./||' \
2146 %else
2147       -e '/^libdir/s|%{_libdir}/64|%{_prefix}/lib64|' \
2148 %endif
2149 %endif
2150       < $l  > $l.new
2151   mv $l.new $l
2152 done
2153
2154 %if 0%{?run_tests:1}
2155 cp `find . -name "*.sum"` ../testresults/
2156 cp `find . -name "*.log"  \! -name "config.log" | grep -v 'acats.\?/tests' ` ../testresults/
2157 chmod 644 ../testresults/*
2158 %endif
2159 %if %{build_cp}
2160 # Find C++ and Java headers
2161 find $RPM_BUILD_ROOT%{_prefix}/include/c++ \
2162   -regex ".*/\(org\|gcj\|gnu\|java\|javax\)" -prune \
2163   -o \( -type d -printf "%%%%dir " , \
2164         -printf "%{_prefix}/include/c++/%%P\n" \) > ../c++-headers
2165 %endif
2166 # Remove files that we do not need to clean up filelist
2167 rm -f $RPM_BUILD_ROOT%{_prefix}/bin/%{GCCDIST}-*
2168 rm -rf $RPM_BUILD_ROOT%{libsubdir}/install-tools
2169 #rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libgcj%{binsuffix}.pc
2170 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/zutil.h
2171 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/linux/a.out.h
2172 rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/asm-generic/socket.h
2173 # no plugins
2174 rm -rf $RPM_BUILD_ROOT%{libsubdir}/plugin
2175 rm -f  $RPM_BUILD_ROOT%{_infodir}/dir
2176
2177
2178 %if 0%{?building_libjava:1}
2179 # gcj -static doesn't work properly anyway, unless using --whole-archive
2180 # let's save the space instead.
2181 find $RPM_BUILD_ROOT -name libgcj.a \
2182         -o -name libgcj-tools.a \
2183         -o -name libgij.a \
2184         -o -name libjvm.a \
2185         -o -name libgcj_bc.a \
2186   | xargs rm -f
2187
2188 find $RPM_BUILD_ROOT -name libgcj.spec | xargs \
2189   sed -i -e 's/lib: /&%%{static:%%eJava programs cannot be linked statically}/'
2190
2191 # security files have broken install locations, also they cause conflicts
2192 # between libgcj versions.  Simply delete them here, libgcj will use its
2193 # defaults in this case (which is what these files contain anyway).
2194 rm -f $RPM_BUILD_ROOT%{libsubdir}/logging.properties
2195 rm -r $RPM_BUILD_ROOT%{libsubdir}/security
2196 %endif
2197
2198 %if 0%{?building_libffi:1}
2199 # Move libffi headers, remove empty libffi libtool file
2200 mkdir -p $RPM_BUILD_ROOT%{_prefix}/include
2201 mv $RPM_BUILD_ROOT%{libsubdir}/include/ffitarget.h $RPM_BUILD_ROOT%{_prefix}/include/
2202 mv $RPM_BUILD_ROOT%{libsubdir}/include/ffi.h $RPM_BUILD_ROOT%{_prefix}/include/
2203 rm -f $RPM_BUILD_ROOT%{mainlibdir}/libffi.la
2204 %if %{biarch}
2205 rm -f $RPM_BUILD_ROOT%{mainlibdirbi}/libffi.la
2206 %endif
2207 # Generate a simple pkg-config file
2208 mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig
2209 echo -e 'Name: libffi\nVersion: 3.0.9\nDescription: libffi\nLibs: -lffi' > $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libffi.pc
2210 %endif
2211
2212 %if %{build_java}
2213 %if !%{build_libjava}
2214 rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1
2215 rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj-dbtool%{binsuffix}.1
2216 rm $RPM_BUILD_ROOT%{_mandir}/man1/gij%{binsuffix}.1
2217 rm $RPM_BUILD_ROOT%{_mandir}/man1/grmic%{binsuffix}.1
2218 rm $RPM_BUILD_ROOT%{_mandir}/man1/gc-analyze%{binsuffix}.1
2219 rm $RPM_BUILD_ROOT%{_mandir}/man1/aot-compile%{binsuffix}.1
2220 rm $RPM_BUILD_ROOT%{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1
2221 %endif
2222 rm -f $RPM_BUILD_ROOT%{_datadir}/gcc%{binsuffix}/python/libjava/aotcompile.py
2223 rm -f $RPM_BUILD_ROOT%{_datadir}/gcc%{binsuffix}/python/libjava/classfile.py
2224 %endif
2225 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
2226 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
2227 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
2228 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
2229 %if %{biarch}
2230 %if %{build_primary_64bit}
2231 rm -f $RPM_BUILD_ROOT%{_prefix}/lib/libiberty.a
2232 %else
2233 rm -f $RPM_BUILD_ROOT%{_prefix}/lib64/libiberty.a
2234 %endif
2235 %endif
2236 rm -f $RPM_BUILD_ROOT%{libsubdir}/liblto_plugin.a
2237 rm -f $RPM_BUILD_ROOT%{libsubdir}/liblto_plugin.la
2238 %if %{build_go}
2239 # gccgo.info isn't properly versioned
2240 rm $RPM_BUILD_ROOT%{_infodir}/gccgo.info*
2241 %endif
2242
2243 %if 0%{?building_libjava:1}
2244 # For building libjava only we need to delete other info docs
2245 rm $RPM_BUILD_ROOT%{_infodir}/cp-tools.info*
2246 # Remove stale manpages for binaries we do not build
2247 rm $RPM_BUILD_ROOT%{_mandir}/man1/gjdoc%{binsuffix}.1
2248 # For building the java frontend we need to copy the ecj jar
2249 mkdir -p $RPM_BUILD_ROOT%{libsubdir}
2250 cp $RPM_SOURCE_DIR/ecj.jar $RPM_BUILD_ROOT%{libsubdir}
2251 %else
2252 # For regular build, some info files do not get renamed properly.
2253 # Do so here.
2254 mv $RPM_BUILD_ROOT%{_infodir}/libgomp.info $RPM_BUILD_ROOT%{_infodir}/libgomp%{binsuffix}.info
2255 %ifarch %itm_arch
2256 mv $RPM_BUILD_ROOT%{_infodir}/libitm.info $RPM_BUILD_ROOT%{_infodir}/libitm%{binsuffix}.info
2257 %endif
2258 %if %{build_fortran}
2259 %ifarch %quadmath_arch
2260 mv $RPM_BUILD_ROOT%{_infodir}/libquadmath.info $RPM_BUILD_ROOT%{_infodir}/libquadmath%{binsuffix}.info
2261 %endif
2262 %endif
2263 %if %{build_ada}
2264 mv $RPM_BUILD_ROOT%{_infodir}/gnat-style.info $RPM_BUILD_ROOT%{_infodir}/gnat-style%{binsuffix}.info
2265 mv $RPM_BUILD_ROOT%{_infodir}/gnat_rm.info $RPM_BUILD_ROOT%{_infodir}/gnat_rm%{binsuffix}.info
2266 mv $RPM_BUILD_ROOT%{_infodir}/gnat_ugn.info $RPM_BUILD_ROOT%{_infodir}/gnat_ugn%{binsuffix}.info
2267 %endif
2268 %endif
2269
2270 %ifnarch %quadmath_arch
2271 rm -vf $RPM_BUILD_ROOT%{_infodir}/libquadmath*.info*
2272 %endif
2273
2274 cd ..
2275 %find_lang cpplib%{binsuffix}
2276 %find_lang gcc%{binsuffix}
2277 %find_lang libstdc++
2278 cat cpplib%{binsuffix}.lang gcc%{binsuffix}.lang > gcc49-locale.lang
2279
2280 %post info
2281 %install_info --info-dir=%{_infodir} %{_infodir}/cpp%{binsuffix}.info.gz
2282 %install_info --info-dir=%{_infodir} %{_infodir}/cppinternals%{binsuffix}.info.gz
2283 %install_info --info-dir=%{_infodir} %{_infodir}/gcc%{binsuffix}.info.gz
2284 %install_info --info-dir=%{_infodir} %{_infodir}/gccint%{binsuffix}.info.gz
2285 %install_info --info-dir=%{_infodir} %{_infodir}/gccinstall%{binsuffix}.info.gz
2286 %install_info --info-dir=%{_infodir} %{_infodir}/libgomp%{binsuffix}.info.gz
2287 %if %{build_fortran}
2288 %install_info --info-dir=%{_infodir} %{_infodir}/gfortran%{binsuffix}.info.gz
2289 %ifarch %quadmath_arch
2290 %install_info --info-dir=%{_infodir} %{_infodir}/libquadmath%{binsuffix}.info.gz
2291 %endif
2292 %endif
2293 %if %{build_java}
2294 %install_info --info-dir=%{_infodir} %{_infodir}/gcj%{binsuffix}.info.gz
2295 %endif
2296 %if %{build_ada}
2297 %install_info --info-dir=%{_infodir} %{_infodir}/gnat-style%{binsuffix}.info.gz
2298 %install_info --info-dir=%{_infodir} %{_infodir}/gnat_rm%{binsuffix}.info.gz
2299 %install_info --info-dir=%{_infodir} %{_infodir}/gnat_ugn%{binsuffix}.info.gz
2300 %endif
2301
2302 %postun info
2303 %install_info_delete --info-dir=%{_infodir} %{_infodir}/cpp%{binsuffix}.info.gz
2304 %install_info_delete --info-dir=%{_infodir} %{_infodir}/cppinternals%{binsuffix}.info.gz
2305 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gcc%{binsuffix}.info.gz
2306 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gccint%{binsuffix}.info.gz
2307 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gccinstall%{binsuffix}.info.gz
2308 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libgomp%{binsuffix}.info.gz
2309 %if %{build_fortran}
2310 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gfortran%{binsuffix}.info.gz
2311 %ifarch %quadmath_arch
2312 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libquadmath%{binsuffix}.info.gz
2313 %endif
2314 %endif
2315 %if %{build_java}
2316 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gcj%{binsuffix}.info.gz
2317 %endif
2318 %if %{build_ada}
2319 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gnat-style%{binsuffix}.info.gz
2320 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gnat_rm%{binsuffix}.info.gz
2321 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gnat_ugn%{binsuffix}.info.gz
2322 %endif
2323
2324 %files
2325 %defattr(-,root,root)
2326 %dir %{_libdir}/gcc
2327 %dir %{_libdir}/gcc/%{GCCDIST}
2328 %dir %{libsubdir}
2329 %dir %{libsubdir}/include
2330 %dir %{libsubdir}/include-fixed
2331 %if %{biarch}
2332 %if %{build_primary_64bit}
2333 %dir %{libsubdir}/32
2334 %else
2335 %dir %{libsubdir}/64
2336 %endif
2337 %endif
2338 %{_prefix}/bin/gcc%{binsuffix}
2339 %{_prefix}/bin/gcov%{binsuffix}
2340 %{_prefix}/bin/gcc-ar%{binsuffix}
2341 %{_prefix}/bin/gcc-nm%{binsuffix}
2342 %{_prefix}/bin/gcc-ranlib%{binsuffix}
2343 %{libsubdir}/collect2
2344 %{libsubdir}/lto1
2345 %{libsubdir}/lto-wrapper
2346 %{libsubdir}/liblto_plugin.so*
2347 %{libsubdir}/include-fixed/README
2348 %{libsubdir}/include-fixed/limits.h
2349 %{libsubdir}/include-fixed/syslimits.h
2350 %{libsubdir}/include/omp.h
2351 %{libsubdir}/include/float.h
2352 %{libsubdir}/include/iso646.h
2353 %{libsubdir}/include/stdarg.h
2354 %{libsubdir}/include/stdbool.h
2355 %{libsubdir}/include/stdfix.h
2356 %{libsubdir}/include/stddef.h
2357 %{libsubdir}/include/unwind.h
2358 %{libsubdir}/include/varargs.h
2359 %{libsubdir}/include/stdint.h
2360 %{libsubdir}/include/stdint-gcc.h
2361 %{libsubdir}/include/stdnoreturn.h
2362 %{libsubdir}/include/stdalign.h
2363 %{libsubdir}/include/stdatomic.h
2364 %ifarch %sparc
2365 %{libsubdir}/include/visintrin.h
2366 %endif
2367 %ifarch ppc ppc64 ppc64le
2368 %{libsubdir}/include/altivec.h
2369 %{libsubdir}/include/ppc-asm.h
2370 %{libsubdir}/include/paired.h
2371 %{libsubdir}/include/ppu_intrinsics.h
2372 %{libsubdir}/include/si2vmx.h
2373 %{libsubdir}/include/spe.h
2374 %{libsubdir}/include/spu2vmx.h
2375 %{libsubdir}/include/vec_types.h
2376 %{libsubdir}/include/htmintrin.h
2377 %{libsubdir}/include/htmxlintrin.h
2378 %endif
2379 %ifarch s390 s390x
2380 %{libsubdir}/include/htmintrin.h
2381 %{libsubdir}/include/htmxlintrin.h
2382 %{libsubdir}/include/s390intrin.h
2383 %endif
2384 %ifarch ia64
2385 %{libsubdir}/include/ia64intrin.h
2386 %endif
2387 %ifarch %arm aarch64
2388 %{libsubdir}/include/arm_neon.h
2389 %endif
2390 %ifarch %arm
2391 %{libsubdir}/include/mmintrin.h
2392 %{libsubdir}/include/arm_neon.h
2393 %{libsubdir}/include/unwind-arm-common.h
2394 %{libsubdir}/include/arm_acle.h
2395 %endif
2396 %ifarch %ix86 x86_64
2397 %{libsubdir}/include/cross-stdarg.h
2398 %{libsubdir}/include/cpuid.h
2399 %{libsubdir}/include/mm3dnow.h
2400 %{libsubdir}/include/mmintrin.h
2401 %{libsubdir}/include/ammintrin.h
2402 %{libsubdir}/include/bmmintrin.h
2403 %{libsubdir}/include/emmintrin.h
2404 %{libsubdir}/include/immintrin.h
2405 %{libsubdir}/include/avxintrin.h
2406 %{libsubdir}/include/pmmintrin.h
2407 %{libsubdir}/include/xmmintrin.h
2408 %{libsubdir}/include/tmmintrin.h
2409 %{libsubdir}/include/nmmintrin.h
2410 %{libsubdir}/include/smmintrin.h
2411 %{libsubdir}/include/wmmintrin.h
2412 %{libsubdir}/include/x86intrin.h
2413 %{libsubdir}/include/ia32intrin.h
2414 %{libsubdir}/include/mm_malloc.h
2415 %{libsubdir}/include/fma4intrin.h
2416 %{libsubdir}/include/xopintrin.h
2417 %{libsubdir}/include/lwpintrin.h
2418 %{libsubdir}/include/popcntintrin.h
2419 %{libsubdir}/include/bmiintrin.h
2420 %{libsubdir}/include/tbmintrin.h
2421 %{libsubdir}/include/avx2intrin.h
2422 %{libsubdir}/include/bmi2intrin.h
2423 %{libsubdir}/include/fmaintrin.h
2424 %{libsubdir}/include/lzcntintrin.h
2425 %{libsubdir}/include/f16cintrin.h
2426 %{libsubdir}/include/adxintrin.h
2427 %{libsubdir}/include/fxsrintrin.h
2428 %{libsubdir}/include/prfchwintrin.h
2429 %{libsubdir}/include/rdseedintrin.h
2430 %{libsubdir}/include/rtmintrin.h
2431 %{libsubdir}/include/xsaveintrin.h
2432 %{libsubdir}/include/xsaveoptintrin.h
2433 %{libsubdir}/include/xtestintrin.h
2434 %{libsubdir}/include/avx512cdintrin.h
2435 %{libsubdir}/include/avx512erintrin.h
2436 %{libsubdir}/include/avx512fintrin.h
2437 %{libsubdir}/include/avx512pfintrin.h
2438 %{libsubdir}/include/shaintrin.h
2439 %endif
2440 %ifarch m68k
2441 %{libsubdir}/include/math-68881.h
2442 %endif
2443 %ifarch %cilkrts_arch
2444 %{libsubdir}/include/cilk
2445 %endif
2446 %versmainlib *crt*.o
2447 %versmainlib libgcc*.a
2448 %versmainlib libgcov.a
2449 %versmainlib libgcc_s*.so
2450 %versmainlib libgomp.so
2451 %versmainlib libgomp.a
2452 %versmainlib libgomp.spec
2453 %ifarch %itm_arch
2454 %versmainlib libitm.so
2455 %versmainlib libitm.a
2456 %versmainlib libitm.spec
2457 %endif
2458 %ifarch %atomic_arch
2459 %versmainlib libatomic.so
2460 %versmainlib libatomic.a
2461 %endif
2462 %ifarch %asan_arch
2463 %versmainlib libasan.so
2464 %versmainlib libasan.a
2465 %versmainlib libasan_preinit.o
2466 %endif
2467 %ifarch %tsan_arch
2468 %versmainlib libtsan.so
2469 %versmainlib libtsan.a
2470 %endif
2471 %ifarch %cilkrts_arch
2472 %versmainlib libcilkrts.so
2473 %versmainlib libcilkrts.a
2474 %versmainlib libcilkrts.spec
2475 %endif
2476 %ifarch %lsan_arch
2477 %versmainlib liblsan.so
2478 %versmainlib liblsan.a
2479 %endif
2480 %ifarch %ubsan_arch
2481 %versmainlib libubsan.so
2482 %versmainlib libubsan.a
2483 %endif
2484 %ifarch %asan_arch %ubsan_arch %tsan_arch %lsan_arch
2485 %versmainlib libsanitizer.spec
2486 %endif
2487 %ifarch %vtv_arch
2488 %versmainlib libvtv.so
2489 %versmainlib libvtv.a
2490 %endif
2491 %doc %{_mandir}/man1/gcc%{binsuffix}.1.gz
2492 %doc %{_mandir}/man1/gcov%{binsuffix}.1.gz
2493
2494 %if %{separate_biarch}
2495 %files -n gcc49%{separate_biarch_suffix}
2496 %defattr(-,root,root)
2497 %versbiarchlib *crt*.o
2498 %versbiarchlib libgcc*.a
2499 %versbiarchlib libgcov.a
2500 %versbiarchlib libgcc_s*.so
2501 %versbiarchlib libgomp.so
2502 %versbiarchlib libgomp.a
2503 %versbiarchlib libgomp.spec
2504 %ifarch %itm_arch
2505 %versbiarchlib libitm.so
2506 %versbiarchlib libitm.a
2507 %versbiarchlib libitm.spec
2508 %endif
2509 %ifarch %atomic_arch
2510 %versbiarchlib libatomic.a
2511 %versbiarchlib libatomic.so
2512 %endif
2513 %ifarch %asan_arch
2514 %versbiarchlib libasan.a
2515 %versbiarchlib libasan.so
2516 %versbiarchlib libasan_preinit.o
2517 %endif
2518 %ifarch %ubsan_arch
2519 %versbiarchlib libubsan.a
2520 %versbiarchlib libubsan.so
2521 %endif
2522 %ifarch %cilkrts_arch
2523 %versbiarchlib libcilkrts.a
2524 %versbiarchlib libcilkrts.so
2525 %versbiarchlib libcilkrts.spec
2526 %endif
2527 %if 0
2528 %ifarch %tsan_arch
2529 %versbiarchlib libtsan.a
2530 %versbiarchlib libtsan.so
2531 %endif
2532 %ifarch %lsan_arch
2533 %versbiarchlib liblsan.a
2534 %versbiarchlib liblsan.so
2535 %endif
2536 %endif
2537 %ifarch %asan_arch %ubsan_arch %tsan_arch %lsan_arch
2538 %versbiarchlib libsanitizer.spec
2539 %endif
2540 %ifarch %vtv_arch
2541 %versbiarchlib libvtv.a
2542 %versbiarchlib libvtv.so
2543 %endif
2544 %endif
2545
2546 %files locale -f gcc49-locale.lang
2547
2548 %files -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-locale -f libstdc++.lang
2549
2550 %if %{build_cp}
2551 %files c++
2552 %defattr(-,root,root)
2553 %dir %{_libdir}/gcc
2554 %dir %{_libdir}/gcc/%{GCCDIST}
2555 %dir %{libsubdir}
2556 %{_prefix}/bin/g++%{binsuffix}
2557 %doc %{_mandir}/man1/g++%{binsuffix}.1.gz
2558 %{libsubdir}/cc1plus
2559
2560 %files -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}
2561 %defattr(-,root,root)
2562 %mainlib libstdc++.so.%{libstdcxx_sover}*
2563
2564 %if %{separate_biarch}
2565 %files -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}%{separate_biarch_suffix}
2566 %defattr(-,root,root)
2567 %biarchlib libstdc++.so.%{libstdcxx_sover}*
2568 %endif
2569
2570 %files -n libstdc++49-devel -f c++-headers
2571 %defattr(-,root,root)
2572 %versmainlib libstdc++.a
2573 %versmainlib libstdc++.so
2574 %versmainlib libsupc++.a
2575 %dir %{_datadir}/gdb
2576 %dir %{_datadir}/gdb/auto-load
2577 %dir %{_datadir}/gdb/auto-load%{_prefix}
2578 %dir %{_datadir}/gdb/auto-load/%{mainlibdir}
2579 %{_datadir}/gdb/auto-load/%{mainlibdir}/libstdc++.so.*-gdb.py
2580 %{_datadir}/gcc%{binsuffix}
2581
2582 %if %{separate_biarch}
2583 %files -n libstdc++49-devel%{separate_biarch_suffix}
2584 %defattr(-,root,root)
2585 %versbiarchlib libstdc++.a
2586 %versbiarchlib libstdc++.so
2587 %versbiarchlib libsupc++.a
2588 %dir %{_datadir}/gdb/auto-load/%{mainlibdirbi}
2589 %{_datadir}/gdb/auto-load/%{mainlibdirbi}/libstdc++.so.*-gdb.py
2590 %endif
2591 %endif
2592
2593 %files -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}
2594 %defattr(-,root,root)
2595 /%{_lib}/libgcc_s.so.%{libgcc_s}
2596 %if %{biarch}
2597 %if %{build_primary_64bit}
2598 %if !%{separate_bi32}
2599 /lib/libgcc_s.so.%{libgcc_s}
2600 %endif
2601 %else
2602 %if !%{separate_bi64}
2603 /lib64/libgcc_s.so.%{libgcc_s}
2604 %endif
2605 %endif
2606 %endif
2607
2608 %if %{separate_bi64}
2609 %files -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-64bit
2610 %defattr(-,root,root)
2611 /lib64/libgcc_s.so.%{libgcc_s}
2612 %endif
2613
2614 %if %{separate_bi32}
2615 %files -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit
2616 %defattr(-,root,root)
2617 /lib/libgcc_s.so.%{libgcc_s}
2618 %endif
2619
2620
2621 %files -n libgomp%{libgomp_sover}%{libgomp_suffix}
2622 %defattr(-,root,root)
2623 %mainlib libgomp.so.%{libgomp_sover}*
2624
2625 %if %{separate_biarch}
2626 %files -n libgomp%{libgomp_sover}%{libgomp_suffix}%{separate_biarch_suffix}
2627 %defattr(-,root,root)
2628 %biarchlib libgomp.so.%{libgomp_sover}*
2629 %endif
2630
2631
2632 %ifarch %asan_arch
2633 %files -n libasan%{libasan_sover}%{libasan_suffix}
2634 %defattr(-,root,root)
2635 %mainlib libasan.so.%{libasan_sover}*
2636
2637 %if %{separate_biarch}
2638 %files -n libasan%{libasan_sover}%{libasan_suffix}%{separate_biarch_suffix}
2639 %defattr(-,root,root)
2640 %biarchlib libasan.so.%{libasan_sover}*
2641 %endif
2642 %endif
2643
2644
2645 %ifarch %lsan_arch
2646 %files -n liblsan%{liblsan_sover}%{liblsan_suffix}
2647 %defattr(-,root,root)
2648 %mainlib liblsan.so.%{liblsan_sover}*
2649
2650 %if 0
2651 %if %{separate_biarch}
2652 %files -n liblsan%{liblsan_sover}%{liblsan_suffix}%{separate_biarch_suffix}
2653 %defattr(-,root,root)
2654 %biarchlib liblsan.so.%{liblsan_sover}*
2655 %endif
2656 %endif
2657 %endif
2658
2659
2660 %ifarch %tsan_arch
2661 %files -n libtsan%{libtsan_sover}%{libtsan_suffix}
2662 %defattr(-,root,root)
2663 %mainlib libtsan.so.%{libtsan_sover}*
2664
2665 %if 0
2666 %if %{separate_biarch}
2667 %files -n libtsan%{libtsan_sover}%{libtsan_suffix}%{separate_biarch_suffix}
2668 %defattr(-,root,root)
2669 %biarchlib libtsan.so.%{libtsan_sover}*
2670 %endif
2671 %endif
2672 %endif
2673
2674
2675 %ifarch %atomic_arch
2676 %files -n libatomic%{libatomic_sover}%{libatomic_suffix}
2677 %defattr(-,root,root)
2678 %mainlib libatomic.so.%{libatomic_sover}*
2679
2680 %if %{separate_biarch}
2681 %files -n libatomic%{libatomic_sover}%{libatomic_suffix}%{separate_biarch_suffix}
2682 %defattr(-,root,root)
2683 %biarchlib libatomic.so.%{libatomic_sover}*
2684 %endif
2685 %endif
2686
2687
2688 %ifarch %itm_arch
2689 %files -n libitm%{libitm_sover}%{libitm_suffix}
2690 %defattr(-,root,root)
2691 %mainlib libitm.so.%{libitm_sover}*
2692
2693 %if %{separate_biarch}
2694 %files -n libitm%{libitm_sover}%{libitm_suffix}%{separate_biarch_suffix}
2695 %defattr(-,root,root)
2696 %biarchlib libitm.so.%{libitm_sover}*
2697 %endif
2698 %endif
2699
2700
2701 %ifarch %cilkrts_arch
2702 %files -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}
2703 %defattr(-,root,root)
2704 %mainlib libcilkrts.so.%{libcilkrts_sover}*
2705
2706 %if %{separate_biarch}
2707 %files -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}%{separate_biarch_suffix}
2708 %defattr(-,root,root)
2709 %biarchlib libcilkrts.so.%{libcilkrts_sover}*
2710 %endif
2711 %endif
2712
2713
2714 %ifarch %ubsan_arch
2715 %files -n libubsan%{libubsan_sover}%{libubsan_suffix}
2716 %defattr(-,root,root)
2717 %mainlib libubsan.so.%{libubsan_sover}*
2718
2719 %if %{separate_biarch}
2720 %files -n libubsan%{libubsan_sover}%{libubsan_suffix}%{separate_biarch_suffix}
2721 %defattr(-,root,root)
2722 %biarchlib libubsan.so.%{libubsan_sover}*
2723 %endif
2724 %endif
2725
2726
2727 %ifarch %vtv_arch
2728 %files -n libvtv%{libvtv_sover}%{libvtv_suffix}
2729 %defattr(-,root,root)
2730 %mainlib libvtv.so.%{libvtv_sover}*
2731
2732 %if %{separate_biarch}
2733 %files -n libvtv%{libvtv_sover}%{libvtv_suffix}%{separate_biarch_suffix}
2734 %defattr(-,root,root)
2735 %biarchlib libvtv.so.%{libvtv_sover}*
2736 %endif
2737 %endif
2738
2739
2740 %if %{build_fortran}
2741 %files fortran
2742 %defattr(-,root,root)
2743 %dir %{libsubdir}/finclude
2744 %{_prefix}/bin/gfortran%{binsuffix}
2745 %{libsubdir}/f951
2746 %{libsubdir}/finclude/*
2747 %versmainlib libgfortran.a
2748 %versmainlib libgfortran.so
2749 %versmainlib libgfortran.spec
2750 %versmainlib libgfortranbegin.a
2751 %versmainlib libcaf_single.a
2752 %ifarch %quadmath_arch
2753 %{libsubdir}/include/quadmath.h
2754 %{libsubdir}/include/quadmath_weak.h
2755 %versmainlib libquadmath.a
2756 %versmainlib libquadmath.so
2757 %endif
2758 %doc %{_mandir}/man1/gfortran%{binsuffix}.1.gz
2759
2760 %if %{separate_biarch}
2761 %files fortran%{separate_biarch_suffix}
2762 %defattr(-,root,root)
2763 %versbiarchlib libgfortran.a
2764 %versbiarchlib libgfortran.so
2765 %versbiarchlib libgfortran.spec
2766 %versbiarchlib libgfortranbegin.a
2767 %versbiarchlib libcaf_single.a
2768 %ifarch %quadmath_arch
2769 %versbiarchlib libquadmath.a
2770 %versbiarchlib libquadmath.so
2771 %endif
2772 %endif
2773
2774 %files -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}
2775 %defattr(-,root,root)
2776 %mainlib libgfortran.so.%{libgfortran_sover}*
2777
2778 %if %{separate_biarch}
2779 %files -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}%{separate_biarch_suffix}
2780 %defattr(-,root,root)
2781 %biarchlib libgfortran.so.%{libgfortran_sover}*
2782 %endif
2783
2784 %ifarch %quadmath_arch
2785 %files -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}
2786 %defattr(-,root,root)
2787 %mainlib libquadmath.so.%{libquadmath_sover}*
2788
2789 %if %{separate_biarch}
2790 %files -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}%{separate_biarch_suffix}
2791 %defattr(-,root,root)
2792 %biarchlib libquadmath.so.%{libquadmath_sover}*
2793 %endif
2794 %endif
2795 %endif
2796
2797 %files info
2798 %defattr(-,root,root)
2799 %doc %{_infodir}/cpp%{binsuffix}.info*.gz
2800 %doc %{_infodir}/cppinternals%{binsuffix}.info*.gz
2801 %doc %{_infodir}/gcc%{binsuffix}.info*.gz
2802 %doc %{_infodir}/gccint%{binsuffix}.info*.gz
2803 %doc %{_infodir}/gccinstall%{binsuffix}.info*.gz
2804 %doc %{_infodir}/libgomp%{binsuffix}.info*.gz
2805 %ifarch %itm_arch
2806 %doc %{_infodir}/libitm%{binsuffix}.info*.gz
2807 %endif
2808 %if %{build_fortran}
2809 %doc %{_infodir}/gfortran%{binsuffix}.info*.gz
2810 %ifarch %quadmath_arch
2811 %doc %{_infodir}/libquadmath%{binsuffix}.info*.gz
2812 %endif
2813 %endif
2814 %if %{build_java}
2815 %doc %{_infodir}/gcj%{binsuffix}.info*.gz
2816 %endif
2817 %if %{build_ada}
2818 %doc %{_infodir}/gnat-style%{binsuffix}.info*gz
2819 %doc %{_infodir}/gnat_rm%{binsuffix}.info*gz
2820 %doc %{_infodir}/gnat_ugn%{binsuffix}.info*gz
2821 %endif
2822
2823 %files -n cpp49
2824 %defattr(-,root,root)
2825 %dir %{_libdir}/gcc
2826 %dir %{_libdir}/gcc/%{GCCDIST}
2827 %dir %{libsubdir}
2828 %{_prefix}/bin/cpp%{binsuffix}
2829 %{libsubdir}/cc1
2830 #%{libsubdir}/specs
2831 %doc %{_mandir}/man1/cpp%{binsuffix}.1.gz
2832
2833 %if %{build_objc}
2834 %files objc
2835 %defattr(-,root,root)
2836 %{libsubdir}/cc1obj
2837 %{libsubdir}/include/objc
2838 %versmainlib libobjc.a
2839 %versmainlib libobjc.so
2840
2841 %if %{separate_biarch}
2842 %files objc%{separate_biarch_suffix}
2843 %defattr(-,root,root)
2844 %versbiarchlib libobjc.a
2845 %versbiarchlib libobjc.so
2846 %endif
2847
2848 %files -n libobjc%{libobjc_sover}%{libobjc_suffix}
2849 %defattr(-,root,root)
2850 %mainlib libobjc.so.%{libobjc_sover}*
2851
2852 %if %{separate_biarch}
2853 %files -n libobjc%{libobjc_sover}%{libobjc_suffix}%{separate_biarch_suffix}
2854 %defattr(-,root,root)
2855 %biarchlib libobjc.so.%{libobjc_sover}*
2856 %endif
2857 %endif
2858
2859
2860 %if %{build_objcp}
2861 %files obj-c++
2862 %defattr(-,root,root)
2863 %{libsubdir}/cc1objplus
2864 %endif
2865
2866
2867 %if %{build_ada}
2868 %files ada
2869 %defattr(-,root,root)
2870 %dir %{_libdir}/gcc
2871 %dir %{_libdir}/gcc/%{GCCDIST}
2872 %dir %{libsubdir}
2873 %{_prefix}/bin/gnat*
2874 %dir %{versmainlibdir}/adalib
2875 %{versmainlibdir}/adainclude
2876 %{versmainlibdir}/adalib/*.ali
2877 %{versmainlibdir}/adalib/*.a
2878 %{versmainlibdir}/adalib/libgnarl.so
2879 %{versmainlibdir}/adalib/libgnat.so
2880 %{versmainlibdir}/gnat1
2881
2882 %if %{separate_biarch}
2883 %files ada%{separate_biarch_suffix}
2884 %defattr(-,root,root)
2885 %dir %{versmainlibdirbi}/adalib
2886 %{versmainlibdirbi}/adainclude
2887 %{versmainlibdirbi}/adalib/*.ali
2888 %{versmainlibdirbi}/adalib/*.a
2889 %{versmainlibdirbi}/adalib/libgnarl.so
2890 %{versmainlibdirbi}/adalib/libgnat.so
2891 %endif
2892
2893 %files -n libada49
2894 %defattr(-,root,root)
2895 %mainlib libgnarl-*.so
2896 %mainlib libgnat-*.so
2897
2898 %if %{separate_biarch}
2899 %files -n libada49%{separate_biarch_suffix}
2900 %defattr(-,root,root)
2901 %biarchlib libgnarl-*.so
2902 %biarchlib libgnat-*.so
2903 %endif
2904 %endif
2905
2906
2907 %if %{build_java}
2908 %if 0%{?building_libjava:1}
2909 %files -n gcc49-java
2910 %defattr(-,root,root)
2911 %{_prefix}/bin/gcj%{binsuffix}
2912 %{_prefix}/bin/gcjh%{binsuffix}
2913 %{_prefix}/bin/gcj-dbtool%{binsuffix}
2914 %{_prefix}/bin/jcf-dump%{binsuffix}
2915 %{_prefix}/bin/jv-convert%{binsuffix}
2916 %{_prefix}/bin/gc-analyze%{binsuffix}
2917 %{_prefix}/bin/aot-compile%{binsuffix}
2918 %{_prefix}/bin/rebuild-gcj-db%{binsuffix}
2919 %{libsubdir}/jc1
2920 %{libsubdir}/jvgenmain
2921 %{libsubdir}/ecj.jar
2922 %{libsubdir}/ecj1
2923 %doc %{_mandir}/man1/gcj%{binsuffix}.1.gz
2924 %doc %{_mandir}/man1/gcjh%{binsuffix}.1.gz
2925 %doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz
2926 %doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz
2927 %doc %{_mandir}/man1/jv-convert%{binsuffix}.1.gz
2928 %doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz
2929 %doc %{_mandir}/man1/aot-compile%{binsuffix}.1.gz
2930 %doc %{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1.gz
2931 %endif
2932 %endif
2933
2934 %if %{build_java}
2935 %if %{build_libjava}
2936 %files -n libgcj49
2937 %defattr(-,root,root)
2938 %dir %{libsubdir}/gcj-%{gcc_dir_version}-%{libgcj_sover}
2939 %dir %{_libdir}/gcc
2940 %dir %{_libdir}/gcc/%{GCCDIST}
2941 %dir %{libsubdir}
2942 %{libsubdir}/gcj-%{gcc_dir_version}-%{libgcj_sover}/classmap.db
2943 # We usually do not multilib libjava
2944 %if %{biarch_libjava}
2945 %versbiarchlib libgcj.la
2946 %biarchlib libgcj.so.*
2947 %biarchlib libgij.so.*
2948 %biarchlib libgcj-tools.so.*
2949 %else
2950 %versmainlib libgcj.la
2951 %mainlib libgcj.so.*
2952 %mainlib libgij.so.*
2953 %mainlib libgcj-tools.so.*
2954 %endif
2955 %{libsubdir}/gcj-%{gcc_dir_version}-%{libgcj_sover}/libjvm.la
2956 %{libsubdir}/gcj-%{gcc_dir_version}-%{libgcj_sover}/libjvm.so
2957 %{libsubdir}/gcj-%{gcc_dir_version}-%{libgcj_sover}/libjavamath.la
2958 %{libsubdir}/gcj-%{gcc_dir_version}-%{libgcj_sover}/libjavamath.so
2959
2960 %files -n libgcj_bc%{libgcj_bc_sover}%{libgcj_bc_suffix}
2961 %defattr(-,root,root)
2962 %if %{biarch_libjava}
2963 %biarchlib libgcj_bc.so.%{libgcj_bc_sover}*
2964 %else
2965 %mainlib libgcj_bc.so.%{libgcj_bc_sover}*
2966 %endif
2967
2968 %files -n libgcj49-jar
2969 %defattr(-,root,root)
2970 %{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar
2971 %{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar
2972
2973 %files -n libgcj49-devel
2974 %defattr(-,root,root)
2975 %dir %{_prefix}/include/c++
2976 %dir %{libsubdir}
2977 %dir %{libsubdir}/include
2978 %dir %{gxxinclude}
2979 %{_libdir}/pkgconfig/libgcj%{binsuffix}.pc
2980 %{libsubdir}/include/jawt.h
2981 %{libsubdir}/include/jawt_md.h
2982 %{libsubdir}/include/jni.h
2983 %{libsubdir}/include/jni_md.h
2984 %{libsubdir}/include/jvmpi.h
2985 %{gxxinclude}/gnu
2986 %{gxxinclude}/gcj
2987 %{gxxinclude}/java
2988 %{gxxinclude}/javax
2989 %{gxxinclude}/org
2990 %{gxxinclude}/sun
2991 %{libsubdir}/include/gcj
2992 %if %{biarch_libjava}
2993 %versbiarchlib libgcj.so
2994 %versbiarchlib libgcj.spec
2995 %versbiarchlib libgcj-tools.so
2996 %versbiarchlib libgij.so
2997 %versbiarchlib libgcj_bc.so
2998 %else
2999 %versmainlib libgcj.so
3000 %versmainlib libgcj.spec
3001 %versmainlib libgcj-tools.so
3002 %versmainlib libgij.so
3003 %versmainlib libgcj_bc.so
3004 %endif
3005
3006 %files -n gcc49-gij
3007 %defattr(-,root,root)
3008 %{_prefix}/bin/gij%{binsuffix}
3009 %{_prefix}/bin/gappletviewer%{binsuffix}
3010 %{_prefix}/bin/gjar%{binsuffix}
3011 %{_prefix}/bin/gjarsigner%{binsuffix}
3012 %{_prefix}/bin/gjavah%{binsuffix}
3013 %{_prefix}/bin/gkeytool%{binsuffix}
3014 %{_prefix}/bin/gnative2ascii%{binsuffix}
3015 %{_prefix}/bin/gorbd%{binsuffix}
3016 %{_prefix}/bin/grmic%{binsuffix}
3017 %{_prefix}/bin/grmid%{binsuffix}
3018 %{_prefix}/bin/grmiregistry%{binsuffix}
3019 %{_prefix}/bin/gserialver%{binsuffix}
3020 %{_prefix}/bin/gtnameserv%{binsuffix}
3021 %doc %{_mandir}/man1/gij%{binsuffix}.1.gz
3022 %doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz
3023 %doc %{_mandir}/man1/grmic%{binsuffix}.1.gz
3024 %doc %{_mandir}/man1/grmid%{binsuffix}.1.gz
3025 %doc %{_mandir}/man1/grmiregistry%{binsuffix}.1.gz
3026 %doc %{_mandir}/man1/gkeytool%{binsuffix}.1.gz
3027 %doc %{_mandir}/man1/gjar%{binsuffix}.1.gz
3028 %doc %{_mandir}/man1/gjarsigner%{binsuffix}.1.gz
3029 %doc %{_mandir}/man1/gjavah%{binsuffix}.1.gz
3030 %doc %{_mandir}/man1/gnative2ascii%{binsuffix}.1.gz
3031 %doc %{_mandir}/man1/gorbd%{binsuffix}.1.gz
3032 %doc %{_mandir}/man1/gserialver%{binsuffix}.1.gz
3033 %doc %{_mandir}/man1/gtnameserv%{binsuffix}.1.gz
3034 %endif
3035 %endif
3036
3037 %if 0%{?building_libjava:1}
3038 %files -n libstdc++49-doc
3039 %defattr(-,root,root)
3040 %doc libstdc++-v3/doc/html
3041 %endif
3042
3043 %if %{build_java}
3044 %if 0%{?building_libffi:1}
3045 %files -n libffi%{libffi_sover}%{libffi_suffix}
3046 %defattr(-,root,root)
3047 %mainlib libffi.so.%{libffi_sover}*
3048
3049 %if %{separate_biarch}
3050 %files -n libffi%{libffi_sover}%{libffi_suffix}%{separate_biarch_suffix}
3051 %defattr(-,root,root)
3052 %biarchlib libffi.so.%{libffi_sover}*
3053 %endif
3054
3055 %post -n libffi49-devel
3056 %install_info --info-dir=%{_infodir} %{_infodir}/libffi%{binsuffix}.info.gz
3057 %postun -n libffi49-devel
3058 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libffi%{binsuffix}.info.gz
3059
3060 %files -n libffi49-devel
3061 %defattr(-,root,root)
3062 %{_prefix}/include/ffi.h
3063 %{_prefix}/include/ffitarget.h
3064 %mainlib libffi.so
3065 %mainlib libffi.a
3066 %{_libdir}/pkgconfig/libffi.pc
3067 %doc %{_infodir}/libffi%{binsuffix}.info.gz
3068 %doc %{_mandir}/man3/ffi%{binsuffix}.3.gz
3069 %doc %{_mandir}/man3/ffi_call%{binsuffix}.3.gz
3070 %doc %{_mandir}/man3/ffi_prep_cif%{binsuffix}.3.gz
3071 %doc %{_mandir}/man3/ffi_prep_cif_var%{binsuffix}.3.gz
3072
3073 %if %{separate_biarch}
3074 %files -n libffi49-devel%{separate_biarch_suffix}
3075 %defattr(-,root,root)
3076 %biarchlib libffi.so
3077 %biarchlib libffi.a
3078 %endif
3079 %endif
3080 %endif
3081
3082 %if %{build_go}
3083 %files go
3084 %{_prefix}/bin/gccgo%{binsuffix}
3085 %{libsubdir}/go1
3086 %versmainlib libgo.a
3087 %versmainlib libgo.so
3088 %versmainlib libgobegin.a
3089 %dir %mainlibdir/go
3090 %dir %mainlibdir/go/%{gcc_dir_version}
3091 %mainlibdir/go/%{gcc_dir_version}/%{GCCDIST}
3092 %doc %{_mandir}/man1/gccgo%{binsuffix}.1.gz
3093
3094 %if %{separate_biarch}
3095 %files go%{separate_biarch_suffix}
3096 %versbiarchlib libgo.a
3097 %versbiarchlib libgo.so
3098 %versbiarchlib libgobegin.a
3099 %dir %mainlibdirbi/go
3100 %dir %mainlibdirbi/go/%{gcc_dir_version}
3101 %mainlibdirbi/go/%{gcc_dir_version}/%{GCCDIST}
3102 %endif
3103
3104 %files -n libgo%{libgo_sover}%{libgo_suffix}
3105 %defattr(-,root,root)
3106 %mainlib libgo.so.%{libgo_sover}*
3107
3108 %if %{separate_biarch}
3109 %files -n libgo%{libgo_sover}%{libgo_suffix}%{separate_biarch_suffix}
3110 %defattr(-,root,root)
3111 %biarchlib libgo.so.%{libgo_sover}*
3112 %endif
3113 %endif
3114
3115 %if 0%{?run_tests:1}
3116 %files -n gcc49-testresults
3117 %defattr(-,root,root)
3118 %doc testresults/test_summary.txt
3119 %doc testresults/*.sum
3120 %doc testresults/*.log
3121 %endif
3122
3123
3124 %changelog