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>
This commit is contained in:
Conrad Kostecki
2022-02-14 00:54:35 +01:00
parent 010093d49b
commit b79e8b8991
3 changed files with 83 additions and 0 deletions

View File

@@ -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."
}

View File

@@ -0,0 +1 @@
DIST 86Box-3.1.tar.gz 3733570 BLAKE2B d0753b11b040fa0bdef5d2a7c7fb9abc12f6e19c22360cc037bbd33c9274241c5941f49f509520cda2e584d989a7913aaa72b65457232c6f1d4ea1a59b013370 SHA512 9b28e23b6f3c2b9fe1a96e398c2042a4a6d3a7fcba0728033018c9cd737105bbc0f20053352f00d4ddcf8805e47152681f2151f8b03ad03305e3d27fa1adc092

View File

@@ -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>