diff --git a/games-emulation/dosbox/dosbox-0.74_p20160629.ebuild b/games-emulation/dosbox/dosbox-0.74_p20160629.ebuild
index 46bd28b..a4775cd 100644
--- a/games-emulation/dosbox/dosbox-0.74_p20160629.ebuild
+++ b/games-emulation/dosbox/dosbox-0.74_p20160629.ebuild
@@ -3,19 +3,23 @@
# $Id$
EAPI=6
-inherit autotools eutils
+inherit autotools eutils flag-o-matic
PATCH=3989
+GLIDE_PATCH=3722fc563b737d2d7933df6a771651c2154e6f7b
+
DESCRIPTION="DOS emulator"
HOMEPAGE="http://dosbox.sourceforge.net/"
-SRC_URI="mirror://gentoo/dosbox-code-0-${PATCH}-dosbox-trunk.zip"
+SRC_URI="mirror://gentoo/dosbox-code-0-${PATCH}-dosbox-trunk.zip
+ glide? ( https://raw.githubusercontent.com/voyageur/openglide/${GLIDE_PATCH}/platform/dosbox/dosbox_glide.diff -> dosbox_glide-${GLIDE_PATCH}.diff )"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~sparc x86"
-IUSE="alsa debug hardened opengl"
+IUSE="alsa debug glide hardened opengl"
RDEPEND="alsa? ( media-libs/alsa-lib )
+ glide? ( media-libs/openglide )
opengl? ( virtual/glu virtual/opengl )
debug? ( sys-libs/ncurses:0 )
media-libs/libpng:0
@@ -32,11 +36,14 @@ PATCHES=(
)
src_prepare() {
+ use glide && eapply "${DISTDIR}"/dosbox_glide-${GLIDE_PATCH}.diff
default
eautoreconf
}
src_configure() {
+ use glide && append-cppflags -I"${EPREFIX}"/usr/include/openglide
+
econf \
$(use_enable alsa alsa-midi) \
$(use_enable !hardened dynamic-core) \
@@ -50,3 +57,14 @@ src_install() {
make_desktop_entry dosbox DOSBox /usr/share/pixmaps/dosbox.ico
doicon src/dosbox.ico
}
+
+pkg_postinst() {
+ if use glide; then
+ elog "You have enabled unofficial Glide emulation. To use this, symlink"
+ elog "or copy ${EPREFIX}/usr/share/openglide/glide2x-dosbox.ovl to your game's"
+ elog "directory and add the following to your DOSBox configuration."
+ elog ""
+ elog "[glide]"
+ elog "glide=true"
+ fi
+}
diff --git a/games-emulation/dosbox/metadata.xml b/games-emulation/dosbox/metadata.xml
index a8a2df5a..ef87777c 100644
--- a/games-emulation/dosbox/metadata.xml
+++ b/games-emulation/dosbox/metadata.xml
@@ -16,4 +16,7 @@
dosbox
+