Changeset 9803


Ignore:
Timestamp:
2007-12-19T09:36:59+01:00 (9 years ago)
Author:
florian
Message:

Update libatomic patch and makefile

Location:
packages/libs/libatomicops
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • packages/libs/libatomicops/Makefile

    r9542 r9803  
    5050 
    5151define Build/InstallDev 
    52         mkdir -p $(1)/usr/include/atomicops/ 
    53         $(CP) $(PKG_INSTALL_DIR)/usr/include/atomic_ops{,_malloc,_stack}.h $(1)/usr/include/atomicops/ 
     52        mkdir -p $(1)/usr/include/ 
     53        $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ 
    5454        mkdir -p $(1)/usr/lib 
    5555        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libatomic_ops*.a $(1)/usr/lib/ 
     
    5858define Build/UninstallDev 
    5959        rm -rf \ 
    60                 $(STAGING_DIR)/usr/include/libatomicops \ 
    61                 $(STAGING_DIR)/usr/lib/libatomic_ops*.a 
     60                $(STAGING_DIR)/usr/include/atomic_ops{,_malloc,_stack}.h \ 
     61                $(STAGING_DIR)/usr/include/atomic_ops \ 
     62                $(STAGING_DIR)/usr/lib/libatomic_ops{,_gpl}.a 
    6263endef 
    6364 
  • packages/libs/libatomicops/patches/001-mips.patch

    r9542 r9803  
    1 From ths@networkno.de Thu Oct 27 15:44:14 2005 
    2 Received: (at submit) by bugs.debian.org; 27 Oct 2005 22:44:14 +0000 
    3 Return-path: <ths@networkno.de> 
    4 Received: from mx02.qsc.de [213.148.130.14]  
    5         by spohr.debian.org with esmtp (Exim 3.36 1 (Debian)) 
    6         id 1EVGTm-0002nQ-00; Thu, 27 Oct 2005 15:44:14 -0700 
    7 Received: from port-195-158-169-21.dynamic.qsc.de ([195.158.169.21] helo=hattusa.textio) 
    8         by mx02.qsc.de with esmtp (Exim 3.35 #1) 
    9         id 1EVGTH-00020N-00 
    10         for submit@bugs.debian.org; Fri, 28 Oct 2005 00:43:43 +0200 
    11 Received: from ths by hattusa.textio with local (Exim 4.54) 
    12         id 1EVGTG-000263-9P 
    13         for submit@bugs.debian.org; Fri, 28 Oct 2005 00:43:42 +0200 
    14 Date: Fri, 28 Oct 2005 00:43:42 +0200 
    15 To: submit@bugs.debian.org 
    16 Subject: [mips/mipsel] FTBFS due to missing arch-specific implementation 
    17 Message-ID: <20051027224341.GX5721@hattusa.textio> 
    18 MIME-Version: 1.0 
    19 Content-Type: text/plain; charset=us-ascii 
    20 Content-Disposition: inline 
    21 User-Agent: Mutt/1.5.11 
    22 From: Thiemo Seufer <ths@networkno.de> 
    23 Delivered-To: submit@bugs.debian.org 
    24 X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02  
    25         (1.212-2003-09-23-exp) on spohr.debian.org 
    26 X-Spam-Level:  
    27 X-Spam-Status: No, hits=-8.0 required=4.0 tests=BAYES_00,HAS_PACKAGE  
    28         autolearn=no version=2.60-bugs.debian.org_2005_01_02 
    29  
    30 Package: libatomic-ops 
    31 Version: 1.0-3 
    32 Tags: patch 
    33  
    34 Libatomic-ops currently FTBFS on mips/mipsel because there is no 
    35 arch-specific implementation, and the generic pthread isn't configured. 
    36  
    37 The appended patch adds a basic implementation for linux. 
    38  
    39  
    40 Thiemo 
    41  
    42  
    43 --- libatomic-ops-1.0.away/src/atomic_ops/sysdeps/Makefile.am   2005-08-03 02:05:18.000000000 +0200 
    44 +++ libatomic-ops-1.0/src/atomic_ops/sysdeps/Makefile.am        2005-10-27 20:59:59.000000000 +0200 
    45 @@ -26,7 +26,7 @@ nobase_sysdep_HEADERS= generic_pthread.h 
    46           gcc/alpha.h gcc/arm.h gcc/x86.h \ 
    47           gcc/hppa.h gcc/ia64.h \ 
     1diff --git a/src/atomic_ops.h b/src/atomic_ops.h 
     2index c23f30b..791b360 100755 
     3--- a/src/atomic_ops.h 
     4+++ b/src/atomic_ops.h 
     5@@ -220,6 +220,9 @@ 
     6 # if defined(__cris__) || defined(CRIS) 
     7 #   include "atomic_ops/sysdeps/gcc/cris.h" 
     8 # endif 
     9+# if defined(__mips__)  
     10+#   include "atomic_ops/sysdeps/gcc/mips.h" 
     11+# endif 
     12 #endif /* __GNUC__ && !AO_USE_PTHREAD_DEFS */ 
     13  
     14 #if defined(__INTEL_COMPILER) && !defined(AO_USE_PTHREAD_DEFS) 
     15diff --git a/src/atomic_ops/sysdeps/Makefile.am b/src/atomic_ops/sysdeps/Makefile.am 
     16index 74122b4..d6737c0 100644 
     17--- a/src/atomic_ops/sysdeps/Makefile.am 
     18+++ b/src/atomic_ops/sysdeps/Makefile.am 
     19@@ -29,6 +29,7 @@ nobase_sysdep_HEADERS= generic_pthread.h \ 
    4820          gcc/powerpc.h gcc/sparc.h \ 
    49 -         gcc/hppa.h gcc/m68k.h gcc/s390.h \ 
    50 +         gcc/hppa.h gcc/m68k.h gcc/mips.h gcc/s390.h \ 
     21          gcc/hppa.h gcc/m68k.h gcc/s390.h \ 
    5122          gcc/ia64.h gcc/x86_64.h gcc/cris.h \ 
     23+         gcc/mips.h \ 
    5224        \ 
    5325          icc/ia64.h \ 
    54 --- libatomic-ops-1.0.away/src/atomic_ops/sysdeps/gcc/mips.h    1970-01-01 01:00:00.000000000 +0100 
    55 +++ libatomic-ops-1.0/src/atomic_ops/sysdeps/gcc/mips.h 2005-10-28 00:11:19.000000000 +0200 
    56 @@ -0,0 +1,65 @@ 
     26        \ 
     27diff --git a/src/atomic_ops/sysdeps/gcc/mips.h b/src/atomic_ops/sysdeps/gcc/mips.h 
     28new file mode 100644 
     29index 0000000..e7f3a5d 
     30--- /dev/null 
     31+++ b/src/atomic_ops/sysdeps/gcc/mips.h 
     32@@ -0,0 +1,89 @@ 
    5733+/*  
    5834+ * Copyright (c) 2005  Thiemo Seufer <ths@networkno.de> 
     35+ * Copyright (c) 2007  Zhang Le <r0bertz@gentoo.org> 
    5936+ * 
    6037+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED 
     
    7956+  __asm__ __volatile__( 
    8057+      "       .set push           \n" 
    81 +      "       .set mips2          \n" 
     58+      "       .set mips3          \n" 
    8259+      "       .set noreorder      \n" 
    8360+      "       .set nomacro        \n" 
     
    9774+  __asm__ __volatile__( 
    9875+      "       .set push           \n" 
    99 +      "       .set mips2          \n" 
     76+      "       .set mips3          \n" 
    10077+      "       .set noreorder      \n" 
    10178+      "       .set nomacro        \n" 
    10279+      "1:     ll      %0, %1      \n" 
    10380+      "       bne     %0, %4, 2f  \n" 
    104 +      "        move   %0, %3      \n" 
     81+      "       move    %0, %3      \n" 
    10582+      "       sc      %0, %1      \n" 
    10683+      "       .set pop            \n" 
    10784+      "       beqz    %0, 1b      \n" 
    108 +      "       li     %2, 1        \n" 
     85+      "       li      %2, 1       \n" 
    10986+      "2:                           " 
    11087+      : "=&r" (temp), "+R" (*addr), "+r" (was_equal) 
     
    11693+#define AO_HAVE_compare_and_swap 
    11794+ 
     95+AO_INLINE AO_t 
     96+AO_fetch_and_add_full (volatile AO_t *p, AO_t incr) 
     97+{ 
     98+  AO_t result, temp; 
     99+  __asm__ __volatile__( 
     100+      "       .set push           \n" 
     101+      "       .set mips3          \n" 
     102+      "       .set noreorder      \n" 
     103+      "       .set nomacro        \n" 
     104+      "1:     ll      %1, %2      \n" 
     105+      "       addu    %0, %1, %3  \n" 
     106+      "       sc      %0, %2      \n" 
     107+      "       beqz    %0, 1b      \n" 
     108+      "       addu    %0, %1, %3  \n" 
     109+      "       sync                \n" 
     110+      "       .set pop            \n" 
     111+      : "=&r" (result), "=&r" (temp), "=m" (*p) 
     112+      : "r" (incr), "m" (*p) 
     113+      : "memory"); 
     114+  return result; 
     115+} 
     116+ 
     117+#define AO_HAVE_fetch_and_add_full 
     118+ 
    118119+/* 
    119 + * FIXME: We should also implement fetch_and_add and or primitives 
    120 + * directly. 
     120+ * FIXME: fetch_and_add_full implemented, any others? 
    121121+ */ 
    122 --- libatomic-ops-1.0.away/src/atomic_ops.h     2005-08-03 02:05:18.000000000 +0200 
    123 +++ libatomic-ops-1.0/src/atomic_ops.h  2005-10-27 21:01:29.000000000 +0200 
    124 @@ -219,6 +219,9 @@ 
    125  # if defined(__cris__) || defined(CRIS) 
    126  #   include "atomic_ops/sysdeps/gcc/cris.h" 
    127  # endif 
    128 +# if defined(__mips__) 
    129 +#   include "atomic_ops/sysdeps/gcc/mips.h" 
    130 +# endif /* __mips__ */ 
    131  #endif /* __GNUC__ && !AO_USE_PTHREAD_DEFS */ 
    132   
    133  #if defined(__INTEL_COMPILER) && !defined(AO_USE_PTHREAD_DEFS) 
    134  
    135  
Note: See TracChangeset for help on using the changeset viewer.