]> git.pld-linux.org Git - packages/crossm68k-binutils.git/blob - crossm68k-binutils.spec
- fixed ldscripts path
[packages/crossm68k-binutils.git] / crossm68k-binutils.spec
1
2 %define         toolkit_date    20040603
3 %define         elf2flt_date    20040326
4
5 Summary:        Cross  GNU binary utility development utilities - binutils
6 Summary(es):    Utilitarios para desarrollo de binarios de la GNU - m68k binutils
7 Summary(fr):    Utilitaires de développement binaire de GNU - m68k binutils
8 Summary(pl):    Skro¶ne narzêdzia programistyczne GNU dla m68k - binutils
9 Summary(pt_BR): Utilitários para desenvolvimento de binários da GNU - m68k binutils
10 Summary(tr):    GNU geliþtirme araçlarý - m68k binutils
11 Name:           crossm68k-binutils
12 Version:        2.16.91.0.5
13 Release:        1
14 License:        GPL
15 Group:          Development/Tools
16 Source0:        ftp://ftp.kernel.org/pub/linux/devel/binutils/binutils-%{version}.tar.bz2
17 # Source0-md5:  29fdde06e229672daaaacbf52362520a
18 Source1:        http://www.uclinux.org/pub/uClinux/m68k-elf-tools/gcc-3/uclinux-tools-%{toolkit_date}/elf2flt-%{elf2flt_date}.tar.bz2
19 # Source1-md5:  6263c07332f76e2c8b9428dc8bf8a6b8
20 URL:            http://sources.redhat.com/binutils/
21 BuildRequires:  automake
22 BuildRequires:  bash
23 BuildRequires:  bison
24 BuildRequires:  flex
25 BuildRequires:  sed
26 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27
28 %define         target          m68k-pld-linux
29 %define         arch            %{_prefix}/%{target}
30
31 %description
32 Binutils is a collection of binary utilities, including:
33 - ar - create, modify and extract from archives,
34 - nm - lists symbols from object files,
35 - objcopy - copy and translate object files,
36 - objdump - display information from object files,
37 - ranlib - generate an index for the contents of an archive,
38 - size - list the section sizes of an object or archive file,
39 - strings - list printable strings from files,
40 - strip - discard symbols,
41 - c++filt - a filter for demangling encoded C++ symbols,
42 - addr2line - convert addresses to file and line,
43 - nlmconv - convert object code into an NLM.
44
45 This package contains the cross version for m68k.
46
47 %description -l pl
48 Pakiet binutils zawiera zestaw narzêdzi umo¿liwiaj±cych kompilacjê
49 programów. Znajduj± siê tutaj miêdzy innymi assembler, konsolidator
50 (linker), a tak¿e inne narzêdzia do manipulowania binarnymi plikami
51 programów i bibliotek.
52
53 Ten pakiet zawiera wersjê skro¶n± generuj±c± kod dla m68k.
54
55 %prep
56 %setup -q -n binutils-%{version} -a1
57 sed -i 's/>_raw_size/>rawsize/g' elf2flt-%{elf2flt_date}/elf2flt.c
58 sed -i 's/-static//g'            elf2flt-%{elf2flt_date}/Makefile.in
59 sed -i 's@LDSCRIPTPATH="${TOOLDIR}/../lib"@LDSCRIPTPATH="${TOOLDIR}/../lib/ldscripts"@g'        \
60     elf2flt-%{elf2flt_date}/ld-elf2flt.in
61
62 %build
63 cp /usr/share/automake/config.sub .
64
65 # ldscripts won't be generated properly if SHELL is not bash...
66 CFLAGS="%{rpmcflags} -fno-strict-aliasing" \
67 LDFLAGS="%{rpmldflags}" \
68 CONFIG_SHELL="/bin/bash" \
69 ./configure \
70         --disable-shared \
71         --disable-nls \
72         --prefix=%{_prefix} \
73         --libdir=%{_libdir} \
74         --mandir=%{_mandir} \
75         --infodir=%{_infodir} \
76         --target=%{target}
77
78 %{__make} all \
79         tooldir=%{_prefix} \
80         EXEEXT=""
81
82 # Build elf2lft
83 cd elf2flt-%{elf2flt_date}
84
85 CFLAGS="%{rpmcflags} -fno-strict-aliasing" \
86 LDFLAGS="%{rpmldflags}" \
87 ./configure \
88     --with-libbfd=../bfd/libbfd.a \
89     --with-libiberty=../libiberty/libiberty.a \
90     --with-bfd-include-dir=../bfd \
91     --with-binutils-include-dir=../include \
92     --target=%{target} \
93     --prefix=%{_prefix}
94
95 %{__make}
96
97 %install
98 rm -rf $RPM_BUILD_ROOT
99 install -d $RPM_BUILD_ROOT%{_prefix}
100
101 %{__make} install \
102         prefix=$RPM_BUILD_ROOT%{_prefix} \
103         mandir=$RPM_BUILD_ROOT%{_mandir} \
104         infodir=$RPM_BUILD_ROOT%{_infodir} \
105         libdir=$RPM_BUILD_ROOT%{_libdir}
106
107 # remove these man pages unless we cross-build for win*/netware platforms.
108 # however, this should be done in Makefiles.
109 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/{*dlltool,*nlmconv,*windres}.1
110
111 # Install elf2flt
112 mv $RPM_BUILD_ROOT%{arch}/bin/ld                \
113         $RPM_BUILD_ROOT%{arch}/bin/ld.real
114
115 mv $RPM_BUILD_ROOT%{_bindir}/%{target}-ld       \
116         $RPM_BUILD_ROOT%{_bindir}/%{target}-ld.real
117
118 for prog in flthdr elf2flt; do
119     install elf2flt-%{elf2flt_date}/$prog       \
120         $RPM_BUILD_ROOT%{arch}/bin/$prog
121     install elf2flt-%{elf2flt_date}/$prog       \
122         $RPM_BUILD_ROOT%{_bindir}/%{target}-$prog
123 done
124
125 install elf2flt-%{elf2flt_date}/ld-elf2flt      \
126         $RPM_BUILD_ROOT%{arch}/bin/ld
127
128 install elf2flt-%{elf2flt_date}/ld-elf2flt      \
129         $RPM_BUILD_ROOT%{_bindir}/%{target}-ld
130         
131 install elf2flt-%{elf2flt_date}/elf2flt.ld      \
132         $RPM_BUILD_ROOT%{arch}/lib/ldscripts/elf2flt.ld
133
134 %clean
135 rm -rf $RPM_BUILD_ROOT
136
137 %files
138 %defattr(644,root,root,755)
139 %doc README
140 %attr(755,root,root) %{_bindir}/%{target}-*
141 %dir %{arch}
142 %dir %{arch}/bin
143 %attr(755,root,root) %{arch}/bin/*
144 %dir %{arch}/lib
145 %dir %{arch}/lib/*
146 %{arch}/lib/ldscripts/*
147 %{_mandir}/man?/%{target}-*
This page took 0.125382 seconds and 3 git commands to generate.