mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-17 02:39:08 -07:00
app-emulation/86Box: add 5.3
Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
This commit is contained in:
101
app-emulation/86Box/86Box-5.3.ebuild
Normal file
101
app-emulation/86Box/86Box-5.3.ebuild
Normal file
@@ -0,0 +1,101 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake desktop flag-o-matic xdg-utils
|
||||
|
||||
DESCRIPTION="Emulator of x86-based machines based on PCem"
|
||||
HOMEPAGE="https://github.com/86Box/86Box"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="discord experimental +fluidsynth +munt new-dynarec +openal +qt6 +threads vde vnc"
|
||||
|
||||
DEPEND="
|
||||
app-emulation/faudio
|
||||
dev-libs/libevdev
|
||||
dev-libs/libserialport
|
||||
media-libs/freetype:2=
|
||||
media-libs/libpng:=
|
||||
media-libs/libsdl2
|
||||
media-libs/libsndfile
|
||||
media-libs/openal
|
||||
media-libs/rtmidi
|
||||
net-libs/libslirp
|
||||
virtual/zlib:=
|
||||
fluidsynth? ( media-sound/fluidsynth:= )
|
||||
munt? ( media-libs/munt-mt32emu )
|
||||
openal? ( media-libs/openal )
|
||||
qt6? (
|
||||
dev-libs/wayland
|
||||
dev-qt/qtbase:6=[gui,network,opengl,widgets]
|
||||
x11-libs/libX11
|
||||
x11-libs/libXi
|
||||
x11-libs/libxkbcommon
|
||||
)
|
||||
vnc? ( net-libs/libvncserver )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
qt6? ( dev-qt/qttranslations:6 )
|
||||
vde? ( net-misc/vde )
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
qt6? ( kde-frameworks/extra-cmake-modules )
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}/${PN}-5.3-fallthrough-define-available-in-C-code.patch" )
|
||||
|
||||
src_configure() {
|
||||
# LTO needs to be filtered
|
||||
# See https://bugs.gentoo.org/854507
|
||||
filter-lto
|
||||
append-flags -fno-strict-aliasing
|
||||
|
||||
local mycmakeargs=(
|
||||
-DCPPTHREADS="$(usex threads)"
|
||||
-DDEV_BRANCH="$(usex experimental)"
|
||||
-DDISCORD="$(usex discord)"
|
||||
-DDYNAREC="ON"
|
||||
-DFLUIDSYNTH="$(usex fluidsynth)"
|
||||
-DHAS_VDE="$(usex vde "${EPREFIX}/usr/$(get_libdir)/libvdeplug.so" "HAS_VDE-NOTFOUND")"
|
||||
-DMINITRACE="OFF"
|
||||
-DMUNT="$(usex munt)"
|
||||
-DMUNT_EXTERNAL="$(usex munt)"
|
||||
-DNEW_DYNAREC="$(usex new-dynarec)"
|
||||
-DOPENAL="$(usex openal)"
|
||||
-DPREFER_STATIC="OFF"
|
||||
-DQT="$(usex qt6)"
|
||||
-DRELEASE="ON"
|
||||
-DRTMIDI="ON"
|
||||
$(usex qt6 '-DUSE_QT6=ON' '')
|
||||
-DVNC="$(usex vnc)"
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
domenu src/unix/assets/net.86box.86Box.desktop
|
||||
for iconsize in 48 64 72 96 128 192 256 512; do
|
||||
doicon -s $iconsize src/unix/assets/${iconsize}x${iconsize}/net.86box.86Box.png
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_desktop_database_update
|
||||
xdg_icon_cache_update
|
||||
|
||||
elog "In order to use 86Box, you will need some roms for various emulated systems."
|
||||
elog "See https://github.com/86Box/roms for more information."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
xdg_icon_cache_update
|
||||
}
|
||||
@@ -1 +1,2 @@
|
||||
DIST 86Box-5.2.tar.gz 13933308 BLAKE2B e397f15b8477dcbfad956761481455e7eb766c5edc206e453b00278dcd2caba02065faa3ff50858180905f30b741c67ece3a3b3b95ab41c7e72537d445875a6f SHA512 0e8352645823ef156fe9458d2adff652aab2cdc0cae7a05102f93fb46d779b057f4aeddc0ae4e3eaf768d1c0f71435159dd1c4016308ad59f7e5f9801caac791
|
||||
DIST 86Box-5.3.tar.gz 14001417 BLAKE2B a70679787fc7a601afa7ac3b69f4bb58afa2939d7a876048c6b944bdcb3affbc58ac8bfbe1e95088eaa93bf872172068bc0421602465d2a352d9674fcc255c41 SHA512 120fbf7544cc91dd9f7b75027cd6219084aa71e97e8ef2ad105ac8ccc7bea2a9290c2d124461da0192c3000c0459fe65c1fd361342de33b06c80616592f52f84
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
From 0092ce15de3efac108b961882f870a8c05e8c38f Mon Sep 17 00:00:00 2001
|
||||
From: OBattler <oubattler@gmail.com>
|
||||
Date: Mon, 22 Dec 2025 22:56:10 +0100
|
||||
Subject: [PATCH] Only make the fallthrough define available in C code, fixes
|
||||
#6607.
|
||||
|
||||
---
|
||||
src/include/86box/plat.h | 12 +++++++-----
|
||||
1 file changed, 7 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/include/86box/plat.h b/src/include/86box/plat.h
|
||||
index dcf7e4d5306..cbc348709ec 100644
|
||||
--- a/src/include/86box/plat.h
|
||||
+++ b/src/include/86box/plat.h
|
||||
@@ -90,16 +90,12 @@ extern int strnicmp(const char *s1, const char *s2, size_t n);
|
||||
# include <atomic>
|
||||
# define atomic_flag_t std::atomic_flag
|
||||
# define atomic_bool_t std::atomic_bool
|
||||
+
|
||||
extern "C" {
|
||||
#else
|
||||
# include <stdatomic.h>
|
||||
# define atomic_flag_t atomic_flag
|
||||
# define atomic_bool_t atomic_bool
|
||||
-#endif
|
||||
-
|
||||
-#if defined(_MSC_VER)
|
||||
-# define ssize_t intptr_t
|
||||
-#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
# define fallthrough do {} while (0) /* fallthrough */
|
||||
@@ -114,6 +110,12 @@ extern "C" {
|
||||
# endif
|
||||
#endif
|
||||
|
||||
+#endif
|
||||
+
|
||||
+#if defined(_MSC_VER)
|
||||
+# define ssize_t intptr_t
|
||||
+#endif
|
||||
+
|
||||
/* Global variables residing in the platform module. */
|
||||
extern int dopause; /* system is paused */
|
||||
extern int mouse_capture; /* mouse is captured in app */
|
||||
Reference in New Issue
Block a user