]> git.pld-linux.org Git - packages/binutils.git/blobdiff - binutils.spec
- updated for 2.17.50.0.9.
[packages/binutils.git] / binutils.spec
index d8b690974fc0946658cfb65f1b87a55e7bc1204f..a6be47a75b5df8a4f8f0697f8a526fc96cb617c9 100644 (file)
@@ -1,6 +1,7 @@
 #
-# conditional build:
-# _with_allarchs       - enable
+# 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:       GNU Binary Utility Development Utilities
 Summary(de):   GNU Binary Utility Development Utilities
@@ -12,24 +13,29 @@ Summary(ru):        
 Summary(tr):   GNU geliþtirme araçlarý
 Summary(uk):   îÁ¦Ҡ¦ÎÓÔÒÕÍÅÎԦנGNU ÄÌÑ ÐÏÂÕÄÏ×É ×ÉËÏÎÕ×ÁÎÉÈ ÐÒÏÇÒÁÍ
 Name:          binutils
-Version:       2.14.90.0.7
+Version:       2.17.50.0.8
 Release:       3
-Epoch:         2
+Epoch:         3
 License:       GPL
 Group:         Development/Tools
 Source0:       ftp://ftp.kernel.org/pub/linux/devel/binutils/%{name}-%{version}.tar.bz2
-# Source0-md5: b5b1608f7308c487c0f3af8e4592a71a
+# 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}-eh-frame-ro.patch
-Patch4:                %{name}-ia64-bootstrap.patch
-Patch5:                %{name}-libtool-relink.patch
-Patch6:                %{name}-gas-alpha-segv.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: automake
+BuildRequires: autoconf >= 2.59
+BuildRequires: automake >= 1:1.8.2
 BuildRequires: bison
 BuildRequires: flex
 BuildRequires: gettext-devel
@@ -39,14 +45,11 @@ BuildRequires:      sparc32
 %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,
@@ -61,7 +64,7 @@ Binutils is a collection of binary utilities, including:
 - nlmconv - convert object code into an NLM.
 
 %description -l es
-binutils es una colectánea de utilitarios necesarios para compilar
+Binutils es una colección de utilitarios necesarios para compilar
 programas. Incluye assembler y linker, así como varios otros programas
 para trabajar con formatos que se puedan ejecutar.
 
@@ -86,23 +89,49 @@ binutils - 
 í¦ÓÔÉÔØ ÁÓÅÍÂÌÅÒ, ËÏÍÐÏÎÏ×ÝÉË ÔÁ ¦ÎÛ¦ ÐÒÏÇÒÁÍÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÒÏÂÏÔÉ Ú
 ×ÉËÏÎÕ×ÁÎÉÍÉ ÆÁÊÌÁÍÉ Ò¦ÚÎÉÈ ÆÏÒÍÁÔ¦×.
 
+%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}
+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
 Summary(pl):   GASP - stary preprocesor dla programów w asemblerze
 Group:         Development/Tools
-Requires:      %{name} = %{epoch}:%{version}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 
 %description gasp
 GASP - old preprocessor for assembly programs. It's officially
@@ -114,61 +143,74 @@ uznany za przestarza
 niektórych pakietów.
 
 %prep
-%setup  -q
+%setup -q
 %patch0 -p1
 %patch1 -p1
-%ifarch %{ix86}
 %patch2 -p1
-%endif
+%patch3 -p1
+%patch4 -p0
 %patch5 -p1
 %patch6 -p1
-# need update:
-#%patch3 -p1
-#%patch4 -p1
+%patch7 -p1
+%patch8 -p0
+%patch9 -p1
+%patch10 -p1
 
 %build
+# non-standard regeneration (needed because of gasp patch)
+cd gas
+aclocal
+automake --cygnus Makefile
+automake --cygnus doc/Makefile
+autoconf
+cd ..
+
 # More targets
 TARGETS=
 %ifarch ia64
 TARGETS=i686-linux
 %endif
+# uhm?
 %ifarch %{ix86}
 TARGETS=x86_64-linux
 %endif
 %ifarch sparc
 TARGETS=sparc64-linux
 %endif
+%{?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} \
        --mandir=%{_mandir} \
-       `[ -n "${TARGETS}" ] && echo "--enable-targets=${TARGETS}"` \
+       %{!?with_allarchs:`[ -n "${TARGETS}" ] && echo "--enable-targets=${TARGETS}"`} \
 %ifarch sparc
        --enable-64-bit-bfd \
+%else
+       %{?with_allarchs:--enable-64-bit-bfd} \
 %endif
-%ifnarch sparc
-       %{?_with_allarchs:--enable-64-bit-bfd} \
-%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}
+       %{?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} \
-        tooldir=%{_prefix} \
-        all info
+%{__make} configure-bfd
+%{__make} headers -C bfd
+%{__make} all info \
+       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} \
@@ -190,17 +232,31 @@ install libiberty/pic/libiberty.a $RPM_BUILD_ROOT%{_libdir}
 # 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
@@ -208,15 +264,12 @@ rm -rf $RPM_BUILD_ROOT
 %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/*
@@ -227,9 +280,25 @@ rm -rf $RPM_BUILD_ROOT
 %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)
This page took 0.101611 seconds and 4 git commands to generate.