[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#923494: Please Recommend and dlopen libsdl2 rather than depending on it





> Am 21.07.2019 um 21:58 schrieb Josh Triplett <josh@joshtriplett.org>:
> 
>> On July 21, 2019 11:38:03 AM PDT, James Cowgill <jcowgill@debian.org> wrote:
>> Hi,
>> 
>>> On 12/03/2019 12:44, Reinhard Tartler wrote:
>>> On Tue, Mar 12, 2019 at 8:36 AM Carl Eugen Hoyos <ceffmpeg@gmail.com
>>> <mailto:ceffmpeg@gmail.com>> wrote:
>>> 
>>>    Please show the dependencies of (at least) libavutil and
>> libavcodec
>>>    with your approach and maybe compare them to what sdl needs:
>> While the
>>>    list may become smaller I wonder if it this would really solve
>> the
>>>    described issue.
>>> 
>>> Sure thing, please find the full build log attached to this email.
>>> It details the full metadata at the end of the log.
>> 
>> I've been on a rather long haitus from Debian stuff for a while, t I
>> now
>> have some time to do more so I'm going to get FFmpeg 4.1.4 uploaded
>> next
>> (and by the looks of things 4.2 is just around the corner...)
>> 
>> I see a "fix" for this in the git history, but I think it's broken:
>> 
>> * There is an obvious typo in the d/rules file which prevents the
>> option
>> to disable the SDL output device from taking effect. You can see from
>> the build log attached to this bug report that we still have an SDL
>> dependency.
>> 
>> * Even after fixing that, the dependency remains. I think the "opengl"
>> device backend has a dependency on SDL as well. Disabling that is
>> probably a greater loss?
>> 
>> * With the above two changes (disabling both sdl and opengl), I ran the
>> final packages through dose and compared the dependencies. This is the
>> list of transitive dependencies that no longer need installing after
>> this change:
>> 
>> libsdl2-2.0-0
>> libwayland-client0
>> libwayland-cursor0
>> libwayland-egl1
>> libxcursor1
>> libxinerama1
>> libxkbcommon0
>> libxrandr2
>> libxss1
>> xkb-data
>> 
>> Notice that all of OpenGL, all xcb and core x11 libraries are still
>> required.
>> 
>> The total uncompressed size of these packages is around 8M, with
>> libsdl2-2.0-0 and xkb-data being the only significant packages (the
>> rest
>> are < 100k). Note that xkb-data is installed by default so that saving
>> is probably only relevant for stripped down containers. For comparison,
>> if I install ffmpeg in a build chroot, apt says it will use 418M of
>> extra space.
>> 
>> In conclusion, I don't think the savings this change gives us are worth
>> it, and I don't like disabling features in FFmpeg :)
>> 
>> I think what you really want is an "ffmpeg-nox" package containing a
>> build of the frontend ffmpeg tool with libavdevice completely disabled.
>> I haven't run this in dose, but by dropping this dependency I would
>> expect all the GL / X11 / etc dependencies to also go which would give
>> much better space savings. Probably needs a little more thinking about
>> the way this would be implemented though (and it's relationship with
>> the
>> normal ffmpeg package).
> 
> You're right, that's much more what I'm looking for. This is primarily for headless servers, which primarily need the command line tool and a subset of libraries.

I don’t understand: Didn’t you confirm that you tested the committed solution and that it works for you?

Carl Eugen

Reply to: