[Pkg-libatomic-ops-commits] r10 - tarballs trunk/debian trunk/debian/patches
ianw at alioth.debian.org
ianw at alioth.debian.org
Sat Aug 16 04:51:59 UTC 2008
Author: ianw
Date: 2008-08-16 04:51:58 +0000 (Sat, 16 Aug 2008)
New Revision: 10
Added:
tarballs/libatomic-ops_1.2+cvs20080815.orig.tar.gz
Removed:
trunk/debian/patches/01_s390_include.patch
trunk/debian/patches/02_mips.patch
trunk/debian/patches/04_m68k.patch
trunk/debian/patches/05_powerpc_asm.patch
trunk/debian/patches/06_double.patch
trunk/debian/patches/07_pic_cmpxchng.patch
Modified:
tarballs/Makefile
trunk/debian/changelog
Log:
update to new upstream from CVS
Modified: tarballs/Makefile
===================================================================
--- tarballs/Makefile 2008-02-01 08:36:41 UTC (rev 9)
+++ tarballs/Makefile 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,16 +1,26 @@
#simple makefile to make uploading debian package eaiser.
-VERSION = 1.2
-BASEPKG = libatomic_ops
-PACKAGE = $(BASEPKG)-$(VERSION)
-ORIGPACKAGE :=`echo $(BASEPKG) | tr '_' '-'`_$(VERSION).orig.tar.gz
-DEBPACKAGE :=`echo $(BASEPKG) | tr '_' '-'`-$(VERSION)
+# going to look for
+# libatomic-ops-$(BASEVERSION)+cvs$(CVSDATE).orig.tar.gz
+# which we create by grabbing from CVS
+# This extracts to
+# libatomic_ops-$(BASEVERSION) -- note _ used by upstream
+# which we move to
+# libatomic-ops-$(BASEVERSION)+cvs$(CVSDATE) -- note -
+# for Debian build purposes
+BASEVERSION = 1.2
+CVSDATE = 20080815
+
+TARGZ :=libatomic-ops_$(BASEVERSION)+cvs$(CVSDATE).orig.tar.gz
+ORIGSRC :=libatomic_ops-$(BASEVERSION)
+DEBPACKAGE :=libatomic-ops-$(BASEVERSION)+cvs$(CVSDATE)
+
all: deb
deb:
- tar xfz $(ORIGPACKAGE)
- mv $(PACKAGE) $(DEBPACKAGE)
+ tar xfz $(TARGZ)
+ mv $(ORIGSRC) $(DEBPACKAGE)
svn export ../trunk/debian $(DEBPACKAGE)/debian
(cd $(DEBPACKAGE); \
DEB_AUTO_UPDATE_DEBIAN_CONTROL=yes ./debian/rules clean; \
Added: tarballs/libatomic-ops_1.2+cvs20080815.orig.tar.gz
===================================================================
(Binary files differ)
Property changes on: tarballs/libatomic-ops_1.2+cvs20080815.orig.tar.gz
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog 2008-02-01 08:36:41 UTC (rev 9)
+++ trunk/debian/changelog 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,3 +1,13 @@
+libatomic-ops (1.2+cvs20080815-1) unstable; urgency=low
+
+ * New upstream, taken from CVS repository at
+ bdwgc.cvs.sourceforge.net:/cvsroot/bdwgc
+ which upstream has told me is official home of the package.
+ * Patches now included upstream: 01_s390_include.patch, 02_mips.patch,
+ 04_m68k.patch, 05_powerpc_asm.patch, 07_pic_cmpxchng.patch,
+
+ -- Ian Wienand <ianw at debian.org> Fri, 15 Aug 2008 21:26:06 -0700
+
libatomic-ops (1.2-4) unstable; urgency=low
* Closes: #463390 -- Add 06_double.patch to fix some issues with double
Deleted: trunk/debian/patches/01_s390_include.patch
===================================================================
--- trunk/debian/patches/01_s390_include.patch 2008-02-01 08:36:41 UTC (rev 9)
+++ trunk/debian/patches/01_s390_include.patch 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,15 +0,0 @@
-Index: src/atomic_ops/sysdeps/gcc/s390.h
-===================================================================
---- src/atomic_ops/sysdeps/gcc/s390.h (revision 90)
-+++ src/atomic_ops/sysdeps/gcc/s390.h (working copy)
-@@ -30,8 +30,8 @@
- /* may be delayed. Otherwise everything is ordered. */
- /* - There is a hardware compare-and-swap (CS) instruction. */
-
--#include "ordered_except_wr.h"
--#include "all_aligned_atomic_load_store.h"
-+#include "../ordered_except_wr.h"
-+#include "../all_aligned_atomic_load_store.h"
-
- #include "../test_and_set_t_is_ao_t.h"
- /* FIXME: Is there a way to do byte-sized test-and-set? */
Deleted: trunk/debian/patches/02_mips.patch
===================================================================
--- trunk/debian/patches/02_mips.patch 2008-02-01 08:36:41 UTC (rev 9)
+++ trunk/debian/patches/02_mips.patch 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,211 +0,0 @@
-Return-path: <debbugs at bugs.debian.org>
-Envelope-to: ianw at localhost
-Delivery-date: Sun, 04 Nov 2007 02:10:06 +1100
-Received: from localhost
- ([127.0.0.1] helo=morrison.wienand.home ident=ianw)
- by morrison.wienand.home with esmtp (Exim 4.67)
- (envelope-from <debbugs at bugs.debian.org>)
- id 1IoKdS-0006ic-N9
- for ianw at localhost; Sun, 04 Nov 2007 02:10:06 +1100
-Delivered-To: ian.wienand at gmail.com
-Received: from gmail-pop.l.google.com [72.14.253.109]
- by morrison.wienand.home with POP3 (fetchmail-6.3.8)
- for <ianw at localhost> (single-drop); Sun, 04 Nov 2007 02:10:06 +1100 (EST)
-Received: by 10.65.220.15 with SMTP id x15cs362676qbq;
- Sat, 3 Nov 2007 08:12:48 -0700 (PDT)
-Received: by 10.115.90.1 with SMTP id s1mr3112345wal.1194102767770;
- Sat, 03 Nov 2007 08:12:47 -0700 (PDT)
-Received: from rietz.debian.org (rietz.debian.org [140.211.166.43])
- by mx.google.com with ESMTP id n32si9086019wag.2007.11.03.08.12.44;
- Sat, 03 Nov 2007 08:12:47 -0700 (PDT)
-Received-SPF: pass (google.com: domain of debbugs at bugs.debian.org designates 140.211.166.43 as permitted sender) client-ip=140.211.166.43;
-Authentication-Results: mx.google.com; spf=pass (google.com: domain of debbugs at bugs.debian.org designates 140.211.166.43 as permitted sender) smtp.mail=debbugs at bugs.debian.org
-Received: from debbugs by rietz.debian.org with local (Exim 4.50)
- id 1IoKcR-0004US-DF; Sat, 03 Nov 2007 15:09:03 +0000
-X-Loop: owner at bugs.debian.org
-Subject: Bug#449152: Improved support for mips/mipsel
-Reply-To: Thiemo Seufer <ths at networkno.de>, 449152 at bugs.debian.org
-Resent-From: Thiemo Seufer <ths at networkno.de>
-Resent-To: debian-bugs-dist at lists.debian.org
-Resent-CC: Ian Wienand <ianw at debian.org>
-Resent-Date: Sat, 03 Nov 2007 15:09:01 +0000
-Resent-Message-ID: <handler.449152.B.119410238116035 at bugs.debian.org>
-X-Debian-PR-Message: report 449152
-X-Debian-PR-Package: libatomic-ops
-X-Debian-PR-Keywords: patch
-Received: via spool by submit at bugs.debian.org id=B.119410238116035
- (code B ref -1); Sat, 03 Nov 2007 15:09:01 +0000
-Received: (at submit) by bugs.debian.org; 3 Nov 2007 15:06:21 +0000
-X-Spam-Checker-Version: SpamAssassin 3.1.4-bugs.debian.org_2005_01_02
- (2006-07-26) on rietz.debian.org
-X-Spam-Level:
-X-Spam-Status: No, score=-8.9 required=4.0 tests=BAYES_00,FOURLA,HAS_PACKAGE,
- MURPHY_DRUGS_REL8 autolearn=no
- version=3.1.4-bugs.debian.org_2005_01_02
-Received: from relay01.mx.bawue.net ([193.7.176.67])
- by rietz.debian.org with esmtp (Exim 4.50)
- id 1IoKZp-0004AP-3y
- for submit at bugs.debian.org; Sat, 03 Nov 2007 15:06:21 +0000
-Received: from lagash (88-106-176-50.dynamic.dsl.as9105.com [88.106.176.50])
- (using TLSv1 with cipher AES256-SHA (256/256 bits))
- (No client certificate requested)
- by relay01.mx.bawue.net (Postfix) with ESMTP id 8A01248FB3
- for <submit at bugs.debian.org>; Sat, 3 Nov 2007 15:23:50 +0100 (CET)
-Received: from ths by lagash with local (Exim 4.68)
- (envelope-from <ths at networkno.de>)
- id 1IoKZl-0007Mc-SB
- for submit at bugs.debian.org; Sat, 03 Nov 2007 15:06:17 +0000
-Date: Sat, 3 Nov 2007 15:06:17 +0000
-From: Thiemo Seufer <ths at networkno.de>
-To: submit at bugs.debian.org
-Message-ID: <20071103150617.GB14756 at networkno.de>
-MIME-Version: 1.0
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-User-Agent: Mutt/1.5.16 (2007-06-11)
-Delivered-To: submit at bugs.debian.org
-Resent-Sender: Debian BTS <debbugs at bugs.debian.org>
-Resent-Date: Sat, 03 Nov 2007 15:09:03 +0000
-
-Package: libatomic-ops
-Version: 1.2-2
-Tags: patch
-
-This is an update of the mips patch. It now covers weakly ordered
-systems as allowed by the architecture definition, and also fixes
-some minor omissions.
-
-This update fixes the FTBFS of pulseaudio on mips/mipsel.
-
-
-Thiemo
-
-
---- libatomic-ops-1.0.away/src/atomic_ops/sysdeps/Makefile.am 2005-08-03 02:05:18.000000000 +0200
-+++ libatomic-ops-1.0/src/atomic_ops/sysdeps/Makefile.am 2005-10-27 20:59:59.000000000 +0200
-@@ -26,7 +26,7 @@ nobase_sysdep_HEADERS= generic_pthread.h
- gcc/alpha.h gcc/arm.h gcc/x86.h \
- gcc/hppa.h gcc/ia64.h \
- gcc/powerpc.h gcc/sparc.h \
-- gcc/hppa.h gcc/m68k.h gcc/s390.h \
-+ gcc/hppa.h gcc/m68k.h gcc/mips.h gcc/s390.h \
- gcc/ia64.h gcc/x86_64.h gcc/cris.h \
- \
- icc/ia64.h \
---- libatomic-ops-1.0.away/src/atomic_ops/sysdeps/gcc/mips.h 1970-01-01 01:00:00.000000000 +0100
-+++ libatomic-ops-1.0/src/atomic_ops/sysdeps/gcc/mips.h 2007-11-02 14:06:23.000000000 +0000
-@@ -0,0 +1,97 @@
-+/*
-+ * Copyright (c) 2005,2007 Thiemo Seufer <ths at networkno.de>
-+ *
-+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
-+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
-+ *
-+ * Permission is hereby granted to use or copy this program
-+ * for any purpose, provided the above notices are retained on all copies.
-+ * Permission to modify the code and to distribute modified code is granted,
-+ * provided the above notices are retained, and a notice that the code was
-+ * modified is included with the above copyright notice.
-+ */
-+
-+#include "../all_aligned_atomic_load_store.h"
-+#include "../acquire_release_volatile.h"
-+#include "../test_and_set_t_is_ao_t.h"
-+#include "../standard_ao_double_t.h"
-+
-+/* Data dependence does not imply read ordering. */
-+#define AO_NO_DD_ORDERING
-+
-+AO_INLINE void
-+AO_nop_full()
-+{
-+ __asm__ __volatile__(
-+ " .set push \n"
-+ " .set mips2 \n"
-+ " .set noreorder \n"
-+ " .set nomacro \n"
-+ " sync \n"
-+ " .set pop "
-+ : : : "memory");
-+}
-+
-+#define AO_HAVE_nop_full
-+
-+AO_INLINE int
-+AO_compare_and_swap(volatile AO_t *addr, AO_t old, AO_t new_val)
-+{
-+ register int was_equal = 0;
-+ register int temp;
-+
-+ __asm__ __volatile__(
-+ " .set push \n"
-+ " .set mips2 \n"
-+ " .set noreorder \n"
-+ " .set nomacro \n"
-+ "1: ll %0, %1 \n"
-+ " bne %0, %4, 2f \n"
-+ " move %0, %3 \n"
-+ " sc %0, %1 \n"
-+ " .set pop \n"
-+ " beqz %0, 1b \n"
-+ " li %2, 1 \n"
-+ "2: "
-+ : "=&r" (temp), "+R" (*addr), "+r" (was_equal)
-+ : "r" (new_val), "r" (old)
-+ : "memory");
-+ return was_equal;
-+}
-+
-+#define AO_HAVE_compare_and_swap
-+
-+AO_INLINE int
-+AO_compare_and_swap_acquire(volatile AO_t *addr, AO_t old, AO_t new_val) {
-+ int result = AO_compare_and_swap(addr, old, new_val);
-+ AO_nop_full();
-+ return result;
-+}
-+
-+#define AO_HAVE_compare_and_swap_acquire
-+
-+AO_INLINE int
-+AO_compare_and_swap_release(volatile AO_t *addr, AO_t old, AO_t new_val) {
-+ AO_nop_full();
-+ return AO_compare_and_swap(addr, old, new_val);
-+}
-+
-+#define AO_HAVE_compare_and_swap_release
-+
-+AO_INLINE int
-+AO_compare_and_swap_full(volatile AO_t *addr, AO_t old, AO_t new_val) {
-+ AO_t result;
-+ AO_nop_full();
-+ result = AO_compare_and_swap(addr, old, new_val);
-+ AO_nop_full();
-+ return result;
-+}
-+
-+#define AO_HAVE_compare_and_swap_full
-+
-+/*
-+ * FIXME: We should also implement fetch_and_add and or primitives
-+ * directly.
-+ */
-+
-+#include "../ao_t_is_int.h"
---- libatomic-ops-1.0.away/src/atomic_ops.h 2005-08-03 02:05:18.000000000 +0200
-+++ libatomic-ops-1.0/src/atomic_ops.h 2005-10-27 21:01:29.000000000 +0200
-@@ -219,6 +219,9 @@
- # if defined(__cris__) || defined(CRIS)
- # include "atomic_ops/sysdeps/gcc/cris.h"
- # endif
-+# if defined(__mips__)
-+# include "atomic_ops/sysdeps/gcc/mips.h"
-+# endif /* __mips__ */
- #endif /* __GNUC__ && !AO_USE_PTHREAD_DEFS */
-
- #if defined(__INTEL_COMPILER) && !defined(AO_USE_PTHREAD_DEFS)
-
-
-
-
-
Deleted: trunk/debian/patches/04_m68k.patch
===================================================================
--- trunk/debian/patches/04_m68k.patch 2008-02-01 08:36:41 UTC (rev 9)
+++ trunk/debian/patches/04_m68k.patch 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,84 +0,0 @@
-- align AO_t
-- fix AO_test_and_set_full: it operates on bytes, better asm constraints
-- add AO_compare_and_swap_full and AO_or_full
-
-Index: libatomic-ops-1.1/src/atomic_ops/sysdeps/gcc/m68k.h
-===================================================================
---- libatomic-ops-1.1.orig/src/atomic_ops/sysdeps/gcc/m68k.h 2006-08-04 13:31:31.000000000 +0200
-+++ libatomic-ops-1.1/src/atomic_ops/sysdeps/gcc/m68k.h 2006-08-04 16:51:36.000000000 +0200
-@@ -15,6 +15,11 @@
- *
- */
-
-+/* The cas instruction causes an emulation trap for the */
-+/* 060 with a misaligned pointer, so let's avoid this. */
-+#undef AO_t
-+typedef unsigned long AO_t __attribute__ ((aligned (4)));
-+
- /* FIXME. Very incomplete. */
- #include "../all_aligned_atomic_load_store.h"
-
-@@ -22,24 +27,55 @@
- /* AFAIK, Alliants were sequentially consistent. */
- #include "../ordered.h"
-
--#include "../test_and_set_t_is_ao_t.h"
-+#include "../test_and_set_t_is_char.h"
-
- /* Contributed by Tony Mantler or new. Should be changed to MIT license? */
- AO_INLINE AO_TS_VAL_t
- AO_test_and_set_full(volatile AO_TS_t *addr) {
-- int oldval;
-+ AO_TS_t oldval;
-
-- /* The return value is semi-phony. */
-- /* 'tas' sets bit 7 while the return */
-- /* value pretends bit 0 was set */
-+ /* The value at addr is semi-phony. */
-+ /* 'tas' sets bit 7 while the return */
-+ /* value pretends all bits were set, */
-+ /* which at least matches AO_TS_SET. */
- __asm__ __volatile__(
-- "tas %1@; sne %0; negb %0"
-- : "=d" (oldval)
-- : "a" (addr) : "memory");
-+ "tas %1; sne %0"
-+ : "=d" (oldval), "=m" (*addr)
-+ : "m" (*addr)
-+ : "memory");
- return oldval;
- }
-
- #define AO_HAVE_test_and_set_full
-
-+/* Returns nonzero if the comparison succeeded. */
-+AO_INLINE int
-+AO_compare_and_swap_full(volatile AO_t *addr,
-+ AO_t old, AO_t new_val)
-+{
-+ char result;
-+
-+ __asm__ __volatile__(
-+ "cas.l %3,%4,%1; seq %0"
-+ : "=d" (result), "=m" (*addr)
-+ : "m" (*addr), "d" (old), "d" (new_val)
-+ : "memory");
-+ return -result;
-+}
-+
-+#define AO_HAVE_compare_and_swap_full
-+
-+/* This is not really SMP safe... */
-+AO_INLINE void
-+AO_or_full (volatile AO_t *p, AO_t incr)
-+{
-+ __asm__ __volatile__ (
-+ "or.l %1,%0"
-+ : "=m" (*p)
-+ : "d" (incr), "m" (*p)
-+ : "memory");
-+}
-
-+#define AO_HAVE_or_full
-
-+#include "../ao_t_is_int.h"
Deleted: trunk/debian/patches/05_powerpc_asm.patch
===================================================================
--- trunk/debian/patches/05_powerpc_asm.patch 2008-02-01 08:36:41 UTC (rev 9)
+++ trunk/debian/patches/05_powerpc_asm.patch 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,11 +0,0 @@
---- ../libatomic-ops-1.2/src/atomic_ops/sysdeps/gcc/powerpc.h 2006-03-29 09:49:14.000000000 +1100
-+++ src/atomic_ops/sysdeps/gcc/powerpc.h 2007-08-27 10:51:00.000000000 +1000
-@@ -72,7 +72,7 @@
- /* registers. I always got "impossible constraint" when I */
- /* tried the "y" constraint. */
- __asm__ __volatile__ (
-- "lwz %0,%1\n"
-+ "lwz%X1 %0,%1\n"
- "cmpw cr7,%0,%0\n"
- "bne- cr7,1f\n"
- "1: isync\n"
Deleted: trunk/debian/patches/06_double.patch
===================================================================
--- trunk/debian/patches/06_double.patch 2008-02-01 08:36:41 UTC (rev 9)
+++ trunk/debian/patches/06_double.patch 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,40 +0,0 @@
-I noticed what looked like two bugs related to compare-and-swap on
-AO_double_t. First, gcc/x86.h declares
- AO_compare_double_and_swap_double_full
-but sets
- AO_HAVE_double_compare_and_swap_full
-As I understand it, those should match.
-
-Second, the prototype for AO_compare_and_swap_double_acquire in
-generalize.h doesn't match the call it makes to
-AO_compare_and_swap_double, which seems like probably a bug.
-
-Patch attached for both issues.
-
-Jamey Sharp <sharpone at debian.org>
-
-diff --git a/src/atomic_ops/generalize.h b/src/atomic_ops/generalize.h
-index 0f42b32..35d1b42 100644
---- a/src/atomic_ops/generalize.h
-+++ b/src/atomic_ops/generalize.h
-@@ -1180,7 +1180,7 @@
- && !defined(AO_HAVE_compare_and_swap_double_acquire)
- AO_INLINE int
- AO_compare_and_swap_double_acquire(volatile AO_double_t *addr,
-- AO_t o1, AO_t o2,
-+ AO_t o1,
- AO_t n1, AO_t n2)
- {
- int result = AO_compare_and_swap_double(addr, o1, n1, n2);
-diff --git a/src/atomic_ops/sysdeps/gcc/x86.h b/src/atomic_ops/sysdeps/gcc/x86.h
-index 27e047e..5c1805d 100644
---- a/src/atomic_ops/sysdeps/gcc/x86.h
-+++ b/src/atomic_ops/sysdeps/gcc/x86.h
-@@ -148,6 +148,6 @@ AO_compare_double_and_swap_double_full(volatile AO_double_t *addr,
- return (int) result;
- }
-
--#define AO_HAVE_double_compare_and_swap_full
-+#define AO_HAVE_compare_double_and_swap_double_full
-
- #include "../ao_t_is_int.h"
Deleted: trunk/debian/patches/07_pic_cmpxchng.patch
===================================================================
--- trunk/debian/patches/07_pic_cmpxchng.patch 2008-02-01 08:36:41 UTC (rev 9)
+++ trunk/debian/patches/07_pic_cmpxchng.patch 2008-08-16 04:51:58 UTC (rev 10)
@@ -1,40 +0,0 @@
-cmpxchng8b use ebx which we can't touch in PIC mode. Also, the arguments
-to cmpxchg8b are a bit funny and were around the wrong way
-
-Write a version that saves and restores and fix up the arguments
-
-Ian Wienand <ianw at ieee.org>
-
---- libatomic-ops-1.2/src/atomic_ops/sysdeps/gcc/x86.h 2008-02-01 19:29:35.000000000 +1100
-+++ libatomic-ops-1.2-new-2/src/atomic_ops/sysdeps/gcc/x86.h 2008-02-01 19:27:41.000000000 +1100
-@@ -141,10 +141,27 @@
- AO_t new_val1, AO_t new_val2)
- {
- char result;
-- __asm__ __volatile__("lock; cmpxchg8b %0; setz %1"
-+ #if __PIC__
-+ /* If PIC is turned on, we can't use %ebx as it is reserved for the
-+ GOT poiner. We can save and restore %ebx because GCC won't be
-+ using it for anything else (such as any of the m operands) */
-+ __asm__ __volatile__("pushl %%ebx;" /* save ebx used for PIC GOT ptr */
-+ "movl %6,%%ebx;" /* move new_val2 to %ebx */
-+ "lock; cmpxchg8b %0; setz %1;"
-+ "pop %%ebx;" /* restore %ebx */
- : "=m"(*addr), "=q"(result)
-- : "m"(*addr), "d" (old_val1), "a" (old_val2),
-- "c" (new_val1), "b" (new_val2) : "memory");
-+ : "m"(*addr), "d" (old_val2), "a" (old_val1),
-+ "c" (new_val2), "m" (new_val1) : "memory");
-+ #else
-+ /* We can't just do the same thing in non-PIC mode, because GCC
-+ * might be using %ebx as the memory operand. We could have ifdef'd
-+ * in a clobber, but there's no point doing the push/pop if we don't
-+ * have to. */
-+ __asm__ __volatile__("lock; cmpxchg8b %0; setz %1;"
-+ : "=m"(*addr), "=q"(result)
-+ : "m"(*addr), "d" (old_val2), "a" (old_val1),
-+ "c" (new_val2), "b" (new_val1) : "memory");
-+ #endif
- return (int) result;
- }
-
More information about the Pkg-libatomic-ops-commits
mailing list