Stefano Sabatini <[email protected]> writes: > On date Sunday 2011-04-03 14:42:43 +0100, Måns Rullgård wrote: >> Stefano Sabatini <[email protected]> writes: > [...] >> > I suppose we can implement two policies: >> > >> > a. when a component is explicitely enabled, all the depending >> > components are automatically enabled >> > >> > E.g.: >> > --enable-libx264 -> enable libx264-encoder, gpl >> > --enable-librtmp -> enable librtmp-muxer/demuxer >> > >> > b. when a component is explicitely enabled, check if the dependencies >> > are enabled and fail otherwise; enable a component by default if >> > all its dependencies are satisfied >> > >> > We currently have a mix of a. and b., and I find b. more usable and >> > safer, as the user becomes more aware of what she's enabling and what >> > not. >> > >> > For example the user wants to enable the libx264 encoder. >> > Currently we have: >> > $ configure --enable-encoder=libx264 >> > => success, but libx264 and the libx264-encoder are not enabled >> > >> > With the b. approach: >> > $ configure --enable-encoder=libx264 >> > => configure complains about missing gpl and libx264, and fails. >> > >> > $ configure --enable-libx264 --enable-gpl >> > => success, libx264-encoder is automatically enabled since its >> > dependencies are satisfied >> > >> > If we want to use a pure a. approach we should automatically enable >> > gpl (while currently we have an ad-hoc license check) which doesn't >> > appear like a good idea from the legal POV, adopting a hybrid approach >> > (as currently implemented) is confusing. >> > >> There is nothing confusing at all. Two simple rules: >> >> 1. Everything is enabled by default. >> >> 2. External libs must be explicitly enabled. > > This is not changed by the patch, the raised issue is different, and > is that explicitely enabling an element should make configure issues > some warning. > > Indeed the user doesn't know nothing about the internal dependencies, > but when she types --enable-thing=foobar she expects the element to > be enabled. > >> Thus far, nobody has complained about this. Until someone does, I'm not >> changing it. Your meta-complaint does not count. > > http://thread.gmane.org/gmane.comp.video.ffmpeg.user/30661/focus=30668 > http://thread.gmane.org/gmane.comp.video.ffmpeg.user/30778/focus=30779 > > Both users complained about --enable-filter=drawtext, but the same > applies to other components, for example I find > --enable-encoder=libx264 not enabling the libx264 encoder and not > failing quite counter-intuitive.
Then the documentation is insufficient. Wherever the user learned of the libx264 encoder should document its dependencies as well. You seem to like writing docs, so get started. -- Måns Rullgård [email protected] _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
