3 %bcond_with bootstrap # for bootstraping
5 Summary: Cross AVR GNU binary utility development utilities - gcc
6 Summary(es.UTF-8): Utilitarios para desarrollo de binarios de la GNU - AVR gcc
7 Summary(fr.UTF-8): Utilitaires de développement binaire de GNU - AVR gcc
8 Summary(pl.UTF-8): Skrośne narzędzia programistyczne GNU dla AVR - gcc
9 Summary(pt_BR.UTF-8): Utilitários para desenvolvimento de binários da GNU - AVR gcc
10 Summary(tr.UTF-8): GNU geliştirme araçları - AVR gcc
15 # Patches 1xx are taken form Atmel official AVR8-GNU toolchain version 3.3.1.481.
16 Patch100: 200-gcc-4.5.1-libiberty-Makefile.in.patch
17 Patch101: 300-gcc-4.5.1-fixedpoint-3-4-2010.patch
18 Patch102: 301-gcc-4.5.1-xmega-v14.patch
19 Patch103: 302-gcc-4.5.1-avrtiny10.patch
20 Patch104: 303-gcc-4.5.1-osmain.patch
21 Patch105: 304-gcc-4.5.1-builtins-v6.patch
22 Patch106: 305-gcc-4.5.1-avrtiny10-non-fixedpoint.patch
23 Patch107: 306-gcc-4.5.1-option-list-devices.patch
24 Patch108: 400-gcc-4.5.1-new-devices.patch
25 Patch109: 401-gcc-4.5.1-atmega32_5_50_90_pa.patch
26 Patch110: 402-gcc-4.5.1-attiny1634.patch
27 Patch111: 403-gcc-4.5.1-atmega48pa.patch
28 Patch112: 404-gcc-4.5.1-atxmega_16_32_a4u.patch
29 Patch113: 405-gcc-4.5.1-atxmega64_128_192_256a3u.patch
30 Patch114: 406-gcc-4.5.1-atmegarfr2_a2.patch
31 Patch115: 407-gcc-4.5.1-atmega165pa.patch
32 Patch116: 408-gcc-4.5.1-atxmega384c3.patch
33 Patch117: 409-gcc-4.5.1-attiny80.patch
34 Patch118: 410-gcc-4.5.1-atxmega128a4u.patch
35 Patch119: 411-gcc-4.5.1-atxmega64d4.patch
36 Patch120: 412-gcc-4.5.1-atmega164pa_168pa_32a_64a.patch
37 Patch121: 413-gcc-4.5.1-atxmega32x1.patch
38 Patch122: 414-gcc-4.5.1-atxmega64_128_b3.patch
39 Patch123: 415-gcc-4.5.1-atxmega64b1.patch
40 Patch124: 416-gcc-4.5.1-atmega_8a_128a_1284.patch
41 Patch125: 417-gcc-4.5.1-atxmega64a4u.patch
42 Patch126: 418-gcc-4.5.1-atxmega128d4.patch
43 Patch127: 419-gcc-4.5.1-atmxt336s.patch
44 Patch128: 420-gcc-4.5.1-atxmega16c4_32c4_128c3_256c3.patch
45 Patch129: 421-gcc-4.5.1-atxmega384d3.patch
46 Patch130: 422-gcc-4.5.1-atmega48hvf.patch
47 Patch131: 423-gcc-4.5.1-atmega26hvg.patch
48 Patch132: 424-gcc-4.5.1-atmxt224_224e.patch
49 Patch133: 424-gcc-4.5.1-atxmega192c3.patch
50 Patch134: 500-gcc-4.5.1-bug13473.patch
51 Patch135: 501-gcc-4.5.1-bug13579.patch
52 Patch136: 502-gcc-4.5.1-bug-18145-v4.patch
53 Patch137: 503-gcc-4.5.1-avrtiny10-bug-12510.patch
54 Patch138: 504-gcc-4.5.1-bug12915.patch
55 Patch139: 505-gcc-4.5.1-bug13932.patch
56 Patch140: 506-gcc-4.5.1-bug13789.patch
57 Patch141: 507-gcc-4.5.1-bug14415.patch
59 Group: Development/Languages
60 Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.bz2
61 # Source0-md5: 8e0b5c12212e185f3e4383106bfa9cc6
62 BuildRequires: /bin/bash
63 BuildRequires: autoconf
65 BuildRequires: crossavr-binutils
66 BuildRequires: elfutils-devel >= 0.145-1
68 BuildRequires: gmp-devel >= 4.1
69 BuildRequires: libmpc-devel
70 BuildRequires: mpfr-devel >= 2.3.0
71 BuildRequires: perl-tools-pod
72 Requires: crossavr-binutils >= 2.15.91.0.2
73 %{!?with_bootstrap:Requires: crossavr-libc}
75 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
78 %define arch %{_prefix}/%{target}
79 %define gccarch %{_libdir}/gcc/%{target}
80 %define gcclib %{_libdir}/gcc/%{target}/%{version}
81 %define _noautostrip .*%{gcclib}.*/libgc.*\\.a
84 This package contains a cross-gcc which allows the creation of
85 binaries to be run on Atmel AVR on other machines.
87 %description -l de.UTF-8
88 Dieses Paket enthält einen Cross-gcc, der es erlaubt, auf einem
89 anderem Rechner Code für Atmel AVR zu generieren.
91 %description -l pl.UTF-8
92 Ten pakiet zawiera skrośny gcc pozwalający na robienie na innych
93 maszynach binariów do uruchamiania na Atmel AVR.
96 Summary: C++ support for avr-gcc
97 Summary(pl.UTF-8): Obsługa C++ dla avr-gcc
98 Group: Development/Languages
99 Requires: %{name} = %{epoch}:%{version}-%{release}
102 This package adds C++ support to the GNU Compiler Collection for AVR.
104 %description c++ -l pl.UTF-8
105 Ten pakiet dodaje obsługę C++ do kompilatora gcc dla AVR.
108 %setup -q -n gcc-%{version}
154 install -d obj-%{target}
157 CFLAGS="%{rpmcflags}" \
158 CXXFLAGS="%{rpmcflags}" \
161 --prefix=%{_prefix} \
162 --infodir=%{_infodir} \
163 --mandir=%{_mandir} \
164 --bindir=%{_bindir} \
165 --libdir=%{_libdir} \
166 --libexecdir=%{_libdir} \
168 --enable-languages="c,c++" \
179 --build=%{_target_platform} \
180 --host=%{_target_platform} \
183 %{__make} CFLAGS_FOR_TARGET="-Os"
186 rm -rf $RPM_BUILD_ROOT
188 %{__make} -C obj-%{target} install \
189 DESTDIR=$RPM_BUILD_ROOT
191 # move fixed includes to proper place
192 cp $RPM_BUILD_ROOT%{gcclib}/include-fixed/*.h $RPM_BUILD_ROOT%{gcclib}/include
195 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
196 rm -rf $RPM_BUILD_ROOT%{_infodir}
197 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
198 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
199 rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
200 rm -f $RPM_BUILD_ROOT%{_datadir}/locale/*/LC_MESSAGES/{gcc,cpplib}.mo
201 rm -rf $RPM_BUILD_ROOT%{gcclib}/include-fixed
202 rm -rf $RPM_BUILD_ROOT%{gcclib}/install-tools
205 # strip target libraries
206 %{target}-strip -g $RPM_BUILD_ROOT%{gcclib}{,/avr*}/libg*.a
210 rm -rf $RPM_BUILD_ROOT
213 %defattr(644,root,root,755)
214 %attr(755,root,root) %{_bindir}/%{target}-gcc*
215 %attr(755,root,root) %{_bindir}/%{target}-cpp
216 %attr(755,root,root) %{_bindir}/%{target}-gcov
219 %attr(755,root,root) %{gcclib}/cc1
220 %attr(755,root,root) %{gcclib}/collect2
221 %attr(755,root,root) %{gcclib}/lto-wrapper
222 %attr(755,root,root) %{gcclib}/lto1
226 %dir %{gcclib}/include
227 %{gcclib}/include/*.h
228 %{_mandir}/man1/%{target}-cpp.1*
229 %{_mandir}/man1/%{target}-gcc.1*
230 %{_mandir}/man1/%{target}-gcov.1*
233 %defattr(644,root,root,755)
234 %attr(755,root,root) %{_bindir}/%{target}-g++
235 %attr(755,root,root) %{_bindir}/%{target}-c++
236 %attr(755,root,root) %{gcclib}/cc1plus
237 %{_mandir}/man1/%{target}-g++.1*