[arch-commits] Commit in arm-none-eabi-binutils/repos (6 files)

Anatol Pomozov anatolik at archlinux.org
Thu Feb 12 19:16:41 UTC 2015


    Date: Thursday, February 12, 2015 @ 20:16:41
  Author: anatolik
Revision: 127626

archrelease: copy trunk to community-testing-i686, community-testing-x86_64

Added:
  arm-none-eabi-binutils/repos/community-testing-i686/
  arm-none-eabi-binutils/repos/community-testing-i686/PKGBUILD
    (from rev 127625, arm-none-eabi-binutils/trunk/PKGBUILD)
  arm-none-eabi-binutils/repos/community-testing-i686/enable_link_arm_no_attributes.patch
    (from rev 127625, arm-none-eabi-binutils/trunk/enable_link_arm_no_attributes.patch)
  arm-none-eabi-binutils/repos/community-testing-x86_64/
  arm-none-eabi-binutils/repos/community-testing-x86_64/PKGBUILD
    (from rev 127625, arm-none-eabi-binutils/trunk/PKGBUILD)
  arm-none-eabi-binutils/repos/community-testing-x86_64/enable_link_arm_no_attributes.patch
    (from rev 127625, arm-none-eabi-binutils/trunk/enable_link_arm_no_attributes.patch)

--------------------------------------------------------------+
 community-testing-i686/PKGBUILD                              |   61 +++++
 community-testing-i686/enable_link_arm_no_attributes.patch   |  115 ++++++++++
 community-testing-x86_64/PKGBUILD                            |   61 +++++
 community-testing-x86_64/enable_link_arm_no_attributes.patch |  115 ++++++++++
 4 files changed, 352 insertions(+)

Copied: arm-none-eabi-binutils/repos/community-testing-i686/PKGBUILD (from rev 127625, arm-none-eabi-binutils/trunk/PKGBUILD)
===================================================================
--- community-testing-i686/PKGBUILD	                        (rev 0)
+++ community-testing-i686/PKGBUILD	2015-02-12 19:16:41 UTC (rev 127626)
@@ -0,0 +1,61 @@
+# $Id$
+# Maintainer: Anatol Pomozov <anatol.pomozov at gmail.com>
+# Contributor: Martin Schmölzer <mschmoelzer at gmail.com>
+
+_target=arm-none-eabi
+pkgname=$_target-binutils
+pkgver=2.25
+pkgrel=2
+pkgdesc='A set of programs to assemble and manipulate binary and object files for the ARM EABI (bare-metal) target'
+arch=(i686 x86_64)
+url='http://www.gnu.org/software/binutils/'
+license=(GPL)
+depends=(zlib)
+source=(ftp://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.bz2{,.sig}
+        enable_link_arm_no_attributes.patch)
+sha1sums=('b46cc90ebaba7ffcf6c6d996d60738881b14e50d'
+          'SKIP'
+          'c88cc0ed5f884332fa76b733fb47a26f307bde0f')
+validpgpkeys=('EAF1C276A747E9ED86210CBAC3126D3B4AE55E93')  # Tristan Gingold <gingold at adacore.com>
+
+prepare() {
+  cd binutils-$pkgver
+  sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
+  patch -p1 < ../enable_link_arm_no_attributes.patch # FS#43794
+}
+
+build() {
+  cd binutils-$pkgver
+
+  ./configure --target=$_target \
+              --with-sysroot=/usr/$_target \
+              --prefix=/usr \
+              --enable-multilib \
+              --enable-interwork \
+              --with-gnu-as \
+              --with-gnu-ld \
+              --disable-nls \
+              --enable-plugins
+
+  make
+}
+
+check() {
+  cd binutils-$pkgver
+  
+  # unset LDFLAGS as testsuite makes assumptions about which ones are active
+  # do not abort on errors - manually check log files
+  make LDFLAGS="" -k check
+}
+
+package() {
+  cd binutils-$pkgver
+
+  make DESTDIR="$pkgdir" install
+
+  # Remove file conflicting with host binutils and manpages for MS Windows tools
+  rm "$pkgdir"/usr/share/man/man1/arm-none-eabi-{dlltool,nlmconv,windres,windmc}*
+
+  # Remove info documents that conflict with host version
+  rm -rf "$pkgdir"/usr/share/info
+}

Copied: arm-none-eabi-binutils/repos/community-testing-i686/enable_link_arm_no_attributes.patch (from rev 127625, arm-none-eabi-binutils/trunk/enable_link_arm_no_attributes.patch)
===================================================================
--- community-testing-i686/enable_link_arm_no_attributes.patch	                        (rev 0)
+++ community-testing-i686/enable_link_arm_no_attributes.patch	2015-02-12 19:16:41 UTC (rev 127626)
@@ -0,0 +1,115 @@
+commit 9274e9de160a98d737bb2bd068c22d37ec66d98d
+Author: Terry Guo <terry.guo at arm.com>
+Date:   Thu Nov 20 13:54:27 2014 +0800
+
+    Enable to link ARM object file that hasn't attribute section.
+    
+    bfd/ChangeLog
+    
+    2014-11-20  Terry Guo  <terry.guo at arm.com>
+    
+    	* elf32-arm.c (elf32_arm_merge_eabi_attributes): Skip if input bfd
+    	hasn't attribute section.
+    
+    ld/testsuite/ChangeLog:
+    
+    2014-11-20  Terry Guo  <terry.guo at arm.com>
+    
+    	* ld-arm/attr-merge-nosection-1.d: New file.
+    	* ld-arm/attr-merge-nosection-1a.s: Likewise.
+    	* ld-arm/attr-merge-nosection-1b.s: Likewise.
+    	* ld-arm/arm-elf.exp: Include the new test.
+
+diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
+index 49d0f65..95f59d5 100644
+--- a/bfd/elf32-arm.c
++++ b/bfd/elf32-arm.c
+@@ -11700,6 +11700,7 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd)
+   static const int order_021[3] = {0, 2, 1};
+   int i;
+   bfd_boolean result = TRUE;
++  const char *sec_name = get_elf_backend_data (ibfd)->obj_attrs_section;
+ 
+   /* Skip the linker stubs file.  This preserves previous behavior
+      of accepting unknown attributes in the first input file - but
+@@ -11707,6 +11708,12 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd)
+   if (ibfd->flags & BFD_LINKER_CREATED)
+     return TRUE;
+ 
++  /* Skip any input that hasn't attribute section.
++     This enables to link object files without attribute section with
++     any others.  */
++  if (bfd_get_section_by_name (ibfd, sec_name) == NULL)
++    return TRUE;
++
+   if (!elf_known_obj_attributes_proc (obfd)[0].i)
+     {
+       /* This is the first object.  Copy the attributes.  */
+diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
+index 3c8cc68..d00b74d 100644
+--- a/ld/testsuite/ld-arm/arm-elf.exp
++++ b/ld/testsuite/ld-arm/arm-elf.exp
+@@ -879,6 +879,7 @@ run_dump_test "attr-merge-vfp-7"
+ run_dump_test "attr-merge-vfp-7r"
+ run_dump_test "attr-merge-incompatible"
+ run_dump_test "attr-merge-arch-2"
++run_dump_test "attr-merge-nosection-1"
+ run_dump_test "unresolved-1"
+ if { ![istarget "arm*-*-nacl*"] } {
+     run_dump_test "unresolved-1-dyn"
+diff --git a/ld/testsuite/ld-arm/attr-merge-nosection-1.d b/ld/testsuite/ld-arm/attr-merge-nosection-1.d
+new file mode 100644
+index 0000000..a2b8d73
+--- /dev/null
++++ b/ld/testsuite/ld-arm/attr-merge-nosection-1.d
+@@ -0,0 +1,18 @@
++#source: attr-merge-nosection-1a.s RUN_OBJCOPY
++#source: attr-merge-nosection-1b.s
++#as:
++#objcopy_objects: -R '.ARM.attributes'
++#ld:
++#readelf: -A
++# This test is only valid on ELF based ports.
++# not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
++
++Attribute Section: aeabi
++File Attributes
++  Tag_CPU_name: "Cortex-M4"
++  Tag_CPU_arch: v7E-M
++  Tag_CPU_arch_profile: Microcontroller
++  Tag_THUMB_ISA_use: Thumb-2
++  Tag_FP_arch: VFPv4-D16
++  Tag_ABI_HardFP_use: SP only
++
+diff --git a/ld/testsuite/ld-arm/attr-merge-nosection-1a.s b/ld/testsuite/ld-arm/attr-merge-nosection-1a.s
+new file mode 100644
+index 0000000..ab358e3
+--- /dev/null
++++ b/ld/testsuite/ld-arm/attr-merge-nosection-1a.s
+@@ -0,0 +1,10 @@
++	.cpu cortex-m0
++	.fpu softvfp
++	.syntax unified
++	.thumb
++	.text
++	.global foo
++	.thumb_func
++	.type foo, %function
++foo:
++	bx lr
+diff --git a/ld/testsuite/ld-arm/attr-merge-nosection-1b.s b/ld/testsuite/ld-arm/attr-merge-nosection-1b.s
+new file mode 100644
+index 0000000..cd656bd
+--- /dev/null
++++ b/ld/testsuite/ld-arm/attr-merge-nosection-1b.s
+@@ -0,0 +1,10 @@
++        .syntax unified
++        .cpu cortex-m4
++        .fpu fpv4-sp-d16
++        .thumb
++        .text
++        .global _start
++        .thumb_func
++        .type   _start, %function
++_start:
++	bl foo

Copied: arm-none-eabi-binutils/repos/community-testing-x86_64/PKGBUILD (from rev 127625, arm-none-eabi-binutils/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD	                        (rev 0)
+++ community-testing-x86_64/PKGBUILD	2015-02-12 19:16:41 UTC (rev 127626)
@@ -0,0 +1,61 @@
+# $Id$
+# Maintainer: Anatol Pomozov <anatol.pomozov at gmail.com>
+# Contributor: Martin Schmölzer <mschmoelzer at gmail.com>
+
+_target=arm-none-eabi
+pkgname=$_target-binutils
+pkgver=2.25
+pkgrel=2
+pkgdesc='A set of programs to assemble and manipulate binary and object files for the ARM EABI (bare-metal) target'
+arch=(i686 x86_64)
+url='http://www.gnu.org/software/binutils/'
+license=(GPL)
+depends=(zlib)
+source=(ftp://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.bz2{,.sig}
+        enable_link_arm_no_attributes.patch)
+sha1sums=('b46cc90ebaba7ffcf6c6d996d60738881b14e50d'
+          'SKIP'
+          'c88cc0ed5f884332fa76b733fb47a26f307bde0f')
+validpgpkeys=('EAF1C276A747E9ED86210CBAC3126D3B4AE55E93')  # Tristan Gingold <gingold at adacore.com>
+
+prepare() {
+  cd binutils-$pkgver
+  sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
+  patch -p1 < ../enable_link_arm_no_attributes.patch # FS#43794
+}
+
+build() {
+  cd binutils-$pkgver
+
+  ./configure --target=$_target \
+              --with-sysroot=/usr/$_target \
+              --prefix=/usr \
+              --enable-multilib \
+              --enable-interwork \
+              --with-gnu-as \
+              --with-gnu-ld \
+              --disable-nls \
+              --enable-plugins
+
+  make
+}
+
+check() {
+  cd binutils-$pkgver
+  
+  # unset LDFLAGS as testsuite makes assumptions about which ones are active
+  # do not abort on errors - manually check log files
+  make LDFLAGS="" -k check
+}
+
+package() {
+  cd binutils-$pkgver
+
+  make DESTDIR="$pkgdir" install
+
+  # Remove file conflicting with host binutils and manpages for MS Windows tools
+  rm "$pkgdir"/usr/share/man/man1/arm-none-eabi-{dlltool,nlmconv,windres,windmc}*
+
+  # Remove info documents that conflict with host version
+  rm -rf "$pkgdir"/usr/share/info
+}

Copied: arm-none-eabi-binutils/repos/community-testing-x86_64/enable_link_arm_no_attributes.patch (from rev 127625, arm-none-eabi-binutils/trunk/enable_link_arm_no_attributes.patch)
===================================================================
--- community-testing-x86_64/enable_link_arm_no_attributes.patch	                        (rev 0)
+++ community-testing-x86_64/enable_link_arm_no_attributes.patch	2015-02-12 19:16:41 UTC (rev 127626)
@@ -0,0 +1,115 @@
+commit 9274e9de160a98d737bb2bd068c22d37ec66d98d
+Author: Terry Guo <terry.guo at arm.com>
+Date:   Thu Nov 20 13:54:27 2014 +0800
+
+    Enable to link ARM object file that hasn't attribute section.
+    
+    bfd/ChangeLog
+    
+    2014-11-20  Terry Guo  <terry.guo at arm.com>
+    
+    	* elf32-arm.c (elf32_arm_merge_eabi_attributes): Skip if input bfd
+    	hasn't attribute section.
+    
+    ld/testsuite/ChangeLog:
+    
+    2014-11-20  Terry Guo  <terry.guo at arm.com>
+    
+    	* ld-arm/attr-merge-nosection-1.d: New file.
+    	* ld-arm/attr-merge-nosection-1a.s: Likewise.
+    	* ld-arm/attr-merge-nosection-1b.s: Likewise.
+    	* ld-arm/arm-elf.exp: Include the new test.
+
+diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
+index 49d0f65..95f59d5 100644
+--- a/bfd/elf32-arm.c
++++ b/bfd/elf32-arm.c
+@@ -11700,6 +11700,7 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd)
+   static const int order_021[3] = {0, 2, 1};
+   int i;
+   bfd_boolean result = TRUE;
++  const char *sec_name = get_elf_backend_data (ibfd)->obj_attrs_section;
+ 
+   /* Skip the linker stubs file.  This preserves previous behavior
+      of accepting unknown attributes in the first input file - but
+@@ -11707,6 +11708,12 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd)
+   if (ibfd->flags & BFD_LINKER_CREATED)
+     return TRUE;
+ 
++  /* Skip any input that hasn't attribute section.
++     This enables to link object files without attribute section with
++     any others.  */
++  if (bfd_get_section_by_name (ibfd, sec_name) == NULL)
++    return TRUE;
++
+   if (!elf_known_obj_attributes_proc (obfd)[0].i)
+     {
+       /* This is the first object.  Copy the attributes.  */
+diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
+index 3c8cc68..d00b74d 100644
+--- a/ld/testsuite/ld-arm/arm-elf.exp
++++ b/ld/testsuite/ld-arm/arm-elf.exp
+@@ -879,6 +879,7 @@ run_dump_test "attr-merge-vfp-7"
+ run_dump_test "attr-merge-vfp-7r"
+ run_dump_test "attr-merge-incompatible"
+ run_dump_test "attr-merge-arch-2"
++run_dump_test "attr-merge-nosection-1"
+ run_dump_test "unresolved-1"
+ if { ![istarget "arm*-*-nacl*"] } {
+     run_dump_test "unresolved-1-dyn"
+diff --git a/ld/testsuite/ld-arm/attr-merge-nosection-1.d b/ld/testsuite/ld-arm/attr-merge-nosection-1.d
+new file mode 100644
+index 0000000..a2b8d73
+--- /dev/null
++++ b/ld/testsuite/ld-arm/attr-merge-nosection-1.d
+@@ -0,0 +1,18 @@
++#source: attr-merge-nosection-1a.s RUN_OBJCOPY
++#source: attr-merge-nosection-1b.s
++#as:
++#objcopy_objects: -R '.ARM.attributes'
++#ld:
++#readelf: -A
++# This test is only valid on ELF based ports.
++# not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
++
++Attribute Section: aeabi
++File Attributes
++  Tag_CPU_name: "Cortex-M4"
++  Tag_CPU_arch: v7E-M
++  Tag_CPU_arch_profile: Microcontroller
++  Tag_THUMB_ISA_use: Thumb-2
++  Tag_FP_arch: VFPv4-D16
++  Tag_ABI_HardFP_use: SP only
++
+diff --git a/ld/testsuite/ld-arm/attr-merge-nosection-1a.s b/ld/testsuite/ld-arm/attr-merge-nosection-1a.s
+new file mode 100644
+index 0000000..ab358e3
+--- /dev/null
++++ b/ld/testsuite/ld-arm/attr-merge-nosection-1a.s
+@@ -0,0 +1,10 @@
++	.cpu cortex-m0
++	.fpu softvfp
++	.syntax unified
++	.thumb
++	.text
++	.global foo
++	.thumb_func
++	.type foo, %function
++foo:
++	bx lr
+diff --git a/ld/testsuite/ld-arm/attr-merge-nosection-1b.s b/ld/testsuite/ld-arm/attr-merge-nosection-1b.s
+new file mode 100644
+index 0000000..cd656bd
+--- /dev/null
++++ b/ld/testsuite/ld-arm/attr-merge-nosection-1b.s
+@@ -0,0 +1,10 @@
++        .syntax unified
++        .cpu cortex-m4
++        .fpu fpv4-sp-d16
++        .thumb
++        .text
++        .global _start
++        .thumb_func
++        .type   _start, %function
++_start:
++	bl foo



More information about the arch-commits mailing list