OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /v/openpkg/cvs                   Email:  r...@openpkg.org
  Module: openpkg-src                      Date:   09-Apr-2009 18:51:29
  Branch: HEAD                             Handle: 2009040917512801

  Modified files:
    openpkg-src/binutils    binutils.patch binutils.spec

  Log:
    apply an upstream patch for Solaris/amd64

  Summary:
    Revision    Changes     Path
    1.25        +42 -0      openpkg-src/binutils/binutils.patch
    1.87        +1  -1      openpkg-src/binutils/binutils.spec
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/binutils/binutils.patch
  ============================================================================
  $ cvs diff -u -r1.24 -r1.25 binutils.patch
  --- openpkg-src/binutils/binutils.patch       3 Feb 2009 07:31:51 -0000       
1.24
  +++ openpkg-src/binutils/binutils.patch       9 Apr 2009 16:51:28 -0000       
1.25
  @@ -176,3 +176,45 @@
      if (sec_info)
        free (sec_info);
   
  +-----------------------------------------------------------------------------
  +
  +http://sourceware.org/bugzilla/show_bug.cgi?id=9938
  +
  +Index: bfd/elf32-i386.c
  +--- bfd/elf32-i386.c.orig    Mon Jul 28 20:07:05 2008
  ++++ bfd/elf32-i386.c Wed Apr  1 12:11:49 2009
  +@@ -1007,11 +1007,14 @@
  +     return FALSE;
  + 
  +       h = sym_hashes[r_symndx - symtab_hdr->sh_info];
  ++      /* Use strncmp to check ___tls_get_addr since ___tls_get_addr
  ++         may be versioned.  */
  +       return (h != NULL
  +           && h->root.root.string != NULL
  +           && (ELF32_R_TYPE (rel[1].r_info) == R_386_PC32
  +               || ELF32_R_TYPE (rel[1].r_info) == R_386_PLT32)
  +-          && (strcmp (h->root.root.string, "___tls_get_addr") == 0));
  ++              && (strncmp (h->root.root.string, "___tls_get_addr",
  ++                  15) == 0));
  + 
  +     case R_386_TLS_IE:
  +       /* Check transition from IE access model:
  +Index: bfd/elf64-x86-64.c
  +--- bfd/elf64-x86-64.c.orig  Mon Jul 28 20:07:05 2008
  ++++ bfd/elf64-x86-64.c       Wed Apr  1 12:12:59 2009
  +@@ -810,11 +810,14 @@
  +     return FALSE;
  + 
  +       h = sym_hashes[r_symndx - symtab_hdr->sh_info];
  ++      /* Use strncmp to check __tls_get_addr since __tls_get_addr
  ++         may be versioned.  */ 
  +       return (h != NULL
  +           && h->root.root.string != NULL
  +           && (ELF64_R_TYPE (rel[1].r_info) == R_X86_64_PC32
  +               || ELF64_R_TYPE (rel[1].r_info) == R_X86_64_PLT32)
  +-          && (strcmp (h->root.root.string, "__tls_get_addr") == 0));
  ++              && (strncmp (h->root.root.string,
  ++                  "__tls_get_addr", 14) == 0));
  + 
  +     case R_X86_64_GOTTPOFF:
  +       /* Check transition from IE access model:
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/binutils/binutils.spec
  ============================================================================
  $ cvs diff -u -r1.86 -r1.87 binutils.spec
  --- openpkg-src/binutils/binutils.spec        3 Feb 2009 07:31:51 -0000       
1.86
  +++ openpkg-src/binutils/binutils.spec        9 Apr 2009 16:51:29 -0000       
1.87
  @@ -32,7 +32,7 @@
   Group:        Compiler
   License:      GPL
   Version:      2.19.1
  -Release:      20090203
  +Release:      20090409
   
   #   list of sources
   Source0:      
ftp://sources.redhat.com/pub/binutils/releases/binutils-%{version}.tar.bz2
  @@ .
______________________________________________________________________
OpenPKG                                             http://openpkg.org
CVS Repository Commit List                     openpkg-cvs@openpkg.org

Reply via email to