Summary: GNU Binary Utility Development Utilities
+Summary(de): GNU Binary Utility Development Utilities
+Summary(es): Utilitarios para desarrollo de binarios de la GNU
+Summary(fr): Utilitaires de développement binaire de GNU
+Summary(pl): Narzêdzia GNU dla programistów
+Summary(pt_BR): Utilitários para desenvolvimento de binários da GNU
+Summary(tr): GNU geliþtirme araçlarý
Name: binutils
-Version: 2.9.1.0.19a
-Release: 4d
-Copyright: GPL
+Version: 2.11.90.0.19
+Release: 4
+Epoch: 2
+License: GPL
Group: Development/Tools
-Group(pl): Programowanie/Narzêdzia
-URL: ftp://ftp.kernel.org/pub/linux/devel/gcc
-Source: %{name}-%{version}.tar.bz2
-Patch: %{name}-sparc32.patch
-Patch1: %{name}-2.9.1.0.19-opcodes.patch.gz
-Patch2: %{name}-%{version}-r_386_pc.patch.gz
-Patch3: %{name}-%{version}-gas_opcodes.patch.gz
-Patch4: %{name}-%{version}-pII_opcodes.patch.gz
-Patch5: %{name}-%{version}-bfd_binary.patch.gz
+Source0: ftp://ftp.kernel.org/pub/linux/devel/binutils/%{name}-%{version}.tar.bz2
+# Source0-md5: 59cb6db4b7642562b5abb3298a25b063
+Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
+# Source1-md5: 48e506c0a8b87e0a762f990111aed707
+Patch0: %{name}-info.patch
+Patch1: %{name}-sparc_unaligned_reloc.patch
+Patch2: %{name}-preserve_e_flags.patch
+Patch3: %{name}-getopt.patch
+URL: http://sourceware.cygnus.com/binutils/
Prereq: /sbin/ldconfig
-BuildRoot: /tmp/%{name}-%{version}-root
-Summary(pl): Narzêdzia GNU dla programistów
+BuildRequires: bison
+BuildRequires: flex
+BuildRequires: perl-devel
+%ifarch sparc sparc32
+BuildRequires: sparc32
+%endif
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
-binutils is a collection of utilities necessary for compiling programs. It
-includes the assembler and linker, as well as a number of other
-miscellaneous programs for dealing with executable formats.
+Binutils is a collection of binary utilities, including:
+- ar - create, modify and extract from archives,
+- nm - lists symbols from object files,
+- objcopy - copy and translate object files,
+- objdump - display information from object files,
+- ranlib - generate an index for the contents of an archive,
+- size - list the section sizes of an object or archive file,
+- strings - list printable strings from files,
+- strip - discard symbols,
+- addr2line - convert addresses to file and line,
+- nlmconv - convert object code into an NLM.
%description -l pl
-Pakiet binutils zawiera zestaw narzêdzi umo¿liwiaj±cych kompilacjê programów.
-Znajduj± siê tutaj miêdzy innymi assembler, konsolidator (linker), a tak¿e
-inne narzêdzia do manipulowania binarnymi plikami programów i bibliotek.
+Pakiet binutils zawiera zestaw narzêdzi umo¿liwiaj±cych kompilacjê
+programów. Znajduj± siê tutaj miêdzy innymi assembler, konsolidator
+(linker), a tak¿e inne narzêdzia do manipulowania binarnymi plikami
+programów i bibliotek.
+
+%description -l es
+binutils es una colectánea de utilitarios necesarios para compilar
+programas. Incluye assembler y linker, así como varios otros programas
+para trabajar con formatos que se puedan ejecutar.
+
+%description -l pt_BR
+binutils é uma coletânea de utilitários necessários para compilar
+programas. Inclui assembler e linker, assim como vários outros
+programas para trabalhar com formatos executáveis.
%package static
Summary: GNU Binutils static libraries
-Group: Libraries
-Group(pl): Biblioteki
-Requires: %{name} = %{version}
Summary(pl): Biblioteki statyczne do GNU Binutils
+Group: Development/Libraries
+Requires: %{name} = %{version}
%description static
Static libraries for GNU Binutils.
%prep
%setup -q
-%patch -p1
+%patch0 -p1
%patch1 -p1
-%patch2 -p1
+%patch2 -p0
%patch3 -p1
-%patch4 -p1
-%patch5 -p1
%build
-CFLAGS=$RPM_OPT_FLAGS \
-%ifarch sparc sparc64
-sparc32 ./configure \
-%else
- ./configure \
- --prefix=/usr \
- --enable-shared
+CFLAGS="%{rpmcflags}"
+export CFLAGS
+%ifarch sparc
+sparc32 \
+%endif
+./configure %{_target_platform} \
+ --enable-shared \
+ --disable-debug \
+ --prefix=%{_prefix} \
+ --infodir=%{_infodir} \
+ --mandir=%{_mandir} \
+%ifarch sparc
+ --enable-targets=sparc64-linux
%endif
-make tooldir=/usr all info
+%{__make} tooldir=%{_prefix} all info
%install
rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_prefix}
-install -d $RPM_BUILD_ROOT/usr
-
-make install install-info \
- prefix=$RPM_BUILD_ROOT/usr \
- tooldir=$RPM_BUILD_ROOT/usr
+%{__make} install install-info \
+ prefix=$RPM_BUILD_ROOT%{_prefix} \
+ tooldir=$RPM_BUILD_ROOT%{_prefix} \
+ mandir=$RPM_BUILD_ROOT%{_mandir} \
+ infodir=$RPM_BUILD_ROOT%{_infodir} \
+ includedir=$RPM_BUILD_ROOT%{_includedir} \
+ libdir=$RPM_BUILD_ROOT%{_libdir}
-gzip -q9f $RPM_BUILD_ROOT/usr/info/*.inf*
+# these are already in gcc-g++
+rm -f $RPM_BUILD_ROOT%{_bindir}/c++filt $RPM_BUILD_ROOT%{_mandir}/man1/c++filt*
-strip $RPM_BUILD_ROOT/usr/bin/*
-#strip $RPM_BUILD_ROOT/usr/lib/*.so.*
+rm -f $RPM_BUILD_ROOT%{_infodir}/standards.info*
-install include/libiberty.h $RPM_BUILD_ROOT/usr/include
+# remove these man pages unless we cross-build for win*/netware platforms.
+# however, this should be done in Makefiles.
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/{dlltool,nlmconv,windres}.1
-chmod 755 $RPM_BUILD_ROOT/usr/lib/*.so.*
+bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}/
-bzip2 -9 $RPM_BUILD_ROOT/usr/man/man1/* README
+install include/libiberty.h $RPM_BUILD_ROOT%{_includedir}
%clean
rm -rf $RPM_BUILD_ROOT
%post
-/sbin/install-info /usr/info/as.info.gz /etc/info-dir
-/sbin/install-info /usr/info/bfd.info.gz /etc/info-dir
-/sbin/install-info /usr/info/binutils.info.gz /etc/info-dir
-/sbin/install-info /usr/info/ld.info.gz /etc/info-dir
-/sbin/install-info /usr/info/gasp.info.gz /etc/info-dir
-/sbin/install-info /usr/info/gprof.info.gz /etc/info-dir
/sbin/ldconfig
+[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
-%preun
-if [ $1 = 0 ]; then
-/sbin/install-info --delete --infodir=/etc/info-dir /usr/info/as.info.gz
-/sbin/install-info --delete --infodir=/etc/info-dir /usr/info/bfd.info.gz
-/sbin/install-info --delete --infodir=/etc/info-dir /usr/info/binutils.info.gz
-/sbin/install-info --delete --infodir=/etc/info-dir /usr/info/ld.info.gz
-/sbin/install-info --delete --infodir=/etc/info-dir /usr/info/gasp.info.gz
-/sbin/install-info --delete --infodir=/etc/info-dir /usr/info/gprof.info.gz
-fi
-
-%postun -p /sbin/ldconfig
+%postun
+/sbin/ldconfig
+[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
%files
%defattr(644,root,root,755)
-%doc README.bz2
-
-%attr(755,root,root) /usr/bin/*
-
-%dir /usr/lib/ldscripts
-/usr/lib/ldscripts/*
-
-/usr/include/*.h
-
-%attr(755,root,root) /usr/lib/*.so.*
-%attr(755,root,root) /usr/lib/*.so
-
-/usr/info/*.gz
-
-%attr(644,root,root) /usr/lib/libiberty.a
-%attr(644,root, man) /usr/man/man1/*
+%doc README
+%attr(755,root,root) %{_bindir}/*
+%attr(755,root,root) %{_libdir}/*.so
+
+%{_libdir}/ldscripts
+%{_includedir}/*.h
+
+%{_infodir}/*info*
+%{_mandir}/man1/*
+%lang(cs) %{_mandir}/cs/man1/*
+%lang(de) %{_mandir}/de/man1/*
+%lang(es) %{_mandir}/es/man1/*
+%lang(fi) %{_mandir}/fi/man1/*
+%lang(fr) %{_mandir}/fr/man1/*
+%lang(hu) %{_mandir}/hu/man1/*
+%lang(ja) %{_mandir}/ja/man1/*
+%lang(pl) %{_mandir}/pl/man1/*
%files static
-%attr(644,root,root) /usr/lib/libbfd.a
-%attr(644,root,root) /usr/lib/libopcodes.a
-
-%changelog
-* Mon Jan 18 1999 Wojtek ¦lusarczyk <wojtek@shadow.eu.org>
-[2.9.1.0.19-4d]
-- fixed %preun && %post,
-- commpresed %doc,
-- added Group(pl),
-- added Prereq: /sbin/ldconfig,
-- added URL,
-
- by Maciek W. Ró¿ycki <macro@ds2.pg.gda.pl>
-
-- fixed the binary BFD to correctly output sections,
-- modified gas so it recognizes single-argument aad and aam,
-- modified gas so iret generates a non-prefixed opcode
- regardless of the current argument size.
-- added support for new Pentium II instructions (see "Addendum
- -- Intel Architecture Software Developer's Manual, Volume 2:
- Instruction Set Reference", order number 243689-001),
-- fixed a problem with relative branch distance overflow checking,
-- added a fix for 16-bit PC-relative relocations on i386.
-
-* Sun Dec 20 1998 Wojtek ¦lusarczyk <wojtek@shadow.eu.org>
-[2.9.1.0.19-2d]
-- removed static subpackages,
-- cosmetic changes,
-- final build for Tornado.
-
-* Wed Dec 8 1998 Tomasz K³oczko <kloczek@rudy.mif.pg.gda.pl>
-[2.9.1.0.17-2]
-- added using sparc32 for run ./configure script on sparc
- architecture (thanks DaveM).
-
-* Fri Oct 9 1998 Tomasz K³oczko <kloczek@rudy.mif.pg.gda.pl>
-[2.9.1.0.15-2]
-- /usr/lib/libiberty.a moved to main.
-
-* Sat Oct 03 1998 Wojtek ¦lusarczyk <wojtek@shadow.eu.org>
-[2.9.1.0.15-1d]
-- fixed pl translation,
-- updated to 2.9.1.0.15.
-
-* Sun Sep 13 1998 Wojtek ¦lusarczyk <wojtek@SHADOW.EU.ORG>
-[2.9.1.0.12-1d]
-- updated to 2.9.1.0.12.
-- install -d instead mkdir -p,
-- restricted ELF binaries permissions.
-
-* Tue Sep 07 1998 Wojtek ¦lusarczyk <wojtek@SHADOW.EU.ORG>
-[2.9.1.0.11-1d]
-- updated to 2.9.1.0.11,
-- build without $RPM_OPT_FLAGS - some problems with egcs & -O6 ...
-- added a static package,
-- build from non root's account.
-
-* Sat Aug 22 1998 Tomasz K³oczko <kloczek@rudy.mif.pg.gda.pl>
- [2.9.1.0.10-3]
-- changed Buildroot to /tmp/%%{name}-%%{version}-root,
-- added using %%{name} and %%{version} in Source,
-- added static subpackage,
-- removed /usr/lib/lib*.la files,
-- added using $RPM_OPT_FLAGS during building package.
-
-* Fri Jun 12 1998 Wojtek ¦lusarczyk <wojtek@SHADOW.EU.ORG>
-[2.9.1.0.6-2]
-- build against GNU libc-2.1.
-
-* Fri May 29 1998 Wojtek ¦lusarczyk <wojtek@SHADOW.EU.ORG>
-- Replaced binutils to binutils-2.9.1.0.6.
-
-* Wed May 6 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.9.1.0.4.
-
-* Wed Apr 29 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.9.1.0.3.
-
-* Tue Apr 28 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.9.1.0.2.
-
-* Fri Apr 17 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.9.0.3.
-
-* Tue Apr 14 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.9.0.2.
-
-* Mon Apr 13 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.9.0.1.
-
-* Thu Apr 9 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.8.1.0.30 and changed the conflict of
- /usr/info/dir.
-
-* Sun Apr 5 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.8.1.0.29.
-
-* Thu Apr 2 1998 Christian Joensson <chj@lin.foa.se>
-- Fixed the conflict of /usr/info/dir between the binutils and info packages.
-
-* Wed Apr 1 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.8.1.0.28.
-
-* Mon Mar 30 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.8.1.0.27.
-
-* Thu Mar 26 1998 Christian Joensson <chj@lin.foa.se>
-- Replaced binutils to binutils-2.8.1.0.25.
-
-* Thu Mar 19 1998 Trond Myklebust <trond.myklebust@fys.uio.no>
-- Replaced with hjl's binutils release from tsx-11
- (patch 0.15-0.23 is far too large).
-
-* Wed Oct 22 1997 Erik Troan <ewt@redhat.com>
-
-- added 2.8.1.0.1 patch from hj
-- added patch for alpha palcode form rth
+%defattr(644,root,root,755)
+%{_libdir}/lib*.a