summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Le Cuirot <chewi@gentoo.org>2020-02-22 22:07:07 +0000
committerJames Le Cuirot <chewi@gentoo.org>2020-02-22 22:09:36 +0000
commitc2dac17fd6d6844839eaa6b77e234b09804f6ee0 (patch)
treee7137cd850fc7c17983329e80eb3d951bdc17443
parentsys-fs/lsscsi: Bump to version 0.31 (diff)
downloadgentoo-c2dac17fd6d6844839eaa6b77e234b09804f6ee0.tar.gz
gentoo-c2dac17fd6d6844839eaa6b77e234b09804f6ee0.tar.bz2
gentoo-c2dac17fd6d6844839eaa6b77e234b09804f6ee0.zip
app-emulation/vice: Bump to post 3.4 snapshot with multiple variants
The ebuild has been almost entirely rewritten. Many missing dependencies have been added. Multiple variants for GTK, SDL, and headless can now be installed simultaneously. Closes: https://bugs.gentoo.org/656722 Closes: https://github.com/gentoo/gentoo/pull/13504 Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
-rw-r--r--app-emulation/vice/Manifest1
-rw-r--r--app-emulation/vice/metadata.xml4
-rw-r--r--app-emulation/vice/vice-3.4_p37498.ebuild173
3 files changed, 178 insertions, 0 deletions
diff --git a/app-emulation/vice/Manifest b/app-emulation/vice/Manifest
index cf78f5afb3d3..fbe27e05301a 100644
--- a/app-emulation/vice/Manifest
+++ b/app-emulation/vice/Manifest
@@ -1 +1,2 @@
DIST vice-3.1.tar.gz 30714226 BLAKE2B 75c2cce5294dad5b954cd23b623b6b4610c8142a09aef05dbefed6b3e6b268077d375e644dde6a057682d41ab9cf15e93a9f4a9359bfa0d1567d6d1862053a0e SHA512 bc02a3597a17dadb37c487e6942192c0e9dc1a7d4e440fbf0dc8a165dbb2dee60ddf157697a020d2780ddef56a0a67802768d5c6d117b9cf5cdc124de45bc579
+DIST vice-emu-code-r37498-trunk-vice.zip 26810776 BLAKE2B 05baa0d123e9a0f1141ef68940455b5abfccde0204d0ffeb0a806212977be6f1f2c777267cad077272f4e09fa3c6adb9e95436adaaee5482b2ce918a3485caeb SHA512 5b4c31e51efc67ac08f6fe9361c42b80115b315fc24c128861341f2eea7567bdbb1761e52bc914df442ed5cc7f2ca7c6b0a2694441d63e63f9f693bcf72c70c0
diff --git a/app-emulation/vice/metadata.xml b/app-emulation/vice/metadata.xml
index ff9234728a4e..8ff137c8c207 100644
--- a/app-emulation/vice/metadata.xml
+++ b/app-emulation/vice/metadata.xml
@@ -8,6 +8,10 @@
<use>
<flag name="ethernet">Enable ethernet emulation</flag>
<flag name="fullscreen">Enable the ability to run fullscreen</flag>
+ <flag name="headless">Include the headless variant of the emulator</flag>
+ <flag name="mpg123">Enable mp3@64 cartridge support</flag>
+ <flag name="parport">Enable parallel port SID support</flag>
+ <flag name="pci">Enable PCI device discovery using <pkg>sys-apps/pciutils</pkg></flag>
<flag name="sdlsound">Use <pkg>media-libs/libsdl</pkg> for sound support</flag>
<flag name="vte">Enable support for <pkg>x11-libs/vte</pkg> in the GTK+ interface</flag>
</use>
diff --git a/app-emulation/vice/vice-3.4_p37498.ebuild b/app-emulation/vice/vice-3.4_p37498.ebuild
new file mode 100644
index 000000000000..9d913fec427c
--- /dev/null
+++ b/app-emulation/vice/vice-3.4_p37498.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools multibuild
+
+DESCRIPTION="The Versatile Commodore Emulator"
+HOMEPAGE="http://vice-emu.sourceforge.net/"
+MY_P="vice-emu-code-r${PV##*_p}-trunk-vice"
+S="${WORKDIR}/${MY_P}"
+SRC_URI="https://sourceforge.net/code-snapshots/svn/v/vi/vice-emu/code/${MY_P}.zip"
+#SRC_URI="mirror://sourceforge/vice-emu/releases/${P}.tar.gz"
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa debug doc ethernet ffmpeg flac gif +gtk headless ipv6 jpeg lame libav mpg123 ogg oss +opengl parport pci png portaudio pulseaudio sdl zlib"
+REQUIRED_USE="|| ( gtk headless sdl ) gtk? ( zlib )"
+
+RDEPEND="
+ sys-libs/readline:0=
+ virtual/libintl
+ alsa? ( media-libs/alsa-lib )
+ ethernet? (
+ >=net-libs/libpcap-0.9.8
+ >=net-libs/libnet-1.1.2.1:1.1
+ )
+ ffmpeg? (
+ libav? ( media-video/libav:= )
+ !libav? ( media-video/ffmpeg:= )
+ )
+ flac? ( media-libs/flac )
+ gif? ( media-libs/giflib:= )
+ gtk? (
+ dev-libs/glib:2
+ media-libs/fontconfig:1.0
+ x11-libs/gtk+:3
+ opengl? (
+ media-libs/glew:0=
+ virtual/opengl
+ )
+ )
+ jpeg? ( virtual/jpeg )
+ lame? ( media-sound/lame )
+ mpg123? ( media-sound/mpg123 )
+ ogg? (
+ media-libs/libogg
+ media-libs/libvorbis
+ )
+ parport? ( sys-libs/libieee1284 )
+ pci? ( sys-apps/pciutils )
+ png? ( media-libs/libpng:0= )
+ portaudio? ( media-libs/portaudio )
+ pulseaudio? ( media-sound/pulseaudio )
+ sdl? ( media-libs/libsdl2[video] )
+ zlib? ( sys-libs/zlib )
+"
+
+DEPEND="
+ ${RDEPEND}
+ x11-base/xorg-proto
+"
+
+BDEPEND="
+ app-arch/unzip
+ dev-embedded/xa
+ dev-lang/perl
+ sys-apps/texinfo
+ sys-devel/flex
+ sys-devel/gettext
+ virtual/pkgconfig
+ virtual/yacc
+ doc? ( virtual/texi2dvi )
+"
+
+ECONF_SOURCE="${S}"
+
+src_prepare() {
+ default
+
+ # Delete some bundled libraries.
+ rm -r src/lib/lib{ffmpeg,lame,x264} || die
+
+ sed "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g" < configure.proto > configure.ac || die
+
+ local DIR
+ for DIR in src/resid src/resid-dtv .; do
+ pushd "${DIR}" || die
+ AT_NO_RECURSIVE=1 eautoreconf
+ popd || die
+ done
+
+ # Strip the predefined C(XX)FLAGS.
+ sed -i -r 's:(VICE_C(XX)?FLAGS=)"[^$]+":\1:' configure || die
+}
+
+src_configure() {
+ MULTIBUILD_VARIANTS=(
+ $(usev gtk)
+ $(usev headless)
+ $(usev sdl)
+ )
+
+ multibuild_foreach_variant run_in_build_dir multibuild_src_configure
+}
+
+multibuild_enable() {
+ if [[ ${MULTIBUILD_VARIANT} == $1 ]]; then
+ printf -- "--enable-%s\n" "$2"
+ else
+ printf -- "--disable-%s\n" "$2"
+ fi
+}
+
+multibuild_src_configure() {
+ # Some dependencies lack configure options so prevent them becoming
+ # automagic by using configure cache variables.
+ use flac || export ac_cv_header_FLAC_stream_decoder_h=no
+ use mpg123 || export ac_cv_header_mpg123_h=no
+ use ogg || export ac_cv_header_vorbis_vorbisfile_h=no
+ use pci || export ac_cv_header_pci_pci_h=no
+
+ # Ensure we use giflib, not ungif.
+ export ac_cv_lib_ungif_EGifPutLine=no
+
+ # Append ".variant" to x* programs if building multiple variants.
+ if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]]; then
+ xform="/^x/s/\$/.${MULTIBUILD_VARIANT}/"
+ else
+ unset xform
+ fi
+
+ econf \
+ --program-transform-name="${xform}" \
+ --disable-sdlui \
+ $(multibuild_enable sdl sdlui2) \
+ $(multibuild_enable gtk native-gtk3ui) \
+ $(use_enable debug debug-gtk3ui) \
+ $(multibuild_enable headless headlessui) \
+ $(use_enable opengl hwscale) \
+ --disable-shared-ffmpeg \
+ --disable-static-ffmpeg \
+ $(use_enable ffmpeg external-ffmpeg) \
+ $(use_enable ethernet) \
+ $(use_enable ipv6) \
+ $(use_enable parport libieee1284) \
+ $(use_enable portaudio) \
+ $(use_enable lame) \
+ $(use_enable debug) \
+ --disable-arch \
+ $(use_enable doc pdf-docs) \
+ --enable-html-docs \
+ $(use_with pulseaudio pulse) \
+ $(use_with alsa) \
+ $(use_with oss) \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with gif) \
+ $(use_with zlib)
+}
+
+src_compile() {
+ multibuild_foreach_variant run_in_build_dir emake
+}
+
+src_install() {
+ multibuild_foreach_variant run_in_build_dir default
+ dodoc FEEDBACK
+
+ # Delete the bundled fonts. These could be packaged separately but
+ # they're only for the HTML documentation.
+ rm -r "${ED}"/usr/share/doc/${PF}/html/fonts/ || die
+}