1 Summary: Mingw32 GNU Binary Utility Development Utilities - gcc
3 %define gccversion 2.95.3.test3
8 Group: Development/Languages
9 Group(de): Entwicklung/Sprachen
10 Group(pl): Programowanie/Jêzyki
11 ExclusiveArch: %{ix86}
12 Source0: ftp://ftp.gnu.org/pub/gnu/gcc-%{gccversion}.tar.gz
13 Patch0: gcc-info.patch
14 Patch1: gcc-pld-linux.patch
15 Patch2: gcc-libstdc++.patch
16 Patch3: gcc-bootstrap.patch
17 Patch4: gcc-cpp-macro-doc.patch
18 Patch5: gcc-default-arch.patch
19 Patch6: gcc-libstdc++-out-of-mem.patch
20 Patch7: gcc-libstdc++-wstring.patch
21 Patch8: gcc-libstdc++-bastring.patch
22 Patch9: gcc-manpage.patch
23 Patch10: gcc-cpp-dos-newlines.patch
24 Patch11: gcc-gpc.patch
25 Patch12: gcc-m68k-pic.patch
26 Patch13: gcc-sparc32-rfi.patch
27 Patch14: gcc-builtin-apply.patch
28 Patch15: gcc-ppc-ice.patch
29 Patch16: gcc-ppc-descriptions.patch
30 Patch17: gcc-alpha-complex-float.patch
31 Patch18: gcc-gcj-vs-iconv.patch
32 Patch19: gcc-libobjc.patch
33 Patch20: gcc-pointer-arith.patch
34 Patch21: %{name}-libio.patch
35 Patch22: %{name}-includes.patch
36 Patch23: %{name}-libiberty.patch
37 BuildRequires: crossmingw32-platform
38 BuildRequires: crossmingw32-binutils
41 BuildRequires: autoconf
42 Requires: crossmingw32-binutils
43 Requires: crossmingw32-platform
44 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46 %define target i386-mingw32
47 %define target_platform i386-pc-mingw32
49 %define arch %{_prefix}/%{target}
50 %define gccarch %{_prefix}/lib/gcc-lib/%{target}
51 %define gcclib %{_prefix}/lib/gcc-lib/%{target}/%{version}
54 crossmingw32 is a complete cross-compiling development system for
55 building stand-alone Microsoft Windows applications under Linux using
56 the Mingw32 build libraries. This includes a binutils, gcc with g++
57 and objc, and libstdc++, all cross targeted to i386-mingw32, along
58 with supporting Win32 libraries in 'coff' format from free sources.
60 This package contains cross targeted gcc.
63 Summary: Mingw32 GNU Binary Utility Development Utilities - g++
64 Group: Development/Languages
65 Group(de): Entwicklung/Sprachen
66 Group(pl): Programowanie/Jêzyki
67 Requires: %{name} = %{version}
70 crossmingw32 is a complete cross-compiling development system for
71 building stand-alone Microsoft Windows applications under Linux using
72 the Mingw32 build libraries. This includes a binutils, gcc with g++
73 and objc, and libstdc++, all cross targeted to i386-mingw32, along
74 with supporting Win32 libraries in 'coff' format from free sources.
76 This package contains cross targeted g++ and (static) libstdc++.
78 # does this even work?
80 Summary: Mingw32 GNU Binary Utility Development Utilities - objc
81 Group: Development/Languages
82 Group(de): Entwicklung/Sprachen
83 Group(pl): Programowanie/Jêzyki
84 Requires: %{name} = %{version}
87 crossmingw32 is a complete cross-compiling development system for
88 building stand-alone Microsoft Windows applications under Linux using
89 the Mingw32 build libraries. This includes a binutils, gcc with g++
90 and objc, and libstdc++, all cross targeted to i386-mingw32, along
91 with supporting Win32 libraries in 'coff' format from free sources.
93 This package contains cross targeted objc.
95 # does this even work?
97 Summary: Mingw32 GNU Binary Utility Development Utilities - g77
98 Group: Development/Languages
99 Group(de): Entwicklung/Sprachen
100 Group(pl): Programowanie/Jêzyki
101 Requires: %{name} = %{version}
104 crossmingw32 is a complete cross-compiling development system for
105 building stand-alone Microsoft Windows applications under Linux using
106 the Mingw32 build libraries. This includes a binutils, gcc with g++
107 and objc, and libstdc++, all cross targeted to i386-mingw32, along
108 with supporting Win32 libraries in 'coff' format from free sources.
110 This package contains cross targeted g77.
112 # does this even work?
114 Summary: Mingw32 GNU Binary Utility Development Utilities - chill
115 Group: Development/Languages
116 Group(de): Entwicklung/Sprachen
117 Group(pl): Programowanie/Jêzyki
118 Requires: %{name} = %{version}
121 crossmingw32 is a complete cross-compiling development system for
122 building stand-alone Microsoft Windows applications under Linux using
123 the Mingw32 build libraries. This includes a binutils, gcc with g++
124 and objc, and libstdc++, all cross targeted to i386-mingw32, along
125 with supporting Win32 libraries in 'coff' format from free sources.
127 This package contains cross targeted chill.
129 # does this even work?
131 Summary: Mingw32 GNU Binary Utility Development Utilities - java
132 Group: Development/Languages
133 Group(de): Entwicklung/Sprachen
134 Group(pl): Programowanie/Jêzyki
135 Requires: %{name} = %{version}
138 crossmingw32 is a complete cross-compiling development system for
139 building stand-alone Microsoft Windows applications under Linux using
140 the Mingw32 build libraries. This includes a binutils, gcc with g++
141 and objc, and libstdc++, all cross targeted to i386-mingw32, along
142 with supporting Win32 libraries in 'coff' format from free sources.
144 This package contains cross targeted java.
147 %setup -q -n gcc-%{gccversion}
163 %ifarch sparc sparc32
183 (cd libiberty ; autoconf)
187 rm -rf obj-%{target_platform}
188 install -d obj-%{target_platform}
189 cd obj-%{target_platform}
191 %{!?debug:CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="-s"} \
192 %{?debug:CFLAGS="-g -O0" CXXFLAGS="-g -O0" LDFLAGS=""} \
194 --prefix=%{_prefix} \
195 --infodir=%{_infodir} \
196 --mandir=%{_mandir} \
197 --bindir=%{arch}/bin \
200 --with-gxx-include-dir=%{arch}/include/g++ \
203 # to nie dzia³a bo kto¶ ukrad³ gthr-win32.h i nie wiem co tam wpisaæ
206 touch ../gcc/c-gperf.h
209 %{!?debug:LDFLAGS_FOR_TARGET="-s"}%{?debug:LDFLAGS_FOR_TARGET=""} \
210 TARGET_LIBGCC2_CFLAGS="-UCROSS_COMPILE"
212 # build libobjc.dll for Objective C
213 # to trzeba wywo³ywaæ z katalogu obj-%{target_platform}/%{target}/libobjc
214 # ale trzeba podaæ jeszcze GCC_FOR_TARGET - a mi siê nie chce.
215 # BTW, ten dll jest do czego¶ potrzebny???
219 # TARGET_LIBGCC2_CFLAGS="-UCROSS_COMPILE" \
220 # DLLTOOL="%{target}-dlltool --as=%{target}-as" libobjc.dll
222 # spec files for msvcrt*.dll configurations
224 for n in msvcrt msvcrt20 msvcrt40; do
225 sed "s/crtdll/$n/g" <specs | sed "s/crt1/crt2/g" >specs.$n
230 rm -rf $RPM_BUILD_ROOT
232 install -d $RPM_BUILD_ROOT%{_bindir}
233 install -d $RPM_BUILD_ROOT%{_datadir}
234 (cd obj-%{target_platform}
237 prefix=$RPM_BUILD_ROOT%{_prefix} \
238 bindir=$RPM_BUILD_ROOT%{arch}/bin \
239 mandir=$RPM_BUILD_ROOT%{_mandir} \
240 infodir=$RPM_BUILD_ROOT%{_infodir} \
241 gxx_include_dir=$RPM_BUILD_ROOT%{arch}/include/g++
244 install specs.msvcrt specs.msvcrt20 specs.msvcrt40 $RPM_BUILD_ROOT%{gcclib}
247 mv -f $RPM_BUILD_ROOT%{arch}/bin/%{target}-* $RPM_BUILD_ROOT%{_bindir}
249 # c++filt is provided by binutils
250 rm -f $RPM_BUILD_ROOT%{_bindir}/i386-mingw32-c++filt
252 # what is this there for???
253 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
255 # the same... make hardlink
256 ln -f $RPM_BUILD_ROOT%{arch}/bin/gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc
259 rm -rf $RPM_BUILD_ROOT
262 %defattr(644,root,root,755)
263 %attr(755,root,root) %{_bindir}/%{target}-gcc
264 %attr(755,root,root) %{_bindir}/%{target}-*protoize
266 %attr(755,root,root) %{arch}/bin/cpp
267 %attr(755,root,root) %{arch}/bin/gcc
268 %attr(755,root,root) %{arch}/bin/gcov
269 %{arch}/include/_G_config.h
270 %{arch}/lib/libiberty.a
273 %attr(755,root,root) %{gcclib}/cc1
274 %attr(755,root,root) %{gcclib}/cpp0
275 %{gcclib}/SYSCALLS.c.X
278 %dir %{gcclib}/include
279 %{gcclib}/include/float.h
280 %{gcclib}/include/iso646.h
281 %{gcclib}/include/limits.h
282 %{gcclib}/include/proto.h
283 %{gcclib}/include/stdarg.h
284 %{gcclib}/include/stdbool.h
285 %{gcclib}/include/stddef.h
286 %{gcclib}/include/syslimits.h
287 %{gcclib}/include/varargs.h
288 %{gcclib}/include/va-*.h
289 %{_mandir}/man1/%{target}-gcc.1*
292 %defattr(644,root,root,755)
293 %attr(755,root,root) %{_bindir}/%{target}-[cg]++
295 %{arch}/lib/libstdc++.a
296 %attr(755,root,root) %{gcclib}/cc1plus
298 %{gcclib}/include/new.h
299 %{gcclib}/include/exception
300 %{gcclib}/include/new
301 %{gcclib}/include/typeinfo
302 %{_mandir}/man1/%{target}-g++.1*
305 %defattr(644,root,root,755)
306 %attr(755,root,root) %{gcclib}/cc1obj
308 %{gcclib}/include/objc
311 %defattr(644,root,root,755)
312 %attr(755,root,root) %{_bindir}/%{target}-g77
313 %attr(755,root,root) %{gcclib}/f771
314 %{_mandir}/man1/%{target}-g77.1*
317 %defattr(644,root,root,755)
318 %attr(755,root,root) %{_bindir}/%{target}-chill
319 %attr(755,root,root) %{gcclib}/cc1chill
324 %defattr(644,root,root,755)
325 %attr(755,root,root) %{_bindir}/%{target}-gcj
326 %attr(755,root,root) %{arch}/bin/gcjh
327 %attr(755,root,root) %{arch}/bin/jcf-dump
328 %attr(755,root,root) %{arch}/bin/jv-scan
329 %attr(755,root,root) %{gcclib}/jc1
330 %attr(755,root,root) %{gcclib}/jvgenmain