summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2022-10-28 23:29:27 +0200
committerPacho Ramos <pacho@gentoo.org>2022-10-29 00:47:01 +0200
commite061c314f7d3a02714453801c581bfa8b66f6fbb (patch)
tree8c71deb0d497f242e3237654c13035b7baab9e7c /dev-libs/libmcrypt
parentapp-text/gnome-doc-utils: Bump to EAPI=8 (diff)
downloadgentoo-e061c314f7d3a02714453801c581bfa8b66f6fbb.tar.gz
gentoo-e061c314f7d3a02714453801c581bfa8b66f6fbb.tar.bz2
gentoo-e061c314f7d3a02714453801c581bfa8b66f6fbb.zip
dev-libs/libmcrypt: Fixes from Fedora and drop .la files
Closes: https://bugs.gentoo.org/840966 Signed-off-by: Pacho Ramos <pacho@gentoo.org>
Diffstat (limited to 'dev-libs/libmcrypt')
-rw-r--r--dev-libs/libmcrypt/files/libmcrypt-2.5.8-prototypes.patch35
-rw-r--r--dev-libs/libmcrypt/files/libmcrypt-2.5.8-uninitialized.patch12
-rw-r--r--dev-libs/libmcrypt/libmcrypt-2.5.8-r5.ebuild41
3 files changed, 88 insertions, 0 deletions
diff --git a/dev-libs/libmcrypt/files/libmcrypt-2.5.8-prototypes.patch b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-prototypes.patch
new file mode 100644
index 000000000000..eca6e7793161
--- /dev/null
+++ b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-prototypes.patch
@@ -0,0 +1,35 @@
+diff -up libmcrypt-2.5.8/modules/algorithms/des.c.BAD libmcrypt-2.5.8/modules/algorithms/des.c
+--- libmcrypt-2.5.8/modules/algorithms/des.c.BAD 2008-08-25 17:40:29.000000000 -0400
++++ libmcrypt-2.5.8/modules/algorithms/des.c 2008-08-25 17:40:51.000000000 -0400
+@@ -35,9 +35,12 @@
+
+ /* #define NULL 0 */
+
+-static void permute_ip(), permute_fp(), perminit_ip(), spinit(),
+-perminit_fp();
+-static word32 f();
++static void permute_ip(char *, DES_KEY *, char *);
++static void permute_fp(char *, DES_KEY *, char *);
++static void perminit_ip(DES_KEY *);
++static void spinit(DES_KEY *);
++static void perminit_fp(DES_KEY *);
++static word32 f(DES_KEY *, register word32, register char *);
+
+
+ /* Tables defined in the Data Encryption Standard documents */
+diff -up libmcrypt-2.5.8/modules/algorithms/tripledes.c.BAD libmcrypt-2.5.8/modules/algorithms/tripledes.c
+--- libmcrypt-2.5.8/modules/algorithms/tripledes.c.BAD 2008-08-25 17:40:56.000000000 -0400
++++ libmcrypt-2.5.8/modules/algorithms/tripledes.c 2008-08-25 17:41:13.000000000 -0400
+@@ -36,8 +36,10 @@
+
+ /* #define NULL 0 */
+
+-static void permute(), perminit(), spinit();
+-static word32 f();
++static void permute(char *, char[16][16][8], char *);
++static void perminit(char[16][16][8], char[64]);
++static void spinit(TRIPLEDES_KEY *, int);
++static word32 f(TRIPLEDES_KEY *, int, register word32, register char *);
+
+
+ /* Tables defined in the Data Encryption Standard documents */
diff --git a/dev-libs/libmcrypt/files/libmcrypt-2.5.8-uninitialized.patch b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-uninitialized.patch
new file mode 100644
index 000000000000..f52dc9334b40
--- /dev/null
+++ b/dev-libs/libmcrypt/files/libmcrypt-2.5.8-uninitialized.patch
@@ -0,0 +1,12 @@
+diff -up libmcrypt-2.5.8/modules/algorithms/twofish.c.BAD libmcrypt-2.5.8/modules/algorithms/twofish.c
+--- libmcrypt-2.5.8/modules/algorithms/twofish.c.BAD 2008-08-25 17:38:21.000000000 -0400
++++ libmcrypt-2.5.8/modules/algorithms/twofish.c 2008-08-25 17:38:30.000000000 -0400
+@@ -499,7 +499,7 @@ static void f_rnd(int i, word32* blk, TW
+ /* encrypt a block of text */
+ WIN32DLL_DEFINE void _mcrypt_encrypt(TWI * pkey, word32 * in_blk)
+ {
+- word32 t0, t1, blk[4];
++ word32 t0 = 0, t1 = 0, blk[4];
+ #ifdef WORDS_BIGENDIAN
+ blk[0] = byteswap32(in_blk[0]) ^ pkey->l_key[0];
+ blk[1] = byteswap32(in_blk[1]) ^ pkey->l_key[1];
diff --git a/dev-libs/libmcrypt/libmcrypt-2.5.8-r5.ebuild b/dev-libs/libmcrypt/libmcrypt-2.5.8-r5.ebuild
new file mode 100644
index 000000000000..cf8ea98d268d
--- /dev/null
+++ b/dev-libs/libmcrypt/libmcrypt-2.5.8-r5.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="libmcrypt provides uniform interface to access several encryption algorithms"
+HOMEPAGE="http://mcrypt.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mcrypt/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+
+DOCS=(
+ AUTHORS NEWS README THANKS TODO ChangeLog
+ doc/README.config doc/README.key doc/README.xtea
+ doc/example.c
+)
+
+PATCHES=(
+ "${FILESDIR}/${P}-rotate-mask.patch"
+ "${FILESDIR}/${P}-autoconf-2.70.patch" #775113
+ # http://sourceforge.net/tracker/index.php?func=detail&aid=1872801&group_id=87941&atid=584895
+ "${FILESDIR}/${P}-uninitialized.patch"
+ "${FILESDIR}/${P}-prototypes.patch"
+)
+
+src_prepare() {
+ default
+ mv configure.in configure.ac
+ mv libltdl/configure.in libltdl/configure.ac
+ sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac libltdl/configure.ac || die
+ eautoreconf # need new libtool for interix (elibtoolize would suffice for freebsd)
+}
+
+src_install() {
+ default
+ find "${ED}" -type f -name '*.la' -delete || die
+}