]>
Commit | Line | Data |
---|---|---|
de4c05dc ER |
1 | # DOCS |
2 | # - http://aakash-bapna.blogspot.com/2007/10/iphone-non-official-sdk-aka-toolchain.html | |
3 | # - http://code.google.com/p/iphone-dev/wiki/Building | |
4 | # - ... | |
5 | # - csu (crt1.o, dylib1.o, and bundle1.o) + bootstrap | |
6 | # - ... | |
7 | # TO MAKE TARBALL(s): | |
8 | # svn co http://iphone-dev.googlecode.com/svn/trunk/odcctools odcctools | |
9 | # tar --exclude=.svn -cjf odcctools-r280.tar.bz2 odcctools | |
10 | # TODO | |
11 | # - name of this cross platform? crossarm-darwin? crossarm-darwin9? | |
12 | # - not built from binutils source, should we name package differently? | |
7c5e6b85 | 13 | # - On 64-bit architectures there are currently compilation and linking problems with structs and typedefs; as a workaround, try the following: |
de4c05dc ER |
14 | # - export CFLAGS="-m32"; export LDFLAGS="-m32" |
15 | Summary: Cross ARM Apple Darwin development utilities - binutils | |
16 | Name: crossarmdarwin-binutils | |
17 | Version: 0.152 | |
59138232 | 18 | Release: 0.2 |
de4c05dc ER |
19 | License: GPL v2 |
20 | Group: Development/Tools | |
21 | Source0: odcctools-r280.tar.bz2 | |
22 | # Source0-md5: 8a49b63a883219705de5b4a95265ffca | |
23 | URL: http://developer.berlios.de/projects/iphone-binutils/ | |
24 | BuildRequires: bison | |
25 | BuildRequires: flex | |
89156ec2 ER |
26 | %ifarch %{x8664} |
27 | # SILLY! there should had been %{target_base_arch} if any at all | |
28 | BuildRequires: glibc-devel(athlon) | |
7c5e6b85 | 29 | BuildRequires: gcc-multilib |
89156ec2 | 30 | %endif |
de4c05dc ER |
31 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
32 | ||
33 | %define target arm-apple-darwin | |
34 | %define arch %{_prefix}/%{target} | |
35 | ||
36 | %description | |
37 | Binutils is a collection of binary utilities, including: | |
38 | - ar - create, modify and extract from archives, | |
39 | - nm - lists symbols from object files, | |
40 | - objcopy - copy and translate object files, | |
41 | - objdump - display information from object files, | |
42 | - ranlib - generate an index for the contents of an archive, | |
43 | - size - list the section sizes of an object or archive file, | |
44 | - strings - list printable strings from files, | |
45 | - strip - discard symbols, | |
46 | - c++filt - a filter for demangling encoded C++ symbols, | |
47 | - addr2line - convert addresses to file and line, | |
48 | - nlmconv - convert object code into an NLM. | |
49 | ||
50 | This is a toolchain to produce arm/Mach-O binaries. | |
51 | ||
52 | %description -l pl.UTF-8 | |
53 | Pakiet binutils zawiera zestaw narzędzi umożliwiających kompilację | |
54 | programów. Znajdują się tutaj między innymi assembler, konsolidator | |
55 | (linker), a także inne narzędzia do manipulowania binarnymi plikami | |
56 | programów i bibliotek. | |
57 | ||
58 | %prep | |
59 | %setup -qcT -a0 | |
60 | ||
61 | %build | |
62 | install -d build/odcctools | |
63 | cd build/odcctools | |
64 | ../../odcctools/%configure \ | |
89156ec2 ER |
65 | %ifarch %{x8664} |
66 | CFLAGS="%{rpmcflags} -m32" \ | |
67 | LDFLAGS="%{rpmldflags} -m32" \ | |
68 | %endif | |
de4c05dc ER |
69 | --prefix=%{arch} \ |
70 | --libexecdir=%{arch} \ | |
71 | --target=%{target} \ | |
72 | --disable-ld64 | |
73 | %{__make} | |
74 | cd - | |
75 | ||
76 | %install | |
77 | rm -rf $RPM_BUILD_ROOT | |
78 | install -d $RPM_BUILD_ROOT%{_prefix} | |
79 | ||
80 | %{__make} -C build/odcctools install \ | |
81 | DESTDIR=$RPM_BUILD_ROOT | |
82 | ||
83 | # prefix manpages | |
84 | for a in $RPM_BUILD_ROOT%{_mandir}/man?/*; do | |
85 | n=${a##*/} s=${a##*.} d=${a%/*} | |
59138232 | 86 | mv $a $d/%{target}-$n |
de4c05dc ER |
87 | done |
88 | ||
89 | %clean | |
90 | rm -rf $RPM_BUILD_ROOT | |
91 | ||
92 | %files | |
93 | %defattr(644,root,root,755) | |
94 | %attr(755,root,root) %{_bindir}/%{target}-* | |
95 | %dir %{arch} | |
96 | %dir %{arch}/as | |
97 | %dir %{arch}/as/* | |
98 | %attr(755,root,root) %{arch}/as/*/as | |
99 | ||
100 | %{_mandir}/man?/%{target}-* | |
101 | %dir %{_includedir}/mach-o | |
102 | %{_includedir}/mach-o/arch.h | |
103 | %{_includedir}/mach-o/fat.h | |
104 | %{_includedir}/mach-o/loader.h | |
105 | %{_includedir}/mach-o/machine.h | |
106 | %{_libdir}/libmacho.a |