]> git.pld-linux.org Git - packages/crossppc-gcc.git/blob - crossppc-gcc.spec
- newlib headers are used only on win32 hosted crosscompilers.
[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:  70ee088b498741bb08c779f9617df3a5
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}/libgcc\\.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 \
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 %endif
138
139 %clean
140 rm -rf $RPM_BUILD_ROOT
141
142 %files
143 %defattr(644,root,root,755)
144 %attr(755,root,root) %{_bindir}/%{target}-gcc
145 %attr(755,root,root) %{_bindir}/%{target}-cpp
146 %dir %{gccarch}
147 %dir %{gcclib}
148 %attr(755,root,root) %{gcclib}/cc1
149 %attr(755,root,root) %{gcclib}/collect2
150 %{gcclib}/libgcc.a
151 %{gcclib}/specs*
152 %dir %{gcclib}/include
153 %{gcclib}/include/*.h
154 %{_mandir}/man1/%{target}-gcc.1*
155
156 %files c++
157 %defattr(644,root,root,755)
158 %attr(755,root,root) %{_bindir}/%{target}-g++
159 %attr(755,root,root) %{_bindir}/%{target}-c++
160 %attr(755,root,root) %{gcclib}/cc1plus
This page took 0.067983 seconds and 3 git commands to generate.