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
5 # - csu (crt1.o, dylib1.o, and bundle1.o) + bootstrap
8 # svn co http://iphone-dev.googlecode.com/svn/trunk/odcctools odcctools
9 # tar --exclude=.svn -cjf odcctools-r280.tar.bz2 odcctools
11 # - name of this cross platform? crossarm-darwin? crossarm-darwin9?
12 # - not built from binutils source, should we name package differently?
13 # - On 64-bit architectures there are currently compilation and linking problems with structs and typedefs; as a workaround, try the following:
14 # - export CFLAGS="-m32"; export LDFLAGS="-m32"
15 Summary: Cross ARM Apple Darwin development utilities - binutils
16 Name: crossarmdarwin-binutils
20 Group: Development/Tools
21 Source0: odcctools-r280.tar.bz2
22 # Source0-md5: 8a49b63a883219705de5b4a95265ffca
23 URL: http://developer.berlios.de/projects/iphone-binutils/
27 # SILLY! there should had been %{target_base_arch} if any at all
28 BuildRequires: glibc-devel(athlon)
29 BuildRequires: gcc-multilib
31 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33 %define target arm-apple-darwin
34 %define arch %{_prefix}/%{target}
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.
50 This is a toolchain to produce arm/Mach-O binaries.
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.
62 install -d build/odcctools
64 ../../odcctools/%configure \
66 CFLAGS="%{rpmcflags} -m32" \
67 LDFLAGS="%{rpmldflags} -m32" \
70 --libexecdir=%{arch} \
77 rm -rf $RPM_BUILD_ROOT
78 install -d $RPM_BUILD_ROOT%{_prefix}
80 %{__make} -C build/odcctools install \
81 DESTDIR=$RPM_BUILD_ROOT
84 for a in $RPM_BUILD_ROOT%{_mandir}/man?/*; do
85 n=${a##*/} s=${a##*.} d=${a%/*}
86 mv $a $d/%{target}-$n.$s
90 rm -rf $RPM_BUILD_ROOT
93 %defattr(644,root,root,755)
94 %attr(755,root,root) %{_bindir}/%{target}-*
98 %attr(755,root,root) %{arch}/as/*/as
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