]> git.pld-linux.org Git - packages/crossmingw32-gcc.git/blame - crossmingw32-gcc.spec
- fixed bootstrap build, need to disable more components now
[packages/crossmingw32-gcc.git] / crossmingw32-gcc.spec
CommitLineData
a3bdc2a1 1#
2# Conditional build:
69291689 3%bcond_with bootstrap # bootstrap build (using binary w32api/mingwrt, only C/C++, no gomp)
6ccf21dc 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
69291689
JB
486# required by _mingw.h
487touch winsup/mingw/include/features.h
b399bc1a 488%endif
83afd976
ŁK
489
490# override snapshot version.
491echo %{version} > gcc/BASE-VER
492echo "release" > gcc/DEV-PHASE
b336056d
JB
493
494%build
da54ab64
JB
495cd libvtv
496%{__aclocal} -I .. -I ../config
497%{__autoconf}
498%{__automake}
499cd ..
500
73ff33c1 501rm -rf builddir && install -d builddir && cd builddir
b399bc1a 502%if %{with bootstrap}
73ff33c1 503install -d %{target}/winsup
73ff33c1 504ln -sf ../../../winsup/mingw/lib %{target}/winsup/mingw
8b161635 505ln -sf ../../../winsup/w32api %{target}/winsup/w32api
73ff33c1 506WINSUPDIR=$(cd ..; pwd)/winsup
b399bc1a
AF
507%endif
508
da54ab64 509# note: libbacktrace requires at least i486 now
83afd976 510CC="%{__cc}" \
b4c37c30 511CFLAGS="%{rpmcflags}" \
83afd976 512CXXFLAGS="%{rpmcxxflags}" \
b4c37c30 513TEXCONFIG=false \
da54ab64
JB
514CFLAGS_FOR_TARGET="-O2 -march=i486" \
515CXXFLAGS_FOR_TARGET="-O2 -march=i486" \
b336056d 516../configure \
8f1d5c0c 517 --prefix=%{sysprefix} \
77399965 518 --bindir=%{archbindir} \
73ff33c1 519 --libdir=%{_libdir} \
77399965 520 --includedir=%{archincludedir} \
a7ca5423 521 --libexecdir=%{_libdir} \
b336056d
JB
522 --infodir=%{_infodir} \
523 --mandir=%{_mandir} \
77399965
JB
524 --with-bugurl="http://bugs.pld-linux.org" \
525 --with-build-time-tools=%{archbindir} \
526 %{!?with_bootstrap:--with-headers=%{archincludedir}} \
527 --with-libs=%{!?with_bootstrap:%{archlibdir}}%{?with_bootstrap:${WINSUPDIR}/mingw/lib} \
14b9b67e 528 --with-demangler-in-ld \
83afd976
ŁK
529 --with-dwarf2 \
530 --with-gnu-as \
531 --with-gnu-ld \
83afd976 532 --with-long-double-128 \
77399965 533 --with-pkgversion="PLD-Linux" \
14b9b67e
JB
534 --enable-c99 \
535 --enable-fully-dynamic-string \
6ccf21dc 536 --disable-isl-version-check \
69291689
JB
537 --enable-languages="c,c++%{!?with_bootstrap:,fortran,objc,obj-c++}" \
538 %{?with_bootstrap:--disable-libatomic} \
14b9b67e
JB
539 --disable-libcc1 \
540 --enable-libgomp%{!?with_gomp:=no} \
69291689 541 %{?with_bootstrap:--disable-libquadmath} \
14b9b67e 542 --disable-libssp \
83afd976 543 --enable-libstdcxx-allocator=new \
69291689 544 %{?with_bootstrap:--disable-libvtv} \
14b9b67e 545 --enable-linker-build-id \
6ccf21dc 546 --enable-long-long \
14b9b67e 547 --enable-lto \
6ccf21dc 548 --disable-multilib \
0dcd3a97 549 --disable-nls \
da54ab64 550 --enable-shared \
83afd976 551 --disable-sjlj-exceptions \
6ccf21dc 552 --disable-symvers \
da54ab64 553 --enable-threads \
14b9b67e 554 --disable-werror \
83afd976 555 --disable-win32-registry \
b336056d
JB
556 --target=%{target}
557
83afd976
ŁK
558cd ..
559%{__make} -C builddir all-host
560patch -p1 <%{PATCH1}
561%{__make} -C builddir
b336056d
JB
562
563%install
b336056d 564rm -rf $RPM_BUILD_ROOT
73ff33c1 565install -d $RPM_BUILD_ROOT%{_bindir}
b336056d 566
83afd976 567%{__make} -C builddir install \
d12aabe0 568 DESTDIR=$RPM_BUILD_ROOT
b336056d 569
14b9b67e 570%{__mv} $RPM_BUILD_ROOT%{gcclibdir}/include-fixed/{limits,syslimits}.h $RPM_BUILD_ROOT%{gcclibdir}/include
73ff33c1
JB
571%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/include-fixed
572%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/install-tools
d12aabe0 573
82f2d40f 574# these must be symlinks: gcclibdir is calculated relatively to real binary path
77399965
JB
575ln -sf %{archbindir}/%{target}-gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc
576ln -sf %{archbindir}/%{target}-g++ $RPM_BUILD_ROOT%{_bindir}/%{target}-g++
577ln -sf %{archbindir}/%{target}-cpp $RPM_BUILD_ROOT%{_bindir}/%{target}-cpp
578ln -sf %{archbindir}/%{target}-gcov $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov
579ln -sf %{archbindir}/%{target}-gcov-dump $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-dump
580ln -sf %{archbindir}/%{target}-gcov-tool $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-tool
77399965 581ln -sf %{archbindir}/%{target}-gfortran $RPM_BUILD_ROOT%{_bindir}/%{target}-gfortran
83afd976 582
73ff33c1
JB
583# DLLs
584install -d $RPM_BUILD_ROOT%{_dlldir}
8b161635 585%{__mv} $RPM_BUILD_ROOT%{archlibdir}/*.dll $RPM_BUILD_ROOT%{_dlldir}
8f1d5c0c
JB
586if [ ! -f $RPM_BUILD_ROOT%{_dlldir}/libgcc_s_dw2-1.dll ]; then
587 echo "libgcc DLL not installed?"
588 install builddir/i386-mingw32/libgcc/shlib/libgcc_s_dw2-1.dll $RPM_BUILD_ROOT%{_dlldir}
589fi
d12aabe0 590
73ff33c1
JB
591%if 0%{!?debug:1}
592%{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
8b161635 593%{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{archlibdir}/lib*.a
d33f98c7 594%{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{gcclibdir}/lib*.a
73ff33c1 595%endif
83afd976 596
6ccf21dc 597# avoid -L poisoning in *.la
69291689 598%if %{without bootstrap}
8b161635
JB
599for f in libatomic.la libgfortran.la libobjc.la libquadmath.la %{?with_gomp:libgomp.la} ; do
600 file="$RPM_BUILD_ROOT%{archlibdir}/$f"
601 %{__perl} %{SOURCE3} "$file" %{gcclibdir} >"${file}.fixed"
602 %{__mv} "${file}.fixed" "$file"
603done
604for f in libcaf_single.la ; do
6ccf21dc 605 file="$RPM_BUILD_ROOT%{gcclibdir}/$f"
8b161635 606 %{__perl} %{SOURCE3} "$file" %{gcclibdir} >"${file}.fixed"
6ccf21dc
JB
607 %{__mv} "${file}.fixed" "$file"
608done
69291689 609%endif
6ccf21dc 610
b07ce80e 611# for pretty-printers see native gcc
8b161635 612%{__rm} $RPM_BUILD_ROOT%{archlibdir}/libstdc++.dll.a-gdb.py
b07ce80e 613%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx
4b27d406
JB
614# no plugin development for mingw32 (at least for now)
615%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/liblto_plugin.la
b07ce80e 616%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/plugin
73ff33c1
JB
617# already in native gcc
618%{__rm} -r $RPM_BUILD_ROOT%{_infodir}
619# common FSF man pages
620%{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/{fsf-funding,gfdl,gpl}.7
8c4c66e6 621
b336056d 622%clean
b336056d
JB
623rm -rf $RPM_BUILD_ROOT
624
625%files
626%defattr(644,root,root,755)
83afd976 627%attr(755,root,root) %{_bindir}/%{target}-gcc
b4c37c30 628%attr(755,root,root) %{_bindir}/%{target}-cpp
629%attr(755,root,root) %{_bindir}/%{target}-gcov
da54ab64 630%attr(755,root,root) %{_bindir}/%{target}-gcov-dump
14b9b67e 631%attr(755,root,root) %{_bindir}/%{target}-gcov-tool
17407f44 632%attr(755,root,root) %{archbindir}/%{target}-cpp
77399965
JB
633%attr(755,root,root) %{archbindir}/%{target}-gcc
634%attr(755,root,root) %{archbindir}/%{target}-gcc-%{version}
635%attr(755,root,root) %{archbindir}/%{target}-gcc-ar
636%attr(755,root,root) %{archbindir}/%{target}-gcc-nm
637%attr(755,root,root) %{archbindir}/%{target}-gcc-ranlib
77399965
JB
638%attr(755,root,root) %{archbindir}/%{target}-gcov
639%attr(755,root,root) %{archbindir}/%{target}-gcov-dump
640%attr(755,root,root) %{archbindir}/%{target}-gcov-tool
8b161635 641%{archlibdir}/libgcc_s.a
73ff33c1
JB
642%dir %{gccarchdir}
643%dir %{gcclibdir}
644%attr(755,root,root) %{gcclibdir}/cc1
645%attr(755,root,root) %{gcclibdir}/collect2
646%attr(755,root,root) %{gcclibdir}/lto-wrapper
4b27d406
JB
647%attr(755,root,root) %{gcclibdir}/lto1
648%attr(755,root,root) %{gcclibdir}/liblto_plugin.so*
73ff33c1
JB
649%{gcclibdir}/libgcc.a
650%{gcclibdir}/libgcc_eh.a
73ff33c1 651%{gcclibdir}/libgcov.a
00383376
AF
652%{gcclibdir}/crtbegin.o
653%{gcclibdir}/crtend.o
654%{gcclibdir}/crtfastmath.o
73ff33c1
JB
655%dir %{gcclibdir}/include
656%{gcclibdir}/include/*.h
539d7886 657%{_mandir}/man1/%{target}-cpp.1*
d3f237e2 658%{_mandir}/man1/%{target}-gcc.1*
539d7886 659%{_mandir}/man1/%{target}-gcov.1*
da54ab64
JB
660%{_mandir}/man1/%{target}-gcov-dump.1*
661%{_mandir}/man1/%{target}-gcov-tool.1*
d3f237e2 662
73ff33c1
JB
663%files -n crossmingw32-libgcc-dll
664%defattr(644,root,root,755)
665%{_dlldir}/libgcc_s_dw2-1.dll
666
69291689 667%if %{without bootstrap}
14b9b67e
JB
668%files -n crossmingw32-libatomic
669%defattr(644,root,root,755)
8b161635
JB
670%{archlibdir}/libatomic.dll.a
671%{archlibdir}/libatomic.la
14b9b67e
JB
672
673%files -n crossmingw32-libatomic-static
674%defattr(644,root,root,755)
8b161635 675%{archlibdir}/libatomic.a
14b9b67e
JB
676
677%files -n crossmingw32-libatomic-dll
678%defattr(644,root,root,755)
679%{_dlldir}/libatomic-1.dll
69291689 680%endif
14b9b67e 681
6ccf21dc
JB
682%if %{with gomp}
683%files -n crossmingw32-libgomp
684%defattr(644,root,root,755)
8b161635
JB
685%{archlibdir}/libgomp.dll.a
686%{archlibdir}/libgomp.la
687%{archlibdir}/libgomp.spec
6ccf21dc
JB
688
689%files -n crossmingw32-libgomp-static
690%defattr(644,root,root,755)
8b161635 691%{archlibdir}/libgomp.a
6ccf21dc
JB
692
693%files -n crossmingw32-libgomp-dll
694%defattr(644,root,root,755)
695%{_dlldir}/libgomp-1.dll
696%endif
697
69291689 698%if %{without bootstrap}
14b9b67e
JB
699%files -n crossmingw32-libvtv
700%defattr(644,root,root,755)
8b161635
JB
701%{archlibdir}/libvtv.dll.a
702%{archlibdir}/libvtv.la
703%{archlibdir}/libvtv_stubs.dll.a
704%{archlibdir}/libvtv_stubs.la
14b9b67e
JB
705
706%files -n crossmingw32-libvtv-static
707%defattr(644,root,root,755)
8b161635
JB
708%{archlibdir}/libvtv.a
709%{archlibdir}/libvtv_stubs.a
14b9b67e
JB
710
711%files -n crossmingw32-libvtv-dll
712%defattr(644,root,root,755)
713%{_dlldir}/libvtv-0.dll
714%{_dlldir}/libvtv_stubs-0.dll
69291689 715%endif
14b9b67e 716
d3f237e2
JB
717%files c++
718%defattr(644,root,root,755)
83afd976 719%attr(755,root,root) %{_bindir}/%{target}-g++
77399965
JB
720%attr(755,root,root) %{archbindir}/%{target}-c++
721%attr(755,root,root) %{archbindir}/%{target}-g++
73ff33c1 722%attr(755,root,root) %{gcclibdir}/cc1plus
8b161635
JB
723%{archlibdir}/libstdc++.dll.a
724%{archlibdir}/libstdc++.la
725%{archlibdir}/libsupc++.la
726%{archlibdir}/libsupc++.a
727%{archincludedir}/c++
d3f237e2
JB
728%{_mandir}/man1/%{target}-g++.1*
729
73ff33c1
JB
730%files -n crossmingw32-libstdc++-static
731%defattr(644,root,root,755)
8b161635 732%{archlibdir}/libstdc++.a
73ff33c1
JB
733
734%files -n crossmingw32-libstdc++-dll
735%defattr(644,root,root,755)
736%{_dlldir}/libstdc++-6.dll
737
69291689 738%if %{without bootstrap}
d3f237e2
JB
739%files objc
740%defattr(644,root,root,755)
14b9b67e 741%doc libobjc/README
8f1d5c0c 742%attr(755,root,root) %{gcclibdir}/cc1obj
8b161635
JB
743%{archlibdir}/libobjc.dll.a
744%{archlibdir}/libobjc.la
8f1d5c0c 745%{gcclibdir}/include/objc
d3f237e2 746
14b9b67e
JB
747%files objc++
748%defattr(644,root,root,755)
749%doc gcc/objcp/ChangeLog
750%attr(755,root,root) %{gcclibdir}/cc1objplus
751
8f1d5c0c
JB
752%files -n crossmingw32-libobjc-static
753%defattr(644,root,root,755)
8b161635 754%{archlibdir}/libobjc.a
8f1d5c0c
JB
755
756%files -n crossmingw32-libobjc-dll
757%defattr(644,root,root,755)
669fa8b1 758%{_dlldir}/libobjc-4.dll
8f1d5c0c 759
52a544a1 760%files fortran
d3f237e2 761%defattr(644,root,root,755)
52a544a1 762%attr(755,root,root) %{_bindir}/%{target}-gfortran
77399965 763%attr(755,root,root) %{archbindir}/%{target}-gfortran
7f7a2048 764%attr(755,root,root) %{gcclibdir}/f951
8b161635
JB
765%{archlibdir}/libgfortran.dll.a
766%{archlibdir}/libgfortran.la
767%{archlibdir}/libgfortran.spec
0d9cd0a8 768%{gcclibdir}/finclude
669fa8b1
JB
769%{gcclibdir}/libcaf_single.a
770%{gcclibdir}/libcaf_single.la
52a544a1 771%{_mandir}/man1/%{target}-gfortran.1*
0d9cd0a8
JB
772
773%files -n crossmingw32-libgfortran-static
774%defattr(644,root,root,755)
8b161635 775%{archlibdir}/libgfortran.a
0d9cd0a8
JB
776
777%files -n crossmingw32-libgfortran-dll
778%defattr(644,root,root,755)
0f000c5c 779%{_dlldir}/libgfortran-5.dll
d3f237e2 780
b07ce80e
JB
781%files -n crossmingw32-libquadmath
782%defattr(644,root,root,755)
8b161635
JB
783%{archlibdir}/libquadmath.dll.a
784%{archlibdir}/libquadmath.la
b07ce80e
JB
785
786%files -n crossmingw32-libquadmath-static
787%defattr(644,root,root,755)
8b161635 788%{archlibdir}/libquadmath.a
b07ce80e
JB
789
790%files -n crossmingw32-libquadmath-dll
791%defattr(644,root,root,755)
792%{_dlldir}/libquadmath-0.dll
69291689 793%endif
This page took 0.189671 seconds and 4 git commands to generate.