]>
Commit | Line | Data |
---|---|---|
1 | Summary: DJGPP GNU binary utility development utilities - gcc | |
2 | Summary(es.UTF-8): Utilitarios para desarrollo de binarios de la GNU - DJGPP gcc | |
3 | Summary(fr.UTF-8): Utilitaires de développement binaire de GNU - DJGPP gcc | |
4 | Summary(pl.UTF-8): Skrośne narzędzia programistyczne GNU dla DJGPP - gcc | |
5 | Summary(pt_BR.UTF-8): Utilitários para desenvolvimento de binários da GNU - DJGPP gcc | |
6 | Summary(tr.UTF-8): GNU geliştirme araçları - DJGPP gcc | |
7 | Name: crossdjgpp-gcc | |
8 | Version: 3.3.2 | |
9 | Release: 2 | |
10 | Epoch: 1 | |
11 | License: GPL | |
12 | Group: Development/Languages | |
13 | Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.bz2 | |
14 | # Source0-md5: 65999f654102f5438ac8562d13a6eced | |
15 | BuildRequires: crossdjgpp-platform | |
16 | BuildRequires: crossdjgpp-binutils | |
17 | BuildRequires: flex | |
18 | BuildRequires: bison | |
19 | BuildRequires: autoconf | |
20 | BuildRequires: /bin/bash | |
21 | Requires: crossdjgpp-binutils | |
22 | Requires: crossdjgpp-platform | |
23 | Requires: gcc-dirs | |
24 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
25 | ||
26 | %define cxx 0 | |
27 | %define target i386-pc-msdosdjgpp | |
28 | %define arch %{_prefix}/%{target} | |
29 | %define gccarch %{_libdir}/gcc-lib/%{target} | |
30 | %define gcclib %{_libdir}/gcc-lib/%{target}/%{version} | |
31 | %define no_install_post_strip 1 | |
32 | ||
33 | %description | |
34 | DJGPP is a port of GNU GCC to the DOS environment. (It stands for DJ's | |
35 | Gnu Programming Platform, if it has to stand for something, but it's | |
36 | best left ambiguous.) | |
37 | ||
38 | This package contains cross targeted gcc. | |
39 | ||
40 | %description -l de.UTF-8 | |
41 | Dieses Paket enthält einen Cross-gcc, der es erlaubt, auf einem | |
42 | anderem Rechner Code für DOS zu generieren. | |
43 | ||
44 | %description -l pl.UTF-8 | |
45 | DJGPP to port GNU GCC dla środowiska DOS (skrót oznacza DJ's Gnu | |
46 | Programming Platform, jeśli już koniecznie ma coś oznaczać). | |
47 | ||
48 | Ten pakiet zawiera gcc generujące skrośnie kod dla DOS. | |
49 | ||
50 | %package c++ | |
51 | Summary: DJGPP GNU Binary Utility Development Utilities - g++ | |
52 | Summary(pl.UTF-8): Narzędzia programistyczne GNU DJGPP - g++ | |
53 | Group: Development/Languages | |
54 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
55 | ||
56 | %description c++ | |
57 | DJGPP is a port of GNU GCC to the DOS environment. (It stands for DJ's | |
58 | Gnu Programming Platform, if it has to stand for something, but it's | |
59 | best left ambiguous.) | |
60 | ||
61 | This package contains cross targeted g++ and (static) libstdc++. | |
62 | ||
63 | %description c++ -l pl.UTF-8 | |
64 | DJGPP to port GNU GCC dla środowiska DOS (skrót oznacza DJ's Gnu | |
65 | Programming Platform, jeśli już koniecznie ma coś oznaczać). | |
66 | ||
67 | Ten pakiet zawiera g++ skompilowane jako kompilator skrośny oraz | |
68 | (statyczne) libstdc++. | |
69 | ||
70 | # does this even work? | |
71 | %package g77 | |
72 | Summary: DJGPP GNU Binary Utility Development Utilities - g77 | |
73 | Summary(pl.UTF-8): Narzędzia programistyczne GNU DJGPP - g77 | |
74 | Group: Development/Languages | |
75 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
76 | ||
77 | %description g77 | |
78 | DJGPP is a port of GNU GCC to the DOS environment. (It stands for DJ's | |
79 | Gnu Programming Platform, if it has to stand for something, but it's | |
80 | best left ambiguous.) | |
81 | ||
82 | This package contains cross targeted g77. | |
83 | ||
84 | %description g77 -l pl.UTF-8 | |
85 | DJGPP to port GNU GCC dla środowiska DOS (skrót oznacza DJ's Gnu | |
86 | Programming Platform, jeśli już koniecznie ma coś oznaczać). | |
87 | ||
88 | Ten pakiet zawiera g77 skompilowane jako kompilator skrośny. | |
89 | ||
90 | %prep | |
91 | %setup -q -n gcc-%{version} | |
92 | ||
93 | %build | |
94 | rm -rf obj-%{target} | |
95 | install -d obj-%{target} | |
96 | cd obj-%{target} | |
97 | ||
98 | CFLAGS="%{rpmcflags}" \ | |
99 | CXXFLAGS="%{rpmcflags}" \ | |
100 | TEXCONFIG=false ../configure \ | |
101 | --prefix=%{_prefix} \ | |
102 | --infodir=%{_infodir} \ | |
103 | --mandir=%{_mandir} \ | |
104 | --bindir=%{_bindir} \ | |
105 | --libdir=%{_libdir} \ | |
106 | --libexecdir=%{_libdir} \ | |
107 | --disable-shared \ | |
108 | --enable-haifa \ | |
109 | --enable-languages="c,f77" \ | |
110 | --enable-long-long \ | |
111 | --enable-namespaces \ | |
112 | --with-gnu-as \ | |
113 | --with-gnu-ld \ | |
114 | --with-system-zlib \ | |
115 | --with-multilib \ | |
116 | --without-x \ | |
117 | --target=%{target} | |
118 | ||
119 | # kluge, we already have full system headers and libraries ready, | |
120 | # needed to get right limits.h | |
121 | cd gcc | |
122 | cp -f Makefile Makefile.new | |
123 | sed -e "s|^SYSTEM_HEADER_DIR.*|SYSTEM_HEADER_DIR := %{_prefix}/%{target}/include|" \ | |
124 | Makefile.new > Makefile | |
125 | rm -f Makefile.new | |
126 | cd .. | |
127 | ||
128 | # YAK (Yet Another Kluge) :< | |
129 | cd ../libstdc++-v3 | |
130 | cp -f configure configure.tmp | |
131 | # don't use newlib, we want djgpp | |
132 | sed -e 's|os_include_dir="config/os/newlib"|#&|' configure.tmp > configure | |
133 | cd ../obj-%{target} | |
134 | # sigh... it still doesn't work, produces sth<char> in assembly | |
135 | ||
136 | PATH=$PATH:/sbin:%{_sbindir} | |
137 | ||
138 | cd .. | |
139 | #LDFLAGS_FOR_TARGET="%{rpmldflags}" | |
140 | ||
141 | %{__make} -C obj-%{target} | |
142 | ||
143 | %install | |
144 | rm -rf $RPM_BUILD_ROOT | |
145 | install -d $RPM_BUILD_ROOT{%{_datadir},%{_bindir}} | |
146 | ||
147 | cd obj-%{target} | |
148 | PATH=$PATH:/sbin:%{_sbindir} | |
149 | ||
150 | %{__make} -C gcc install \ | |
151 | prefix=%{_prefix} \ | |
152 | mandir=%{_mandir} \ | |
153 | infodir=%{_infodir} \ | |
154 | gxx_include_dir=%{arch}/include/g++ \ | |
155 | DESTDIR=$RPM_BUILD_ROOT | |
156 | ||
157 | # c++filt is provided by binutils | |
158 | #rm -f $RPM_BUILD_ROOT%{_bindir}/i386-djgpp-c++filt | |
159 | ||
160 | # what is this there for??? | |
161 | rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a | |
162 | ||
163 | # the same... make hardlink | |
164 | #ln -f $RPM_BUILD_ROOT%{arch}/bin/gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc | |
165 | ||
166 | %{target}-strip -g $RPM_BUILD_ROOT%{gcclib}/libgcc.a | |
167 | ||
168 | %clean | |
169 | rm -rf $RPM_BUILD_ROOT | |
170 | ||
171 | %files | |
172 | %defattr(644,root,root,755) | |
173 | %attr(755,root,root) %{_bindir}/%{target}-gcc | |
174 | %attr(755,root,root) %{_bindir}/%{target}-cpp | |
175 | #%dir %{arch}/bin | |
176 | #%attr(755,root,root) %{arch}/bin/cpp | |
177 | #%attr(755,root,root) %{arch}/bin/gcc | |
178 | #%attr(755,root,root) %{arch}/bin/gcov | |
179 | #%%{arch}/include/_G_config.h | |
180 | %dir %{gccarch} | |
181 | %dir %{gcclib} | |
182 | %attr(755,root,root) %{gcclib}/cc1 | |
183 | #%attr(755,root,root) %{gcclib}/tradcpp0 | |
184 | #%attr(755,root,root) %{gcclib}/cpp0 | |
185 | %attr(755,root,root) %{gcclib}/collect2 | |
186 | #%%{gcclib}/SYSCALLS.c.X | |
187 | %{gcclib}/libgcc.a | |
188 | %{gcclib}/specs* | |
189 | %dir %{gcclib}/include | |
190 | %{gcclib}/include/*.h | |
191 | #%%{gcclib}/include/iso646.h | |
192 | #%%{gcclib}/include/limits.h | |
193 | #%%{gcclib}/include/proto.h | |
194 | #%%{gcclib}/include/stdarg.h | |
195 | #%%{gcclib}/include/stdbool.h | |
196 | #%%{gcclib}/include/stddef.h | |
197 | #%%{gcclib}/include/syslimits.h | |
198 | #%%{gcclib}/include/varargs.h | |
199 | #%%{gcclib}/include/va-*.h | |
200 | %{_mandir}/man1/%{target}-gcc.1* | |
201 | ||
202 | %if %{cxx} | |
203 | %files c++ | |
204 | %defattr(644,root,root,755) | |
205 | %attr(755,root,root) %{_bindir}/%{target}-[cg]++ | |
206 | %{arch}/include/g++ | |
207 | %{arch}/lib/libstdc++.a | |
208 | %attr(755,root,root) %{gcclib}/cc1plus | |
209 | %{gcclib}/libstdc++* | |
210 | %{gcclib}/include/new.h | |
211 | %{gcclib}/include/exception | |
212 | %{gcclib}/include/new | |
213 | %{gcclib}/include/typeinfo | |
214 | %{_mandir}/man1/%{target}-g++.1* | |
215 | %endif | |
216 | ||
217 | %files g77 | |
218 | %defattr(644,root,root,755) | |
219 | %attr(755,root,root) %{_bindir}/%{target}-g77 | |
220 | %attr(755,root,root) %{gcclib}/f771 | |
221 | %{_mandir}/man1/%{target}-g77.1* |