]> git.pld-linux.org Git - packages/crossmingw32-gcc.git/blame - crossmingw32-gcc.spec
- versioned Obsoletes
[packages/crossmingw32-gcc.git] / crossmingw32-gcc.spec
CommitLineData
a3bdc2a1 1#
2# Conditional build:
6ccf21dc
JB
3%bcond_with bootstrap # bootstrap build (using binary w32api/mingwrt, no gomp)
4%bcond_without gomp # OpenMP libraries
a3bdc2a1 5#
6ccf21dc
JB
6%if %{with bootstrap}
7%undefine with_gomp
8%endif
8c4c66e6
JB
9Summary: Cross MinGW32 GNU binary utility development utilities - gcc
10Summary(es.UTF-8): Utilitarios para desarrollo de binarios de la GNU - MinGW32 gcc
11Summary(fr.UTF-8): Utilitaires de développement binaire de GNU - MinGW32 gcc
12Summary(pl.UTF-8): Skrośne narzędzia programistyczne GNU dla MinGW32 - gcc
13Summary(pt_BR.UTF-8): Utilitários para desenvolvimento de binários da GNU - MinGW32 gcc
14Summary(tr.UTF-8): GNU geliştirme araçları - MinGW32 gcc
b336056d 15Name: crossmingw32-gcc
0f000c5c 16Version: 8.5.0
0c9e92e0 17Release: 1
d3f237e2 18Epoch: 1
acb9fe67 19License: GPL v3+
d3f237e2 20Group: Development/Languages
da54ab64 21Source0: https://ftp.gnu.org/gnu/gcc/gcc-%{version}/gcc-%{version}.tar.xz
0f000c5c
JB
22# Source0-md5: 0c1f625768840187ef3b10adebe8e3b0
23%define w32api_ver 5.4.2
24#Source1Download: https://osdn.net/projects/mingw/releases/
25Source1: https://osdn.net/projects/mingw/downloads/74926/w32api-%{w32api_ver}-mingw32-dev.tar.xz
26# Source1-md5: 88b0dc6185079e60d83bdbaec92028b8
27%define mingw32_ver 5.4.2
28#Source2Download: https://osdn.net/projects/mingw/releases/
29Source2: https://osdn.net/projects/mingw/downloads/74925/mingwrt-%{mingw32_ver}-mingw32-dev.tar.xz
30# Source2-md5: d8dceb05b85602eec82eac4e11d5c027
8b161635 31Source3: gcc-optimize-la.pl
0c9e92e0 32#Patch100: gcc-branch.diff
83afd976
ŁK
33Patch0: %{name}-buildsystem1.patch
34Patch1: %{name}-buildsystem2.patch
35Patch2: %{name}-lfs.patch
14b9b67e 36Patch3: gcc-mingw32.patch
da54ab64 37Patch4: gcc-build-libvtv.patch
6ccf21dc 38URL: http://gcc.gnu.org/
669fa8b1 39BuildRequires: autoconf >= 2.64
14b9b67e 40BuildRequires: automake >= 1:1.11.1
d12aabe0 41BuildRequires: bison
14b9b67e 42BuildRequires: crossmingw32-binutils >= 2.23
6ccf21dc
JB
43%{?with_gomp:BuildRequires: crossmingw32-pthreads-w32}
44%if %{without bootstrap}
45BuildRequires: crossmingw32-runtime >= 3.5
46BuildRequires: crossmingw32-w32api >= 3.1
47%endif
14b9b67e
JB
48BuildRequires: flex >= 2.5.4
49BuildRequires: gettext-tools >= 0.14.5
50BuildRequires: gmp-devel >= 4.3.2
da54ab64 51BuildRequires: isl-devel >= 0.15
14b9b67e 52BuildRequires: libmpc-devel >= 0.8.1
da54ab64 53BuildRequires: libstdc++-devel
14b9b67e 54BuildRequires: mpfr-devel >= 2.4.2
207a380a 55BuildRequires: perl-tools-pod
73ff33c1 56BuildRequires: tar >= 1:1.22
da54ab64 57BuildRequires: texinfo >= 4.7
73ff33c1 58BuildRequires: xz
da54ab64 59BuildRequires: zlib-devel
14b9b67e
JB
60BuildConflicts: pdksh < 5.2.14-50
61Requires: crossmingw32-binutils >= 2.23
6ab368b0 62Requires: gcc-dirs
14b9b67e 63Requires: gmp >= 4.3.2
da54ab64 64Requires: isl >= 0.15
14b9b67e
JB
65Requires: libmpc >= 0.8.1
66Requires: mpfr >= 2.4.2
0c9e92e0
JB
67# java support dropped from gcc 7+
68Obsoletes: crossmingw32-java < 1:7
b336056d
JB
69BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70
d3f237e2 71%define target i386-mingw32
8f1d5c0c 72%define sysprefix /usr
77399965
JB
73%define archprefix %{sysprefix}/%{target}
74%define archbindir %{archprefix}/bin
75%define archincludedir %{archprefix}/include
76%define archlibdir %{archprefix}/lib
73ff33c1
JB
77%define gccarchdir %{_libdir}/gcc/%{target}
78%define gcclibdir %{gccarchdir}/%{version}
79%define _dlldir /usr/share/wine/windows/system
dee9b92f 80
5b936a1d 81%define _noautostrip .*/lib.*\\.a
b336056d 82
66f480ce
JP
83%define _enable_debug_packages 0
84
45ff11c2
JR
85# functions with printf format attribute but with special parser and also
86# receiving non constant format strings
87%define Werror_cflags %{nil}
42fa9439 88%define _ssp_cflags %{nil}
c07647a9
JB
89# -fPIC is not valid for target platform
90%define filterout_c -fPIC
42fa9439 91
b336056d
JB
92%description
93crossmingw32 is a complete cross-compiling development system for
94building stand-alone Microsoft Windows applications under Linux using
8c4c66e6 95the MinGW32 build libraries. This includes a binutils, gcc with g++
b336056d
JB
96and objc, and libstdc++, all cross targeted to i386-mingw32, along
97with supporting Win32 libraries in 'coff' format from free sources.
98
d3f237e2 99This package contains cross targeted gcc.
b336056d 100
4a6c89d0 101%description -l de.UTF-8
102Dieses Paket enthält einen Cross-gcc, der es erlaubt, auf einem
103anderem Rechner Code für Win32 zu generieren.
9dd4c848 104
4a6c89d0 105%description -l pl.UTF-8
106crossmingw32 jest kompletnym systemem do kompilacji skrośnej,
107pozwalającym budować aplikacje MS Windows pod Linuksem używając
8c4c66e6 108bibliotek MinGW32. System składa się z binutils, gcc z g++ i objc,
4a6c89d0 109libstdc++ - wszystkie generujące kod dla platformy i386-mingw32, oraz
2e5b9011 110z bibliotek w formacie COFF.
d790a8ba 111
4a6c89d0 112Ten pakiet zawiera gcc generujące skrośnie kod dla Win32.
d790a8ba 113
73ff33c1
JB
114%package -n crossmingw32-libgcc-dll
115Summary: libgcc DLL library for Windows
116Summary(pl.UTF-8): Biblioteka DLL libgcc dla Windows
117Group: Applications/Emulators
118Requires: wine
119
120%description -n crossmingw32-libgcc-dll
121libgcc DLL library for Windows.
122
123%description -n crossmingw32-libgcc-dll -l pl.UTF-8
124Biblioteka DLL libgcc dla Windows.
125
14b9b67e
JB
126%package -n crossmingw32-libatomic
127Summary: The GNU Atomic library - cross MinGW32 version
128Summary(pl.UTF-8): Biblioteka GNU Atomic - wersja skrośna MinGW32
129License: GPL v3+ with GCC Runtime Library Exception v3.1
130Group: Development/Libraries
131Requires: %{name} = %{epoch}:%{version}-%{release}
132
133%description -n crossmingw32-libatomic
134This package contains cross MinGW32 version of the GNU Atomic library
135which is a GCC support library for atomic operations not supported by
136hardware.
137
138%description -n crossmingw32-libatomic -l pl.UTF-8
139Ten pakiet zawiera wersję skrośną MinGW32 biblioteki GNU Atomic,
140będącej biblioteką GCC, wspierającej operacje atomowe na sprzęcie ich
141nie obsługującym.
142
143%package -n crossmingw32-libatomic-static
144Summary: The GNU Atomic static library - cross MinGW32 version
145Summary(pl.UTF-8): Statyczna biblioteka GNU Atomic - wersja skrośna MinGW32
146License: GPL v3+ with GCC Runtime Library Exception v3.1
147Group: Development/Libraries
148Requires: crossmingw32-libatomic = %{epoch}:%{version}-%{release}
149
150%description -n crossmingw32-libatomic-static
151The GNU Atomic static library - cross MinGW32 version.
152
8bb997bf 153%description -n crossmingw32-libatomic-static -l pl.UTF-8
14b9b67e
JB
154Statyczna biblioteka GNU Atomic - wersja skrośna MinGW32.
155
156%package -n crossmingw32-libatomic-dll
157Summary: DLL GNU Atomic library for Windows
158Summary(pl.UTF-8): Biblioteka DLL GNU Atomic dla Windows
159License: GPL v3+ with GCC Runtime Library Exception v3.1
160Group: Applications/Emulators
161Requires: wine
162
163%description -n crossmingw32-libatomic-dll
164DLL GNU Atomic library for Windows.
165
166%description -n crossmingw32-libatomic-dll -l pl.UTF-8
167Biblioteka DLL GNU Atomic dla Windows.
168
6ccf21dc
JB
169%package -n crossmingw32-libgomp
170Summary: GNU OpenMP library - cross MinGW32 version
171Summary(pl.UTF-8): Biblioteka GNU OpenMP - wersja skrośna MinGW32
172License: GPL v3+ with GCC Runtime Library Exception v3.1
173Group: Development/Libraries
174Requires: %{name} = %{epoch}:%{version}-%{release}
175
176%description -n crossmingw32-libgomp
177This package contains cross MinGW32 version of GNU OpenMP library.
178
179%description -n crossmingw32-libgomp -l pl.UTF-8
180Ten pakiet zawiera wersję skrośną MinGW32 biblioteki GNU OpenMP.
181
182%package -n crossmingw32-libgomp-static
183Summary: Static GNU OpenMP library - cross MinGW32 version
184Summary(pl.UTF-8): Statyczna biblioteka GNU OpenMP - wersja skrośna MinGW32
185License: GPL v3+ with GCC Runtime Library Exception v3.1
186Group: Development/Libraries
187Requires: crossmingw32-libgomp = %{epoch}:%{version}-%{release}
188
189%description -n crossmingw32-libgomp-static
190Static GNU OpenMP library - cross MinGW32 version.
191
192%description -n crossmingw32-libgomp-static -l pl.UTF-8
193Statyczna biblioteka GNU OpenMP - wersja skrośna MinGW32.
194
195%package -n crossmingw32-libgomp-dll
196Summary: DLL GNU OpenMP library for Windows
197Summary(pl.UTF-8): Biblioteka DLL GNU OpenMP dla Windows
198License: GPL v3+ with GCC Runtime Library Exception v3.1
14b9b67e 199Group: Applications/Emulators
6ccf21dc 200Requires: crossmingw32-libgcc-dll = %{epoch}:%{version}-%{release}
e49d4dab 201Requires: crossmingw32-pthreads-w32-dll
6ccf21dc
JB
202
203%description -n crossmingw32-libgomp-dll
204DLL GNU OpenMP library for Windows.
205
206%description -n crossmingw32-libgomp-dll -l pl.UTF-8
207Biblioteka DLL GNU OpenMP dla Windows.
208
14b9b67e
JB
209%package -n crossmingw32-libvtv
210Summary: The Virtual Table Verification library - cross MinGW32 version
211Summary(pl.UTF-8): Biblioteka Virtual Table Verification do weryfikacji tablicy wirtualnej - wersja skrośna MinGW32
212License: GPL v3+ with GCC Runtime Library Exception v3.1
213Group: Development/Libraries
214URL: https://gcc.gnu.org/wiki/vtv
215Requires: %{name} = %{epoch}:%{version}-%{release}
216
217%description -n crossmingw32-libvtv
218This package contains cross MinGW32 version of the Virtual Table
219Verification library which is used for -fvtable-verify=...
220instrumented programs.
221
222%description -n crossmingw32-libvtv -l pl.UTF-8
223Ten pakiet zawiera wersję skrośną MinGW32 biblioteki Virtual Table
224Verification, służącej do weryfikacji tablicy wirtualnej w programach
225kompilowanych z opcją -fvtable-verify=....
226
227%package -n crossmingw32-libvtv-static
228Summary: The Virtual Table Verification static library - cross MinGW32 version
229Summary(pl.UTF-8): Statyczna biblioteka Virtual Table Verification - wersja skrośna MinGW32
230License: GPL v3+ with GCC Runtime Library Exception v3.1
231Group: Development/Libraries
232URL: https://gcc.gnu.org/wiki/vtv
233Requires: crossmingw32-libvtv = %{epoch}:%{version}-%{release}
234
235%description -n crossmingw32-libvtv-static
236The Virtual Table Verification static library - cross MinGW32 version.
237
238%description -n crossmingw32-libvtv-static -l pl.UTF-8
239Statyczna biblioteka Virtual Table Verification - wersja skrośna
240MinGW32.
241
242%package -n crossmingw32-libvtv-dll
243Summary: DLL Virtual Table Verification libraries for Windows
244Summary(pl.UTF-8): Biblioteki DLL Virtual Table Verification dla Windows
245License: GPL v3+ with GCC Runtime Library Exception v3.1
246Group: Applications/Emulators
247URL: https://gcc.gnu.org/wiki/vtv
248Requires: crossmingw32-libgcc-dll = %{epoch}:%{version}-%{release}
249
250%description -n crossmingw32-libvtv-dll
251DLL Virtual Table Verification libraries for Windows.
252
253%description -n crossmingw32-libvtv-dll -l pl.UTF-8
254Biblioteki DLL Virtual Table Verification dla Windows.
255
d3f237e2 256%package c++
8c4c66e6
JB
257Summary: MinGW32 binary utility development utilities - g++
258Summary(pl.UTF-8): Zestaw narzędzi MinGW32 - g++
d3f237e2 259Group: Development/Languages
cae974d4 260Requires: %{name} = %{epoch}:%{version}-%{release}
b336056d 261
d3f237e2
JB
262%description c++
263crossmingw32 is a complete cross-compiling development system for
264building stand-alone Microsoft Windows applications under Linux using
8c4c66e6 265the MinGW32 build libraries. This includes a binutils, gcc with g++
d3f237e2
JB
266and objc, and libstdc++, all cross targeted to i386-mingw32, along
267with supporting Win32 libraries in 'coff' format from free sources.
268
269This package contains cross targeted g++ and (static) libstdc++.
270
4a6c89d0 271%description c++ -l pl.UTF-8
272crossmingw32 jest kompletnym systemem do kompilacji skrośnej,
273pozwalającym budować aplikacje MS Windows pod Linuksem używając
8c4c66e6 274bibliotek MinGW32. System składa się z binutils, gcc z g++ i objc,
4a6c89d0 275libstdc++ - wszystkie generujące kod dla platformy i386-mingw32, oraz
2e5b9011 276z bibliotek w formacie COFF.
d790a8ba 277
4a6c89d0 278Ten pakiet zawiera g++ generujące kod pod Win32 oraz bibliotekę
d790a8ba
JB
279libstdc++.
280
73ff33c1
JB
281%package -n crossmingw32-libstdc++-static
282Summary: Static standard C++ library - cross MinGW32 version
283Summary(pl.UTF-8): Statyczna biblioteka standardowa C++ - wersja skrośna MinGW32
284Group: Development/Libraries
285Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
286
287%description -n crossmingw32-libstdc++-static
288Static standard C++ library - cross MinGW32 version.
289
290%description -n crossmingw32-libstdc++-static -l pl.UTF-8
291Statyczna biblioteka standardowa C++ - wersja skrośna MinGW32.
292
293%package -n crossmingw32-libstdc++-dll
294Summary: libstdc++ DLL library for Windows
295Summary(pl.UTF-8): Biblioteka DLL libstdc++ dla Windows
296Group: Applications/Emulators
297Requires: crossmingw32-libgcc-dll = %{epoch}:%{version}-%{release}
298Requires: wine
299
300%description -n crossmingw32-libstdc++-dll
301libstdc++ DLL library for Windows.
302
303%description -n crossmingw32-libstdc++-dll -l pl.UTF-8
304Biblioteka DLL libstdc++ dla Windows.
305
d3f237e2 306%package objc
8c4c66e6
JB
307Summary: MinGW32 binary utility development utilities - objc
308Summary(pl.UTF-8): Zestaw narzędzi MinGW32 - objc
d3f237e2 309Group: Development/Languages
cae974d4 310Requires: %{name} = %{epoch}:%{version}-%{release}
d3f237e2
JB
311
312%description objc
313crossmingw32 is a complete cross-compiling development system for
314building stand-alone Microsoft Windows applications under Linux using
8c4c66e6 315the MinGW32 build libraries. This includes a binutils, gcc with g++
d3f237e2
JB
316and objc, and libstdc++, all cross targeted to i386-mingw32, along
317with supporting Win32 libraries in 'coff' format from free sources.
318
37948e2b 319This package contains cross targeted objc compiler.
d3f237e2 320
4a6c89d0 321%description objc -l pl.UTF-8
322crossmingw32 jest kompletnym systemem do kompilacji skrośnej,
323pozwalającym budować aplikacje MS Windows pod Linuksem używając
8c4c66e6 324bibliotek MinGW32. System składa się z binutils, gcc z g++ i objc,
4a6c89d0 325libstdc++ - wszystkie generujące kod dla platformy i386-mingw32, oraz
2e5b9011 326z bibliotek w formacie COFF.
d790a8ba 327
4a6c89d0 328Ten pakiet zawiera kompilator objc generujący kod pod Win32.
d790a8ba 329
14b9b67e
JB
330%package objc++
331Summary: MinGW32 binary utility development utilities - objc++
332Summary(pl.UTF-8): Zestaw narzędzi MinGW32 - objc++
333Group: Development/Languages
334Requires: %{name}-objc = %{epoch}:%{version}-%{release}
335
336%description objc++
337crossmingw32 is a complete cross-compiling development system for
338building stand-alone Microsoft Windows applications under Linux using
339the MinGW32 build libraries. This includes a binutils, gcc with g++
340and objc, and libstdc++, all cross targeted to i386-mingw32, along
341with supporting Win32 libraries in 'coff' format from free sources.
342
343This package contains Objective C++ support.
344
345%description objc++ -l pl.UTF-8
346crossmingw32 jest kompletnym systemem do kompilacji skrośnej,
347pozwalającym budować aplikacje MS Windows pod Linuksem używając
348bibliotek MinGW32. System składa się z binutils, gcc z g++ i objc,
349libstdc++ - wszystkie generujące kod dla platformy i386-mingw32, oraz
350z bibliotek w formacie COFF.
351
352Ten pakiet zawiera obsługę języka Objective C++.
353
8f1d5c0c
JB
354%package -n crossmingw32-libobjc-static
355Summary: Static Objective C library - cross MinGW32 version
356Summary(pl.UTF-8): Statyczna biblioteka Objective C - wersja skrośna MinGW32
357Group: Development/Libraries
358Requires: %{name}-objc = %{epoch}:%{version}-%{release}
359
360%description -n crossmingw32-libobjc-static
361Static Objective C library - cross MinGW32 version.
362
363%description -n crossmingw32-libobjc-static -l pl.UTF-8
364Statyczna biblioteka Objective C - wersja skrośna MinGW32.
365
366%package -n crossmingw32-libobjc-dll
367Summary: libobjc DLL library for Windows
368Summary(pl.UTF-8): Biblioteka DLL libobjc dla Windows
369Group: Applications/Emulators
370Requires: crossmingw32-libgcc-dll = %{epoch}:%{version}-%{release}
371Requires: wine
372
373%description -n crossmingw32-libobjc-dll
374libobjc DLL library for Windows.
375
376%description -n crossmingw32-libobjc-dll -l pl.UTF-8
377Biblioteka DLL libobjc dla Windows.
378
52a544a1 379%package fortran
8c4c66e6
JB
380Summary: MinGW32 binary utility development utilities - Fortran
381Summary(pl.UTF-8): Zestaw narzędzi MinGW32 - Fortran
d3f237e2 382Group: Development/Languages
cae974d4 383Requires: %{name} = %{epoch}:%{version}-%{release}
ed6b55ce 384Requires: crossmingw32-libquadmath = %{epoch}:%{version}-%{release}
07818e83 385Obsoletes: crossmingw32-gcc-g77 < 1:4
d3f237e2 386
52a544a1 387%description fortran
d3f237e2
JB
388crossmingw32 is a complete cross-compiling development system for
389building stand-alone Microsoft Windows applications under Linux using
8c4c66e6 390the MinGW32 build libraries. This includes a binutils, gcc with g++
d3f237e2
JB
391and objc, and libstdc++, all cross targeted to i386-mingw32, along
392with supporting Win32 libraries in 'coff' format from free sources.
393
37948e2b 394This package contains cross targeted Fortran compiler.
d3f237e2 395
4a6c89d0 396%description fortran -l pl.UTF-8
397crossmingw32 jest kompletnym systemem do kompilacji skrośnej,
398pozwalającym budować aplikacje MS Windows pod Linuksem używając
8c4c66e6 399bibliotek MinGW32. System składa się z binutils, gcc z g++ i objc,
4a6c89d0 400libstdc++ - wszystkie generujące kod dla platformy i386-mingw32, oraz
2e5b9011 401z bibliotek w formacie COFF.
d790a8ba 402
4a6c89d0 403Ten pakiet zawiera kompilator Fortranu generujący kod pod Win32.
d790a8ba 404
0d9cd0a8
JB
405%package -n crossmingw32-libgfortran-static
406Summary: Static Fortran library - cross MinGW32 version
6a795f6e 407Summary(pl.UTF-8): Statyczna biblioteka Fortranu - wersja skrośna MinGW32
0d9cd0a8
JB
408Group: Development/Libraries
409Requires: %{name}-fortran = %{epoch}:%{version}-%{release}
410
411%description -n crossmingw32-libgfortran-static
412Static Fortran library - cross MinGW32 version.
413
414%description -n crossmingw32-libgfortran-static -l pl.UTF-8
6a795f6e 415Statyczna biblioteka Fortranu - wersja skrośna MinGW32.
0d9cd0a8
JB
416
417%package -n crossmingw32-libgfortran-dll
418Summary: libgfortran DLL library for Windows
419Summary(pl.UTF-8): Biblioteka DLL libgfortran dla Windows
420Group: Applications/Emulators
b07ce80e 421Requires: crossmingw32-libquadmath-dll
0d9cd0a8
JB
422
423%description -n crossmingw32-libgfortran-dll
424libgfortran DLL library for Windows.
425
426%description -n crossmingw32-libgfortran-dll -l pl.UTF-8
427Biblioteka DLL libgfortran dla Windows.
428
b07ce80e
JB
429%package -n crossmingw32-libquadmath
430Summary: GCC __float128 support library - cross MinGW32 version
431Summary(pl.UTF-8): Biblioteka do obsługi typu __float128 - wersja skrośna MinGW32
432License: GPL v2+ with linking exception
433Group: Development/Libraries
434Requires: %{name} = %{epoch}:%{version}-%{release}
435
436%description -n crossmingw32-libquadmath
437This package contains cross MinGW32 version of GCC support library
438which is needed for __float128 math support and for Fortran REAL*16
439support.
440
441%description -n crossmingw32-libquadmath -l pl.UTF-8
442Ten pakiet zawiera wersję skrośną MinGW32 biblioteki GCC do obsługi
443operacji matematycznych na zmiennych typu __float128 oraz typu REAL*16
444w Fortranie.
445
446%package -n crossmingw32-libquadmath-static
447Summary: Static GCC __float128 support library - cross MinGW32 version
448Summary(pl.UTF-8): Biblioteka statyczna GCC do obsługi typu __float128 - wersja skrośna MinGW32
449License: GPL v2+ with linking exception
450Group: Development/Libraries
451Requires: crossmingw32-libquadmath = %{epoch}:%{version}-%{release}
452
453%description -n crossmingw32-libquadmath-static
454Static GCC __float128 support library - cross MinGW32 version.
455
456%description -n crossmingw32-libquadmath-static -l pl.UTF-8
457Biblioteka statyczna GCC do obsługi typu __float128 - wersja skrośna
458MinGW32.
459
460%package -n crossmingw32-libquadmath-dll
461Summary: DLL GCC __float128 support library for Windows
462Summary(pl.UTF-8): Biblioteka DLL GCC do obsługi typu __float128 dla Windows
463License: GPL v2+ with linking exception
464Group: Applications/Emulators
465Requires: wine
466
467%description -n crossmingw32-libquadmath-dll
468DLL GCC __float128 support library for Windows.
469
470%description -n crossmingw32-libquadmath-dll -l pl.UTF-8
471Biblioteka DLL GCC do obsługi typu __float128 dla Windows.
472
d3f237e2 473%prep
dee9b92f 474%setup -q -n gcc-%{version}
0c9e92e0 475#patch100 -p0
83afd976
ŁK
476%patch0 -p1
477%patch2 -p1
14b9b67e 478%patch3 -p1
da54ab64 479%patch4 -p1
83afd976 480
b399bc1a 481%if %{with bootstrap}
8b161635
JB
482# note: "winsup" dirs are special, handled by gcc's configure
483install -d winsup/{mingw,w32api}
484tar xf %{SOURCE1} -C winsup/w32api
485tar xf %{SOURCE2} -C winsup/mingw
b399bc1a 486%endif
83afd976
ŁK
487
488# override snapshot version.
489echo %{version} > gcc/BASE-VER
490echo "release" > gcc/DEV-PHASE
b336056d
JB
491
492%build
da54ab64
JB
493cd libvtv
494%{__aclocal} -I .. -I ../config
495%{__autoconf}
496%{__automake}
497cd ..
498
73ff33c1 499rm -rf builddir && install -d builddir && cd builddir
b399bc1a 500%if %{with bootstrap}
73ff33c1 501install -d %{target}/winsup
73ff33c1 502ln -sf ../../../winsup/mingw/lib %{target}/winsup/mingw
8b161635 503ln -sf ../../../winsup/w32api %{target}/winsup/w32api
73ff33c1 504WINSUPDIR=$(cd ..; pwd)/winsup
b399bc1a
AF
505%endif
506
da54ab64 507# note: libbacktrace requires at least i486 now
83afd976 508CC="%{__cc}" \
b4c37c30 509CFLAGS="%{rpmcflags}" \
83afd976 510CXXFLAGS="%{rpmcxxflags}" \
b4c37c30 511TEXCONFIG=false \
da54ab64
JB
512CFLAGS_FOR_TARGET="-O2 -march=i486" \
513CXXFLAGS_FOR_TARGET="-O2 -march=i486" \
b336056d 514../configure \
8f1d5c0c 515 --prefix=%{sysprefix} \
77399965 516 --bindir=%{archbindir} \
73ff33c1 517 --libdir=%{_libdir} \
77399965 518 --includedir=%{archincludedir} \
a7ca5423 519 --libexecdir=%{_libdir} \
b336056d
JB
520 --infodir=%{_infodir} \
521 --mandir=%{_mandir} \
77399965
JB
522 --with-bugurl="http://bugs.pld-linux.org" \
523 --with-build-time-tools=%{archbindir} \
524 %{!?with_bootstrap:--with-headers=%{archincludedir}} \
525 --with-libs=%{!?with_bootstrap:%{archlibdir}}%{?with_bootstrap:${WINSUPDIR}/mingw/lib} \
14b9b67e 526 --with-demangler-in-ld \
83afd976
ŁK
527 --with-dwarf2 \
528 --with-gnu-as \
529 --with-gnu-ld \
83afd976 530 --with-long-double-128 \
77399965 531 --with-pkgversion="PLD-Linux" \
14b9b67e
JB
532 --enable-c99 \
533 --enable-fully-dynamic-string \
6ccf21dc 534 --disable-isl-version-check \
0c9e92e0 535 --enable-languages="c,c++,fortran,objc,obj-c++" \
14b9b67e
JB
536 --disable-libcc1 \
537 --enable-libgomp%{!?with_gomp:=no} \
538 --disable-libssp \
83afd976 539 --enable-libstdcxx-allocator=new \
14b9b67e 540 --enable-linker-build-id \
6ccf21dc 541 --enable-long-long \
14b9b67e 542 --enable-lto \
6ccf21dc 543 --disable-multilib \
0dcd3a97 544 --disable-nls \
da54ab64 545 --enable-shared \
83afd976 546 --disable-sjlj-exceptions \
6ccf21dc 547 --disable-symvers \
da54ab64 548 --enable-threads \
14b9b67e 549 --disable-werror \
83afd976 550 --disable-win32-registry \
b336056d
JB
551 --target=%{target}
552
83afd976
ŁK
553cd ..
554%{__make} -C builddir all-host
555patch -p1 <%{PATCH1}
556%{__make} -C builddir
b336056d
JB
557
558%install
b336056d 559rm -rf $RPM_BUILD_ROOT
73ff33c1 560install -d $RPM_BUILD_ROOT%{_bindir}
b336056d 561
83afd976 562%{__make} -C builddir install \
d12aabe0 563 DESTDIR=$RPM_BUILD_ROOT
b336056d 564
14b9b67e 565%{__mv} $RPM_BUILD_ROOT%{gcclibdir}/include-fixed/{limits,syslimits}.h $RPM_BUILD_ROOT%{gcclibdir}/include
73ff33c1
JB
566%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/include-fixed
567%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/install-tools
d12aabe0 568
82f2d40f 569# these must be symlinks: gcclibdir is calculated relatively to real binary path
77399965
JB
570ln -sf %{archbindir}/%{target}-gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc
571ln -sf %{archbindir}/%{target}-g++ $RPM_BUILD_ROOT%{_bindir}/%{target}-g++
572ln -sf %{archbindir}/%{target}-cpp $RPM_BUILD_ROOT%{_bindir}/%{target}-cpp
573ln -sf %{archbindir}/%{target}-gcov $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov
574ln -sf %{archbindir}/%{target}-gcov-dump $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-dump
575ln -sf %{archbindir}/%{target}-gcov-tool $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-tool
77399965 576ln -sf %{archbindir}/%{target}-gfortran $RPM_BUILD_ROOT%{_bindir}/%{target}-gfortran
83afd976 577
73ff33c1
JB
578# DLLs
579install -d $RPM_BUILD_ROOT%{_dlldir}
8b161635 580%{__mv} $RPM_BUILD_ROOT%{archlibdir}/*.dll $RPM_BUILD_ROOT%{_dlldir}
8f1d5c0c
JB
581if [ ! -f $RPM_BUILD_ROOT%{_dlldir}/libgcc_s_dw2-1.dll ]; then
582 echo "libgcc DLL not installed?"
583 install builddir/i386-mingw32/libgcc/shlib/libgcc_s_dw2-1.dll $RPM_BUILD_ROOT%{_dlldir}
584fi
d12aabe0 585
73ff33c1
JB
586%if 0%{!?debug:1}
587%{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
8b161635 588%{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{archlibdir}/lib*.a
d33f98c7 589%{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{gcclibdir}/lib*.a
73ff33c1 590%endif
83afd976 591
6ccf21dc 592# avoid -L poisoning in *.la
8b161635
JB
593for f in libatomic.la libgfortran.la libobjc.la libquadmath.la %{?with_gomp:libgomp.la} ; do
594 file="$RPM_BUILD_ROOT%{archlibdir}/$f"
595 %{__perl} %{SOURCE3} "$file" %{gcclibdir} >"${file}.fixed"
596 %{__mv} "${file}.fixed" "$file"
597done
598for f in libcaf_single.la ; do
6ccf21dc 599 file="$RPM_BUILD_ROOT%{gcclibdir}/$f"
8b161635 600 %{__perl} %{SOURCE3} "$file" %{gcclibdir} >"${file}.fixed"
6ccf21dc
JB
601 %{__mv} "${file}.fixed" "$file"
602done
603
b07ce80e 604# for pretty-printers see native gcc
8b161635 605%{__rm} $RPM_BUILD_ROOT%{archlibdir}/libstdc++.dll.a-gdb.py
b07ce80e 606%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx
4b27d406
JB
607# no plugin development for mingw32 (at least for now)
608%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/liblto_plugin.la
b07ce80e 609%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/plugin
73ff33c1
JB
610# already in native gcc
611%{__rm} -r $RPM_BUILD_ROOT%{_infodir}
612# common FSF man pages
613%{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/{fsf-funding,gfdl,gpl}.7
8c4c66e6 614
b336056d 615%clean
b336056d
JB
616rm -rf $RPM_BUILD_ROOT
617
618%files
619%defattr(644,root,root,755)
83afd976 620%attr(755,root,root) %{_bindir}/%{target}-gcc
b4c37c30 621%attr(755,root,root) %{_bindir}/%{target}-cpp
622%attr(755,root,root) %{_bindir}/%{target}-gcov
da54ab64 623%attr(755,root,root) %{_bindir}/%{target}-gcov-dump
14b9b67e 624%attr(755,root,root) %{_bindir}/%{target}-gcov-tool
17407f44 625%attr(755,root,root) %{archbindir}/%{target}-cpp
77399965
JB
626%attr(755,root,root) %{archbindir}/%{target}-gcc
627%attr(755,root,root) %{archbindir}/%{target}-gcc-%{version}
628%attr(755,root,root) %{archbindir}/%{target}-gcc-ar
629%attr(755,root,root) %{archbindir}/%{target}-gcc-nm
630%attr(755,root,root) %{archbindir}/%{target}-gcc-ranlib
77399965
JB
631%attr(755,root,root) %{archbindir}/%{target}-gcov
632%attr(755,root,root) %{archbindir}/%{target}-gcov-dump
633%attr(755,root,root) %{archbindir}/%{target}-gcov-tool
8b161635 634%{archlibdir}/libgcc_s.a
73ff33c1
JB
635%dir %{gccarchdir}
636%dir %{gcclibdir}
637%attr(755,root,root) %{gcclibdir}/cc1
638%attr(755,root,root) %{gcclibdir}/collect2
639%attr(755,root,root) %{gcclibdir}/lto-wrapper
4b27d406
JB
640%attr(755,root,root) %{gcclibdir}/lto1
641%attr(755,root,root) %{gcclibdir}/liblto_plugin.so*
73ff33c1
JB
642%{gcclibdir}/libgcc.a
643%{gcclibdir}/libgcc_eh.a
73ff33c1 644%{gcclibdir}/libgcov.a
00383376
AF
645%{gcclibdir}/crtbegin.o
646%{gcclibdir}/crtend.o
647%{gcclibdir}/crtfastmath.o
73ff33c1
JB
648%dir %{gcclibdir}/include
649%{gcclibdir}/include/*.h
539d7886 650%{_mandir}/man1/%{target}-cpp.1*
d3f237e2 651%{_mandir}/man1/%{target}-gcc.1*
539d7886 652%{_mandir}/man1/%{target}-gcov.1*
da54ab64
JB
653%{_mandir}/man1/%{target}-gcov-dump.1*
654%{_mandir}/man1/%{target}-gcov-tool.1*
d3f237e2 655
73ff33c1
JB
656%files -n crossmingw32-libgcc-dll
657%defattr(644,root,root,755)
658%{_dlldir}/libgcc_s_dw2-1.dll
659
14b9b67e
JB
660%files -n crossmingw32-libatomic
661%defattr(644,root,root,755)
8b161635
JB
662%{archlibdir}/libatomic.dll.a
663%{archlibdir}/libatomic.la
14b9b67e
JB
664
665%files -n crossmingw32-libatomic-static
666%defattr(644,root,root,755)
8b161635 667%{archlibdir}/libatomic.a
14b9b67e
JB
668
669%files -n crossmingw32-libatomic-dll
670%defattr(644,root,root,755)
671%{_dlldir}/libatomic-1.dll
672
6ccf21dc
JB
673%if %{with gomp}
674%files -n crossmingw32-libgomp
675%defattr(644,root,root,755)
8b161635
JB
676%{archlibdir}/libgomp.dll.a
677%{archlibdir}/libgomp.la
678%{archlibdir}/libgomp.spec
6ccf21dc
JB
679
680%files -n crossmingw32-libgomp-static
681%defattr(644,root,root,755)
8b161635 682%{archlibdir}/libgomp.a
6ccf21dc
JB
683
684%files -n crossmingw32-libgomp-dll
685%defattr(644,root,root,755)
686%{_dlldir}/libgomp-1.dll
687%endif
688
14b9b67e
JB
689%files -n crossmingw32-libvtv
690%defattr(644,root,root,755)
8b161635
JB
691%{archlibdir}/libvtv.dll.a
692%{archlibdir}/libvtv.la
693%{archlibdir}/libvtv_stubs.dll.a
694%{archlibdir}/libvtv_stubs.la
14b9b67e
JB
695
696%files -n crossmingw32-libvtv-static
697%defattr(644,root,root,755)
8b161635
JB
698%{archlibdir}/libvtv.a
699%{archlibdir}/libvtv_stubs.a
14b9b67e
JB
700
701%files -n crossmingw32-libvtv-dll
702%defattr(644,root,root,755)
703%{_dlldir}/libvtv-0.dll
704%{_dlldir}/libvtv_stubs-0.dll
705
d3f237e2
JB
706%files c++
707%defattr(644,root,root,755)
83afd976 708%attr(755,root,root) %{_bindir}/%{target}-g++
77399965
JB
709%attr(755,root,root) %{archbindir}/%{target}-c++
710%attr(755,root,root) %{archbindir}/%{target}-g++
73ff33c1 711%attr(755,root,root) %{gcclibdir}/cc1plus
8b161635
JB
712%{archlibdir}/libstdc++.dll.a
713%{archlibdir}/libstdc++.la
714%{archlibdir}/libsupc++.la
715%{archlibdir}/libsupc++.a
716%{archincludedir}/c++
d3f237e2
JB
717%{_mandir}/man1/%{target}-g++.1*
718
73ff33c1
JB
719%files -n crossmingw32-libstdc++-static
720%defattr(644,root,root,755)
8b161635 721%{archlibdir}/libstdc++.a
73ff33c1
JB
722
723%files -n crossmingw32-libstdc++-dll
724%defattr(644,root,root,755)
725%{_dlldir}/libstdc++-6.dll
726
d3f237e2
JB
727%files objc
728%defattr(644,root,root,755)
14b9b67e 729%doc libobjc/README
8f1d5c0c 730%attr(755,root,root) %{gcclibdir}/cc1obj
8b161635
JB
731%{archlibdir}/libobjc.dll.a
732%{archlibdir}/libobjc.la
8f1d5c0c 733%{gcclibdir}/include/objc
d3f237e2 734
14b9b67e
JB
735%files objc++
736%defattr(644,root,root,755)
737%doc gcc/objcp/ChangeLog
738%attr(755,root,root) %{gcclibdir}/cc1objplus
739
8f1d5c0c
JB
740%files -n crossmingw32-libobjc-static
741%defattr(644,root,root,755)
8b161635 742%{archlibdir}/libobjc.a
8f1d5c0c
JB
743
744%files -n crossmingw32-libobjc-dll
745%defattr(644,root,root,755)
669fa8b1 746%{_dlldir}/libobjc-4.dll
8f1d5c0c 747
52a544a1 748%files fortran
d3f237e2 749%defattr(644,root,root,755)
52a544a1 750%attr(755,root,root) %{_bindir}/%{target}-gfortran
77399965 751%attr(755,root,root) %{archbindir}/%{target}-gfortran
7f7a2048 752%attr(755,root,root) %{gcclibdir}/f951
8b161635
JB
753%{archlibdir}/libgfortran.dll.a
754%{archlibdir}/libgfortran.la
755%{archlibdir}/libgfortran.spec
0d9cd0a8 756%{gcclibdir}/finclude
669fa8b1
JB
757%{gcclibdir}/libcaf_single.a
758%{gcclibdir}/libcaf_single.la
52a544a1 759%{_mandir}/man1/%{target}-gfortran.1*
0d9cd0a8
JB
760
761%files -n crossmingw32-libgfortran-static
762%defattr(644,root,root,755)
8b161635 763%{archlibdir}/libgfortran.a
0d9cd0a8
JB
764
765%files -n crossmingw32-libgfortran-dll
766%defattr(644,root,root,755)
0f000c5c 767%{_dlldir}/libgfortran-5.dll
d3f237e2 768
b07ce80e
JB
769%files -n crossmingw32-libquadmath
770%defattr(644,root,root,755)
8b161635
JB
771%{archlibdir}/libquadmath.dll.a
772%{archlibdir}/libquadmath.la
b07ce80e
JB
773
774%files -n crossmingw32-libquadmath-static
775%defattr(644,root,root,755)
8b161635 776%{archlibdir}/libquadmath.a
b07ce80e
JB
777
778%files -n crossmingw32-libquadmath-dll
779%defattr(644,root,root,755)
780%{_dlldir}/libquadmath-0.dll
This page took 7.946656 seconds and 4 git commands to generate.