summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhang Le <r0bertz@gentoo.org>2008-11-14 10:37:23 +0800
committerZhang Le <r0bertz@gentoo.org>2008-11-14 13:18:45 +0800
commit24130fb534a4aed68f2bd93dd3b347ed343d2437 (patch)
treecf918e15cb356e10e86a34e2800845862eb128ed /dev-libs
parentadded libgcrypt from tree (diff)
downloadloongson-24130fb534a4aed68f2bd93dd3b347ed343d2437.tar.gz
loongson-24130fb534a4aed68f2bd93dd3b347ed343d2437.tar.bz2
loongson-24130fb534a4aed68f2bd93dd3b347ed343d2437.zip
added gcc 4.4 patch for libgcrypt
Signed-off-by: Zhang Le <r0bertz@gentoo.org>
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/libgcrypt/Manifest19
-rw-r--r--dev-libs/libgcrypt/files/libgcrypt-gcc4.4-mips.patch76
-rw-r--r--dev-libs/libgcrypt/libgcrypt-1.4.1.ebuild1
3 files changed, 79 insertions, 17 deletions
diff --git a/dev-libs/libgcrypt/Manifest b/dev-libs/libgcrypt/Manifest
index cec87b0..107223b 100644
--- a/dev-libs/libgcrypt/Manifest
+++ b/dev-libs/libgcrypt/Manifest
@@ -1,22 +1,7 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX libgcrypt-1.2.3-strict-aliasing.patch 756 RMD160 82fb7d364389a6f559036a4b1d963ff2f2e379a3 SHA1 b785b375c7d3fc38d46012f76f5af02a1bd4bd43 SHA256 caed94b7cebebc288c64a3484f1c3213b38c71699f9f06149ab5c8672db1c9b4
-DIST libgcrypt-1.2.1-patches.tar.gz 2631 RMD160 314b601285d48bd57b89dca1e20779256c7ed3e4 SHA1 ff62eb54490e41d40d3d4683359954ce1cb8b5d6 SHA256 f1900ed55883dc8619fd4e5eabe16cb463873884683bbeb9c9a6d9dc53a18ed6
-DIST libgcrypt-1.2.4-idea.diff.bz2 2924 RMD160 199cfb4224b6cebc940f4cfb876deb700e9dc044 SHA1 092458ed8ed3e5fd2230c25b384f05ba99db6d1e SHA256 a3d5db94f50492c27de5b4ce64ae7974c5293012dea730bfb46df948954a6aa9
-DIST libgcrypt-1.2.4.tar.gz 1013625 RMD160 6a5ba284efe48c6963e21d8558a69096aea03d84 SHA1 d279e7a4464cccf0cc4e29c374a1e8325fc65b9a SHA256 cf3c3f313ebeb9165d80439beaeb7f621b73856a2159e4b84c70f32b455fd9ec
+AUX libgcrypt-gcc4.4-mips.patch 3143 RMD160 ed1b7119a99549362498c495864ffebaae36cf28 SHA1 b95ff89b3fec321b631988777e6669a614abdbff SHA256 1cac9cb50bb4c5372f586f923e747faf4fac831ffd25482cbe064818d8eeb5b1
DIST libgcrypt-1.4.0-idea.diff.bz2 2944 RMD160 4044cc244ca375a832674561cf030840c239ee86 SHA1 2e96628a66918d868aca1aaebc8bdb58d59be9ba SHA256 56bc3da6e8477f2cc3ce3186c175442124d4c5f5c7078704765b33cc944340d3
-DIST libgcrypt-1.4.0.tar.bz2 964779 RMD160 bccec927cdf0437778d8aa1071b27a871ed5c72d SHA1 cd1b52e8ecfa361737c6f130ed2f1d850e312c16 SHA256 d7f855f766944a5b6e7ffee2d6ffdf828ab709acd4453b0e64aea808ce2760ec
DIST libgcrypt-1.4.1.tar.bz2 969240 RMD160 77439204d3a9310175f55f78daeb86f843ab9eb4 SHA1 367fe7fecd2ed4ab743849279dbc2f7e148f9956 SHA256 fe3b32bdf0c92d6b3bb7b3e4b3c19a6a899a9deb65f1b36f0a5882d308c91fa3
-EBUILD libgcrypt-1.2.4.ebuild 2544 RMD160 35a48352312af0c9478da8aade60d9e7ec9f9e63 SHA1 f0d37e91d20cf95425ea906e8c2cd63c6eb1b0e7 SHA256 050717664812977f96d81fceb8294875b915103d04db2fe55bdf93c200004a31
-EBUILD libgcrypt-1.4.0-r1.ebuild 2312 RMD160 e8584f3d55deea9fad8e75683b5d17393fd1d053 SHA1 bf39fd37b8e8013259e9b77e21119d8a314564f9 SHA256 04de1814ed9a60c04121d96d4472022a64045b4ba4d70f11b1225a15055aa6c8
-EBUILD libgcrypt-1.4.1.ebuild 2330 RMD160 43e652787b3068567289449853f8b570e149f433 SHA1 54632f47b5852fa8c0602e10441f8d6f5f446548 SHA256 e92ee7a14f5a5cc66431c43cd70740782193dee420532b559c9ef96fb65d8b94
+EBUILD libgcrypt-1.4.1.ebuild 2376 RMD160 4392e9ff783dd90d4e16658f5f58b470c22bbb6d SHA1 85a718aff74c4fc45d7ba107de215056ea01bdce SHA256 5ed58d52b8f1601700f37e654917d76505a36caa4069b4c29eee7edb19335d7c
MISC ChangeLog 16203 RMD160 c23a0d99975aeb8309299bbd7297b69c90cf7c7d SHA1 22738a48a49fe046db316c4409734fc8ea889f16 SHA256 dc09949679efee4ea7a1903181f9a2ee3fa5b0081eeb594f9ec1a8ebe13c74dd
MISC metadata.xml 231 RMD160 f55939ecfa9103e22ed6f3b0ace3f26fa8050417 SHA1 bb40ba62bd4eb3785818e820af5678eac394511b SHA256 3742bb789b2248572a4afcc61839d8d4e833d5c0a38d26c8eadb764dd18acfaf
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.9 (GNU/Linux)
-
-iEYEARECAAYFAkiZc/8ACgkQOeoy/oIi7uzmzgCgyK3OZSb95QiaY0n6M8K/uy2/
-1YsAoLTcF/6U3T7ScmqXPMf4PsEyDTJy
-=28vi
------END PGP SIGNATURE-----
diff --git a/dev-libs/libgcrypt/files/libgcrypt-gcc4.4-mips.patch b/dev-libs/libgcrypt/files/libgcrypt-gcc4.4-mips.patch
new file mode 100644
index 0000000..156d2ee
--- /dev/null
+++ b/dev-libs/libgcrypt/files/libgcrypt-gcc4.4-mips.patch
@@ -0,0 +1,76 @@
+diff --git a/mpi/longlong.h b/mpi/longlong.h
+index 34bd50c..af97203 100644
+--- a/mpi/longlong.h
++++ b/mpi/longlong.h
+@@ -714,23 +714,12 @@ extern USItype __udiv_qrnnd ();
+ ************** MIPS *****************
+ ***************************************/
+ #if defined (__mips__) && W_TYPE_SIZE == 32
+-#if __GNUC__ > 2 || __GNUC_MINOR__ >= 7
+ #define umul_ppmm(w1, w0, u, v) \
+- __asm__ ("multu %2,%3" \
+- : "=l" ((USItype)(w0)), \
+- "=h" ((USItype)(w1)) \
+- : "d" ((USItype)(u)), \
+- "d" ((USItype)(v)))
+-#else
+-#define umul_ppmm(w1, w0, u, v) \
+- __asm__ ("multu %2,%3 \n" \
+- "mflo %0 \n" \
+- "mfhi %1" \
+- : "=d" ((USItype)(w0)), \
+- "=d" ((USItype)(w1)) \
+- : "d" ((USItype)(u)), \
+- "d" ((USItype)(v)))
+-#endif
++ do { \
++ UDItype __x = (UDItype) (USItype) (u) * (USItype) (v); \
++ (w1) = (USItype) (__x >> 32); \
++ (w0) = (USItype) (__x); \
++ } while (0)
+ #define UMUL_TIME 10
+ #define UDIV_TIME 100
+ #endif /* __mips__ */
+@@ -739,23 +728,12 @@ extern USItype __udiv_qrnnd ();
+ ************** MIPS/64 **************
+ ***************************************/
+ #if (defined (__mips) && __mips >= 3) && W_TYPE_SIZE == 64
+-#if __GNUC__ > 2 || __GNUC_MINOR__ >= 7
+-#define umul_ppmm(w1, w0, u, v) \
+- __asm__ ("dmultu %2,%3" \
+- : "=l" ((UDItype)(w0)), \
+- "=h" ((UDItype)(w1)) \
+- : "d" ((UDItype)(u)), \
+- "d" ((UDItype)(v)))
+-#else
+ #define umul_ppmm(w1, w0, u, v) \
+- __asm__ ("dmultu %2,%3 \n" \
+- "mflo %0 \n" \
+- "mfhi %1" \
+- : "=d" ((UDItype)(w0)), \
+- "=d" ((UDItype)(w1)) \
+- : "d" ((UDItype)(u)), \
+- "d" ((UDItype)(v)))
+-#endif
++ do { \
++ UTItype __x = (UTItype) (UDItype) (u) * (UDItype) (v); \
++ (w1) = (UDItype) (__x >> 64); \
++ (w0) = (UDItype) (__x); \
++ } while (0)
+ #define UMUL_TIME 20
+ #define UDIV_TIME 140
+ #endif /* __mips__ */
+diff --git a/mpi/mpi-internal.h b/mpi/mpi-internal.h
+index f9c1f9d..fb0575a 100644
+--- a/mpi/mpi-internal.h
++++ b/mpi/mpi-internal.h
+@@ -264,6 +264,9 @@ mpi_limb_t _gcry_mpih_rshift( mpi_ptr_t wp, mpi_ptr_t up, mpi_size_t usize,
+ typedef unsigned int USItype __attribute__ ((mode (SI)));
+ typedef int DItype __attribute__ ((mode (DI)));
+ typedef unsigned int UDItype __attribute__ ((mode (DI)));
++#if W_TYPE_SIZE == 64
++ typedef unsigned int UTItype __attribute__ ((mode (TI)));
++#endif
+ #else
+ typedef unsigned char UQItype;
+ typedef long SItype;
diff --git a/dev-libs/libgcrypt/libgcrypt-1.4.1.ebuild b/dev-libs/libgcrypt/libgcrypt-1.4.1.ebuild
index 5d8c7c9..d7feb06 100644
--- a/dev-libs/libgcrypt/libgcrypt-1.4.1.ebuild
+++ b/dev-libs/libgcrypt/libgcrypt-1.4.1.ebuild
@@ -22,6 +22,7 @@ DEPEND="${RDEPEND}
src_unpack() {
unpack ${A}
cd "${S}"
+ epatch "${FILESDIR}/${PN}-gcc4.4-mips.patch"
if use idea; then
if use bindist; then