summaryrefslogtreecommitdiff
path: root/app-emulation/fs-uae
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/fs-uae')
-rw-r--r--app-emulation/fs-uae/Manifest4
-rw-r--r--app-emulation/fs-uae/files/fs-uae-3.1.35-ar.patch25
-rw-r--r--app-emulation/fs-uae/files/fs-uae-3.1.35-deepbind.patch43
-rw-r--r--app-emulation/fs-uae/fs-uae-3.1.35.ebuild115
4 files changed, 187 insertions, 0 deletions
diff --git a/app-emulation/fs-uae/Manifest b/app-emulation/fs-uae/Manifest
index 5d7064dce50a..a4db69689903 100644
--- a/app-emulation/fs-uae/Manifest
+++ b/app-emulation/fs-uae/Manifest
@@ -1,5 +1,9 @@
AUX fs-uae-3.0.0-Xatom.h.patch 669 BLAKE2B 3463b8f19551b8ea3d634bc75f9de2fb77685af9c24e1fba555991d1d094f4d75be048e4d9a7852bfd8882b1e9826f174550bc3953e3ec636193aaa647462d12 SHA512 af86c772049d8ff5eef36c8988888891ea60a68e929d752c8f1c9e325af584175f14496a2099654381bb33a3adecb913991e129fee05524ecad4a166228dbd68
AUX fs-uae-3.0.0-libmpeg2.patch 1078 BLAKE2B 119d797854beb0148af9a77003b7b06696d9a474645ff15181044dcffd783a91f89a66cf90b072603c4f324b95a4a0cf124abefc6adc71b9be4b8a92f36060ac SHA512 8624c3404b627321a2b6673271be27daa24924a8c56903c870fd5a6f2dc50c18fd97810a1aab3cd684a5a97544c1e64f68c855c822d3e5bb5981faf264d28ae7
+AUX fs-uae-3.1.35-ar.patch 609 BLAKE2B 3e31b1cd19aaa88f73cb806d91b8187d7cf23338caec519afe29553fabcc7884fcc1c95a87731f1459b6e64c8eacfda060aec221a0342f4b5983fa80cc623b61 SHA512 0d808e8f6782ce4f9653ab3a100483a6f3e5d9104f8b0afc67ea7010beae7ebf4d1fb44a9a97bf21c119547d7fa2730a046f6e64cf24606f1e78c8a8ca0ad617
+AUX fs-uae-3.1.35-deepbind.patch 1150 BLAKE2B 2b75ae7e8ad353af78d02afec6e2c27f4bf442d201bd67ff9548e2c26d5ac2d15199ff1f649c0e1e6ed662e433bd103420f737d0a50db030bccc6eb687905fa6 SHA512 a645a05f16a9825d9f3f2ff798f0982687b8cae4accad1685e047e98648680e7b785d9efe0676c68ed9caf57ea39d08a70c60c3dc810117db714b800ef67a9a0
DIST fs-uae-3.0.5.tar.gz 4819884 BLAKE2B 0a82e0635ed02c1b4f04610555370c80ea12a870a73fd00cc98adefcefada2deed293c437202af34fc98e2f695fe1b08df918eca71b504e5b94e5ab3a099d9ed SHA512 b34ffb818040c7bf67022f26e1dbc9ebf06742a354212f2b0d2aa6b8e04c60807893a16ff965c819395f4c3fb3c43c35b38dce848b86fa046a211e12414385c7
+DIST fs-uae-3.1.35.tar.gz 4817547 BLAKE2B 5f75a1e262ba8d642401a03ac5b2494be37b8bab8f014a48208cc6e0b2e33373a7ce6146065f41404d8fcbd60fe71582319abe51521336c2d7c04668c3adacd9 SHA512 96bec936f867fc42eb9f61058887c027da0bab1c8df196ab62a714b1f28c92aafe6c4a61d441e5c7b5d8aee28c90d68812d0f6049c610e2ef9eebdd7e3edf013
EBUILD fs-uae-3.0.5.ebuild 2441 BLAKE2B dc324751f374098920fe05b64d3e784cda02ed8566772edffad946d20cf414c0396e5c438a5df92d9161982c77881520d2cac648d0168f1df25cc1260740cc7d SHA512 19ed36eb650ae6945c92b8a3e12d01333cdc59f39a77e80521d57c2e301d5832b7120f0ce34e049fb0e49d141af3b8a1a1ebd0acf5bda56c0d7d5de5313c7202
+EBUILD fs-uae-3.1.35.ebuild 2398 BLAKE2B ba24af3c9c413c7f1a0f3eea73964f601528e52974d9c734b95744ae55de5b2a526c1f62380e5e944b46a0ea655d9c6d723ca89682770e294b71c16087be9fb7 SHA512 5689de1dce62b37beeaefd751068e3fc68eaba19a228147076d8ac23278b9e62972e9dfeca94bb1059cb24d129c3414490bd789582692dac434d961375b5a6f9
MISC metadata.xml 534 BLAKE2B 06da96462379543ad704ca1227e546f26e5578f1f62b14debe6297a659e250708b1c6b60d4e60805142f76b12b0c31812060af661f2166749aac811b82edc695 SHA512 2366d8d0d180a639d65aa1e7092cc9669f6d2ae07b3ce3ed6386e15795f141067ec93014f87bb6b0c57c51dfbb4c33ae5886f541a0634432c53a5541eb68f229
diff --git a/app-emulation/fs-uae/files/fs-uae-3.1.35-ar.patch b/app-emulation/fs-uae/files/fs-uae-3.1.35-ar.patch
new file mode 100644
index 000000000000..9075723da74c
--- /dev/null
+++ b/app-emulation/fs-uae/files/fs-uae-3.1.35-ar.patch
@@ -0,0 +1,25 @@
+From 4e6295094978817ba02e16ac5404ac9c9e287c82 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Sun, 17 Oct 2021 09:54:24 +0100
+Subject: [PATCH] Have configure respect the AR variable instead of setting it
+ to "ar"
+
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index bb2c69de..6e41d68e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -66,6 +66,7 @@ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ AC_PROG_MAKE_SET
+ AC_PROG_RANLIB
++AM_PROG_AR
+ AM_PROG_CC_C_O
+ # AC_PATH_TOOL(OBJCOPY, objcopy)
+ AC_PATH_PROG([MSGFMT], [msgfmt], [not found])
+--
+2.32.0
+
diff --git a/app-emulation/fs-uae/files/fs-uae-3.1.35-deepbind.patch b/app-emulation/fs-uae/files/fs-uae-3.1.35-deepbind.patch
new file mode 100644
index 000000000000..0a60301772f1
--- /dev/null
+++ b/app-emulation/fs-uae/files/fs-uae-3.1.35-deepbind.patch
@@ -0,0 +1,43 @@
+From c5b02df4598c5fbe7a034b67ee06c506abeb3828 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Mon, 18 Oct 2021 10:22:09 +0100
+Subject: [PATCH] Don't assume RTLD_DEEPBIND is always present on Linux
+
+It's not supported by musl.
+---
+ configure.ac | 5 +++++
+ src/dlopen.cpp | 2 +-
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 6e41d68e..2cac2dac 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -655,6 +655,11 @@ AC_CHECK_FUNCS([gettimeofday])
+ AC_CHECK_DECLS([CLOCK_MONOTONIC], [], [], [#include <time.h>])
+
+
++# RTLD_DEEPBIND is not supported by all C libraries.
++
++AC_CHECK_DECLS([RTLD_DEEPBIND], [], [], [#include <dlfcn.h>])
++
++
+ # Check for POSIX support.
+
+ AS_CASE([$host_os],
+diff --git a/src/dlopen.cpp b/src/dlopen.cpp
+index f79c401b..14edbc02 100644
+--- a/src/dlopen.cpp
++++ b/src/dlopen.cpp
+@@ -22,7 +22,7 @@ UAE_DLHANDLE uae_dlopen(const TCHAR *path)
+ }
+ #ifdef _WIN32
+ result = LoadLibrary(path);
+-#elif defined(LINUX)
++#elif HAVE_DECL_RTLD_DEEPBIND == 1
+ result = dlopen(path, RTLD_NOW | RTLD_DEEPBIND);
+ #else
+ result = dlopen(path, RTLD_NOW);
+--
+2.32.0
+
diff --git a/app-emulation/fs-uae/fs-uae-3.1.35.ebuild b/app-emulation/fs-uae/fs-uae-3.1.35.ebuild
new file mode 100644
index 000000000000..be1afebd83dd
--- /dev/null
+++ b/app-emulation/fs-uae/fs-uae-3.1.35.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools xdg
+
+DESCRIPTION="Integrates the most accurate Amiga emulation code available from WinUAE"
+HOMEPAGE="https://fs-uae.net/"
+SRC_URI="https://fs-uae.net/stable/${PV}/${P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="fmv glew"
+
+RDEPEND="
+ dev-libs/glib:2
+ media-libs/libpng:0=
+ media-libs/libsdl2[opengl,X]
+ media-libs/openal
+ sys-libs/zlib
+ virtual/opengl
+ x11-libs/libdrm
+ x11-libs/libX11
+ fmv? ( media-libs/libmpeg2 )
+ glew? ( media-libs/glew:0= )
+"
+
+DEPEND="
+ ${RDEPEND}
+ x11-base/xorg-proto
+"
+
+BDEPEND="
+ app-arch/zip
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.0.0-libmpeg2.patch
+ "${FILESDIR}"/${PN}-3.0.0-Xatom.h.patch
+ "${FILESDIR}"/${PN}-3.1.35-ar.patch
+ "${FILESDIR}"/${PN}-3.1.35-deepbind.patch
+)
+
+src_prepare() {
+ default
+ AT_NO_RECURSIVE=1 eautoreconf
+
+ # Ensure bundled libraries are not used. Udis86 is unused
+ # regardless. Only FLAC headers are bundled and the library is never
+ # used? Lua is bundled but differs from upstream. We keep the
+ # default of disabling the Lua feature anyway as it is unfinished.
+ rm -r libmpeg2/ libudis86/ || die
+}
+
+src_configure() {
+ # Qt and Udis86 are unused.
+ econf \
+ --enable-a2065 \
+ --enable-action-replay \
+ --enable-aga \
+ --enable-arcadia \
+ --enable-bsdsocket \
+ --enable-caps \
+ --enable-cd32 \
+ --enable-cdtv \
+ --enable-codegen \
+ --enable-dms \
+ --enable-drivesound \
+ --enable-fdi2raw \
+ --enable-gfxboard \
+ --enable-jit \
+ --enable-jit-fpu \
+ --disable-lua \
+ --enable-netplay \
+ --enable-ncr \
+ --enable-ncr9x \
+ --enable-parallel-port \
+ --enable-prowizard \
+ --enable-savestate \
+ --enable-scp \
+ --enable-serial-port \
+ --enable-slirp \
+ --enable-softfloat \
+ --enable-qemu-cpu \
+ --enable-qemu-slirp \
+ --enable-uaenative \
+ --enable-uaenet \
+ --enable-uaescsi \
+ --enable-uaeserial \
+ --disable-udis86 \
+ --enable-vpar \
+ --enable-xml-shader \
+ --enable-zip \
+ --without-cef \
+ --with-glad \
+ --without-qt \
+ $(use_with fmv libmpeg2) \
+ $(use_with glew)
+}
+
+src_install() {
+ default
+
+ # Needed for QEMU-UAE.
+ insinto /usr/include/uae
+ doins src/include/uae/{api,attributes,log,ppc,qemu,types}.h
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ elog "Install app-emulation/fs-uae-launcher for a better graphical interface."
+}