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