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