[MacPorts] #31185: ffmpeg: Replace negatively named variants with positively named and changing default variants
MacPorts
noreply at macports.org
Thu Sep 8 21:30:48 PDT 2011
#31185: ffmpeg: Replace negatively named variants with positively named and
changing default variants
------------------------------+---------------------------------------------
Reporter: cal@… | Owner: devans@…
Type: defect | Status: assigned
Priority: Low | Milestone:
Component: ports | Version: 2.0.99
Keywords: haspatch | Port: ffmpeg
------------------------------+---------------------------------------------
Changes (by devans@…):
* status: new => assigned
Comment:
Thanks for your input. Looks like you and I have been thinking about the
same things this evening.
The -no_nonfree in particular has been bothering me since it became a
"default variant".
First, a little philosophy.
To my mind, variants represent an optional change from the default
behavior for a port.
Hence, the idea of a "default variant" seems like a bit of an oxymoron.
With respect to ffmpeg, the developers philosophy is that it should do any
and everything.
So the appropriate default is "include everything".
They then allow you to disable things you don't want. First to go is the
nonfree stuff, then
the GPL if you feel you must have LGPL, etc.
So that's the way the port was originally set up. Everything enabled that
MacPorts supports as
the default. Then the variants for the optional selections of no nonfree
code (libfaac) leaving
GPL and LGPL and finally no GPL leaving just LGPL.
I think this makes sense. Start with the whole then make subtractions.
Where things got crazy recently was the introduction of a build server to
allow distribution of
pre-compiled binaries. Its OK to compile nonfree code for your own use
but it shouldn't be
redistributed in binary form.
So the quick fix was to make no_nonfree a "default variant". So if you
really want to compile
the whole thing including the nonfree code then you have to say "no
no_nonfree" as you say.
I propose to do the following:
* Make the default configuration just the GPL and LGPL code without any
nonfree code so the build server can make a distributable binary by
default. No variants, default or otherwise required.
* Add a new variant +nonfree to add back in the nonfree code for those
who need it (most?)
* Leave the no_gpl as is. Most people will want it and those that don't
can use the variant.
Not optimum but fits within our required constraints. The upstream guys
are trying to get everything
LGPL so if that happens then this will all be moot.
As to faad2, it was used by ffmpeg many revisions ago but is no longer
necessary. References to
it were removed along with other cleanup in r83668. Changes in ffmpeg
merged into ffmpeg-devel in
r83670. ffmpeg updated to 0.7.4 in r83674,
Will work on the variant situation as outlined (in both ffmpeg and ffmpeg-
devel) next.
Hope this addresses your concerns.
--
Ticket URL: <https://trac.macports.org/ticket/31185#comment:1>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list