]> git.pld-linux.org Git - packages/crossppc-gcc.git/blob - crossppc-gcc.spec
- %%build/%%files finished.
[packages/crossppc-gcc.git] / crossppc-gcc.spec
1 Summary:        Cross PPC GNU binary utility development utilities - gcc
2 Summary(es):    Utilitarios para desarrollo de binarios de la GNU - PPC gcc
3 Summary(fr):    Utilitaires de développement binaire de GNU - PPC gcc
4 Summary(pl):    Skro¶ne narzêdzia programistyczne GNU dla PPC - gcc
5 Summary(pt_BR): Utilitários para desenvolvimento de binários da GNU - PPC gcc
6 Summary(tr):    GNU geliþtirme araçlarý - PPC gcc
7 Name:           crossppc-gcc
8 Version:        3.4.3
9 Release:        1
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:  e744b30c834360fccac41eb7269a3011
15 %define         _llh_ver        2.6.9.1
16 Source1:        http://ep09.pld-linux.org/~mmazur/linux-libc-headers/linux-libc-headers-%{_llh_ver}.tar.bz2
17 # Source1-md5:  d3507b2c0203a0760a677022badcf455
18 Source2:        glibc-20041030.tar.bz2
19 # Source2-md5:  4e14871efd881fbbf523a0ba16175bc7
20 Patch0:         %{name}-libc-sysdeps-configure.patch
21 BuildRequires:  autoconf
22 BuildRequires:  automake
23 BuildRequires:  bison
24 BuildRequires:  crossppc-binutils
25 BuildRequires:  flex
26 BuildRequires:  /bin/bash
27 Requires:       crossppc-binutils
28 Requires:       gcc-dirs
29 ExcludeArch:    ppc
30 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31
32 %define         target          ppc-pld-linux
33 %define         arch            %{_prefix}/%{target}
34 %define         gccarch         %{_libdir}/gcc/%{target}
35 %define         gcclib          %{gccarch}/%{version}
36
37 %define         _noautostrip    .*%{gcclib}.*/libgc.*\\.a
38
39 %description
40 This package contains a cross-gcc which allows the creation of
41 binaries to be run on PPC linux (architecture ppc-linux) on
42 other machines.
43
44 %description -l de
45 Dieses Paket enthält einen Cross-gcc, der es erlaubt, auf einem
46 anderem Rechner Code für ppc-Linux zu generieren.
47
48 %description -l pl
49 Ten pakiet zawiera skro¶ny gcc pozwalaj±cy na robienie na innych
50 maszynach binariów do uruchamiania na PPC (architektura "ppc-linux").
51
52 %package c++
53 Summary:        C++ support for crossppc-gcc
54 Summary(pl):    Obs³uga C++ dla crossppc-gcc
55 Group:          Development/Languages
56 Requires:       %{name} = %{epoch}:%{version}-%{release}
57
58 %description c++
59 This package adds C++ support to the GNU Compiler Collection for PPC.
60
61 %description c++ -l pl
62 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc dla PPC.
63
64 %prep
65 %setup -q -n gcc-%{version} -a1 -a2
66 %patch0 -p1
67
68 %build
69 cp -f /usr/share/automake/config.sub .
70
71 FAKE_ROOT=$PWD/fake-root
72
73 rm -rf $FAKE_ROOT && install -d $FAKE_ROOT/usr/include
74 cp -r linux-libc-headers-%{_llh_ver}/include/{asm-ppc,linux} $FAKE_ROOT/usr/include
75 ln -s asm-ppc $FAKE_ROOT/usr/include/asm
76
77 cd libc
78 rm -rf builddir && install -d builddir && cd builddir
79 ../configure \
80         --prefix=$FAKE_ROOT/usr \
81         --build=%{_target_platform} \
82         --host=%{target} \
83         --disable-nls \
84         --enable-add-ons=linuxthreads \
85         --with-headers=$FAKE_ROOT/usr/include \
86         --disable-sanity-checks \
87         --enable-hacker-mode
88
89 %{__make} sysdeps/gnu/errlist.c
90 %{__make} install-headers
91
92 install bits/stdio_lim.h $FAKE_ROOT/usr/include/bits
93 touch $FAKE_ROOT/usr/include/gnu/stubs.h
94 cd ../..
95
96 rm -rf obj-%{target}
97 install -d obj-%{target}
98 cd obj-%{target}
99
100 CFLAGS="%{rpmcflags}" \
101 CXXFLAGS="%{rpmcflags}" \
102 TEXCONFIG=false \
103 ../configure \
104         --prefix=%{_prefix} \
105         --infodir=%{_infodir} \
106         --mandir=%{_mandir} \
107         --bindir=%{_bindir} \
108         --libdir=%{_libdir} \
109         --libexecdir=%{_libdir} \
110         --disable-shared \
111         --enable-languages="c,c++" \
112         --enable-c99 \
113         --enable-long-long \
114         --with-gnu-as \
115         --with-gnu-ld \
116         --with-system-zlib \
117         --with-multilib \
118         --with-sysroot=$FAKE_ROOT \
119         --without-x \
120         --target=%{target} \
121         --host=%{_target_platform} \
122         --build=%{_target_platform}
123
124 %{__make} all-gcc
125
126 %install
127 rm -rf $RPM_BUILD_ROOT
128
129 %{__make} -C obj-%{target} install-gcc \
130         DESTDIR=$RPM_BUILD_ROOT
131
132 # don't want this here
133 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
134
135 %if 0%{!?debug:1}
136 %{target}-strip -g $RPM_BUILD_ROOT%{gcclib}/libgcc.a
137 %{target}-strip -g $RPM_BUILD_ROOT%{gcclib}/libgcov.a
138 %{target}-strip -g $RPM_BUILD_ROOT%{gcclib}/nof/libgcc.a
139 %{target}-strip -g $RPM_BUILD_ROOT%{gcclib}/nof/libgcov.a
140 %endif
141
142 %clean
143 rm -rf $RPM_BUILD_ROOT
144
145 %files
146 %defattr(644,root,root,755)
147 %attr(755,root,root) %{_bindir}/%{target}-gcc
148 %attr(755,root,root) %{_bindir}/%{target}-cpp
149 %dir %{gccarch}
150 %dir %{gcclib}
151 %attr(755,root,root) %{gcclib}/cc1
152 %attr(755,root,root) %{gcclib}/collect2
153 %dir %{gcclib}/nof
154 %{gcclib}/nof/*crt*.o
155 %{gcclib}/nof/libgcc.a
156 %{gcclib}/*crt*.o
157 %{gcclib}/libgcc.a
158 %{gcclib}/specs*
159 %dir %{gcclib}/include
160 %{gcclib}/include/*.h
161 %{_mandir}/man1/%{target}-gcc.1*
162 %{_mandir}/man1/%{target}-cpp.1*
163
164 %files c++
165 %defattr(644,root,root,755)
166 %attr(755,root,root) %{_bindir}/%{target}-g++
167 %attr(755,root,root) %{_bindir}/%{target}-c++
168 %attr(755,root,root) %{gcclib}/cc1plus
169 %{_mandir}/man1/%{target}-g++.1*
This page took 0.066682 seconds and 4 git commands to generate.