Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 190753 - net-www/gnash-0.8.1 released
Summary: net-www/gnash-0.8.1 released
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High enhancement
Assignee: Stefan Schweizer (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-30 07:36 UTC by Vinícius Dias dos Santos
Modified: 2007-11-21 09:20 UTC (History)
8 users (show)

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


Attachments
gnash-0.8.1.ebuild (gnash-0.8.1.ebuild,3.65 KB, text/plain)
2007-08-30 07:37 UTC, Vinícius Dias dos Santos
Details
updated ebuild (gnash-0.8.1.ebuild,3.47 KB, text/plain)
2007-09-15 12:08 UTC, abma
Details
ebuld with additional checks (gnash-0.8.1.ebuild,3.78 KB, text/plain)
2007-09-27 23:37 UTC, Lukas Turek
Details
Suggested changes to proposed ebuild. (gnash-0.8.1.ebuild,3.77 KB, text/plain)
2007-10-19 20:09 UTC, Harley Peters
Details
Suggested ebuild with several improvements (gnash-0.8.1.ebuild,4.70 KB, text/plain)
2007-11-05 23:53 UTC, Jorge Peixoto de Morais Neto
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Vinícius Dias dos Santos 2007-08-30 07:36:05 UTC
http://gnashdev.org/?q=node/42

Proposed ebuild follow, based on net-www/gnash-0.8.0

Reproducible: Always
Comment 1 Vinícius Dias dos Santos 2007-08-30 07:37:22 UTC
Created attachment 129599 [details]
gnash-0.8.1.ebuild

Doesn't deal with all building possibility but enough for firefox plugin
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-08-30 07:38:27 UTC
Please review http://www.gentoo.org/doc/en/bugzilla-howto.xml#doc_chap6 (Zero-day bump requests).

Comment 3 Stefan Schweizer (RETIRED) gentoo-dev 2007-08-30 07:47:37 UTC
I like 0-days :)

Well, please give me a better ebuild that deals with the options and I will add it.
Comment 4 Vincent de Phily 2007-08-30 09:50:21 UTC
# emerge -va =gnash-0.8.1

These are the packages that would be merged, in order:

Calculating dependencies \

!!! Invalid or corrupt dependency specification:

Conditional without parenthesis: 'gtk?'

('ebuild', '/', 'net-www/gnash-0.8.1', 'merge')

agg? ( >=x11-libs/agg-2.5 ) cairo? ( x11-libs/cairo ) opengl? ( virtual/opengl gtk? x11-libs/gtkglext ) kde? ( kde-base/kdelibs ) xml? ( dev-libs/libxml2 ) sys-libs/zlib media-libs/jpeg media-libs/libpng net-misc/curl mysql? ( virtua/mysql ) ffmpeg? ( media-video/ffmpeg ) gstreamer? ( media-libs/gstreamer || ( media-plugins/gst-plugins-ffmpeg media-plugins/gst-plugins-mad ) ) !gstreamer? ( !ffmpeg? ( media-libs/libsdl ) ) dev-libs/boost x11-libs/libX11 x11-libs/libXi x11-libs/libXmu x11-libs/libXt x11-proto/xproto dev-util/pkgconfig =sys-devel/automake-1.9* >=sys-devel/autoconf-2.59 sys-devel/libtool

This package can not be installed. Please notify the
'net-www/gnash-0.8.1' package maintainer about this problem.





Add parenthesis around x11-libs/gtkglext and it'll work.


Looks to me like all the interesting possibilities (3 renderers, 2 media handlers, 2 GUIs, 2 plugins) are catered for.
Only strange thing is that the 'mad' media handler is not available any more. Or is it enabled by default ? In any case, the 'eerror' text mentions mad as an option, without testing for it.

Works for me on konqueror (not using gnas on firefox) with USE="ffmpeg gstreamer kde konqueror nsplugin opengl xml -agg -cairo -gtk"
Comment 5 abma 2007-09-15 12:08:28 UTC
Created attachment 130984 [details]
updated ebuild

(hopefully) fixed some mistakes in the ebuild. Works for me in amd64 with
USE="cairo ffmpeg gstreamer gtk nsplugin opengl xml -agg -kde -konqueror"
Comment 6 Brendan Taylor 2007-09-18 22:33:37 UTC
Comments on the updated ebuild:

paludis doesn't like "opengl?(" and "gtk?(". Inserting a space between "?" and "(" fixes that.

The Firefox plugin isn't actually installed unless "gtk" is enabled. (the /usr/lib/nsbrowser/plugins/libgnashplugin.so symlink is created, but the file it points to doesn't exist)

It looks like either "kde" or "gtk" needs to be enabled for gnash to be useful. If neither is, running the 'gnash' command gives:

    Could not find any <gui>-gnash executable under directory /usr/bin, with <gui> in .

It's working beautifully for me now, though.
Comment 7 Lukas Turek 2007-09-27 23:35:53 UTC
> The Firefox plugin isn't actually installed unless "gtk" is enabled. (the
> /usr/lib/nsbrowser/plugins/libgnashplugin.so symlink is created, but the file
> it points to doesn't exist)

It's the same for konqueror plugin. I'm submitting updated ebuild with added checks.
Comment 8 Lukas Turek 2007-09-27 23:37:19 UTC
Created attachment 132052 [details]
ebuld with additional checks
Comment 9 Matteo Azzali (RETIRED) gentoo-dev 2007-10-08 13:12:43 UTC
Just a little note on gnash completeness:
I don't know for previous versions, testing Lukas Turek ebuild with
Konqueror (kde and konqueror flags on , but also gtk) showed some flaws:
flash used to give input (as flash menus) aren't displayed/gettin input in
the right way, more, if you click on a flash with embedded link inside
konqueror, it will open the link in firefox if an istance of firefox is open,
or it will do just nothing (yes, I click a flash in konqueror and it opens
a firefox tab, if firefox is not open instead it does nothing).
If I open the same page in firefox then some more flash work, but some other
hang firefox sending my cpu to 100% occupation.
All the flash tested are working with netscape-flash-9.0.48-r1
Comment 10 Patrizio Bassi 2007-10-17 17:53:51 UTC
gnash 0.8.0 is not compiling with 4.2 we need a bump
Comment 11 Harley Peters 2007-10-19 20:09:25 UTC
Created attachment 133914 [details]
Suggested changes to proposed ebuild.

1. xml? ( dev-libs/libxml2 )

The xml use flag should be removed and the dependency dev-libs/libxml2 should be an unconditional dependency.
Gnash will not even get pass the configure script without libxml2 installed on the system.

2. mysql? ( virtual/mysql )

Why are you testing for the mysql use flag when you don't even have it set under IUSE ?

3. ffmpeg? ( media-video/ffmpeg )

This should be:

ffmpeg?	(
		media-libs/libsdl
		media-video/ffmpeg
	)
Gnash will not even get past the configure script when ffmpeg is set as the media handler and libsdl is not installed.

4. gstreamer? ( 
                media-libs/gstreamer
                || (
                        media-plugins/gst-plugins-ffmpeg
                        media-plugins/gst-plugins-mad
                )
   )
This test to see if one or the other plugins is installed. If mad is installed ffmpeg is not installed if ffmpeg or neither plugins are installed it will install the ffmpeg plugin if necessary but not the mad plugin.
When testing video's at youtube i have found at least on my system you need both 
the ffmpeg and mad plugins installed.

This should be:

gstreamer? ( !ffmpeg?	        (
			        media-plugins/gst-plugins-ffmpeg
				media-plugins/gst-plugins-mad
				)
)

No need to add media-libs/gstreamer as it is a dependency of the plugins.

5. !gstreamer? ( 
                !ffmpeg? ( 
                        media-libs/libsdl 
                )
        )

This condition will never be meet because the pkg_setup check below will prevent it and should be removed.

if use !ffmpeg && use !gstreamer; then
                eerror "You are trying to build Gnash without choosing a media handler."
                eerror "Please enable one of the following ffmpeg, gstreamer or mad (mp3 audio only)."
                die "No media handler selected !"
fi

6. eerror "Please enable one of the following ffmpeg, gstreamer or mad (mp3 audio only)."

Mad is no longer supported by the ebuild and should be removed from the error message.

7. if use agg; then
                myconf="${myconf} --enable-renderer=agg"
        fi
        if use cairo; then
                myconf="${myconf} --enable-renderer=cairo"
        fi
        if use opengl; then
                myconf="${myconf} --enable-renderer=ogl"
        fi
 
Only one renderer at a time is allowed this will try to set all three and Gnash will end up using opengl if all three use flags are set.

This should be:

if use agg; then
		myconf="${myconf} --enable-renderer=agg"
	elif use opengl; then
		myconf="${myconf} --enable-renderer=ogl"
	else
		myconf="${myconf} --enable-renderer=cairo"
	fi

This will favor agg over both opengl and cairo ( agg is the gnash default )
and it will favor opengl over cairo.
 
8. econf \
                $(use_enable nsplugin plugin) \
                $(use_enable xml) \
                $(use_enable video_cards_i810 i810-lod-bias) \
                --enable-gui=${gui} \
                --without-gcc-arch --disable-debugger \

use_enable nsplugin plugin is saying if the nsplugin use flag is set then add --enable-plugin to the configuration. --enable-plugin is not an option in gnash anymore. This should be removed.
The plugins are already addressed earlier in the ebuild.

use_enable xml should be removed.

--disable-debugger is unnecessary as it is disabled by default now.
--without-gcc-arch is not a valid option in gnash anymore.

9. emake -j1

Gnash 0.8.1 compiles just fine in parallel no need to restrict it.

This should be:

emake ${MAKEOPTS}
Comment 12 Jorge Peixoto de Morais Neto 2007-11-05 23:53:42 UTC
Created attachment 135280 [details]
Suggested ebuild with several improvements

I made several refinements in the ebuild.

1. WANT_AUTOMAKE="1.9" 

This is a release tarball and does not need the autotools. The README explicitly suggest the user to use the provided 'configure'. Using the provided 'configure' significantly simplifies the ebuild. No need to set WANT_AUTOMAKE, no need to inherit autotools eclass, no need to specify a src_unpack function. Also, the compilation has less dependencies and is faster.

2. gstreamer? ( !ffmpeg?	(
				media-plugins/gst-plugins-ffmpeg
				media-plugins/gst-plugins-mad
				)
	)
	
If the user enables both gstreamer and ffmpeg USE flags, he is asking for both  GStreamer and FFmpeg to be activated. If we must choose only one of FFmpeg and GStreamer, and the user selects both, the ebuild should die with a clear error message. To silently choose FFmpeg instead of GStreamer is unreasonable. I changed the ebuild to die if an impossible USE flag combination is set by the user.

3. I changed all the error messages to be more didactic and consistent.

4. The local variable named 'extensions' in function 'src_compile' was unused, so I deleted it. 

5. I made some changes to the coding style

6. I replaced emake ${MAKEOPTS} with just emake. Doesn't emake already uses MAKEOPTS? The ebuilds in the portage tree don't specify MAKEOPTS as an argument to emake. In fact, a cd /usr/portage; find -iname '*.ebuild' -exec grep -H --color=always  MAKEOPTS {} \; shows that MAKEOPTS is very rarely used as an argument to emake. Besides, we are not changing the default MAKEOPTS.

Note: repoman complains with IUSE.invalid about the konqueror USE flag
Comment 13 georgi 2007-11-16 15:39:06 UTC
Any idea whether / when this will be in Portage?
Comment 14 Stefan Schweizer (RETIRED) gentoo-dev 2007-11-21 09:19:12 UTC
Well, I just added that ebuild without much changing. Thank you everyone for working on this.