summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Barbato <lu_zero@gentoo.org>2007-06-08 23:15:28 +0000
committerLuca Barbato <lu_zero@gentoo.org>2007-06-08 23:15:28 +0000
commit9bf7558ea1fc74c9ca67a2da6258625c1cdb912e (patch)
tree4ba6c6c5cda5e614a2ea783ba7d3d5f2a9164e93 /dev-libs/libatomic_ops
parentCleanup. (diff)
downloadhistorical-9bf7558ea1fc74c9ca67a2da6258625c1cdb912e.tar.gz
historical-9bf7558ea1fc74c9ca67a2da6258625c1cdb912e.tar.bz2
historical-9bf7558ea1fc74c9ca67a2da6258625c1cdb912e.zip
Marked ~ppc ~ppc64
Package-Manager: portage-2.1.2.9
Diffstat (limited to 'dev-libs/libatomic_ops')
-rw-r--r--dev-libs/libatomic_ops/ChangeLog7
-rw-r--r--dev-libs/libatomic_ops/Manifest20
-rw-r--r--dev-libs/libatomic_ops/files/libatomic_ops-1.2-ppc64-load_acquire.patch46
-rw-r--r--dev-libs/libatomic_ops/libatomic_ops-1.2.ebuild12
4 files changed, 73 insertions, 12 deletions
diff --git a/dev-libs/libatomic_ops/ChangeLog b/dev-libs/libatomic_ops/ChangeLog
index 80b57652b06d..53f9fad6b502 100644
--- a/dev-libs/libatomic_ops/ChangeLog
+++ b/dev-libs/libatomic_ops/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for dev-libs/libatomic_ops
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libatomic_ops/ChangeLog,v 1.6 2007/06/02 20:08:08 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libatomic_ops/ChangeLog,v 1.7 2007/06/08 23:15:28 lu_zero Exp $
+
+ 08 Jun 2007; Luca Barbato <lu_zero@gentoo.org>
+ +files/libatomic_ops-1.2-ppc64-load_acquire.patch,
+ libatomic_ops-1.2.ebuild:
+ Marked ~ppc ~ppc64
02 Jun 2007; Raúl Porcel <armin76@gentoo.org> libatomic_ops-1.2.ebuild:
Add ~alpha/~ia64 wrt #180117
diff --git a/dev-libs/libatomic_ops/Manifest b/dev-libs/libatomic_ops/Manifest
index 27974716e1ff..443ca6a92734 100644
--- a/dev-libs/libatomic_ops/Manifest
+++ b/dev-libs/libatomic_ops/Manifest
@@ -1,17 +1,21 @@
+AUX libatomic_ops-1.2-ppc64-load_acquire.patch 1370 RMD160 593d1362200a372097fb5e62a0a54224e2bba91e SHA1 1845fdc4eb7a191f6a96f55f4cb6390548e4a850 SHA256 fd7cfa0aed56c749c688cb97089d4806e5d6c0df9ce7431bd46ec85b9f1d4e8f
+MD5 3563e43f79ee7f0b73114341562ddc63 files/libatomic_ops-1.2-ppc64-load_acquire.patch 1370
+RMD160 593d1362200a372097fb5e62a0a54224e2bba91e files/libatomic_ops-1.2-ppc64-load_acquire.patch 1370
+SHA256 fd7cfa0aed56c749c688cb97089d4806e5d6c0df9ce7431bd46ec85b9f1d4e8f files/libatomic_ops-1.2-ppc64-load_acquire.patch 1370
DIST libatomic_ops-1.1.tar.gz 178581 RMD160 ccfa008ece3365390a05badcfd9580ffa96d0302 SHA1 4412ad70afbd5dd954378b94aa3e7e02ba89ecc3 SHA256 f5fb0d89b5b26a7f0bb00c92463aeb62a425c491391bc7e36660a1ac0b5a1f13
DIST libatomic_ops-1.2.tar.gz 183780 RMD160 8c548b32033c954a61e740f9a0e76ca8f005c4f6 SHA1 8bf4134d614acb1a6234b3102e67a847ae9369b0 SHA256 a3d8768aa8fd2f6ae79be2d756b3a6b48816b3889ae906be3d5ffb2de5a5c781
EBUILD libatomic_ops-1.1.ebuild 619 RMD160 504726b1cbd8050d8e5291aa75adaf7dcc57ab93 SHA1 aeed1ccd99a56308de8729e553633d88bd89c5b6 SHA256 822e4bf132b233c6f9be11b6411e31972a25aaec9540f15f4a71ee290e4d022d
MD5 2746bafc148d159b0b3cc1ab8acbc42b libatomic_ops-1.1.ebuild 619
RMD160 504726b1cbd8050d8e5291aa75adaf7dcc57ab93 libatomic_ops-1.1.ebuild 619
SHA256 822e4bf132b233c6f9be11b6411e31972a25aaec9540f15f4a71ee290e4d022d libatomic_ops-1.1.ebuild 619
-EBUILD libatomic_ops-1.2.ebuild 643 RMD160 f535f29d06952cc9b23f268044998ae4b889986c SHA1 a4c9532bbd9e69b2b553bd448b431e4db4bcc063 SHA256 5d2f232363841370c30adeb1111fab498d38c0167c18329837ed7d7350504c78
-MD5 a9a26f35f4a7153ea0d924c22f383782 libatomic_ops-1.2.ebuild 643
-RMD160 f535f29d06952cc9b23f268044998ae4b889986c libatomic_ops-1.2.ebuild 643
-SHA256 5d2f232363841370c30adeb1111fab498d38c0167c18329837ed7d7350504c78 libatomic_ops-1.2.ebuild 643
-MISC ChangeLog 1104 RMD160 22f896b7476f415713fb5bc93f61dde943d0abfb SHA1 7fb093d46510b4c62fec18a34b2de3984c31c859 SHA256 e13656e948bd316970e98828748f413d4741af312325a038db7eeaab2dec4312
-MD5 004c0223ea5e8eac6b33dd7fcbce24da ChangeLog 1104
-RMD160 22f896b7476f415713fb5bc93f61dde943d0abfb ChangeLog 1104
-SHA256 e13656e948bd316970e98828748f413d4741af312325a038db7eeaab2dec4312 ChangeLog 1104
+EBUILD libatomic_ops-1.2.ebuild 760 RMD160 59c9ded51487540d83f41bbf8c196f07f33ac8c9 SHA1 3de7d70d887348ca8482f441c14c0cd68456cb82 SHA256 c81fe5b14dfdbfa458dcf21689070d3af76b220c8039b1b78ba403d9945adc40
+MD5 60789977c0dbf9f9c4f0f76d94546468 libatomic_ops-1.2.ebuild 760
+RMD160 59c9ded51487540d83f41bbf8c196f07f33ac8c9 libatomic_ops-1.2.ebuild 760
+SHA256 c81fe5b14dfdbfa458dcf21689070d3af76b220c8039b1b78ba403d9945adc40 libatomic_ops-1.2.ebuild 760
+MISC ChangeLog 1256 RMD160 06eb00367f8bb48253c384b957e4218ea2e2f0e9 SHA1 d9a9d46299fa8cbb0ea8e297e21a0867dd3c1d78 SHA256 ca478c107702cf52590ef35c444ea7482c2bb98d387e55ca5990c7142d24f324
+MD5 7be5fe2f54f7b7f2594e70a29da989f0 ChangeLog 1256
+RMD160 06eb00367f8bb48253c384b957e4218ea2e2f0e9 ChangeLog 1256
+SHA256 ca478c107702cf52590ef35c444ea7482c2bb98d387e55ca5990c7142d24f324 ChangeLog 1256
MISC metadata.xml 158 RMD160 6842e2189a50bd8a98e84802c38180ac1421c00e SHA1 703cea5a2109d41f7c87993c1f01d418a4c85174 SHA256 dfb5b47e6836db39fb187301dfcff1c2605e91d13d21db160806a563d8c75f9b
MD5 a1eaeb2ae801daeb712c90c060e922dc metadata.xml 158
RMD160 6842e2189a50bd8a98e84802c38180ac1421c00e metadata.xml 158
diff --git a/dev-libs/libatomic_ops/files/libatomic_ops-1.2-ppc64-load_acquire.patch b/dev-libs/libatomic_ops/files/libatomic_ops-1.2-ppc64-load_acquire.patch
new file mode 100644
index 000000000000..3d09b3e9ae87
--- /dev/null
+++ b/dev-libs/libatomic_ops/files/libatomic_ops-1.2-ppc64-load_acquire.patch
@@ -0,0 +1,46 @@
+--- src/atomic_ops/sysdeps/gcc/powerpc.h 2006-03-28 22:49:14.000000000 +0000
++++ /tmp/powerpc.h 2007-06-08 23:10:07.000000000 +0000
+@@ -63,6 +63,8 @@
+ /* seems to be that a data dependent branch followed by an isync is */
+ /* cheaper. And the documentation is fairly explicit that this also */
+ /* has acquire semantics. */
++/* ppc64 can live with the load+lwsync */
++#if defined(__powerpc64__) || defined(__ppc64__) || defined(__64BIT__)
+ AO_INLINE AO_t
+ AO_load_acquire(volatile AO_t *addr)
+ {
+@@ -72,7 +74,7 @@
+ /* registers. I always got "impossible constraint" when I */
+ /* tried the "y" constraint. */
+ __asm__ __volatile__ (
+- "lwz %0,%1\n"
++ "ld %0,%1\n"
+ "cmpw cr7,%0,%0\n"
+ "bne- cr7,1f\n"
+ "1: isync\n"
+@@ -80,7 +82,25 @@
+ : "m"(*addr) : "memory", "cc");
+ return result;
+ }
++#else
++AO_INLINE AO_t
++AO_load_acquire(volatile AO_t *addr)
++{
++ AO_t result;
+
++ /* FIXME: We should get gcc to allocate one of the condition */
++ /* registers. I always got "impossible constraint" when I */
++ /* tried the "y" constraint. */
++ __asm__ __volatile__ (
++ "lwz %0,%1\n"
++ "cmpw cr7,%0,%0\n"
++ "bne- cr7,1f\n"
++ "1: isync\n"
++ : "=r" (result)
++ : "m"(*addr) : "memory", "cc");
++ return result;
++}
++#endif
+ #define AO_HAVE_load_acquire
+
+ /* We explicitly specify store_release, since it relies */
diff --git a/dev-libs/libatomic_ops/libatomic_ops-1.2.ebuild b/dev-libs/libatomic_ops/libatomic_ops-1.2.ebuild
index 2067eaa38f56..c8e1c15f7a68 100644
--- a/dev-libs/libatomic_ops/libatomic_ops-1.2.ebuild
+++ b/dev-libs/libatomic_ops/libatomic_ops-1.2.ebuild
@@ -1,6 +1,8 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libatomic_ops/libatomic_ops-1.2.ebuild,v 1.5 2007/06/02 20:08:08 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libatomic_ops/libatomic_ops-1.2.ebuild,v 1.6 2007/06/08 23:15:28 lu_zero Exp $
+
+inherit eutils
DESCRIPTION="Implementation for atomic memory update operations"
HOMEPAGE="http://www.hpl.hp.com/research/linux/atomic_ops/"
@@ -8,12 +10,16 @@ SRC_URI="http://www.hpl.hp.com/research/linux/atomic_ops/download/${P}.tar.gz"
LICENSE="GPL-2 MIT as-is"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~sparc ~x86 ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
IUSE=""
DEPEND=""
RDEPEND=""
-
+src_unpack(){
+ unpack ${A}
+ cd ${S}
+ epatch "${FILESDIR}/${P}-ppc64-load_acquire.patch"
+}
src_install() {
emake pkgdatadir="/usr/share/doc/${PF}" DESTDIR="${D}" install
}