diff --git a/app-emulation/fuse/Manifest b/app-emulation/fuse/Manifest index 127daceb5a379..af4129ce3b6bf 100644 --- a/app-emulation/fuse/Manifest +++ b/app-emulation/fuse/Manifest @@ -1 +1,2 @@ DIST fuse-1.6.0.tar.gz 1686171 BLAKE2B d1e6b166f2f649f408349b16a5eb40dd414750ed7a805eb6505b6c81be6ed7bcaa4e6f0b14057645172add1b1a77881f90b64767390fe1a64a486168f452d29d SHA512 5096b24b5b3d812942a7ad401b886b6a99f5493686912cb4aff18ede65404ae97a9bcafa6337aaed4378382f2a170918797d7d4570bb809476be5aa9fc625b8b +DIST fuse-1.7.0.tar.gz 1742469 BLAKE2B 55b652a15079539694e2e40cc002aec6d8566e1ff3ccb8c400b09a3db1246aacc3a1214afe970de769ccf609ffd7526fee224724319efa0e8adb9a5244557453 SHA512 9903773fd9ced1e36f4b0720201f721f9a3b7876a4d11ada95ffa328ec5bd166dc37c09818e7d96de3c45e5f26d074f4b072a1db6dd0786470dc9fbbb3483084 diff --git a/app-emulation/fuse/fuse-1.7.0.ebuild b/app-emulation/fuse/fuse-1.7.0.ebuild new file mode 100644 index 0000000000000..bb3d80be7c491 --- /dev/null +++ b/app-emulation/fuse/fuse-1.7.0.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic xdg + +DESCRIPTION="Free Unix Spectrum Emulator by Philip Kendall" +HOMEPAGE="https://fuse-emulator.sourceforge.net" +SRC_URI="https://downloads.sourceforge.net/fuse-emulator/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~riscv ~x86" +IUSE="alsa ao backend-X backend-fbcon +backend-gtk3 backend-sdl gpm joystick memlimit png pulseaudio +xml +zlib" + +# TODO: +# - allow using sdl audio driver without using for the UI +# - allow using sdl joystick support with gtk3 or X UI in place of libjsw +# - when using sdl for one of the above but not the UI, allow using sdl2 instead + +# At most one audio driver and at most one UI back-end can be enabled at a time +REQUIRED_USE="?? ( alsa ao backend-sdl pulseaudio ) + ?? ( backend-X backend-fbcon backend-gtk3 backend-sdl ) + png? ( zlib )" + +RDEPEND=" + >=app-emulation/libspectrum-1.6.0:=[zlib?] + dev-libs/glib:2 + alsa? ( media-libs/alsa-lib ) + ao? ( media-libs/libao ) + backend-X? ( + x11-libs/libX11 + x11-libs/libXext + ) + backend-gtk3? ( + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/pango + ) + backend-sdl? ( media-libs/libsdl[joystick,sound] ) + gpm? ( backend-fbcon? ( sys-libs/gpm ) ) + joystick? ( !backend-sdl? ( media-libs/libjsw ) ) + png? ( media-libs/libpng:0= ) + pulseaudio? ( media-libs/libpulse ) + xml? ( dev-libs/libxml2:2= ) + zlib? ( virtual/zlib:= )" +DEPEND="${RDEPEND} + backend-fbcon? ( virtual/linux-sources )" +BDEPEND="dev-lang/perl + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README THANKS ) + +PATCHES=( + "${FILESDIR}"/remove-local-prefix.patch +) + +_fuse_audio_driver() { + if use alsa; then + echo "alsa" + elif use ao; then + echo "libao" + elif use backend-sdl; then + echo "sdl" + elif use pulseaudio; then + echo "pulseaudio" + else + echo "null" + fi +} + +src_prepare() { + default + xdg_environment_reset + eautoreconf + + # Bug #854522 + filter-lto +} + +src_configure() { + local myconf=( + --enable-desktop-integration + --without-win32 + --with-audio-driver="$(_fuse_audio_driver)" + $(use_with gpm) + $(use_with joystick) + $(use_enable memlimit smallmem) + $(use_with png) + $(use_with xml libxml2) + $(use_with zlib) + ) + + # The pure-X UI hasn't got its own configure argument, instead it is + # what is used under Linux if all other back-ends have been disabled + # - and all except the Gtk+ one are off by default. + if use backend-X; then + myconf+=("--without-gtk") + elif use backend-fbcon; then + myconf+=("--with-fb") + elif use backend-gtk3; then + myconf+=("--with-gtk") + elif use backend-sdl; then + myconf+=("--with-sdl") + else + myconf+=("--with-null-ui") + fi + + if use joystick; then + myconf+=( $(use_enable backend-sdl ui-joystick) ) + fi + + econf "${myconf[@]}" +} + +src_test() { + emake test +} + +pkg_postinst() { + xdg_pkg_postinst + if use pulseaudio; then + ewarn "The PulseAudio driver in ${PN} is experimental" + fi +}