2 %define DASHED_SNAP %{nil}
3 %define SNAP %(echo %{DASHED_SNAP} | sed -e "s#-##g")
4 %define GCC_VERSION 3.3.2
6 %define apisrc w32api-%{apiver}
8 %define runsrc mingw-runtime-%{runver}
9 Summary: Cross Mingw32 GNU binary utility development utilities - gcc
10 Summary(es): Utilitarios para desarrollo de binarios de la GNU - Mingw32 gcc
11 Summary(fr): Utilitaires de développement binaire de GNU - Mingw32 gcc
12 Summary(pl): Skro¶ne narzêdzia programistyczne GNU dla Mingw32 - gcc
13 Summary(pt_BR): Utilitários para desenvolvimento de binários da GNU - Mingw32 gcc
14 Summary(tr): GNU geliþtirme araçlarý - Mingw32 gcc
15 Name: crossmingw32-gcc
16 Version: %{GCC_VERSION}
20 Group: Development/Languages
21 Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/gcc-%{GCC_VERSION}.tar.bz2
22 # Source0-md5: 65999f654102f5438ac8562d13a6eced
23 Source1: http://dl.sourceforge.net/mingw/%{apisrc}.tar.gz
24 # Source1-md5: 9f9b9a7a7ef14e112924fea46b3360ce
25 Source2: http://dl.sourceforge.net/mingw/%{runsrc}.tar.gz
26 # Source2-md5: ecfd49e08f20a88b7ba11a755f2b53c2
27 Patch0: %{name}-noioctl.patch
28 BuildRequires: autoconf
29 BuildRequires: automake
31 BuildRequires: crossmingw32-binutils >= 2.14.90.0.4.1-2
33 %if %{without bootstrap}
34 BuildRequires: crossmingw32-runtime >= 3.0
35 BuildRequires: crossmingw32-w32api >= 2.3
37 Requires: crossmingw32-binutils >= 2.14.90.0.4.1-2
38 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40 %define no_install_post_strip 1
42 %define target i386-mingw32
43 %define target_platform i386-pc-mingw32
44 %define arch %{_prefix}/%{target}
45 %define gccarch %{_prefix}/lib/gcc-lib/%{target}
46 %define gcclib %{_prefix}/lib/gcc-lib/%{target}/%{version}
49 crossmingw32 is a complete cross-compiling development system for
50 building stand-alone Microsoft Windows applications under Linux using
51 the Mingw32 build libraries. This includes a binutils, gcc with g++
52 and objc, and libstdc++, all cross targeted to i386-mingw32, along
53 with supporting Win32 libraries in 'coff' format from free sources.
55 This package contains cross targeted gcc.
58 Dieses Paket enthält einen Cross-gcc, der es erlaubt, auf einem
59 i386-Rechner Code für Win32 zu generieren.
62 crossmingw32 jest kompletnym systemem do kompilacji skro¶nej,
63 pozwalaj±cym budowaæ aplikacje MS Windows pod Linuksem u¿ywaj±c
64 bibliotek Mingw32. System sk³ada siê z binutils, gcc z g++ i objc,
65 libstdc++ - wszystkie generuj±ce kod dla platformy i386-mingw32, oraz
66 z bibliotek w formacie COFF.
68 Ten pakiet zawiera gcc generuj±ce skro¶nie kod dla Win32.
71 Summary: Mingw32 binary utility development utilities - g++
72 Summary(pl): Zestaw narzêdzi mingw32 - g++
73 Group: Development/Languages
74 Requires: %{name} = %{epoch}:%{version}
77 crossmingw32 is a complete cross-compiling development system for
78 building stand-alone Microsoft Windows applications under Linux using
79 the Mingw32 build libraries. This includes a binutils, gcc with g++
80 and objc, and libstdc++, all cross targeted to i386-mingw32, along
81 with supporting Win32 libraries in 'coff' format from free sources.
83 This package contains cross targeted g++ and (static) libstdc++.
85 %description c++ -l pl
86 crossmingw32 jest kompletnym systemem do kompilacji skro¶nej,
87 pozwalaj±cym budowaæ aplikacje MS Windows pod Linuksem u¿ywaj±c
88 bibliotek mingw32. System sk³ada siê z binutils, gcc z g++ i objc,
89 libstdc++ - wszystkie generuj±ce kod dla platformy i386-mingw32, oraz
90 z bibliotek w formacie COFF.
92 Ten pakiet zawiera g++ generuj±ce kod pod Win32 oraz bibliotekê
95 # does this even work?
97 Summary: Mingw32 binary utility development utilities - objc
98 Summary(pl): Zestaw narzêdzi mingw32 - objc
99 Group: Development/Languages
100 Requires: %{name} = %{epoch}:%{version}
103 crossmingw32 is a complete cross-compiling development system for
104 building stand-alone Microsoft Windows applications under Linux using
105 the Mingw32 build libraries. This includes a binutils, gcc with g++
106 and objc, and libstdc++, all cross targeted to i386-mingw32, along
107 with supporting Win32 libraries in 'coff' format from free sources.
109 This package contains cross targeted objc.
111 %description objc -l pl
112 crossmingw32 jest kompletnym systemem do kompilacji skro¶nej,
113 pozwalaj±cym budowaæ aplikacje MS Windows pod Linuksem u¿ywaj±c
114 bibliotek mingw32. System sk³ada siê z binutils, gcc z g++ i objc,
115 libstdc++ - wszystkie generuj±ce kod dla platformy i386-mingw32, oraz
116 z bibliotek w formacie COFF.
118 Ten pakiet zawiera kompilator objc generuj±cy kod pod Win32.
120 # does this even work?
122 Summary: Mingw32 binary utility development utilities - g77
123 Summary(pl): Zestaw narzêdzi mingw32 - g77
124 Group: Development/Languages
125 Requires: %{name} = %{epoch}:%{version}
128 crossmingw32 is a complete cross-compiling development system for
129 building stand-alone Microsoft Windows applications under Linux using
130 the Mingw32 build libraries. This includes a binutils, gcc with g++
131 and objc, and libstdc++, all cross targeted to i386-mingw32, along
132 with supporting Win32 libraries in 'coff' format from free sources.
134 This package contains cross targeted g77.
136 %description g77 -l pl
137 crossmingw32 jest kompletnym systemem do kompilacji skro¶nej,
138 pozwalaj±cym budowaæ aplikacje MS Windows pod Linuksem u¿ywaj±c
139 bibliotek mingw32. System sk³ada siê z binutils, gcc z g++ i objc,
140 libstdc++ - wszystkie generuj±ce kod dla platformy i386-mingw32, oraz
141 z bibliotek w formacie COFF.
143 Ten pakiet zawiera g77 generuj±cy kod pod Win32.
145 # does this even work?
147 Summary: Mingw32 binary utility development utilities - java
148 Summary(pl): Zestaw narzêdzi mingw32 - java
149 Group: Development/Languages
150 Requires: %{name} = %{epoch}:%{version}
153 crossmingw32 is a complete cross-compiling development system for
154 building stand-alone Microsoft Windows applications under Linux using
155 the Mingw32 build libraries. This includes a binutils, gcc with g++
156 and objc, and libstdc++, all cross targeted to i386-mingw32, along
157 with supporting Win32 libraries in 'coff' format from free sources.
159 This package contains cross targeted java.
161 %description java -l pl
163 crossmingw32 jest kompletnym systemem do kompilacji skro¶nej,
164 pozwalaj±cym budowaæ aplikacje MS Windows pod Linuksem u¿ywaj±c
165 bibliotek mingw32. System sk³ada siê z binutils, gcc z g++ i objc,
166 libstdc++ - wszystkie generuj±ce kod dla platformy i386-mingw32, oraz
167 z bibliotek w formacie COFF.
169 Ten pakiet zawiera kompilator Javy generuj±cy kod pod Win32.
174 %if %{with bootstrap}
176 tar xzf %{SOURCE1} -C winsup
177 tar xzf %{SOURCE2} -C winsup
182 cp /usr/share/automake/config.sub .
184 %if %{with bootstrap}
185 for tool in as ar dlltool ld nm ranlib strip ; do
186 ln -sf %{arch}/bin/$tool winsup/bin/$tool
188 build_tooldir=`pwd`/winsup
190 build_tooldir=%{arch}
193 rm -rf obj-%{target_platform} && install -d obj-%{target_platform} && cd obj-%{target_platform}
195 CFLAGS="%{rpmcflags}" \
196 CXXFLAGS="%{rpmcflags}" \
197 LDFLAGS="%{rpmldflags}" \
200 --prefix=%{_prefix} \
201 --infodir=%{_infodir} \
202 --mandir=%{_mandir} \
203 --bindir=%{arch}/bin \
204 --includedir=%{arch}/include \
205 --enable-languages="c,c++,f77,java,objc" \
208 --with-gxx-include-dir=%{arch}/include/g++ \
210 --build=%{_target_platform} \
211 --host=%{_target_platform} \
214 #touch ../gcc/c-gperf.h
217 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
218 TARGET_LIBGCC2_CFLAGS="-UCROSS_COMPILE" \
219 build_tooldir="$build_tooldir" \
220 FLAGS_FOR_TARGET="-B${build_tooldir}/bin -B${build_tooldir}/lib -isystem ${build_tooldir}/include -nostdinc" \
221 CFLAGS_FOR_TARGET="-nostdinc" \
222 NM_FOR_TARGET="%{target}-nm"
224 # build libobjc.dll for Objective C
225 # to trzeba wywo³ywaæ z katalogu obj-%{target_platform}/%{target}/libobjc
226 # ale trzeba podaæ jeszcze GCC_FOR_TARGET - a mi siê nie chce.
227 # BTW, ten dll jest do czego¶ potrzebny???
229 #make -C %{target}/libobjc \
230 # LDFLAGS="%{rpmldflags}" \
231 # TARGET_LIBGCC2_CFLAGS="-UCROSS_COMPILE" \
232 # DLLTOOL="%{target}-dlltool --as=%{target}-as" libobjc.dll
234 # spec files for msvcrt*.dll configurations
236 for n in msvcrt msvcrt20 msvcrt40; do
237 sed "s/crtdll/$n/g" <specs | sed "s/crt1/crt2/g" >specs.$n
241 rm -rf $RPM_BUILD_ROOT
244 install -d $RPM_BUILD_ROOT%{_bindir}
245 install -d $RPM_BUILD_ROOT%{_datadir}
246 cd obj-%{target_platform}
249 DESTDIR=$RPM_BUILD_ROOT
252 install specs.msvcrt specs.msvcrt20 specs.msvcrt40 $RPM_BUILD_ROOT%{gcclib}
255 mv -f $RPM_BUILD_ROOT%{arch}/bin/%{target}-* $RPM_BUILD_ROOT%{_bindir}
257 # already in arch/lib, shouldn't be here
258 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
261 # strip linux binaries
262 strip -R .comment -R .note \
263 `echo $RPM_BUILD_ROOT{%{_bindir}/*,%{arch}/bin/*} | grep -v gccbug` \
264 $RPM_BUILD_ROOT%{gcclib}/{cc1*,f771,jc1,jvgenmain}
266 # strip mingw32 libraries
268 $RPM_BUILD_ROOT%{gcclib}/libgcc.a \
269 $RPM_BUILD_ROOT%{arch}/lib/lib*.a
273 ln -f $RPM_BUILD_ROOT%{_bindir}/%{target}-{g++,c++}
274 ln -f $RPM_BUILD_ROOT%{arch}/bin/{g++,c++}
276 # the same... make hardlink
277 ln -f $RPM_BUILD_ROOT%{arch}/bin/gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc
280 rm -rf $RPM_BUILD_ROOT
283 %defattr(644,root,root,755)
284 %attr(755,root,root) %{_bindir}/%{target}-gcc*
285 %attr(755,root,root) %{_bindir}/%{target}-cpp
286 %attr(755,root,root) %{_bindir}/%{target}-gcov
287 %attr(755,root,root) %{arch}/bin/gcc
288 %{arch}/lib/libiberty.a
292 %attr(755,root,root) %{gcclib}/cc1
297 %{_mandir}/man1/%{target}-gcc.1*
300 %defattr(644,root,root,755)
301 %attr(755,root,root) %{_bindir}/%{target}-[cg]++
302 %attr(755,root,root) %{arch}/bin/[cg]++
303 %attr(755,root,root) %{gcclib}/cc1plus
304 %{arch}/lib/libstdc++.a
305 %{arch}/lib/libstdc++.la
306 %{arch}/lib/libsupc++.a
307 %{arch}/lib/libsupc++.la
309 %{_mandir}/man1/%{target}-g++.1*
312 %defattr(644,root,root,755)
313 %attr(755,root,root) %{gcclib}/cc1obj
314 %{arch}/lib/libobjc.a
315 %{arch}/lib/libobjc.la
318 %defattr(644,root,root,755)
319 %attr(755,root,root) %{_bindir}/%{target}-g77
320 %attr(755,root,root) %{gcclib}/f771
321 %{arch}/lib/libfrtbegin.a
323 %{arch}/lib/libg2c.la
324 %{_mandir}/man1/%{target}-g77.1*
327 %defattr(644,root,root,755)
328 %attr(755,root,root) %{_bindir}/%{target}-gcj
329 %attr(755,root,root) %{_bindir}/%{target}-gcjh
330 %attr(755,root,root) %{_bindir}/%{target}-jcf-dump
331 %attr(755,root,root) %{_bindir}/%{target}-jv-scan
332 %attr(755,root,root) %{arch}/bin/grepjar
333 %attr(755,root,root) %{arch}/bin/jar
334 %attr(755,root,root) %{gcclib}/jc1
335 %attr(755,root,root) %{gcclib}/jvgenmain
336 %{_mandir}/man1/%{target}-gcj.1*