diff --git a/media-video/gnash/OptionalPackageDescription b/media-video/gnash/OptionalPackageDescription new file mode 100644 index 000000000..82bcd1610 --- /dev/null +++ b/media-video/gnash/OptionalPackageDescription @@ -0,0 +1,5 @@ +Package: Gnash +Version: 0.8 +Copyright: Copyright (C) 2005-2010 Free Software Foundation, Inc. +License: GNU GPL v3 +URL: http://www.gnu.org/software/gnash/ diff --git a/media-video/gnash/gnash-0.bep b/media-video/gnash/gnash-0.bep new file mode 100644 index 000000000..de9e2af0d --- /dev/null +++ b/media-video/gnash/gnash-0.bep @@ -0,0 +1,204 @@ +DESCRIPTION="Gnash - GNU Flash player" +HOMEPAGE="http://www.gnu.org/software/gnash/" +# dummy +SRC_URI="http://zlib.net/zlib-1.2.3.tar.bz2" +REVISION="1" +STATUS_HAIKU="stable" +DEPEND="gcc4,net-misc/curl,dev-libs/openssl (other deps will be cared for later in the build process)" +# The installation of these packages will be prompted from the build +# script: +# media-video/ffmpeg; media-image/giflib; +# only at compile time: agg >= 2.5; dev-libs/boost +# at runtime, boost-all can be replaced with boost-thread and boost-date_time +# to checkout gnash sources: python >= 2.4; dev-util/bzr +# +# urls: +# http://students.mimuw.edu.pl/~ap262965/haiku-gnash/libboost_thread-1.38.0-gcc4-2009-11-14.zip +# http://students.mimuw.edu.pl/~ap262965/haiku-gnash/libboost_date_time-1.38.0-gcc4-2009-11-14.zip +# SDL gui requires http://students.mimuw.edu.pl/~ap262965/haiku-gnash/SDL-1.2.13-r1a1-x86-gcc4-2009-11-13.zip +# iconv_header http://students.mimuw.edu.pl/~ap262965/haiku-gnash/iconv-091128.h + +BUILD { + function ask_install() { \ + case `alert --idea "Install $1?" "Install" "Already Installed" "Bail"` in \ + "Install") \ + wget "$2" ; \ + bn=`basename "$2"` ; \ + unzip -d /boot "$bn" ; \ + true \ + ;; \ + "Already Installed") \ + true \ + ;; \ + *) \ + echo "NOTE: aborting Gnash installation" ; \ + false \ + ;; \ + esac \ + } + + if test ! -e gnash; then \ + case `alert --idea "Install (unstable) bazaar 2.1.0? Bazaar is needed to checkout the Gnash sources." "Install" "Already Installed" "Bail"` in \ + "Install") \ + if test ! -e bzr-2.1.0.tar.gz ; then \ + wget http://launchpad.net/bzr/2.1/2.1.0/+download/bzr-2.1.0.tar.gz ; \ + tar xf bzr-2.1.0.tar.gz ; \ + fi ; \ + pushd bzr-2.1.0 ; \ + if test ! -e bzr.old ; then \ + mv bzr bzr.old ; \ + sed bzr.old > bzr -e 's|/usr/bin/env python|/boot/common/bin/python|' ; \ + chmod +x bzr ; \ + fi ; \ + if test ! -e setup.py.old ; then \ + mv setup.py setup.py.old ; \ + sed setup.py.old > setup.py -e 's|/usr/bin/env python|/boot/common/bin/python|' ; \ + chmod +x setup.py ; \ + fi ; \ + ./setup.py install ; \ + popd ; \ + true \ + ;; \ + "Already Installed") \ + true \ + ;; \ + *) \ + echo "NOTE: aborting Gnash installation" ; \ + false \ + ;; \ + esac ; \ + bzr branch http://bzr.savannah.gnu.org/r/gnash/trunk/ gnash; \ + fi + + ask_install "Ffmpeg (gcc4)" http://students.mimuw.edu.pl/~ap262965/haiku-gnash/ffmpeg-gcc4-haiku-2009-09-19.zip + ask_install "libgif" http://www.fileden.com/files/2008/8/23/2062382/packages/giflib-4.1.6-gcc2-2008-12-31.zip + + ask_install "Boost 1.38.0" http://www.haiku-ports.de/packages/dev-libs/boost/boost-1.38.0-gcc4-haiku-2009-09-13.zip + ask_install "Agg 2.5" http://students.mimuw.edu.pl/~ap262965/haiku-gnash/agg-2.5-gcc4-haiku-2009-09-13.zip + + pushd gnash + setgcc gcc4 + if test ! -e configure; then \ + ./autogen.sh ; \ + rm config.status ; true ;\ + fi + if test ! -e config.status; then \ + ./configure --prefix=/boot/apps/Gnash --exec-prefix=/boot/apps/Gnash --bindir=/boot/apps/Gnash --sysconfdir=/boot/preferences/Gnash --libdir=/boot/common/lib --with-renderer=agg --enable-fps-debug=yes --enable-plugins --enable-npapi --with-npapi-plugindir=/boot/apps/Gnash ; \ + fi + make "CXXFLAGS=-I/boot/common/include/boost-1_38/" + + + truncate --size 0 mime.zip.base64 + echo "UEsDBAoAAAAAABZQhTsAAAAAAAAAAAAAAAABALkBeFVUCQADTC8aS5cvGktVeAQAAAAAAEJloAH1" >> mime.zip.base64 + echo "AwAAAAgA5NPsGnNy9Q+2CokMcGXw9fQNZoAA5cSCgpzM5MSSzPw8/QrdsrwUvaRU3dSctNSK1OTS" >> mime.zip.base64 + echo "ksSknFQGJ5BGx4CA+GBPd2S98ph60/MSizN0C3JK0zPzEPrcfBzdgxmALDeoThYmIAGXDnMNCvb0" >> mime.zip.base64 + echo "9wMpCIPIM63gApKMQPycmQEOgjPyk7PLE8tSFdxygNYwpELF2z1TGHZM55AAsf9wchRUtaYwLBBl" >> mime.zip.base64 + echo "kMgoygXz57ZC5N1BjlOAOu7///+8E7IZ/vVnMzR0ZjM4NGYzsAP1W0gySMzRsWdI2OjOMAOox2EZ" >> mime.zip.base64 + echo "B9gcFqDcjMPcEjJcHAVJc1NAVoHtiwHyJeakgNV3ANk2QLymTR/sLpAYSN4IyAexYeoF2/XBah+Y" >> mime.zip.base64 + echo "eDAsYWCSgKkF4TtAcR8diDwIg+wEyYPUgthrgGJVQHmg8/8rOLozhHgGxjPgASDzwH6BmjMKqAvA" >> mime.zip.base64 + echo "idjN08c1HpSzghl8g93doVItHr5uhgzQdPwfB9CAyrOiqWGA8hkZ2BiCQoKdQWqUoAaDxEsqC1KL" >> mime.zip.base64 + echo "GeSAPNRMWAzLI7pp4DwCAFBLAQIXEAoAAAAAABZQhTsAAAAAAAAAAAAAAAABABYAAAAAAAAAAACk" >> mime.zip.base64 + echo "gQAAAAB4VVQFAANMLxpLVXgAAEJlBQCbAQAAAFBLBQYAAAAAAQABAEUAAADYAQAAAAA=" >> mime.zip.base64 + base64 -d mime.zip.base64 > mime.zip + + pushd plugin ; \ + mkdir -pv .libs ; \ + unzip -o ../mime.zip ; \ + for GCC_VERSION in gcc2 gcc4 ; do \ + ( setgcc $GCC_VERSION && \ + pushd mozilla-sdk && \ + g++ -DHAVE_CONFIG_H -I. -I../.. -DPLUGIN_TRACE -DXP_BEOS -I./include -I../../libbase -I/boot/common/include -g -O2 -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith -Wreturn-type -Wnon-virtual-dtor -Wunused -c np_entry.cpp -o ../np_entry.o && \ + g++ -DHAVE_CONFIG_H -I. -I../.. -DPLUGIN_TRACE -DXP_BEOS -I./include -I../../libbase -I/boot/common/include -g -O2 -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith -Wreturn-type -Wnon-virtual-dtor -Wunused -c npp_gate.cpp -o ../npp_gate.o && \ + g++ -DHAVE_CONFIG_H -I. -I../.. -DPLUGIN_TRACE -DXP_BEOS -I./include -I../../libbase -I/boot/common/include -g -O2 -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith -Wreturn-type -Wnon-virtual-dtor -Wunused -c npn_gate.cpp -o ../npn_gate.o && \ + popd && \ + g++ -DHAVE_CONFIG_H -I. -I.. -DPLUGIN_TRACE -DXP_BEOS -DGNASHBINDIR=\"/boot/common/bin\" -DSYSCONFDIR=\"/boot/preferences/Gnash\" -I../libcore/parser -I../libbase -I../backend -I./mozilla-sdk -I./mozilla-sdk/include -I/boot/common/include -I/boot/common/include/boost-1_38/ -g -O2 -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith -Wreturn-type -Wnon-virtual-dtor -Wunused -c plugin.cpp -o plugin.o && \ + g++ -shared np_entry.o npp_gate.o npn_gate.o plugin.o -lbe -o .libs/libgnashplugin.$GCC_VERSION.so && \ + copyattr x .libs/libgnashplugin.$GCC_VERSION.so \ + ) || (setgcc gcc4; exit 1); \ + done ; \ + setgcc gcc4 + popd + rm mime.zip mime.zip.base64 + + popd +} +INSTALL { + cd gnash + setgcc gcc4 + make install + + true DISTRODIR=`pwd`/../../distro + DISTRODIR=/boot/develop/haikuports/media-video/gnash/distro + if test ! -e "$DISTRODIR"; then \ + exit 1; \ + fi + + install plugin/.libs/libgnashplugin.gcc2.so "$DISTRODIR/boot/apps/Gnash" + install plugin/.libs/libgnashplugin.gcc4.so "$DISTRODIR/boot/apps/Gnash" + + pushd "$DISTRODIR" + + mkdir -pv boot/home/config/settings + cp -r boot/preferences/Gnash boot/home/config/settings + + mkdir -pv boot/home/config/settings/Mozilla/plugins + ln -s /boot/apps/Gnash/libgnashplugin.gcc2.so boot/home/config/settings/Mozilla/plugins/ + ln -s /boot/apps/Gnash/libgnashplugin.gcc4.so boot/home/config/settings/Mozilla/plugins/ + + rm boot/apps/Gnash/gprocessor boot/apps/Gnash/rtmpget boot/apps/Gnash/gnash + rm -r boot/apps/Gnash/include boot/apps/Gnash/share + rm -r boot/common/lib/pkgconfig + rm -r boot/common/lib/gnash/libmoz* + mkdir -pv boot/common/bin/ + ln -s /boot/apps/Gnash/haiku-gnash boot/common/bin/haiku-gnash + ln -s /boot/apps/Gnash/haiku-gnash boot/common/bin/gnash + for i in boot/common/lib/gnash/*; do \ + strip --strip-unneeded "$i"; \ + done ; \ + strip --strip-debug boot/apps/Gnash/haiku-gnash ; \ + true + + truncate --size 0 gnash.hvif.base64 + echo "bmNpZgMCAQYCPzf3AAAAAAAAvzf3SkqjS4TDfDxvj4JdhaICAAICAAAAu6qqwAAAAAAATAAASsqq" >> gnash.hvif.base64 + echo "AF2Jpf//9vf9AAPZVR4HAhXDn7+5xW7AFcHQv1y9bb51vW2/Br1tvaLDELu0wYm9OsMQu7TDD7u0" >> gnash.hvif.base64 + echo "ww+7tMP0ut3Ef7iMxH+5wsR/uCXEUyvEcLfBxKC3QMU0tprFDbb0xWm2HsRYtQ3E57T3w0O1N8II" >> gnash.hvif.base64 + echo "tKHCo7Twwca0e8E3tD3BgLRawTa0PcE1tDzBNbQ8wTW0PME1tDzBNbQ8wHuz9L7SIr+sIruuIrkk" >> gnash.hvif.base64 + echo "uIy5JLXsuSS6pb0IvQ66xbxtvFC9Z7qcv0K6nL5Supy/4rwVwNa7PcBtuyjBYbkWxRi5FsLZuRbH" >> gnash.hvif.base64 + echo "Xb4fyDG7DcgxwTLIMcS7xdHDi8cBxevEocZpwqTGacPUxmnBdAIEuye4jLsnM7sntoW+0bThvMu0" >> gnash.hvif.base64 + echo "4cDYtOHCfLiMwny2hcJ8M77RvDbA2Lw2vMu8NgIFvqrG88EKxvO8Ssbzu6XEhrulxde7pcNQvUHB" >> gnash.hvif.base64 + echo "S7wNwoy9tMFuvpbBm74pwYnAUcHkxHnDpcR5wiDEecUrAgS+0rVRv3K1Ub4xtVG9r7Z0va+11L2v" >> gnash.hvif.base64 + echo "t2m+0rgbvtK3q77St6u/9bZ0v/W3ab/0tdQCBLuXuIy7l7fru5e5LLy6ua68Grmuva+5rr5huIy9" >> gnash.hvif.base64 + echo "8biMvfG4jLy6t2m9r7dpvBq3aQIEvtK7xr4xu8a/crvGv/W6o7/1u0O/9bmuvtK4/L7SuWy+0rls" >> gnash.hvif.base64 + echo "va+6o72vua69r7tDAgTCDLiMwgy5LMIMt+vA6bdpwYq3ab/0t2m/QriMv7K4jL+yuIzA6bmuv/S5" >> gnash.hvif.base64 + echo "rsGJua4HCgEDAAECAkAAAAAAAAAAAL/J1gAAAE0rJwoAAwABAhgAFQEXggAECgADAAECAAoCAQMA" >> gnash.hvif.base64 + echo "CgIBBAAKAgEFAAoCAQYA" >> gnash.hvif.base64 + base64 -d gnash.hvif.base64 > gnash.hvif + xres -o boot/apps/Gnash/haiku-gnash -a VICN:101:BEOS:ICON gnash.hvif + rm gnash.hvif gnash.hvif.base64 + + + if test `uname -v | cut '-d ' -f1 | cut -c2-` -lt 33997; then \ + if test -z `grep -li -e '^set sound off$' boot/home/config/settings/Gnash/gnashrc`; then \ + echo 'set sound off' >> boot/home/config/settings/Gnash/gnashrc | sort -u ; \ + fi ; \ + if test -z `grep -li -e '^set pluginsound off$' boot/home/config/settings/Gnash/gnashpluginrc`; then \ + echo 'set pluginsound off' >> boot/home/config/settings/Gnash/gnashpluginrc | sort -u ; \ + fi ; \ + fi + + true this is potentially harmful + if test ! -e /system/lib/libpng.so.1.2; then \ + ln -s /system/lib/libpng.so system/lib/libpng.so.1.2 ; \ + fi + + if test ! -e /system/lib/libz.so.1; then \ + ln -s /system/lib/libz.so system/lib/libz.so.1 ; \ + fi + + if test ! -e /system/lib/libjpeg.so.8.0; then \ + ln -s /system/lib/libjpeg.so system/lib/libjpeg.so.8.0 ; \ + fi + popd + + read -p "Gnash installed, press key " +}