Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 255321 - media-libs/mlt with USE flags revisited
Summary: media-libs/mlt with USE flags revisited
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
: 258044 (view as bug list)
Depends on: 255319
Blocks:
  Show dependency tree
 
Reported: 2009-01-17 22:21 UTC by Roberto Castagnola
Modified: 2009-03-15 20:18 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
mlt-0.3.4-r1.ebuild (mlt-0.3.4-r1.ebuild,2.85 KB, text/plain)
2009-01-17 22:25 UTC, Roberto Castagnola
Details
mlt-0.3.4-qimage.patch (mlt-0.3.4-qimage.patch,706 bytes, patch)
2009-01-17 22:29 UTC, Roberto Castagnola
Details | Diff
Patch for official ebuild (mlt-0.3.6.ebuild.patch,3.33 KB, patch)
2009-02-28 20:14 UTC, Roberto Castagnola
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Roberto Castagnola 2009-01-17 22:21:46 UTC
Next attached is my proposed new ebuild for media-libs/mlt package with USE flags revisited.
Comment 1 Roberto Castagnola 2009-01-17 22:25:12 UTC
Created attachment 178831 [details]
mlt-0.3.4-r1.ebuild

MAIN CHANGES FROM OFFICIAL EBUILD:

EAPI=2 with new functions src_prepare and src_configure.

KEYWORDS="~amd64".
Before to readd others keywords, new depending package media-plugins/frei0r (bug #255319) should be tested.

Removed version on packages dependencies because every version in portage tree is OK. Following is a list of packages with required version as per official ebuild and the minimum version available in portage tree (snapshot 20090114) between parenthesis:
- >=media-video/ffmpeg-0.4.9_p20080326 (0.4.9_p20081014)
- >=media-libs/libdv-0.104 (1.0.0-r2)
- >=dev-libs/libxml2-2.5 (2.6.30-r1)
- >=media-libs/libvorbis-1.1.2 (1.2.1_rc1)
- >=media-libs/libsdl-1.2.10 (1.2.11-r2)
- >=media-libs/sdl-image-1.2.4 (1.2.6-r1)
- >=media-libs/libsamplerate-0.1.2 (0.1.2)
- >=media-libs/xine-lib-1.1.2_pre20060328-r7 (1.1.15-r1)

Removed dependencies to packages media-libs/libogg, media-sound/lame and media-libs/libtheora because media-libs/mlt seems to not depend on them directly.

If mp3, theora or vorbis use flags are enabled, media-video/ffmpeg is required to be built with them enabled (used mp3 instead of lame because ffmpeg ebuild uses it). ogg use flag is removed.

Removed --enable-shared, --enable-pp and --enable-shared-pp options because I cannot find them in the configure script.

Removed pkg_setup function; added USE dependendency to check if media-sound/sox should be compiled with libsamplerate enabled or not.

Added USE=frei0r to depend on new package media-plugins/frei0r (bug #255319)

Added USE=qt4 to build qimage module with qt4. If either qt3 and qt4 are enabled, qt3 is preferred.

Added USE=png to produce compressed (png) lumas. media-gfx/imagemagick is required to convert them.

Added USE=kde. Its behaviour depend on qt3:
- if qt3 is enabled, it compile extra image formats using kde on qimage module.
- if qt3 is disabled, it compile kdenlive module (note: media-video/kdenlive package is not required on compile time).
Used PDEPEND="!qt3? ( kde? ( media-video/kdenlive ) )" to require media-video/kdenlive package avoiding circular dependencies.
Comment 2 Roberto Castagnola 2009-01-17 22:29:18 UTC
Created attachment 178833 [details, diff]
mlt-0.3.4-qimage.patch

Patch needed to build qimage module with extra image formats using kde
Comment 3 Wormo (RETIRED) gentoo-dev 2009-01-18 01:12:25 UTC
Thanks for submitting and documenting your work on this ebuild. Assigning to maintainers.
Comment 4 Alexis Ballier gentoo-dev 2009-02-08 10:45:55 UTC
(In reply to comment #1)
> EAPI=2 with new functions src_prepare and src_configure.

if there is no other reason than renaming phases to use eapi-2, please dont.

> KEYWORDS="~amd64".
> Before to readd others keywords, new depending package media-plugins/frei0r
> (bug #255319) should be tested.

first you'd need to find a maintainer for frei0r but since there are other interesting changes, here we go


> Removed version on packages dependencies because every version in portage tree
> is OK. Following is a list of packages with required version as per official
> ebuild and the minimum version available in portage tree (snapshot 20090114)
> between parenthesis:
> - >=media-video/ffmpeg-0.4.9_p20080326 (0.4.9_p20081014)
> - >=media-libs/libdv-0.104 (1.0.0-r2)
> - >=dev-libs/libxml2-2.5 (2.6.30-r1)
> - >=media-libs/libvorbis-1.1.2 (1.2.1_rc1)
> - >=media-libs/libsdl-1.2.10 (1.2.11-r2)
> - >=media-libs/sdl-image-1.2.4 (1.2.6-r1)
> - >=media-libs/libsamplerate-0.1.2 (0.1.2)
> - >=media-libs/xine-lib-1.1.2_pre20060328-r7 (1.1.15-r1)

Those are here and have to stay in case someone has a very old system. Deps are not for what is currently in the tree but what may have been at some point in the tree.


> Removed dependencies to packages media-libs/libogg, media-sound/lame and
> media-libs/libtheora because media-libs/mlt seems to not depend on them
> directly.

good point

> If mp3, theora or vorbis use flags are enabled, media-video/ffmpeg is required
> to be built with them enabled (used mp3 instead of lame because ffmpeg ebuild
> uses it). ogg use flag is removed.

why do you want to force them enabled on ffmpeg? would it crash if they're not available? if that just disables mp3/theora/vorbis support then it's fine as that's what the user requested on ffmpeg.

> Removed --enable-shared, --enable-pp and --enable-shared-pp options because I
> cannot find them in the configure script.

good point too


> Removed pkg_setup function; added USE dependendency to check if media-sound/sox
> should be compiled with libsamplerate enabled or not.

You got this wrong; the check in the ebuild means you need to enable libsamplerate useflag on *mlt* if you enable use sox on *mlt*

> Added USE=qt4 to build qimage module with qt4. If either qt3 and qt4 are
> enabled, qt3 is preferred.

Hmm not sure there but I'd say prefer qt4 as it's newer; and maybe building the qt4 qimage module won't make kdenlive crash badly at startup unlike the qt3 one does.

> Added USE=png to produce compressed (png) lumas. media-gfx/imagemagick is
> required to convert them.

I think naming this png is a bad idea, maybe we could find a better name (eg compressed-lumas) and give it a nice description as this does not enable png support at all.

> Added USE=kde. Its behaviour depend on qt3:
> - if qt3 is enabled, it compile extra image formats using kde on qimage module.
> - if qt3 is disabled, it compile kdenlive module (note: media-video/kdenlive
> package is not required on compile time).
> Used PDEPEND="!qt3? ( kde? ( media-video/kdenlive ) )" to require
> media-video/kdenlive package avoiding circular dependencies.


seems a good idea;


could you please attach a new diff/ebuild with the above comments integrated/discussed? preferable a diff as that's way much easier to see what changed.
Comment 5 Lukasz Ligowski 2009-02-10 12:58:28 UTC
*** Bug 258044 has been marked as a duplicate of this bug. ***
Comment 6 Roberto Castagnola 2009-02-14 14:22:47 UTC
I will upload a new version in next few days. By now I add few comments.

(In reply to comment #4)
> (In reply to comment #1)
> > EAPI=2 with new functions src_prepare and src_configure.
> 
> if there is no other reason than renaming phases to use eapi-2, please dont.

I used eapi-2 because I wanted to use "USE dependency"; I will check if I still need it.

> > If mp3, theora or vorbis use flags are enabled, media-video/ffmpeg is required
> > to be built with them enabled (used mp3 instead of lame because ffmpeg ebuild
> > uses it). ogg use flag is removed.
> 
> why do you want to force them enabled on ffmpeg? would it crash if they're not
> available? if that just disables mp3/theora/vorbis support then it's fine as
> that's what the user requested on ffmpeg.

In this case, I suppose I can remove mp3 and theora use flags since they don't enable anything in mlt package.

> > Removed pkg_setup function; added USE dependendency to check if media-sound/sox
> > should be compiled with libsamplerate enabled or not.
> 
> You got this wrong; the check in the ebuild means you need to enable
> libsamplerate useflag on *mlt* if you enable use sox on *mlt*

Not sure, but it seems to me that media-libs/mlt can be build with USE='sox -libsamplerate' if media-sound/sox is build with USE='-libsamplerate'.
I will check it again.

> > Added USE=qt4 to build qimage module with qt4. If either qt3 and qt4 are
> > enabled, qt3 is preferred.
> 
> Hmm not sure there but I'd say prefer qt4 as it's newer; and maybe building the
> qt4 qimage module won't make kdenlive crash badly at startup unlike the qt3 one
> does.

I preferred qt3 simply because qt3/kde3 is more mature than qt4/kde4 and IMHO an ebuild should use the more stable solution as default. kdenlive ebuild already check if media-libs/mlt is built without qt3 use flag.

> could you please attach a new diff/ebuild with the above comments
> integrated/discussed? preferable a diff as that's way much easier to see what
> changed.

To avoid any misunderstanding, are you requesting a diff file between a new ebuild and my previous post, or a diff between a new ebuild and the one in portage tree?
Comment 7 Roberto Castagnola 2009-02-28 20:14:42 UTC
Created attachment 183517 [details, diff]
Patch for official ebuild 

It doesn't include all my previous changes (Comment #1) but only approved ones (Comment  #4). About my preference for qt3 vs qt4, please see Comment #6.

It seems to me that kdenlive cannot work with compressed (png) lumas yet, it crashed when I tried it; thus its ebuild should check if media-libs/mlt was built without new compressed-lumas useflag.
Comment 8 Alexis Ballier gentoo-dev 2009-03-15 16:14:06 UTC
Applied, thanks a lot

Except the --no-as-needed one, if this has to be fixed this isn't by appending that flag, better fix the linking order.
I also dropped the kdenlive PDEP because I don't see why we would need it but be welcome to correct me there.

If you have other improvements, either reopen this bug or file a new one (a new one may be cleaner), setting as fixed for now.
Also please dont forget to send the qimage patch upstream.
Comment 9 Roberto Castagnola 2009-03-15 20:18:34 UTC
(In reply to comment #8)
> Also please dont forget to send the qimage patch upstream.

Already done :) but not yet applied by upstream :(
http://sourceforge.net/tracker/index.php?func=detail&aid=2151852&group_id=96039&atid=613416

Regards,
Roberto