patch 13990,14189 from bintuils svn which fix the arm-elf32 related link error with...
authorBogon Kim <bogon82.kim@samsung.com>
Sat, 30 Mar 2013 06:40:53 +0000 (15:40 +0900)
committerBogon Kim <bogon82.kim@samsung.com>
Sat, 30 Mar 2013 06:40:53 +0000 (15:40 +0900)
Change-Id: I0f88d5003fc9f3e6fa0b877d9113bfcea724c294

14 files changed:
packaging/binutils.spec
packaging/cross-armv5tel-binutils-accel.spec
packaging/cross-armv5tel-binutils.spec
packaging/cross-armv6l-binutils-accel.spec
packaging/cross-armv6l-binutils.spec
packaging/cross-armv7hl-binutils-accel.spec
packaging/cross-armv7hl-binutils.spec
packaging/cross-armv7l-binutils-accel.spec
packaging/cross-armv7l-binutils.spec
packaging/cross-armv7nhl-binutils-accel.spec
packaging/cross-armv7nhl-binutils.spec
packaging/cross-mipsel-binutils-accel.spec
packaging/cross-mipsel-binutils.spec
packaging/pr_13990_14189.patch [new file with mode: 0755]

index bc14b70..505e019 100755 (executable)
@@ -29,6 +29,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +115,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
index 396d1b7..aca4ef5 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv5tel-binutils-accel
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index 54726af..de9d34e 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv5tel-binutils
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index c4c2a47..c9befd4 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv6l-binutils-accel
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index f6e4899..50f83ce 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv6l-binutils
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index 86fce57..734fe4f 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv7hl-binutils-accel
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index 4ec6e0c..68dcee5 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv7hl-binutils
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index 88cf953..f76a02e 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv7l-binutils-accel
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index ce10dbe..9fe8901 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv7l-binutils
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index 756cac0..073bf01 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv7nhl-binutils-accel
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index bbdf356..e64d92c 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-armv7nhl-binutils
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index 4b74b7e..dc05447 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-mipsel-binutils-accel
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
index cc2e4c3..437c370 100755 (executable)
@@ -3,6 +3,7 @@
 %define enable_shared 1
 %define run_testsuite 0
 %define accelerator_crossbuild 0
+%define disable_nls 1
 
 Summary: A GNU collection of binary utilities
 Name: cross-mipsel-binutils
@@ -29,6 +30,7 @@ Patch12: fixbug13534_2.patch
 Patch13: fixbug13534_3.patch
 Patch14: fixbug13534_4.patch
 Patch15: fixbug13534_5.patch
+Patch16: pr_13990_14189.patch
 
 %if "%{name}" != "binutils"
 %if "%{name}" != "cross-mipsel-binutils"
@@ -114,6 +116,7 @@ to consider using libelf instead of BFD.
 %patch13 -p1 -b .fixbug13534_3
 %patch14 -p1 -b .fixbug13534_4
 %patch15 -p1 -b .fixbug13534_5
+%patch16 -p1
 
 # We cannot run autotools as there is an exact requirement of autoconf-2.59.
 
@@ -179,6 +182,9 @@ export CFLAGS="$CFLAGS -Wl,-rpath,/emul/ia32-linux/usr/lib:/emul/ia32-linux/lib:
   $CARGS \
   --disable-werror \
   --enable-lto \
+%if %{disable_nls}
+  -- disable-nls \
+%endif
   --with-bugurl=http://bugzilla.tizen.com
 make %{_smp_mflags} tooldir=%{_prefix} all
 make %{_smp_mflags} tooldir=%{_prefix} info
@@ -293,6 +299,7 @@ rm -rf %{buildroot}%{_prefix}/%{_lib}/libiberty.a
 rm -f %{buildroot}%{_infodir}/dir
 rm -rf %{buildroot}%{_prefix}/%{binutils_target}
 
+%if !%{disable_nls}
 %find_lang %{?cross}binutils
 %find_lang %{?cross}opcodes
 %find_lang %{?cross}bfd
@@ -304,6 +311,7 @@ cat %{?cross}bfd.lang >> %{?cross}binutils.lang
 cat %{?cross}gas.lang >> %{?cross}binutils.lang
 cat %{?cross}ld.lang >> %{?cross}binutils.lang
 cat %{?cross}gprof.lang >> %{?cross}binutils.lang
+%endif
 
 %clean
 rm -rf %{buildroot}
@@ -341,7 +349,11 @@ if [ $1 = 0 ] ;then
 fi
 %endif # %{isnative}
 
+%if %{disable_nls}
+%files
+%else
 %files -f %{?cross}binutils.lang
+%endif
 %defattr(-,root,root,-)
 %doc README
 %{_prefix}/bin/*
diff --git a/packaging/pr_13990_14189.patch b/packaging/pr_13990_14189.patch
new file mode 100755 (executable)
index 0000000..907312b
--- /dev/null
@@ -0,0 +1,118 @@
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+@@ -1,3 +1,9 @@
++2012-04-24  Hans-Peter Nilsson  <hp@axis.com>
++
++      PR ld/13990
++      * elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local
++      symbol, where PLT refcount is set to -1.
++
+diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
+index 1f6c1a0..c343a6a 100644
+--- a/bfd/elf32-arm.c
++++ b/bfd/elf32-arm.c
+@@ -12046,8 +12046,19 @@ elf32_arm_gc_sweep_hook (bfd *                     abfd,
+       if (may_need_local_target_p
+         && elf32_arm_get_plt_info (abfd, eh, r_symndx, &root_plt, &arm_plt))
+       {
+-        BFD_ASSERT (root_plt->refcount > 0);
+-        root_plt->refcount -= 1;
++        /* If PLT refcount book-keeping is wrong and too low, we'll
++           see a zero value (going to -1) for the root PLT reference
++           count.  */
++        if (root_plt->refcount >= 0)
++          {
++            BFD_ASSERT (root_plt->refcount != 0);
++            root_plt->refcount -= 1;
++          }
++        else
++          /* A value of -1 means the symbol has become local, forced
++             or seeing a hidden definition.  Any other negative value
++             is an error.  */
++          BFD_ASSERT (root_plt->refcount == -1);
+         if (!call_reloc_p)
+           arm_plt->noncall_refcount--;
+@@ -12408,7 +12419,8 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
+         /* If the symbol is a function that doesn't bind locally,
+            this relocation will need a PLT entry.  */
+-        root_plt->refcount += 1;
++        if (root_plt->refcount != -1)
++          root_plt->refcount += 1;
+         if (!call_reloc_p)
+           arm_plt->noncall_refcount++;
+diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
+index c7a0b2c..8631466
+--- a/ld/testsuite/ld-arm/arm-elf.exp
++++ b/ld/testsuite/ld-arm/arm-elf.exp
+@@ -733,3 +733,4 @@ run_dump_test "attr-merge-vfp-6r"
+ run_dump_test "attr-merge-incompatible"
+ run_dump_test "unresolved-1"
+ run_dump_test "unresolved-1-dyn"
++run_dump_test "gc-hidden-1"
+--- /dev/null
++++ b/ld/testsuite/ld-arm/gc-hidden-1.d
+@@ -0,0 +1,26 @@
++#target: arm*-*-*eabi
++#source: main.s
++#source: gcdfn.s
++#source: hidfn.s
++#ld: --gc-sections --shared --version-script hideall.ld
++#objdump: -dRT
++
++# See PR ld/13990: a forced-local PLT reference to a
++# forced-local symbol is GC'ed, trigging a BFD_ASSERT.
++
++.*:     file format elf32-.*
++
++DYNAMIC SYMBOL TABLE:
++0+124 l    d  .text   0+              .text
++0+ g    DO \*ABS\*    0+  NS          NS
++
++Disassembly of section .text:
++
++0+124 <_start>:
++ 124: e52de004        push    {lr}            ; \(str lr, \[sp, #-4\]!\)
++ 128: eb000000        bl      130 <hidfn>
++ 12c: e8bd8000        pop     {pc}
++
++0+130 <hidfn>:
++ 130: e8bd8000        pop     {pc}
++
+--- /dev/null
++++ binutils/ld/testsuite/ld-arm/gcdfn.s
+@@ -0,0 +1,8 @@
++      .text
++      .globl gcdfn
++      .type gcdfn, %function
++gcdfn:
++      str     lr, [sp, #-4]!
++      bl      hidfn(PLT)
++      ldmfd   sp!, {pc}
++      .size gcdfn, . - gcdfn
+--- /dev/null
++++ b/ld/testsuite/ld-arm/hideall.ld
+@@ -0,0 +1 @@
++NS { local: *; };
+--- /dev/null
++++ binutils/ld/testsuite/ld-arm/hidfn.s
+@@ -0,0 +1,7 @@
++      .text
++      .globl hidfn
++      .hidden hidfn
++      .type hidfn, %function
++hidfn:
++      ldmfd   sp!, {pc}
++      .size hidfn, . - hidfn
+--- /dev/null
++++ b/ld/testsuite/ld-arm/main.s
+@@ -0,0 +1,8 @@
++      .text
++      .globl _start
++      .type _start, %function
++_start:
++      str     lr, [sp, #-4]!
++      bl      hidfn(PLT)
++      ldmfd   sp!, {pc}
++      .size _start, . - _start