summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/Manifest.gzbin16331 -> 16333 bytes
-rw-r--r--app-emulation/dosemu/Manifest3
-rw-r--r--app-emulation/dosemu/dosemu-1.4.1_pre20130107-r5.ebuild1
-rw-r--r--app-emulation/dosemu/files/dosemu-1.4.1_pre20130107-pcm_write_interleaved-incompatiible-pointer-type.patch11
-rw-r--r--app-emulation/hercules-sdl/Manifest2
-rw-r--r--app-emulation/hercules-sdl/files/hercules-sdl-4.7.0-backport-pr658.patch46
-rw-r--r--app-emulation/hercules-sdl/hercules-sdl-4.7.0-r1.ebuild89
7 files changed, 151 insertions, 1 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index 6a411f83e6df..2f6d37d059b9 100644
--- a/app-emulation/Manifest.gz
+++ b/app-emulation/Manifest.gz
Binary files differ
diff --git a/app-emulation/dosemu/Manifest b/app-emulation/dosemu/Manifest
index e1085ff6516b..60b3d5152a83 100644
--- a/app-emulation/dosemu/Manifest
+++ b/app-emulation/dosemu/Manifest
@@ -7,7 +7,8 @@ AUX dosemu-1.4.1_pre20130107-ia16-ldflags.patch 1787 BLAKE2B a265263de5ccb12df72
AUX dosemu-1.4.1_pre20130107-lto.patch 921 BLAKE2B 6b36f4e5502fb8b8202ab4396e6c9394d073a88843f3ad67d49bfc02130e6f15f793019e2532b98836975467951d6cf50b008b6401292d9495d55992f636b2fb SHA512 f8b2326abdff86b41e8125e9df242c08834c9f4d28c42ac90b45b409806fc9d453c951d22c2f61d5069844d6f0743600df42ca45d98e103798fbffc28485a0d5
AUX dosemu-1.4.1_pre20130107-nm.patch 1491 BLAKE2B b4a493a882ee82b5e8ae9ba9397b8bcaaff9b77cd585cfcb65af77125231538a993c6303da0271087da9048e3f3e5865ca8abb5c0738a6838252a21e14267ff8 SHA512 ce33f6cc1ba9e1e0ed9947098a8ee6740efe3aae3b7b129f55bac6e41519dc2ac46059e6164faaeee139c890924ee4bb5b382f4453d80a68c5add611f3179b23
AUX dosemu-1.4.1_pre20130107-no-glibc.patch 559 BLAKE2B 93ba50a5acda4b0b556e5393c34babe0b9172a8c9c1b168432f454ff120673496d279496d76821eda49886aaa998244bd411d4db6b465517712c4f6683d2850d SHA512 c53e3f7ed1b7a74e1112ea5507d0912ef1d16ff657aa5a03132f6b4c35ddb638ecde40ef554254f429316ffd74fc2d8afb59548d97547eeed231c80c0c057eed
+AUX dosemu-1.4.1_pre20130107-pcm_write_interleaved-incompatiible-pointer-type.patch 579 BLAKE2B a0b909b98ee4fc41dd02d1f98e63afb791a9c07592134b24d1095ef125017839654bfbdcacbecb9640f740d1178e71235b1f241526d448f8ecd028d5650d867d SHA512 002799cda6801bbb214d99444424879c660ed85945453c4dbbc1698b7169489bd3c70e42205c265acf71455a7edeb079789cc6b14df6ed45aa8ab5668aebc80c
DIST dosemu-1.4.1_pre20130107.zip 2767256 BLAKE2B 068c38108257b83d046682d4e9bda6f2da84195cff3aa5eb73764e88ba48bd415a6af9fa1b57059dee12ddd75b379df730fe6957014b554cc13b12ac029eed8d SHA512 eb8dcb914a74b235f2b37ff4dd5c1c84b4916ff195c7bf76cdbe6a4d5e6247c57297eef0c579f219ff7f475e727d66fa5a0f314da46d79cc97a0d794e9ad5864
DIST dosemu-freedos-1.0-bin.tgz 1205628 BLAKE2B e88a23b14cf1ccccb4f648b3c3af39330d8af29940e228b951cc7e48595f9838236066b67f841328e75ee7aee18f9e7814ea33382bb48902ca7947806b646852 SHA512 d0c4235ceac55de63ce5f72e51b7d57a82b8104f4bf2df6f4dc25c9889d3337b40d75665c2dfc98492ec7123e0959a725f5c7579e145895024bd80a07036e3bd
-EBUILD dosemu-1.4.1_pre20130107-r5.ebuild 3119 BLAKE2B 34c7b777b18f72223cd1f7d9179b18936f7712389328929231ef14c24fac3d4f81b11e49ccd775311f9be22b532f92d3704dd2ee92917a0fde9125129f2d6faa SHA512 b39af1eb939468ccc76e62da2354deb4376a3dc185ed913f55f231ce42058279d52d8d32b8d61656d2fbf184d0c63aa3d32762e7b0ab0244f42bd409698d6f07
+EBUILD dosemu-1.4.1_pre20130107-r5.ebuild 3194 BLAKE2B eae4210e5387b6af704b15766440df62ed3bab11021febdc1c55040035bcac0e4623f7d7672c5e04a91979fd8bddb5db4f4456a1445382e68287f91d47016003 SHA512 3e2237b4de911ccc80380ce8fe46c2973e1bc781c839c30119c13464c1c7118a984ce2e10fc4114387c1c9b1f1fe6e6524fa09edbed40c31fe57aea4eedc39d8
MISC metadata.xml 349 BLAKE2B fedd50e957691cd0f390899d1895eae1883db66df4518b7e12d16cb5a942e7b3748bfa06d7af38dfbab2386305c473713f6303eb2746573c68dbabaff7b4a5ea SHA512 a6b190200756ecb3df7744aaba0f431fbfbb3dd327c652782c3dd3cb2fbd16694cdc223e63b7db471532497786702fdb0f93848297ec2c686815789ccb60a86b
diff --git a/app-emulation/dosemu/dosemu-1.4.1_pre20130107-r5.ebuild b/app-emulation/dosemu/dosemu-1.4.1_pre20130107-r5.ebuild
index 33bcb2602637..bb6904b66047 100644
--- a/app-emulation/dosemu/dosemu-1.4.1_pre20130107-r5.ebuild
+++ b/app-emulation/dosemu/dosemu-1.4.1_pre20130107-r5.ebuild
@@ -57,6 +57,7 @@ PATCHES=(
"${FILESDIR}"/${P}-lto.patch
"${FILESDIR}"/${P}-as.patch
"${FILESDIR}"/${P}-nm.patch
+ "${FILESDIR}"/${P}-pcm_write_interleaved-incompatiible-pointer-type.patch
)
pkg_pretend() {
diff --git a/app-emulation/dosemu/files/dosemu-1.4.1_pre20130107-pcm_write_interleaved-incompatiible-pointer-type.patch b/app-emulation/dosemu/files/dosemu-1.4.1_pre20130107-pcm_write_interleaved-incompatiible-pointer-type.patch
new file mode 100644
index 000000000000..15e2ac0fcf4d
--- /dev/null
+++ b/app-emulation/dosemu/files/dosemu-1.4.1_pre20130107-pcm_write_interleaved-incompatiible-pointer-type.patch
@@ -0,0 +1,11 @@
+--- dosemu-code-15cfb41ff20a052769d753c3262c57ecb050ad71-orig/src/plugin/midimisc/mid_o_tmdty.c 2013-01-07 10:44:22.000000000 +1100
++++ dosemu-code-15cfb41ff20a052769d753c3262c57ecb050ad71/src/plugin/midimisc/mid_o_tmdty.c 2024-06-06 12:57:40.055442661 +1000
+@@ -77,7 +77,7 @@
+ if (n > 0) {
+ int frames = n / (pcm_format_size(fmt) * TMDTY_CHANS);
+ pcm_running = 1;
+- pcm_write_interleaved(buf, frames, TMDTY_FREQ, fmt,
++ pcm_write_interleaved((sndbuf_t(*)[SNDBUF_CHANS])buf, frames, TMDTY_FREQ, fmt,
+ TMDTY_CHANS, pcm_stream);
+ } else {
+ break;
diff --git a/app-emulation/hercules-sdl/Manifest b/app-emulation/hercules-sdl/Manifest
index 5874205c7622..db987967acdb 100644
--- a/app-emulation/hercules-sdl/Manifest
+++ b/app-emulation/hercules-sdl/Manifest
@@ -1,5 +1,7 @@
AUX gen_hashes.sh 706 BLAKE2B 85e0f867ea7012a9859f75cf8802ce85b50b23c2a7b48a117983874e3e47a8695042da20eb26c9d47933fa5b9d4e8f1de644542be703d544693d287e978ca070 SHA512 060b413470ffd57b304dc091a57cbdac4cfb8c44f23230607ba16d133840fd27a4da47ed3965aaca6a65a14960cb5835675ee2d76f2345dc95add06de946f14b
AUX hercules-sdl-4.4.1-htmldir.patch 774 BLAKE2B 3cf3c50c60059ae0bd042333c2220669f87aa37cf632d1bc2cec738e02ca5f74a2a4302e484a73b6e9df32edb8c4bf2c0a2198c32e1242cab970e4a819c254c1 SHA512 bae45addb0c4f339b93d9709119b7df5d330978e60b982349244b98a72b157f86180454fa82ff9918a082f705a06a379ff3212f59bd5c1777090bb0cf03b9795
+AUX hercules-sdl-4.7.0-backport-pr658.patch 1591 BLAKE2B 4959d5d1f59c370d505156f0aec543af11a96e5b4513eb634f9c79aa69e537f854efd5870a710b50d8e2fd882bb33b34d2f7f5b15dab0c71fa503825f4c5b31c SHA512 3d3dcb3b1cb0cf580dff9f720c58a28597dc9ea926b6b3384cbaa88726515a0a25efbcde5a763488fcca0603d951f42702e416abe974c5f981befc3360733ed2
DIST hercules-sdl-4.7.tar.gz 25439384 BLAKE2B 78a8d2df947c80e23d0e956a25a4f009dd32b09f2834cc06373f685badf9f1e657bf0f4e4408c7085371c46085718998076f3a6063caf80c9161b1fa7caa91eb SHA512 9d7060c4e2687358b9547b59b47362d642cbf2bf009085fdd41e485170d0f81029ee3d04d12b905a3a266cd26a9087e92c231c3f4600c32a8535a6140656b7b0
+EBUILD hercules-sdl-4.7.0-r1.ebuild 2678 BLAKE2B 99fc2187abb2729f3749da3d38419d5254bc9574001ef13676a447eb3ffaa8673b9d3c7c052bf541994a562e3326259cd9825e3e7c887d6e99246c21d04c2a7a SHA512 a71847afbd15b79165e2f6dc89effa2fb9dc28fae5d24e3db4cabafeab1aee56e86d46a9b5c9b5c52748738186755b3c93887f54c37e61b02f32a0a659e034b9
EBUILD hercules-sdl-4.7.0.ebuild 2604 BLAKE2B 916d399a2d0a53ade95495d1788399543ebe41000cb480307af7425c78cfe2adeaa53a753f9e66eedb3786a9d875794f1f44ef15a80653718bc02a8ed01add2d SHA512 1c4242b251e4b4d0ecf84b7e796a242ded35adeb686726bfe4833c0c4c1c69b0705f3216e6a31f24e9876a39b6315d228d65d149d8ca66a08cc77755f27abf47
MISC metadata.xml 1141 BLAKE2B b630c058fe32f2410985e53779d387fc007759f2bd36ad8240a2b6a2157b6c5921cfb4aa14ed3b513e0f787d9838bab46a6ceadd031d33daa2a3190d2ca64095 SHA512 fe090b27c7d46e6a9fee40a9d948f4124814d134cb64ff7f7d7b2d341f1db9313f5d071e5c34a312a3dacbe643c8083ba98a3b0058fa3886b9d024d6ecb17575
diff --git a/app-emulation/hercules-sdl/files/hercules-sdl-4.7.0-backport-pr658.patch b/app-emulation/hercules-sdl/files/hercules-sdl-4.7.0-backport-pr658.patch
new file mode 100644
index 000000000000..db4773d2249c
--- /dev/null
+++ b/app-emulation/hercules-sdl/files/hercules-sdl-4.7.0-backport-pr658.patch
@@ -0,0 +1,46 @@
+https://bugs.gentoo.org/931607
+https://github.com/SDL-Hercules-390/hyperion/pull/658
+
+From 655f179dbf34a3b1e9714691462faa9732257937 Mon Sep 17 00:00:00 2001
+From: matoro <matoro@users.noreply.github.com>
+Date: Thu, 9 May 2024 12:36:01 -0400
+Subject: [PATCH] Add missing includes to configure script
+
+This is needed for gcc 14 and clang 16 as they both make implicit
+function definitions a hard error. In a configure script, this means
+these tests will switch from passing to failing, which likely means
+features will get unintentionally flipped as configure now thinks you
+don't have support.
+
+See: https://wiki.gentoo.org/wiki/Modern_C_porting
+See: https://bugs.gentoo.org/931607
+---
+ autoconf/hercules.m4 | 1 +
+ configure.ac | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/autoconf/hercules.m4 b/autoconf/hercules.m4
+index cb962f5e0..4d35cb039 100755
+--- a/autoconf/hercules.m4
++++ b/autoconf/hercules.m4
+@@ -380,6 +380,7 @@ AC_DEFUN([HC_CHECK_NEED_GETOPT_OPTRESET],
+ AC_TRY_LINK(
+ [],
+ [
++ #include <unistd.h>
+ extern int optreset;
+ optreset=1;
+ getopt(0,0,0);
+diff --git a/configure.ac b/configure.ac
+index f444a9b1e..bfe31357d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1872,6 +1872,8 @@ if test "$GCC" = "yes"; then
+ -g -O2 -fomit-frame-pointer
+ */
+
++ #include <string.h>
++
+ int foo ()
+ {
+ char a[50000+16];
diff --git a/app-emulation/hercules-sdl/hercules-sdl-4.7.0-r1.ebuild b/app-emulation/hercules-sdl/hercules-sdl-4.7.0-r1.ebuild
new file mode 100644
index 000000000000..2067dddd725d
--- /dev/null
+++ b/app-emulation/hercules-sdl/hercules-sdl-4.7.0-r1.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools fcaps
+
+DESCRIPTION="The SoftDevLabs (SDL) version of the Hercules 4.x Hyperion Emulator"
+HOMEPAGE="https://sdl-hercules-390.github.io/html/"
+SRC_URI="https://github.com/SDL-Hercules-390/hyperion/archive/refs/tags/Release_${PV/.0/}.tar.gz -> ${P/.0/}.tar.gz"
+
+S="${WORKDIR}/hyperion-Release_${PV/.0/}"
+LICENSE="QPL-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+# In theory USE=object-rexx and USE=regina-rexx are not mutually-exclusive.
+# In practice they functionally are as the Gentoo packages conflict, and
+# additionally Hercules only supports calling out to one of them at runtime,
+# controlled by the HREXX_PACKAGE environment variable.
+IUSE="bzip2 debug object-rexx regina-rexx test"
+RESTRICT="!test? ( test )"
+FILECAPS=(
+ -M 755 cap_sys_nice\=eip usr/bin/hercules --
+ -M 755 cap_sys_nice\=eip usr/bin/herclin --
+ -M 755 cap_net_admin+ep usr/bin/hercifc
+)
+
+RDEPEND="
+ !app-emulation/hercules
+ dev-libs/libltdl
+ net-libs/libnsl:0
+ sys-libs/zlib
+ bzip2? ( app-arch/bzip2 )
+ object-rexx? ( dev-lang/oorexx )
+ regina-rexx? ( dev-lang/regina-rexx )"
+DEPEND="${RDEPEND}
+ ~app-emulation/hercules-sdl-crypto-${PV}
+ ~app-emulation/hercules-sdl-decnumber-${PV}
+ ~app-emulation/hercules-sdl-softfloat-${PV}
+ ~app-emulation/hercules-sdl-telnet-${PV}"
+# Neither package support needs to be compiled-in for tests,
+# but the "rexx" command needs to be available
+BDEPEND="${RDEPEND}
+ test? ( || ( dev-lang/regina-rexx dev-lang/oorexx ) )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.4.1-htmldir.patch"
+ "${FILESDIR}/${PN}-4.7.0-backport-pr658.patch"
+)
+
+src_prepare() {
+ rm -rf crypto decNumber SoftFloat telnet || die
+ sed -i 's#/lib${hc_cv_pkg_lib_subdir}#/lib#g' configure.ac || die
+ sed -i 's#_pkgname}${hc_cv_pkg_lib_suffix}#_pkgname}#g' configure.ac || die
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local -x ac_cv_lib_bz2_BZ2_bzBuffToBuffDecompress=$(usex bzip2)
+ econf \
+ $(use_enable bzip2 cckd-bzip2) \
+ $(use_enable bzip2 het-bzip2) \
+ $(use_enable object-rexx) \
+ $(use_enable regina-rexx) \
+ $(use_enable debug) \
+ --enable-custom="Gentoo ${PF}.ebuild" \
+ --disable-optimization \
+ --disable-setuid-hercifc \
+ --disable-capabilities \
+ --enable-ipv6 \
+ --enable-enhanced-configincludes \
+ --disable-fthreads \
+ --enable-shared \
+ --enable-automatic-operator \
+ --enable-extpkgs="${SYSROOT}/usr/$(get_libdir)/${PN}"
+}
+
+src_install() {
+ default
+ dodoc RELEASE.NOTES
+
+ insinto /usr/share/hercules
+ doins hercules.cnf
+
+ # No static archives. Have to leave .la files for modules. #720342
+ find "${ED}/usr/$(get_libdir)" -name "*.la" -delete || die
+}