summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/hercules/ChangeLog8
-rw-r--r--app-emulation/hercules/files/hercules-3.09-aliasing.patch41
-rw-r--r--app-emulation/hercules/hercules-3.09.ebuild43
3 files changed, 91 insertions, 1 deletions
diff --git a/app-emulation/hercules/ChangeLog b/app-emulation/hercules/ChangeLog
index 516d4e5d4272..e3bd8de4d2ed 100644
--- a/app-emulation/hercules/ChangeLog
+++ b/app-emulation/hercules/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-emulation/hercules
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/hercules/ChangeLog,v 1.35 2013/07/28 12:01:18 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/hercules/ChangeLog,v 1.36 2013/08/27 16:29:57 vapier Exp $
+
+*hercules-3.09 (27 Aug 2013)
+
+ 27 Aug 2013; Mike Frysinger <vapier@gentoo.org>
+ +files/hercules-3.09-aliasing.patch, +hercules-3.09.ebuild:
+ Version bump.
28 Jul 2013; Fabian Groffen <grobian@gentoo.org> hercules-3.08.ebuild:
Marked ~x86-macos
diff --git a/app-emulation/hercules/files/hercules-3.09-aliasing.patch b/app-emulation/hercules/files/hercules-3.09-aliasing.patch
new file mode 100644
index 000000000000..78f6e7705675
--- /dev/null
+++ b/app-emulation/hercules/files/hercules-3.09-aliasing.patch
@@ -0,0 +1,41 @@
+From 7d3255a18ad845953cc8083371e8623e771ad4f5 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 27 Aug 2013 12:25:49 -0400
+Subject: [PATCH] sha: fix strict aliasing warnings
+
+sha256.c:492:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
+sha256.c:784:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
+sha256.c:785:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ crypto/sha256.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/crypto/sha256.c b/crypto/sha256.c
+index 1a6a243..b1e90b4 100644
+--- a/crypto/sha256.c
++++ b/crypto/sha256.c
+@@ -489,7 +489,7 @@ SHA256_Final(u_int8_t digest[], SHA256_CTX *context)
+ *context->buffer = 0x80;
+ }
+ /* Set the bit count: */
+- *(u_int64_t *)&context->buffer[SHA256_SHORT_BLOCK_LENGTH] = context->bitcount;
++ memcpy (&context->buffer[SHA256_SHORT_BLOCK_LENGTH], &context->bitcount, 8);
+
+ /* Final transform: */
+ SHA256_Transform(context, context->buffer);
+@@ -781,8 +781,8 @@ SHA512_Last(SHA512_CTX *context)
+ *context->buffer = 0x80;
+ }
+ /* Store the length of input data (in bits): */
+- *(u_int64_t *)&context->buffer[SHA512_SHORT_BLOCK_LENGTH] = context->bitcount[1];
+- *(u_int64_t *)&context->buffer[SHA512_SHORT_BLOCK_LENGTH+8] = context->bitcount[0];
++ memcpy (&context->buffer[SHA512_SHORT_BLOCK_LENGTH], &context->bitcount[1], 8);
++ memcpy (&context->buffer[SHA512_SHORT_BLOCK_LENGTH+8], context->bitcount[0], 8);
+
+ /* Final transform: */
+ SHA512_Transform(context, context->buffer);
+--
+1.8.3.2
+
diff --git a/app-emulation/hercules/hercules-3.09.ebuild b/app-emulation/hercules/hercules-3.09.ebuild
new file mode 100644
index 000000000000..55c83a3a9a0d
--- /dev/null
+++ b/app-emulation/hercules/hercules-3.09.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/hercules/hercules-3.09.ebuild,v 1.1 2013/08/27 16:29:57 vapier Exp $
+
+EAPI="4"
+
+inherit flag-o-matic eutils
+
+DESCRIPTION="Hercules System/370, ESA/390 and zArchitecture Mainframe Emulator"
+HOMEPAGE="http://www.hercules-390.eu/"
+SRC_URI="http://downloads.hercules-390.eu/${P}.tar.gz"
+
+LICENSE="QPL-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86 ~x64-macos ~x86-macos"
+IUSE="bzip2 custom-cflags +suid"
+
+RDEPEND="bzip2? ( app-arch/bzip2 )
+ sys-libs/zlib"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-aliasing.patch
+}
+
+src_configure() {
+ use custom-cflags || strip-flags
+ ac_cv_lib_bz2_BZ2_bzBuffToBuffDecompress=$(usex bzip2) \
+ econf \
+ $(use_enable bzip2 cckd-bzip2) \
+ $(use_enable bzip2 het-bzip2) \
+ $(use_enable suid setuid-hercifc) \
+ --enable-custom="Gentoo ${PF}.ebuild" \
+ --disable-optimization
+}
+
+src_install() {
+ default
+ insinto /usr/share/hercules
+ doins hercules.cnf
+ dodoc README.* RELEASE.NOTES
+ dohtml -r html
+}