[media-tv/boxee] Add boxee ebuild for testing. Taken from gentoo bug 258082
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
AUX 12563_fix.patch 1182 RMD160 14a71e3c771ba62a0b19f958f7b6151be186c536 SHA1 8f318ff074c0fff24a3005b89402b1a2a5bdb3a8 SHA256 0b0c469112a8664552cd76353b4f12aa384b1a568d444c729ad8e3ac515d647b
|
||||
AUX anish.patch 786 RMD160 3c14f7b749e093deea8e4f61572c456e30dc063c SHA1 98b12aba9e1a73e8f02837a0ca5be70e18b88e9e SHA256 3522e2be90b5f6ab94a4eb2951b00a327f0ea2d5187671050205d46d3c957950
|
||||
AUX boxee-0.9.21.11497-fix_Para_py.patch 2943 RMD160 355fbff89120a8c1dd074ea9c7efddaa1cc19e63 SHA1 a5b94cd9db15dd903c5f6ebe91d2ae2a553bc461 SHA256 0df9d7bb7b06ed00ac9ba85719a35f98d253722d58e8c65f96c0c0b430ed643a
|
||||
AUX boxee-0.9.21.12563-fix_python_a-include_ThreadPolicy.patch 629 RMD160 9866d840b0987fe92c041ef4e61bf91073ec93d9 SHA1 f1ca0d507eb33bfffe53351088bde69d67bf56ef SHA256 9a53b3254bf8a730dd9dd0b0ba6435354e96cd794737549b7a44e25465fc8b23
|
||||
AUX boxee.desktop 228 RMD160 fa9b54d5b1dd565144f77ab3934e31c23c33b2ef SHA1 edd1fbaf4d9ea3e8d2fa8deaf7902159c46a3ebd SHA256 573f370a0e2e73ce71ccb5b90cc9fa53c60b1c9b934af8242b1eee9a834cf434
|
||||
AUX boxee64.patch 2046 RMD160 9b541ced179839f15bacc28362db7176a53e9806 SHA1 24c46671f1ef3e9d1b2343bef6982d91d0d73ca0 SHA256 03c8557dcf687452660148488c3ef8b9e931261770b63b7c4c2fe8f6ab8d1bdf
|
||||
AUX ffmpeg64.patch 6766 RMD160 95ad61da45dc8f88262f46092beb3dc954c7d9fa SHA1 4c2ec03145a9859c0a71a9494bf6110a1117efbd SHA256 c318f914f4b5452e0bd088d17688d3cd6255e7580d866ddd78174954bbf242e1
|
||||
AUX flashlib-Makefile.patch 420 RMD160 a67436973bf769ad0a169493bcb6ce835f08497f SHA1 97ce1deb24c34498d81441a2f784cb747f6357f2 SHA256 ef36d254a78160fa7153ff588c32e1fef256f23f1aab16a174c4fdb0c61334ea
|
||||
AUX fribidi.patch 319 RMD160 dc0e2e5df43072415b66e0ec54f6cbff2e2b581a SHA1 e8943019b7bb5ace5aeae6b86fcd24e8d8c63c69 SHA256 41c54e149779d757ef0151b2ec48022e1221b91ffdca372ea39999bc29995ee8
|
||||
AUX libmms.patch 399 RMD160 520af1fc937c9330b6f7efd17b6396fbbf55a2b7 SHA1 0f9430bc6d7cc4b5acee1f11acbfbf1052e20cb4 SHA256 445e98764888d146a34bc9d2ae77b416290f51fbe30ce8306b6fd2d19ee09bd9
|
||||
AUX libpng.patch 3733 RMD160 fd7f6a1bbedbd8008e2e05965476858a8402ea65 SHA1 4ffb7e0a0b0c6559164220a211b2520b67972fb3 SHA256 f0d366deee7d31d7ad9102c86f9a926fca567845e3bb1cac8020b1ad74f07171
|
||||
DIST boxee-sources-0.9.23.15885.tar.bz2 164663013 RMD160 bfd4aafdda3ec27f70971ee0bac417fadbb74466 SHA1 057856eb1e902111f7c7c97736542ed798edc6f0 SHA256 16e31c52db193fcfad1f6c65ca68fb53574892acd8b5fdb6db9f8189ce99b194
|
||||
EBUILD boxee-0.9.23_beta15885.ebuild 11452 RMD160 6648e855d0af8fd5fa5a405f5afd9628b2a1c1c1 SHA1 e080f1612a2b62f5074b76f2b2d2c46dee2202e4 SHA256 028832990b3bef3db62f339a64fac2fc5697fa1b2f091a21fc88e9e954d1a453
|
||||
@@ -0,0 +1,353 @@
|
||||
# Copyright 1999-2008 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: $
|
||||
|
||||
EAPI="2"
|
||||
inherit autotools eutils
|
||||
|
||||
PKGVER="0.9.23.15885"
|
||||
|
||||
SRC_URI="http://dl.boxee.tv/${PN}-sources-${PKGVER}.tar.bz2"
|
||||
DESCRIPTION="Boxee is a fork of XBMC with a focus on social media"
|
||||
HOMEPAGE="http://www.boxee.tv/"
|
||||
|
||||
LICENSE="GPL-2 BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="debug mid xrandr opengl"
|
||||
RESTRICT="mirror bindist strict"
|
||||
|
||||
RDEPEND="opengl? ( virtual/opengl )
|
||||
app-arch/bzip2
|
||||
app-arch/unrar
|
||||
app-arch/unzip
|
||||
app-i18n/enca
|
||||
>=dev-lang/python-2.6
|
||||
dev-libs/boost
|
||||
dev-libs/fribidi
|
||||
dev-libs/libpcre
|
||||
dev-libs/lzo
|
||||
dev-libs/tre
|
||||
>=dev-python/pysqlite-2
|
||||
media-libs/alsa-lib
|
||||
media-libs/faac
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
media-libs/glew
|
||||
media-libs/jasper
|
||||
media-libs/libmad
|
||||
media-libs/libmms
|
||||
media-libs/libsamplerate
|
||||
media-libs/libogg
|
||||
media-libs/libvorbis
|
||||
media-libs/libsdl[alsa,X]
|
||||
media-libs/sdl-gfx
|
||||
media-libs/sdl-image[gif,jpeg,png]
|
||||
media-libs/sdl-mixer
|
||||
media-libs/sdl-sound
|
||||
net-libs/xulrunner
|
||||
www-plugins/adobe-flash
|
||||
net-misc/curl
|
||||
sys-apps/dbus
|
||||
sys-apps/hal
|
||||
sys-apps/pmount
|
||||
virtual/mysql
|
||||
x11-libs/libvdpau
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender"
|
||||
DEPEND="${RDEPEND}
|
||||
x11-proto/xineramaproto
|
||||
dev-util/cmake
|
||||
app-misc/screen
|
||||
x86? ( dev-lang/nasm
|
||||
virtual/krb5 )"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
S=${WORKDIR}/${PN}-sources-${PKGVER}
|
||||
|
||||
src_unpack() {
|
||||
local pic
|
||||
|
||||
if [ $(uname -m) = "x86_64" ]; then
|
||||
my_arch=x86_64
|
||||
else
|
||||
my_arch=i486
|
||||
fi || die "Set arch failed"
|
||||
|
||||
my_prefix=/opt/${PN}
|
||||
pic="-fPIC"
|
||||
|
||||
unpack ${A}
|
||||
cd "${S}"
|
||||
|
||||
# this section contains changes required for x86_64 and thus is only loaded if your arch is x86_64
|
||||
|
||||
if [ $(uname -m) = "x86_64" ]; then
|
||||
|
||||
# boxee64.patch allows boxee to compile on 64bit systems
|
||||
epatch "${FILESDIR}/boxee64.patch" || die "Patch failed"
|
||||
|
||||
# ffmpeg needs to be patched for 64bit systems
|
||||
epatch "${FILESDIR}/ffmpeg64.patch" || die "Patch failed"
|
||||
|
||||
# two symlinks added by paulingham that work with boxee64.patch to allow boxee to compile on x86_64
|
||||
dosym /usr/lib/libtalloc.so.2 ${S}/xbmc/lib/libsmb/libtalloc-x86_64-linux.a
|
||||
dosym /usr/lib/libwbclient.so.0 ${S}/xbmc/lib/libsmb/libwbclient-x86_64-linux.a
|
||||
|
||||
_xulrunner=xulrunner-x86_64-linux
|
||||
else
|
||||
_xulrunner=xulrunner-i486-linux
|
||||
fi || return 1
|
||||
|
||||
# anish.patch adds some minor tweaks anish figured out to get the latest sources running
|
||||
epatch "${FILESDIR}/anish.patch" || die "Patch failed"
|
||||
|
||||
# fribidi.patch fixes the compile issue related to fribidi
|
||||
epatch "${FILESDIR}/fribidi.patch" || die "Patch failed"
|
||||
|
||||
# patch to compile against libpng14, thanks to wonder for providing the original patch
|
||||
epatch "${FILESDIR}/libpng.patch" || die "Patch failed"
|
||||
|
||||
# patch to compilet release 0.9.21.12563, remove extraneous function calls that cause linkage failure
|
||||
epatch "${FILESDIR}/12563_fix.patch" || die "Patch failed"
|
||||
|
||||
# patch to fix libmms
|
||||
epatch "${FILESDIR}/libmms.patch" || die "Patch failed"
|
||||
|
||||
# fix the old Para.py syntax errors
|
||||
epatch "${FILESDIR}/boxee-0.9.21.11497-fix_Para_py.patch" || die "Patch failed"
|
||||
|
||||
# fix python include thread policy
|
||||
cp /usr/include/python2.6/pyconfig.h ${S}/xbmc/lib/libPython/Python/Include
|
||||
cp ${S}/xbmc/{ThreadPolicy.cpp,ThreadPolicy.h} ${S}/xbmc/lib/libPython
|
||||
epatch "${FILESDIR}/boxee-0.9.21.12563-fix_python_a-include_ThreadPolicy.patch" || die "Patch failed"
|
||||
|
||||
cd "${S}"/xbmc/lib/libass
|
||||
./autogen.sh || die "libass failed"
|
||||
autoreconf --install || die "libass failed"
|
||||
|
||||
cd "${S}"/xbmc/lib/libBoxee/tinyxpath
|
||||
autoreconf -vif || die "tinyxpath failed"
|
||||
./configure || die "tinyxpath failed"
|
||||
|
||||
cd "${S}"/xbmc/visualizations/Goom/goom2k4-0
|
||||
aclocal || die "goom2k4-0 failed"
|
||||
libtoolize --copy --force || die "goom2k4-0 failed"
|
||||
./autogen.sh --enable-static --with-pic || die "goom2k4-0 failed"
|
||||
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
aclocal || die "aclocal failed!"
|
||||
autoheader || die "autoheader failed!"
|
||||
autoconf || die "autoconf failed!"
|
||||
|
||||
econf \
|
||||
--disable-ccache \
|
||||
--prefix=${my_prefix} \
|
||||
$(use_enable debug) \
|
||||
$(use_enable mid) \
|
||||
$(use_enable xrandr) \
|
||||
|| die "Configure failed!"
|
||||
|
||||
cd "${S}"
|
||||
|
||||
#this is another hack to fix an issue with gcc44
|
||||
|
||||
if [ $(uname -m) = "x86_64" ]; then
|
||||
sed -r 's/\(MAKE\)\ -C\ xbmc\/screensavers$/\(MAKE\)\ CFLAGS=\"-march=k8\ -02\ -pipe\"\ -C\ xbmc\/screensavers/g' Makefile > Makefile.sed || die "sed failed"
|
||||
else
|
||||
sed -r 's/\(MAKE\)\ -C\ xbmc\/screensavers$/\(MAKE\)\ CFLAGS=\"-march=i486\ -02\ -pipe\"\ -C\ xbmc\/screensavers/g' Makefile > Makefile.sed || die "sed failed"
|
||||
fi
|
||||
cat Makefile.sed > Makefile || die "cat failed"
|
||||
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cd "${S}"
|
||||
emake -j1 || die "Make boxee failed!"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
|
||||
cd "${S}"
|
||||
|
||||
# language
|
||||
|
||||
install -d ${my_prefix}/language || return 1
|
||||
pushd ${S}/language/ || return 1
|
||||
find . | sed -e 's/\.\///g' | while read file; do
|
||||
if [ -d "$file" ]; then
|
||||
install -d ${my_prefix}/language/"$file" || return 1
|
||||
else
|
||||
install -D "$file" ${my_prefix}/language/"$file" || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
popd || return 1
|
||||
|
||||
# media
|
||||
|
||||
install -d ${my_prefix}/media || return 1
|
||||
pushd ${S}/media/ || return 1
|
||||
find . | sed -e 's/\.\///g' | while read file; do
|
||||
if [ $(echo "$file" | grep "icon.png" -i -c) = 0 -a $(echo "$file" | grep "icon32x32.png" -i -c) = 0 -a $(echo "$file" | grep "xbmc.icns" -i -c) = 0 -a $(echo "$file" | grep "Boxee.ico" -i -c) = 0 -a $(echo "$file" | grep "Splash.png" -i -c) = 0 -a $(echo "$file" | grep "Splash_old.png" -i -c) = 0 -a $(echo "$file" | grep "Fonts/arial.ttf" -i -c) = 0 ]; then
|
||||
if [ -d "$file" ]; then
|
||||
install -d ${my_prefix}/media/"$file" || return 1
|
||||
else
|
||||
install -D "$file" ${my_prefix}/media/"$file" || return 1
|
||||
fi || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
popd || return 1
|
||||
|
||||
# scripts
|
||||
|
||||
install -d ${my_prefix}/scripts || return 1
|
||||
pushd ${S}/scripts || return 1
|
||||
find . | sed -e 's/\.\///g' | while read file; do
|
||||
if [ $(echo "$file" | grep "scripts.zip" -i -c) = 0 -a $(echo "$file" | grep "user_submitted.zip" -i -c) = 0 -a $(echo "$file" | grep "autoexec.py" -i -c) = 0 ]; then
|
||||
if [ -d "$file" ]; then
|
||||
install -d ${my_prefix}/scripts/"$file" || return 1
|
||||
else
|
||||
install -D "$file" ${my_prefix}/scripts/"$file" || return 1
|
||||
fi || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
popd || return 1
|
||||
|
||||
# skin
|
||||
|
||||
install -d ${my_prefix}/skin/boxee || return 1
|
||||
pushd ${S}/skin/boxee || return 1
|
||||
find . | sed -e 's/\.\///g' | while read file; do
|
||||
|
||||
if [ -d "$file" ]; then
|
||||
install -d ${my_prefix}/skin/boxee/"$file" || return 1
|
||||
else
|
||||
install -D "$file" ${my_prefix}/skin/boxee/"$file" || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
install -d ${my_prefix}/skin/boxee/media || return 1
|
||||
popd || return 1
|
||||
|
||||
# system
|
||||
|
||||
pushd ${S}/system/python/local || return 1
|
||||
popd || return 1
|
||||
|
||||
install -d ${my_prefix}/system || return 1
|
||||
pushd ${S}/system/ || return 1
|
||||
find . -path "./python/Lib" -prune -o -print | sed -e 's/\.\///g' | while read file; do
|
||||
if [ $(echo "$file" | grep "win32" -i -c) = 0 -a $(echo "$file" | grep "spyce" -i -c) = 0 -a $(echo "$file" | grep "DLLs" -i -c) = 0 -a $(echo "$file" | grep "osx" -i -c) = 0 -a $(echo "$file" | grep -e "\.dll$" -i -c) = 0 -a $(echo "$file" | grep -e "\.pyc$" -i -c) = 0 -a $(echo "$file" | grep "xulrunner" -i -c) = 0 -a $(echo "$file" | grep "etc" -i -c) = 0 -a $(echo "$file" | grep "python24.zlib" -i -c) = 0 -a $(echo "$file" | grep "upnpserver.xml" -i -c) = 0 -a $(echo "$file" | grep "IRSSmap.xml" -i -c) = 0 -a $(echo "$file" | grep "X10-Lola-IRSSmap.xml" -i -c) = 0 -a $(echo "$file" | grep "fontconfig_readme" -i -c) = 0 -a $(echo "$file" | grep "libmpeg2-i486-linux.so" -i -c) = 0 -a $(echo "$file" | grep "bxoverride.so" -i -c) = 0 -a $(echo "$file" | grep "readme.txt" -i -c) = 0 -a $(echo "$file" | grep "simplejson/_speedups.so" -i -c) = 0 ]; then
|
||||
if [ -d "$file" ]; then
|
||||
install -d ${my_prefix}/system/"$file" || return 1
|
||||
else
|
||||
install -D "$file" ${my_prefix}/system/"$file" || return 1
|
||||
fi || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
popd || return 1
|
||||
|
||||
install -d ${my_prefix}/system/players/flashplayer/${_xulrunner} || return 1
|
||||
pushd ${S}/system/players/flashplayer/${_xulrunner} || return 1
|
||||
find . | sed -e 's/\.\///g' | while read file; do
|
||||
if [ -d "$file" ]; then
|
||||
install -d ${my_prefix}/system/players/flashplayer/${_xulrunner}/"$file" || return 1
|
||||
else
|
||||
install -D "$file" ${my_prefix}/system/players/flashplayer/${_xulrunner}/"$file" || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
popd || return 1
|
||||
|
||||
install -d ${my_prefix}/system/python/lib || return 1
|
||||
pushd ${S}/system/python/Lib || return 1
|
||||
|
||||
find . | sed -e 's/\.\///g' | while read file; do
|
||||
if [ $(echo "$file" | grep -e "darwin$" -e "mac$" -i -c) = 0 ]; then
|
||||
if [ -d "$file" ]; then
|
||||
install -d ${my_prefix}/system/python/lib/"$file" || return 1
|
||||
elif [ ! $(echo "$file" | grep -e "\.pyo$" -i -c) = 0 ]; then
|
||||
install -D "$file" ${my_prefix}/system/python/lib/"$file" || return 1
|
||||
elif [ ! $(echo "$file" | grep -e "\.so$" -i -c) = 0 ]; then
|
||||
install -D "$file" ${my_prefix}/system/python/lib/"$file" || return 1
|
||||
fi || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
popd || return 1
|
||||
|
||||
rm -rf ${my_prefix}/system/python/lib/plat-darwin || return 1
|
||||
rm -rf ${my_prefix}/system/python/lib/plat-mac || return 1
|
||||
rmdir ${my_prefix}/system/python/lib/idlelib/Icons || return 1
|
||||
rmdir ${my_prefix}/system/python/lib/site-packages || return 1
|
||||
|
||||
# userdata
|
||||
|
||||
cd ${S}/UserData
|
||||
mv sources.xml.in.diff.linux sources.xml || die "moving userdata failed!"
|
||||
mv advancedsettings.xml.in advancedsettings.xml || die "moving userdata failed!"
|
||||
cd ${S}
|
||||
insinto ${my_prefix}/UserData
|
||||
doins -r UserData/{*linux*,advancedsettings.xml,sources.xml}
|
||||
dosym UserData ${my_prefix}/userdata
|
||||
|
||||
# plugins
|
||||
|
||||
dodir ${my_prefix}/plugins/music
|
||||
dodir ${my_prefix}/plugins/pictures
|
||||
dodir ${my_prefix}/plugins/video
|
||||
|
||||
# visualisations
|
||||
|
||||
install -d ${my_prefix}/visualisations/
|
||||
pushd ${S}/visualisations/ || return 1
|
||||
for i in *; do
|
||||
if [ -d "$i" ]; then
|
||||
install -d ${my_prefix}/visualisations/"$i" || return 1
|
||||
if [ $(ls "$i" | wc -l) != "0" ]; then
|
||||
install -D "$i"/* ${my_prefix}/visualisations/"$i"/ || return 1
|
||||
fi || return 1
|
||||
else
|
||||
if [ $(echo "$i" | grep "osx" -c) = "0" -a $(echo "$i" | grep "win32" -c) = "0" -a $(echo "$i" | grep "Goom.vis" -c) = "0" -a $(echo "$i" | grep "xbmc_vis.h" -c) = "0" ]; then
|
||||
install -D "$i" ${my_prefix}/visualisations/ || return 1
|
||||
fi || return 1
|
||||
fi || return 1
|
||||
done || return 1
|
||||
popd || return 1
|
||||
|
||||
# screensavers
|
||||
insinto ${my_prefix}/screensavers
|
||||
dodir ${my_prefix}/screensavers
|
||||
doins -r screensavers/*.xbs
|
||||
|
||||
# rtorrent
|
||||
dodir ${my_prefix}/bin
|
||||
exeinto ${my_prefix}/bin
|
||||
doexe bin-linux/boxee-rtorrent
|
||||
|
||||
# boxee binary
|
||||
mv run-boxee-desktop.in run-boxee-desktop
|
||||
exeinto ${my_prefix}/
|
||||
doexe Boxee
|
||||
doexe run-boxee-desktop
|
||||
|
||||
# give_me_my_mouse_back
|
||||
gcc ${S}/give_me_my_mouse_back.c -o ${S}/give_me_my_mouse_back -lSDL || die "gcc compiling failed!"
|
||||
insinto ${my_prefix}/
|
||||
doexe give_me_my_mouse_back
|
||||
|
||||
# xbmc-xrandr
|
||||
insinto ${my_prefix}/
|
||||
doexe xbmc-xrandr
|
||||
|
||||
# flash plugins
|
||||
dosym /opt/Adobe/flash-player/libflashplayer.so ${my_prefix}/system/players/flashplayer/${_xulrunner}/bin/plugins/libflashplayer.so
|
||||
|
||||
# freedesktop
|
||||
insinto /usr/share/applications
|
||||
doins debian/boxee.desktop
|
||||
insinto /usr/share/pixmaps
|
||||
doins debian/boxee.png
|
||||
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
--- ./xbmc/lib/libPython/XBPyPersistentThread.cpp.orig 2010-07-11 03:20:51.000000000 -0700
|
||||
+++ ./xbmc/lib/libPython/XBPyPersistentThread.cpp 2010-07-11 03:23:40.000000000 -0700
|
||||
@@ -390,42 +390,10 @@
|
||||
|
||||
void XBPyPersistentThread::CreatePolicy(const ThreadIdentifier threadId)
|
||||
{
|
||||
- if (PyEval_ThreadsInitialized())
|
||||
- {
|
||||
-
|
||||
- //
|
||||
- // File System policy - read only
|
||||
- //
|
||||
- ThreadPolicy *fsPolicy = TPAllocPolicy(threadId, FILE_SYSTEM);
|
||||
-
|
||||
- TPAddPolicy(threadId, fsPolicy);
|
||||
-
|
||||
- //
|
||||
- // Shared library policy
|
||||
- //
|
||||
- ThreadPolicy *slPolicy = TPAllocPolicy(threadId,SHARED_LIBRARY);
|
||||
- FileRule rule;
|
||||
-
|
||||
- rule.fileName = _P("special://xbmc/system/python");
|
||||
- rule.accessMode = FILE_ACCESS_READ;
|
||||
-
|
||||
- TPAddRuleToPolicy(threadId, slPolicy, &rule);
|
||||
-
|
||||
- TPAddPolicy(threadId, slPolicy);
|
||||
-
|
||||
- //
|
||||
- // ProcessExec policy
|
||||
- //
|
||||
- ThreadPolicy *pePolicy = TPAllocPolicy(threadId,PROCESS_EXEC);
|
||||
-
|
||||
- TPAddPolicy(threadId, pePolicy);
|
||||
-
|
||||
- }
|
||||
}
|
||||
|
||||
void XBPyPersistentThread::DeletePolicy(const ThreadIdentifier threadId)
|
||||
{
|
||||
- TPDeletePolicy(threadId, NULL);
|
||||
}
|
||||
|
||||
void XBPyPersistentThread::SetSecurityLevel(const CStdString& securityLevel)
|
||||
@@ -0,0 +1,20 @@
|
||||
--- tools/XBMCTex/XFileUtils.cpp.orig 2009-06-24 06:01:25.000000000 -0400
|
||||
+++ tools/XBMCTex/XFileUtils.cpp 2009-06-24 06:01:42.000000000 -0400
|
||||
@@ -20,6 +20,7 @@
|
||||
*/
|
||||
|
||||
#include "system.h"
|
||||
+#include "XHandle.h"
|
||||
#include "PlatformInclude.h"
|
||||
#include "XFileUtils.h"
|
||||
#include "XTimeUtils.h"
|
||||
--- configure.in.orig 2010-01-09 13:50:10.000000000 -0800
|
||||
+++ configure.in 2010-01-09 13:51:42.000000000 -0800
|
||||
@@ -985,7 +985,6 @@
|
||||
xbmc/visualizations/OpenGLSpectrum/Makefile \
|
||||
xbmc/visualizations/WaveForm/Makefile \
|
||||
xbmc/visualizations/iTunes/Makefile \
|
||||
- tools/Linux/xbmc.sh \
|
||||
tools/TexturePacker/Makefile \
|
||||
tools/EventClients/Clients/OSXRemote/Makefile \
|
||||
xbmc/cores/paplayer/FLACCodec/Makefile \
|
||||
@@ -0,0 +1,68 @@
|
||||
diff -up boxee-0.9.21.11497-sources/xbmc/lib/libPython/Python/Lib/lib-old/Para.py.fix boxee-0.9.21.11497-sources/system/python/Lib/lib-old/Para.py
|
||||
--- boxee-0.9.21.11497-sources/xbmc/lib/libPython/Python/Lib/lib-old/Para.py.fix 2010-06-24 20:19:35.116993564 -0400
|
||||
+++ boxee-0.9.21.11497-sources/xbmc/lib/libPython/Python/Lib/lib-old/Para.py 2010-06-24 20:21:27.058041001 -0400
|
||||
@@ -60,15 +60,15 @@ class Para:
|
||||
# don't add any new space (but still remove the stretch)
|
||||
def tabto(self, tab):
|
||||
total = 0
|
||||
- as, de = 1, 0
|
||||
+ as_, de = 1, 0
|
||||
for i in range(len(self.words)):
|
||||
word = self.words[i]
|
||||
if type(word) is Int: continue
|
||||
- (fo, te, wi, sp, st, as, de) = word
|
||||
- self.words[i] = (fo, te, wi, sp, 0, as, de)
|
||||
+ (fo, te, wi, sp, st, as_, de) = word
|
||||
+ self.words[i] = (fo, te, wi, sp, 0, as_, de)
|
||||
total = total + wi + sp
|
||||
if total < tab:
|
||||
- self.words.append((None, '', 0, tab-total, 0, as, de))
|
||||
+ self.words.append((None, '', 0, tab-total, 0, as_, de))
|
||||
#
|
||||
# Make a hanging tag: tab to hang, increment indent_left by hang,
|
||||
# and reset indent_hang to -hang
|
||||
@@ -104,7 +104,7 @@ class Para:
|
||||
break
|
||||
i = i+1
|
||||
continue
|
||||
- fo, te, wi, sp, st, as, de = word
|
||||
+ fo, te, wi, sp, st, as_, de = word
|
||||
if width + wi > avail and width > 0 and wi > 0:
|
||||
break
|
||||
if fo is not None:
|
||||
@@ -116,7 +116,7 @@ class Para:
|
||||
lsp = sp
|
||||
stretch = stretch + st
|
||||
lst = st
|
||||
- ascent = max(ascent, as)
|
||||
+ ascent = max(ascent, as_)
|
||||
descent = max(descent, de)
|
||||
i = i+1
|
||||
while i > j and type(words[i-1]) is Int and \
|
||||
@@ -157,7 +157,7 @@ class Para:
|
||||
h, v)
|
||||
if ok is not None: return ok
|
||||
continue
|
||||
- fo, te, wi, sp, st, as, de = word
|
||||
+ fo, te, wi, sp, st, as_, de = word
|
||||
if extra > 0 and stretch > 0:
|
||||
ex = extra * st / stretch
|
||||
extra = extra - ex
|
||||
@@ -253,7 +253,7 @@ class Para:
|
||||
self.d = None
|
||||
#
|
||||
def _whereisword(self, tuple, word, h1, v1, h2, v2, isfirst, islast):
|
||||
- fo, te, wi, sp, st, as, de = word
|
||||
+ fo, te, wi, sp, st, as_, de = word
|
||||
if fo is not None: self.lastfont = fo
|
||||
h = h1
|
||||
if isfirst: h1 = 0
|
||||
@@ -302,7 +302,7 @@ class Para:
|
||||
return ok
|
||||
#
|
||||
def _screenposword(self, tuple, word, h1, v1, h2, v2, isfirst, islast):
|
||||
- fo, te, wi, sp, st, as, de = word
|
||||
+ fo, te, wi, sp, st, as_, de = word
|
||||
if fo is not None: self.lastfont = fo
|
||||
cc = len(te) + (sp > 0)
|
||||
if self.pos > cc:
|
||||
@@ -0,0 +1,10 @@
|
||||
diff -up boxee-0.9.21.12563-sources/xbmc/lib/libPython/Makefile.fix boxee-0.9.21.12563-sources/xbmc/lib/libPython/Makefile
|
||||
--- boxee-0.9.21.12563-sources/xbmc/lib/libPython/Makefile.fix 2010-07-11 12:04:10.593024394 -0400
|
||||
+++ boxee-0.9.21.12563-sources/xbmc/lib/libPython/Makefile 2010-07-11 12:04:37.264028289 -0400
|
||||
@@ -1,5 +1,5 @@
|
||||
INCLUDES=-I. -I../../ -I../../linux -I../../../guilib -I../../utils -I.
|
||||
-SRCS=XBPython.cpp XBPythonDll.cpp XBPyThread.cpp XBPythonDllFuncs.S XBPyPersistentThread.cpp
|
||||
+SRCS=XBPython.cpp XBPythonDll.cpp XBPyThread.cpp XBPythonDllFuncs.S XBPyPersistentThread.cpp ThreadPolicy.cpp
|
||||
|
||||
LIB=python.a
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Name=Boxee
|
||||
Comment=Next generation social media player
|
||||
Exec=/opt/boxee/run-boxee-desktop
|
||||
Icon=boxee
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=AudioVideo;Video;Player;
|
||||
StartupNotify=false
|
||||
@@ -0,0 +1,54 @@
|
||||
--- xbmc/FileSystem/FileCurl.cpp.orig 2009-11-23 01:12:07.000000000 -0800
|
||||
+++ xbmc/FileSystem/FileCurl.cpp 2010-01-21 13:42:25.000000000 -0800
|
||||
@@ -82,14 +82,6 @@
|
||||
}
|
||||
|
||||
/* curl calls this routine to get more data */
|
||||
-extern "C" size_t dummy_callback(char *buffer,
|
||||
- size_t size,
|
||||
- size_t nitems,
|
||||
- void *userp)
|
||||
-{
|
||||
- return 0;
|
||||
-}
|
||||
-
|
||||
extern "C" size_t write_callback(char *buffer,
|
||||
size_t size,
|
||||
size_t nitems,
|
||||
@@ -281,10 +273,6 @@
|
||||
m_fileSize = m_filePos + (int64_t)length;
|
||||
}
|
||||
|
||||
- char *url = NULL;
|
||||
- if (CURLE_OK == g_curlInterface.easy_getinfo(m_easyHandle, CURLINFO_EFFECTIVE_URL, (char*)&url))
|
||||
- m_strEffectiveUrl = url;
|
||||
-
|
||||
long response;
|
||||
if (CURLE_OK == g_curlInterface.easy_getinfo(m_easyHandle, CURLINFO_RESPONSE_CODE, &response))
|
||||
return response;
|
||||
@@ -959,8 +947,6 @@
|
||||
throw new CRedirectException(new CFileShoutcast);
|
||||
}
|
||||
|
||||
- m_url = m_state->m_strEffectiveUrl;
|
||||
-
|
||||
m_multisession = false;
|
||||
if(m_url.Left(5).Equals("http:") || m_url.Left(6).Equals("https:"))
|
||||
{
|
||||
@@ -1137,7 +1123,6 @@
|
||||
SetRequestHeaders(m_state);
|
||||
g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_TIMEOUT, 5);
|
||||
g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_NOBODY, 0);
|
||||
- g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_WRITEFUNCTION, (void*)dummy_callback);
|
||||
g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_FOLLOWLOCATION, 1);
|
||||
g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_WRITEDATA, (void *)NULL); /* will cause write failure*/
|
||||
|
||||
@@ -1260,7 +1245,7 @@
|
||||
|
||||
// only attempt to fill buffer if transactions still running and buffer
|
||||
// doesnt exceed required size already
|
||||
- while ((unsigned int)m_buffer.GetMaxReadSize() < want && m_buffer.GetMaxWriteSize() > 0 && !g_application.m_bStop)
|
||||
+ while ((unsigned int)m_buffer.GetMaxReadSize() < want && m_buffer.GetMaxWriteSize() > 0 )
|
||||
{
|
||||
if (m_cancelled)
|
||||
return false;
|
||||
@@ -0,0 +1,130 @@
|
||||
--- xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/x86/dsputil_mmx.h.orig 2010-02-17 22:37:17.000000000 -0800
|
||||
+++ xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/x86/dsputil_mmx.h 2010-02-17 22:41:27.000000000 -0800
|
||||
@@ -27,37 +27,37 @@
|
||||
|
||||
typedef struct { uint64_t a, b; } xmm_reg;
|
||||
|
||||
-extern const uint64_t ff_bone;
|
||||
-extern const uint64_t ff_wtwo;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_bone;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_wtwo;
|
||||
|
||||
-extern const uint64_t ff_pdw_80000000[2];
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pdw_80000000[2];
|
||||
|
||||
-extern const uint64_t ff_pw_3;
|
||||
-extern const uint64_t ff_pw_4;
|
||||
-extern const xmm_reg ff_pw_5;
|
||||
-extern const xmm_reg ff_pw_8;
|
||||
-extern const uint64_t ff_pw_15;
|
||||
-extern const xmm_reg ff_pw_16;
|
||||
-extern const uint64_t ff_pw_20;
|
||||
-extern const xmm_reg ff_pw_28;
|
||||
-extern const xmm_reg ff_pw_32;
|
||||
-extern const uint64_t ff_pw_42;
|
||||
-extern const xmm_reg ff_pw_64;
|
||||
-extern const uint64_t ff_pw_96;
|
||||
-extern const uint64_t ff_pw_128;
|
||||
-extern const uint64_t ff_pw_255;
|
||||
-
|
||||
-extern const uint64_t ff_pb_1;
|
||||
-extern const uint64_t ff_pb_3;
|
||||
-extern const uint64_t ff_pb_7;
|
||||
-extern const uint64_t ff_pb_1F;
|
||||
-extern const uint64_t ff_pb_3F;
|
||||
-extern const uint64_t ff_pb_81;
|
||||
-extern const uint64_t ff_pb_A1;
|
||||
-extern const uint64_t ff_pb_FC;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_3;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_4;
|
||||
+extern const xmm_reg __attribute__((visibility("hidden"))) ff_pw_5;
|
||||
+extern const xmm_reg __attribute__((visibility("hidden"))) ff_pw_8;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_15;
|
||||
+extern const xmm_reg __attribute__((visibility("hidden"))) ff_pw_16;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_20;
|
||||
+extern const xmm_reg __attribute__((visibility("hidden"))) ff_pw_28;
|
||||
+extern const xmm_reg __attribute__((visibility("hidden"))) ff_pw_32;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_42;
|
||||
+extern const xmm_reg __attribute__((visibility("hidden"))) ff_pw_64;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_96;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_128;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_255;
|
||||
+
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_1;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_3;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_7;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_1F;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_3F;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_81;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_A1;
|
||||
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pb_FC;
|
||||
|
||||
-extern const double ff_pd_1[2];
|
||||
-extern const double ff_pd_2[2];
|
||||
+extern const double __attribute__((visibility("hidden"))) ff_pd_1[2];
|
||||
+extern const double __attribute__((visibility("hidden"))) ff_pd_2[2];
|
||||
|
||||
#define LOAD4(stride,in,a,b,c,d)\
|
||||
"movq 0*"#stride"+"#in", "#a"\n\t"\
|
||||
--- xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/x86/vc1dsp_mmx.c.orig 2010-02-17 22:44:34.000000000 -0800
|
||||
+++ xbmc/cores/dvdplayer/Codecs/ffmpeg/libavcodec/x86/vc1dsp_mmx.c 2010-02-17 22:45:31.000000000 -0800
|
||||
@@ -73,7 +73,10 @@
|
||||
"movq %%mm"#R1", "#OFF"(%1) \n\t" \
|
||||
"add %2, %0 \n\t"
|
||||
|
||||
-DECLARE_ALIGNED_16(const uint64_t, ff_pw_9) = 0x0009000900090009ULL;
|
||||
+#ifndef _ATTR_HIDDEN
|
||||
+#define _ATTR_HIDDEN __attribute__((visibility("hidden")))
|
||||
+#endif
|
||||
+DECLARE_ALIGNED_16(const uint64_t, _ATTR_HIDDEN ff_pw_9) = 0x0009000900090009ULL;
|
||||
|
||||
/** Sacrifying mm6 allows to pipeline loads from src */
|
||||
static void vc1_put_ver_16b_shift2_mmx(int16_t *dst,
|
||||
--- xbmc/cores/dvdplayer/Codecs/ffmpeg/libswscale/swscale.c.orig 2010-02-17 22:51:41.000000000 -0800
|
||||
+++ xbmc/cores/dvdplayer/Codecs/ffmpeg/libswscale/swscale.c 2010-02-17 22:56:00.000000000 -0800
|
||||
@@ -221,6 +221,10 @@
|
||||
write special BGR->BGR scaler
|
||||
*/
|
||||
|
||||
+#ifndef _ATTR_HIDDEN
|
||||
+#define _ATTR_HIDDEN __attribute__((visibility("hidden")))
|
||||
+#endif
|
||||
+
|
||||
#if ARCH_X86 && CONFIG_GPL
|
||||
DECLARE_ASM_CONST(8, uint64_t, bF8)= 0xF8F8F8F8F8F8F8F8LL;
|
||||
DECLARE_ASM_CONST(8, uint64_t, bFC)= 0xFCFCFCFCFCFCFCFCLL;
|
||||
@@ -246,22 +250,22 @@
|
||||
DECLARE_ASM_CONST(8, uint64_t, g15Mask)= 0x03E003E003E003E0LL;
|
||||
DECLARE_ASM_CONST(8, uint64_t, r15Mask)= 0x7C007C007C007C00LL;
|
||||
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_M24A) = 0x00FF0000FF0000FFLL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_M24B) = 0xFF0000FF0000FF00LL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_M24C) = 0x0000FF0000FF0000LL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_M24A) = 0x00FF0000FF0000FFLL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_M24B) = 0xFF0000FF0000FF00LL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_M24C) = 0x0000FF0000FF0000LL;
|
||||
|
||||
#ifdef FAST_BGR2YV12
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) = 0x000000210041000DULL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) = 0x0000FFEEFFDC0038ULL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) = 0x00000038FFD2FFF8ULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2YCoeff) = 0x000000210041000DULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2UCoeff) = 0x0000FFEEFFDC0038ULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2VCoeff) = 0x00000038FFD2FFF8ULL;
|
||||
#else
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) = 0x000020E540830C8BULL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) = 0x0000ED0FDAC23831ULL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) = 0x00003831D0E6F6EAULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2YCoeff) = 0x000020E540830C8BULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2UCoeff) = 0x0000ED0FDAC23831ULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2VCoeff) = 0x00003831D0E6F6EAULL;
|
||||
#endif /* FAST_BGR2YV12 */
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YOffset) = 0x1010101010101010ULL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UVOffset) = 0x8080808080808080ULL;
|
||||
-DECLARE_ALIGNED(8, const uint64_t, ff_w1111) = 0x0001000100010001ULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2YOffset) = 0x1010101010101010ULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_bgr2UVOffset) = 0x8080808080808080ULL;
|
||||
+DECLARE_ALIGNED(8, const uint64_t, _ATTR_HIDDEN ff_w1111) = 0x0001000100010001ULL;
|
||||
|
||||
DECLARE_ASM_CONST(8, uint64_t, ff_bgr24toY1Coeff) = 0x0C88000040870C88ULL;
|
||||
DECLARE_ASM_CONST(8, uint64_t, ff_bgr24toY2Coeff) = 0x20DE4087000020DEULL;
|
||||
@@ -0,0 +1,14 @@
|
||||
diff -uNr Makefile flashlib-shared/Makefile
|
||||
--- Makefile 1970-01-01 10:00:00.000000000 +1000
|
||||
+++ Makefile 2009-04-10 13:26:42.259623543 +1000
|
||||
@@ -0,0 +1,10 @@
|
||||
+CXXFLAGS= -O2 -D_LINUX @PIC@
|
||||
+
|
||||
+all: FlashLib-@ARCH@-linux.so
|
||||
+
|
||||
+FlashLib-@ARCH@-linux.so: FlashLib.o FlashClient.o
|
||||
+ gcc -shared -o FlashLib-@ARCH@-linux.so -Wl,--no-whole-archive FlashLib.o FlashClient.o -Wl
|
||||
+
|
||||
+clean:
|
||||
+ rm -f *.o FlashLib-@ARCH@-linux.so
|
||||
+
|
||||
@@ -0,0 +1,16 @@
|
||||
--- xbmc/utils/ArabicShaping.h.orig 2009-05-03 10:58:25.000000000 -0400
|
||||
+++ xbmc/utils/ArabicShaping.h 2009-06-24 00:20:17.000000000 -0400
|
||||
@@ -25,11 +25,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
-#ifndef _LINUX
|
||||
#include "lib/libfribidi/fribidi.h"
|
||||
-#else
|
||||
-#include <fribidi/fribidi.h>
|
||||
-#endif
|
||||
|
||||
/**
|
||||
* Shapes an Arabic text chunk
|
||||
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
--- Makefile.in.orig 2010-11-11 11:50:05.000000000 -0800
|
||||
+++ Makefile.in 2010-11-11 11:50:23.000000000 -0800
|
||||
@@ -144,6 +144,7 @@
|
||||
LIBS += xbmc/lib/libmms/libmms-@ARCH@.a xbmc/lib/libmms/libintl-@ARCH@.a xbmc/lib/libmms/libglib-2.0-@ARCH@.a
|
||||
else
|
||||
LIBS += xbmc/lib/libsmb/libsmbclient-@ARCH@.a
|
||||
+LIBS += -lmms
|
||||
endif
|
||||
|
||||
.PHONY : dllloader exports visualizations screensavers eventclients papcodecs \
|
||||
@@ -0,0 +1,86 @@
|
||||
--- xbmc/visualizations/Goom/goom2k4-0/src/pngload.c.orig 2010-02-04 16:58:05.000000000 -0800
|
||||
+++ xbmc/visualizations/Goom/goom2k4-0/src/pngload.c 2010-02-04 17:09:11.000000000 -0800
|
||||
@@ -94,7 +94,7 @@
|
||||
png_set_palette_to_rgb (png_ptr);
|
||||
|
||||
if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8)
|
||||
- png_set_gray_1_2_4_to_8 (png_ptr);
|
||||
+ png_set_expand_gray_1_2_4_to_8 (png_ptr);
|
||||
else if (color_type == PNG_COLOR_TYPE_GRAY ||
|
||||
color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
|
||||
png_set_gray_to_rgb (png_ptr);
|
||||
--- xbmc/screensavers/rsxs-0.9/src/pngimage.cc.orig 2010-02-04 16:56:46.000000000 -0800
|
||||
+++ xbmc/screensavers/rsxs-0.9/src/pngimage.cc 2010-02-04 17:09:11.000000000 -0800
|
||||
@@ -65,7 +65,7 @@
|
||||
(png_get_color_type(png, pngInfo) == PNG_COLOR_TYPE_GRAY) &&
|
||||
png_get_bit_depth(png, pngInfo) < 8
|
||||
)
|
||||
- png_set_gray_1_2_4_to_8(png);
|
||||
+ png_set_expand_gray_1_2_4_to_8(png);
|
||||
if (png_get_valid(png, pngInfo, PNG_INFO_tRNS))
|
||||
png_set_tRNS_to_alpha(png);
|
||||
if (fullColor)
|
||||
--- xbmc/lib/cximage-6.0/CxImage/ximapng.cpp.orig 2010-02-04 16:52:27.000000000 -0800
|
||||
+++ xbmc/lib/cximage-6.0/CxImage/ximapng.cpp 2010-02-04 17:27:34.000000000 -0800
|
||||
@@ -144,9 +144,9 @@
|
||||
if (info_ptr->num_trans!=0){ //palette transparency
|
||||
if (info_ptr->num_trans==1){
|
||||
if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE){
|
||||
- info.nBkgndIndex = info_ptr->trans_values.index;
|
||||
+ info.nBkgndIndex = info_ptr->trans_color.index;
|
||||
} else{
|
||||
- info.nBkgndIndex = info_ptr->trans_values.gray>>nshift;
|
||||
+ info.nBkgndIndex = info_ptr->trans_color.gray>>nshift;
|
||||
}
|
||||
}
|
||||
if (info_ptr->num_trans>1){
|
||||
@@ -154,7 +154,7 @@
|
||||
if (pal){
|
||||
DWORD ip;
|
||||
for (ip=0;ip<min(head.biClrUsed,(unsigned long)info_ptr->num_trans);ip++)
|
||||
- pal[ip].rgbReserved=info_ptr->trans[ip];
|
||||
+ pal[ip].rgbReserved=info_ptr->trans_alpha[ip];
|
||||
for (ip=info_ptr->num_trans;ip<head.biClrUsed;ip++){
|
||||
pal[ip].rgbReserved=255;
|
||||
}
|
||||
@@ -168,9 +168,9 @@
|
||||
int num_trans;
|
||||
png_color_16 *image_background;
|
||||
if (png_get_tRNS(png_ptr, info_ptr, &trans, &num_trans, &image_background)){
|
||||
- info.nBkgndColor.rgbRed = (BYTE)(info_ptr->trans_values.red>>nshift);
|
||||
- info.nBkgndColor.rgbGreen = (BYTE)(info_ptr->trans_values.green>>nshift);
|
||||
- info.nBkgndColor.rgbBlue = (BYTE)(info_ptr->trans_values.blue>>nshift);
|
||||
+ info.nBkgndColor.rgbRed = (BYTE)(info_ptr->trans_color.red>>nshift);
|
||||
+ info.nBkgndColor.rgbGreen = (BYTE)(info_ptr->trans_color.green>>nshift);
|
||||
+ info.nBkgndColor.rgbBlue = (BYTE)(info_ptr->trans_color.blue>>nshift);
|
||||
info.nBkgndColor.rgbReserved = 0;
|
||||
info.nBkgndIndex = 0;
|
||||
}
|
||||
@@ -421,12 +421,12 @@
|
||||
if (info.nBkgndIndex >= 0){
|
||||
info_ptr->num_trans = 1;
|
||||
info_ptr->valid |= PNG_INFO_tRNS;
|
||||
- info_ptr->trans = trans;
|
||||
- info_ptr->trans_values.index = (BYTE)info.nBkgndIndex;
|
||||
- info_ptr->trans_values.red = tc.rgbRed;
|
||||
- info_ptr->trans_values.green = tc.rgbGreen;
|
||||
- info_ptr->trans_values.blue = tc.rgbBlue;
|
||||
- info_ptr->trans_values.gray = info_ptr->trans_values.index;
|
||||
+ info_ptr->trans_alpha = trans;
|
||||
+ info_ptr->trans_color.index = (BYTE)info.nBkgndIndex;
|
||||
+ info_ptr->trans_color.red = tc.rgbRed;
|
||||
+ info_ptr->trans_color.green = tc.rgbGreen;
|
||||
+ info_ptr->trans_color.blue = tc.rgbBlue;
|
||||
+ info_ptr->trans_color.gray = info_ptr->trans_color.index;
|
||||
|
||||
// the transparency indexes start from 0 for non grayscale palette
|
||||
if (!bGrayScale && head.biClrUsed && info.nBkgndIndex)
|
||||
@@ -447,7 +447,7 @@
|
||||
trans[ip]=GetPaletteColor((BYTE)ip).rgbReserved;
|
||||
info_ptr->num_trans = (WORD)nc;
|
||||
info_ptr->valid |= PNG_INFO_tRNS;
|
||||
- info_ptr->trans = trans;
|
||||
+ info_ptr->trans_alpha = trans;
|
||||
}
|
||||
|
||||
// copy the palette colors
|
||||
Reference in New Issue
Block a user