I have created a patch to port fuse 1.5.7 to SDL2 was tested and works well on Ubuntu 18 LTS
It is based on diff.sdl2_09.patch , modified all existing pathes and added few more.
I have tested the patch and if i run configure alone it select alsa by default for audio driver and gtk interface, however the SDL2 library is linked to the fuse executable, if i pass just --disable-sdl2 it happens the same, alsa with gtk but it is linked against SDL1 this time, why it is linked if it is not used? Or it is used somehow even it is not selected?
Alsa is always the default audio driver for the GTK UI. If you want to use SDL audio with the GTK UI you have to build Fuse with --with-audio-driver=sdl
SDL can also be used for the joystick driver, so even if you use the GTK UI and Alsa audio Fuse will use SDL for the joystick. You can use --disable-ui-joystick to prevent that.
EDIT: this is worth clarifying a bit more. Some UI libraries have their own joystick support.
The SVGA UI has its own joystick code, the Win32 ui has its own joystick code, and SDL has its own joystick code.
That's what's called "UI joystick" in Fuse's configure script, and you can disable it with --disable-ui-joystick as I explained above.
However the GTK UI does not have joystick support, but it can use the SDL joystick driver. This is part of the GTK code, see ui/gtk/gtkjoystick.c for details. So in other words: the GTK UI uses SDL internally for the joystick.
Last edit: Alberto Garcia 2020-05-01
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It compile fine without requirement of SDL, i have uninstalled all SDL versions and are not required, but if are found are linked, if are linked and remove the sdl packages the fuse does not start as it complains about missing sdl library, same situation if i move the fuse executable on a machine which does not have SDL libraries.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
@Alberto I am not able to find where you posted :) but i saw over the email your reply, then it is good, your patch works, at least on my side do what is intended to do
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have tested the patch and if i run configure alone it select alsa by default for audio driver and gtk interface, however the SDL2 library is linked to the fuse executable, if i pass just --disable-sdl2 it happens the same, alsa with gtk but it is linked against SDL1 this time, why it is linked if it is not used? Or it is used somehow even it is not selected?
$ ldd fuse | grep -i sdl
libSDL2-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 (0x00007f0c832c2000)
Hi,
Alsa is always the default audio driver for the GTK UI. If you want to use SDL audio with the GTK UI you have to build Fuse with
--with-audio-driver=sdl
SDL can also be used for the joystick driver, so even if you use the GTK UI and Alsa audio Fuse will use SDL for the joystick. You can use
--disable-ui-joystick
to prevent that.EDIT: this is worth clarifying a bit more. Some UI libraries have their own joystick support.
The SVGA UI has its own joystick code, the Win32 ui has its own joystick code, and SDL has its own joystick code.
That's what's called "UI joystick" in Fuse's configure script, and you can disable it with
--disable-ui-joystick
as I explained above.However the GTK UI does not have joystick support, but it can use the SDL joystick driver. This is part of the GTK code, see
ui/gtk/gtkjoystick.c
for details. So in other words: the GTK UI uses SDL internally for the joystick.Last edit: Alberto Garcia 2020-05-01
It compile fine without requirement of SDL, i have uninstalled all SDL versions and are not required, but if are found are linked, if are linked and remove the sdl packages the fuse does not start as it complains about missing sdl library, same situation if i move the fuse executable on a machine which does not have SDL libraries.
@Alberto I am not able to find where you posted :) but i saw over the email your reply, then it is good, your patch works, at least on my side do what is intended to do
What's the state of SDL2 implemntation ?
Big discussion here, but Fuse stil does not use SDL2 for UI.
What did go wrong ?