summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorConrad Kostecki <conikost@gentoo.org>2022-02-14 00:54:35 +0100
committerConrad Kostecki <conikost@gentoo.org>2022-02-14 01:03:48 +0100
commitb79e8b8991d5b734d595ba77b65f2532ce50dd95 (patch)
tree41a788289aef9b87c8069effbb332df9ed10c917
parentapp-admin/eselect: Stabilize 1.4.20 sparc, #833278 (diff)
downloadgentoo-b79e8b8991d5b734d595ba77b65f2532ce50dd95.tar.gz
gentoo-b79e8b8991d5b734d595ba77b65f2532ce50dd95.tar.bz2
gentoo-b79e8b8991d5b734d595ba77b65f2532ce50dd95.zip
app-emulation/86Box: initial import
86Box is a low level x86 emulator that runs older operating systems and software designed for IBM PC systems and compatibles from 1981 through fairly recent system designs based on the PCI bus. Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
-rw-r--r--app-emulation/86Box/86Box-3.1.ebuild56
-rw-r--r--app-emulation/86Box/Manifest1
-rw-r--r--app-emulation/86Box/metadata.xml26
3 files changed, 83 insertions, 0 deletions
diff --git a/app-emulation/86Box/86Box-3.1.ebuild b/app-emulation/86Box/86Box-3.1.ebuild
new file mode 100644
index 000000000000..95973bf3cce2
--- /dev/null
+++ b/app-emulation/86Box/86Box-3.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+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="dinput experimental +fluidsynth +munt +dynarec new-dynarec +threads +usb vramdump"
+
+DEPEND="
+ media-libs/freetype:2=
+ media-libs/libpng:=
+ media-libs/libsdl2
+ media-libs/openal
+ media-libs/rtmidi
+ sys-libs/zlib
+"
+
+RDEPEND="
+ ${DEPEND}
+ fluidsynth? ( media-sound/fluidsynth )
+ munt? ( media-libs/munt-mt32emu )
+"
+
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ local mycmakeargs=(
+ -DCPPTHREADS="$(usex threads)"
+ -DDEV_BRANCH="$(usex experimental)"
+ -DDINPUT="$(usex dinput)"
+ -DDYNAREC="$(usex dynarec)"
+ -DFLUIDSYNTH="$(usex fluidsynth)"
+ -DMINITRACE="OFF"
+ -DMUNT="$(usex munt)"
+ -DNEW_DYNAREC="$(usex new-dynarec)"
+ -DPREFER_STATIC="OFF"
+ -DRELEASE="ON"
+ -DUSB="$(usex usb)"
+ -DVRAMDUMP="$(usex vramdump)"
+ )
+
+ cmake_src_configure
+}
+
+pkg_postinst() {
+ 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."
+}
diff --git a/app-emulation/86Box/Manifest b/app-emulation/86Box/Manifest
new file mode 100644
index 000000000000..050159bb66e2
--- /dev/null
+++ b/app-emulation/86Box/Manifest
@@ -0,0 +1 @@
+DIST 86Box-3.1.tar.gz 3733570 BLAKE2B d0753b11b040fa0bdef5d2a7c7fb9abc12f6e19c22360cc037bbd33c9274241c5941f49f509520cda2e584d989a7913aaa72b65457232c6f1d4ea1a59b013370 SHA512 9b28e23b6f3c2b9fe1a96e398c2042a4a6d3a7fcba0728033018c9cd737105bbc0f20053352f00d4ddcf8805e47152681f2151f8b03ad03305e3d27fa1adc092
diff --git a/app-emulation/86Box/metadata.xml b/app-emulation/86Box/metadata.xml
new file mode 100644
index 000000000000..a2846e04b512
--- /dev/null
+++ b/app-emulation/86Box/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>conikost@gentoo.org</email>
+ <name>Conrad Kostecki</name>
+ </maintainer>
+ <longdescription>
+ 86Box is a low level x86 emulator that runs older operating systems and software
+ designed for IBM PC systems and compatibles from 1981 through
+ fairly recent system designs based on the PCI bus.
+ </longdescription>
+ <use>
+ <flag name="dinput">Enable legacy Dinput mode instead of Xinput for older controllers.</flag>
+ <flag name="experimental">Enable hardware from devbranch, which may be unstable or unusable.</flag>
+ <flag name="fluidsynth">Enable MIDI support through <pkg>media-sound/fluidsynth</pkg>.</flag>
+ <flag name="munt">Enable MIDI MT-32 support through <pkg>media-libs/munt-mt32emu</pkg>.</flag>
+ <flag name="dynarec">Enable dynamic recompiler, which should provide a better emulation speed.</flag>
+ <flag name="new-dynarec">Enable new dynamic recompiler from PCem 15, which should provide an even better emulation speed.</flag>
+ <flag name="vramdump">Enable the posibility to dump the virtual Video RAM.</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://github.com/86Box/86Box/issues</bugs-to>
+ <remote-id type="github">86Box/86Box</remote-id>
+ </upstream>
+</pkgmetadata>