#
-# TODO: bug gas/584
-#
# Conditional build:
%bcond_with allarchs # enable all targets
# define addtargets x,y,z # build with additional targets x,y,z (e.g. x86_64-linux)
Summary(tr): GNU geliþtirme araçlarý
Summary(uk): îÁÂ¦Ò ¦ÎÓÔÒÕÍÅÎÔ¦× GNU ÄÌÑ ÐÏÂÕÄÏ×É ×ÉËÏÎÕ×ÁÎÉÈ ÐÒÏÇÒÁÍ
Name: binutils
-Version: 2.15.94.0.2.2
-Release: 1
-Epoch: 2
+Version: 2.17.50.0.8
+Release: 3
+Epoch: 3
License: GPL
Group: Development/Tools
Source0: ftp://ftp.kernel.org/pub/linux/devel/binutils/%{name}-%{version}.tar.bz2
-# Source0-md5: e9bcf84d9e6b5a2d840e76f22a3fce5f
+# Source0-md5: 1441fe6fa44b344d0575cb66d3f89252
Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: a717d9707ec77d82acb6ec9078c472d6
Patch0: %{name}-gasp.patch
Patch1: %{name}-info.patch
-Patch2: %{name}-array-sects-compat.patch
-Patch3: %{name}-libtool-relink.patch
-Patch4: %{name}-pt_pax_flags.patch
-Patch5: %{name}-mips-relocs.patch
+Patch2: %{name}-libtool-relink.patch
+Patch3: %{name}-pt_pax_flags.patch
+Patch4: %{name}-mips-relocs.patch
+Patch5: %{name}-flex.patch
+Patch6: %{name}-discarded.patch
+Patch7: %{name}-absolute-gnu_debuglink-path.patch
+Patch8: %{name}-pr3191.patch
+Patch9: %{name}-pr3666.patch
+Patch10: %{name}-libtool-m.patch
URL: http://sources.redhat.com/binutils/
BuildRequires: autoconf >= 2.59
BuildRequires: automake >= 1:1.8.2
%endif
BuildRequires: texinfo >= 4.2
Requires(post,postun): /sbin/ldconfig
+Requires: %{name} = %{epoch}:%{version}-%{release}
Conflicts: gcc-c++ < 5:3.3
Conflicts: modutils < 2.4.17
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%ifarch sparc64
-%define _libdir /usr/lib
-%endif
-
%description
Binutils is a collection of binary utilities, including:
- ar - create, modify and extract from archives,
í¦ÓÔÉÔØ ÁÓÅÍÂÌÅÒ, ËÏÍÐÏÎÏ×ÝÉË ÔÁ ¦ÎÛ¦ ÐÒÏÇÒÁÍÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÒÏÂÏÔÉ Ú
×ÉËÏÎÕ×ÁÎÉÍÉ ÆÁÊÌÁÍÉ Ò¦ÚÎÉÈ ÆÏÒÍÁÔ¦×.
+%package libs
+Summary: GNU binutils shared libraries
+Summary(pl): Biblioteki wspó³dzielone GNU binutils
+Group: Libraries
+Conflicts: %{name} < 3:2.17.50.0.8-3
+
+%description libs
+GNU binutils shared libraries (libbfd, libopcodes).
+
+%description libs -l pl
+Biblioteki wspó³dzielone GNU binutils (libbfd, libopcodes).
+
+%package devel
+Summary: Development files for GNU binutils libraries
+Summary(pl): Pliki programistyczne bibliotek GNU binutils
+Group: Development/Libraries
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+
+%description devel
+Development files for GNU binutils libraries (libbfd, libopcodes) and
+static libiberty library.
+
+%description devel -l pl
+Pliki programistyczne bibliotek GNU binutils (libbfd, libopcodes) oraz
+statyczna biblioteka libiberty.
+
%package static
-Summary: GNU Binutils static libraries
-Summary(pl): Biblioteki statyczne do GNU Binutils
+Summary: GNU binutils static libraries
+Summary(pl): Biblioteki statyczne do GNU binutils
Group: Development/Libraries
-Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: %{name}-devel = %{epoch}:%{version}-%{release}
%description static
-Static libraries for GNU Binutils.
+Static GNU binutils libraries (libbfd, libopcodes).
%description static -l pl
-Biblioteki statyczne GNU Binutils.
+Biblioteki statyczne GNU binutils (libbfd, libopcodes).
%package gasp
Summary: GASP - old preprocessor for assembly programs
%setup -q
%patch0 -p1
%patch1 -p1
-%ifarch %{ix86}
%patch2 -p1
-%endif
%patch3 -p1
-%patch4 -p1
-%patch5 -p0
+%patch4 -p0
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p0
+%patch9 -p1
+%patch10 -p1
%build
# non-standard regeneration (needed because of gasp patch)
%{?addtargets:TARGETS="%{addtargets}"}
cp -f /usr/share/automake/config.* .
-CFLAGS="%{rpmcflags}"; export CFLAGS
+CFLAGS="%{rpmcflags} -fno-strict-aliasing"; export CFLAGS
CC="%{__cc}"; export CC
%ifarch sparc
sparc32 \
%endif
./configure %{_target_platform} \
- --enable-shared \
--disable-debug \
+ --disable-werror \
+ --enable-build-warnings=,-Wno-missing-prototypes \
+ --enable-shared \
--prefix=%{_prefix} \
--libdir=%{_libdir} \
--infodir=%{_infodir} \
%endif
%{?with_allarchs:--enable-targets=alpha-linux,arm-linux,cris-linux,hppa-linux,i386-linux,ia64-linux,x86_64-linux,m68k-linux,mips-linux,mips64-linux,mips64el-linux,mipsel-linux,ppc-linux,s390-linux,s390x-linux,sh-linux,sparc-linux,sparc64-linux,i386-linuxaout}
+%{__make} configure-bfd
+%{__make} headers -C bfd
%{__make} all info \
- tooldir=%{_prefix}
+ tooldir=%{_prefix}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install install-info \
+%{__make} install \
prefix=$RPM_BUILD_ROOT%{_prefix} \
tooldir=$RPM_BUILD_ROOT%{_prefix} \
mandir=$RPM_BUILD_ROOT%{_mandir} \
# remove evil -L pointing inside builder's home
perl -pi -e 's@-L[^ ]*/pic @@g' $RPM_BUILD_ROOT%{_libdir}/libbfd.la
-%find_lang %{name} --all-name
+%find_lang bfd
+%find_lang binutils
+%find_lang gas
+%find_lang gprof
+%find_lang ld
+%find_lang opcodes
+cat bfd.lang opcodes.lang > %{name}-libs.lang
+cat gas.lang gprof.lang ld.lang >> %{name}.lang
%clean
rm -rf $RPM_BUILD_ROOT
%post
-/sbin/ldconfig
[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
%postun
-/sbin/ldconfig
+[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
+%post devel
+[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+
+%postun devel
[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
%files -f %{name}.lang
%doc README
%attr(755,root,root) %{_bindir}/[!g]*
%attr(755,root,root) %{_bindir}/g[!a]*
-%attr(755,root,root) %{_libdir}*/*.so
-%{_libdir}*/libiberty.a
-%{_libdir}*/lib*.la
-
%{_prefix}/lib/ldscripts
-%{_includedir}/*.h
-
-%{_infodir}/[!g]*.info*
-%{_infodir}/g[!a]*.info*
+%{_infodir}/as.info*
+%{_infodir}/binutils.info*
+%{_infodir}/configure.info*
+%{_infodir}/gprof.info*
+%{_infodir}/ld.info*
%{_mandir}/man1/*
%lang(cs) %{_mandir}/cs/man1/*
%lang(de) %{_mandir}/de/man1/*
%lang(ja) %{_mandir}/ja/man1/*
%lang(pl) %{_mandir}/pl/man1/*
+%files libs -f %{name}-libs.lang
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libbfd-*.so
+%attr(755,root,root) %{_libdir}/libopcodes-*.so
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libbfd.so
+%attr(755,root,root) %{_libdir}/libopcodes.so
+%{_libdir}/libbfd.la
+%{_libdir}/libopcodes.la
+%{_libdir}/libiberty.a
+%{_includedir}/*.h
+%{_infodir}/bfd.info*
+
%files static
%defattr(644,root,root,755)
-%{_libdir}*/lib[!i]*.a
+%{_libdir}/libbfd.a
+%{_libdir}/libopcodes.a
%files gasp
%defattr(644,root,root,755)