From 62cb29a6151a9aacb0300c0681b3bc45a92ec0c2 Mon Sep 17 00:00:00 2001 From: Nathan Harris Date: Thu, 14 May 2009 19:09:13 -0400 Subject: First cut at XBMC (svn with vdpau) --- abs/extra-testing/community/xbmc-svn/CHANGELOG | 56 ++++++++++ abs/extra-testing/community/xbmc-svn/PKGBUILD | 124 +++++++++++++++++++++ .../community/xbmc-svn/libcurl-not-in-lib64.patch | 13 +++ .../xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch | 13 +++ .../community/xbmc-svn/xbmc-safe-fullscreen.patch | 23 ++++ .../community/xbmc-svn/xbmc-svn.install | 9 ++ 6 files changed, 238 insertions(+) create mode 100644 abs/extra-testing/community/xbmc-svn/CHANGELOG create mode 100644 abs/extra-testing/community/xbmc-svn/PKGBUILD create mode 100644 abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch create mode 100644 abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch create mode 100644 abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch create mode 100644 abs/extra-testing/community/xbmc-svn/xbmc-svn.install diff --git a/abs/extra-testing/community/xbmc-svn/CHANGELOG b/abs/extra-testing/community/xbmc-svn/CHANGELOG new file mode 100644 index 0000000..3db76d1 --- /dev/null +++ b/abs/extra-testing/community/xbmc-svn/CHANGELOG @@ -0,0 +1,56 @@ +xbmc-svn Change log: +-------------------- +14th May 2009 +20231-2 - haggy: another shot in the dark to fix that damn goom compilation error + +13th May 2009 +20231 - haggy: smoothvideo! + +12th May 2009 +20172 - haggy: a shot in the dark: try another autoreconf inside goom and see if it helps. + +11th May 2009 +20149 - haggy: pushed rev, removed 'hitting-o-breaks...'-patch - it got fixed in svn + +9th May 2009 +20101 - haggy: an updated PM3 skin made it into xbmc. added conflicts hint to this PKGBUILD + +8th May 2009 +20059 - haggy: minor push past 9.04, removed copying the source tree to a build tree which wastes space, + takes ages and stresses the hdd for no reason. instead we now use svn to revert to a + clean build dir. + +5th May 2009 +19941 - rich: heaps more tickets closed, Mexican translation + +30th April 2009 +19841 - haggy: lots of closed tickets worth a release, removed xsession patch + +27th April 2009 +19753 - haggy: added patch for xsession file breaking installation into fakeroot. + +22nd April 2009 +19602 - richy: version bump to address problem with python scripts and plugins + +20th April 2009 +19550 - haggy: pushed rev, some .mov fixes and better i18n in xbmc + +17th April 2009 +19517 - haggy: pushed rev, re-added installfile +19516-2- richy: Added back autoreconf -vif in libdvdcss - still required for some folk (me) +19516 - haggy: pushed rev, moved patches to patchfiles, added 'safe fullscreen patch', several cleanups + +15th April 2009 +19484 - haggy: pushed rev, re-enabled MAKEFLAGS to allow a more streamlined package + +14th April 2009 +19463 - haggy: added install file +19463 - richy: moved _svn* back inside build() on Haggy's suggestion. Let's try and avoid broken releases! +19463 - richy: makedepends 'subversion' instead of 'svn' because that's what's in the guidelines +19463 - richy: changed licens from ('GPL' 'custom') to ('GPL', 'LGPL') - See: http://xbmc.org/about/ + +13th April 2009 - initial upload to AUR, tested on 32bit and 64bit. +19444 - richy: Moved _svn* outside of build so that users get the latest SVN. +19444 - richy: Added a symlink for XBMCtex to usr/bin/XBMCtex +19444 - richy: Moved libcdio into depends from opt-depends - right now it is a dependency. + diff --git a/abs/extra-testing/community/xbmc-svn/PKGBUILD b/abs/extra-testing/community/xbmc-svn/PKGBUILD new file mode 100644 index 0000000..878e2ae --- /dev/null +++ b/abs/extra-testing/community/xbmc-svn/PKGBUILD @@ -0,0 +1,124 @@ +# Contributors : Richard Atkinson atkinsonr-at-gmail +# Ralf Barth +# +# Original credits go to Edgar Hucek +# for his xbmc-vdpau-vdr PKGBUILD at https://archvdr.svn.sourceforge.net/svnroot/archvdr/trunk/archvdr/xbmc-vdpau-vdr/PKGBUILD + +pkgname=xbmc-svn +pkgver=20231 +pkgrel=2 +pkgdesc="XBMC Media Center from SVN (linuxport branch)" +provides=('xbmc') +conflicts=('xbmc' 'xbmc-smoothvideo' 'xbmc-vdpau') +arch=('i686' 'x86_64') +url="http://xbmc.org" +license=('GPL' 'LGPL') +depends=('alsa-lib' 'curl' 'enca' 'faac' 'freetype2' 'fribidi' 'gawk' 'glew' \ + 'hal' 'jasper' 'libgl' 'libjpeg>=6b-5' 'libmad' 'libmysqlclient' \ + 'libxinerama' 'libxrandr' 'lzo2' 'sdl_image' 'sdl_mixer' 'sqlite3' \ + 'tre' 'unzip' 'x-server' 'libcdio' 'libsamplerate') +makedepends=('subversion' 'autoconf' 'automake' 'boost' 'cmake' 'gcc' 'gperf' + 'libtool>=2.2.6a-1' 'make' 'nasm' 'patch' 'pkgconfig' 'zip') +optdepends=('lirc: remote controller support' + 'pmount: mount removable devices as normal user' + 'smbclient: access windows shares' + 'unrar: access compressed files without unpacking them') +install=("${pkgname}.install") +source=('libcurl-not-in-lib64.patch' \ + 'libfaad2-enable-AC_PROG_CXX.patch' \ + 'xbmc-safe-fullscreen.patch') +noextract=('libcurl-not-in-lib64.patch' \ + 'libfaad2-enable-AC_PROG_CXX.patch' \ + 'xbmc-safe-fullscreen.patch') +md5sums=('96636ee964e37b78ca62235eb10d29c1' \ + '6864778d6adc3ccc79130c294f2fffd9' \ + 'c4d53522773846d8670884cc38f94aa0') +options=(makeflags) + +build() { + + _svntrunk=http://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/linuxport/XBMC + _svnmod=XBMC + _prefix=/usr + + cd ${srcdir}/ + if [ -d $_svnmod/.svn ]; then + msg "SVN tree found, reverting changes and updating to -r$pkgver" + (cd $_svnmod && svn revert --quiet -R . && svn up --quiet -r $pkgver) || return 1 + else + msg "Checking out SVN tree of -r$pkgver" + svn co $_svntrunk --config-dir ./ --quiet -r $pkgver $_svnmod || return 1 + fi + msg "Done. Starting make..." + + # Apply patches + cd "$srcdir/$_svnmod" + + # Experimental safe fullscreen patch from the forums (by motd2k) + msg "Patching with xbmc-safe-fullscreen.patch" + patch --quiet -p0 < "$srcdir/xbmc-safe-fullscreen.patch" || return 1 + + # Arch's libcurl lives in /usr/lib, not /usr/lib64 - fix the path: + msg "Patching with libcurl-not-in-lib64.patch" + patch --quiet -p0 < "$srcdir/libcurl-not-in-lib64.patch" || return 1 + + # libfaad2 complains about a missing AC_PROG_CXX - add it and bootstrap: + msg "Patching with libfaad2-enable-AC_PROG_CXX.patch" + patch --quiet -p0 < "$srcdir/libfaad2-enable-AC_PROG_CXX.patch" || return 1 + autoreconf -vif xbmc/cores/dvdplayer/Codecs/libfaad2 + + # libass needs a bootstrap due to newer autotools in Arch Linux + autoreconf -vif xbmc/lib/libass + + # Another autotools mismatch between Arch and Ubuntu (xbmc-linuxport is developed against Ubuntu) + autoreconf -vif "$srcdir/$_svnmod/xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss" + + # Goom also needs a fixup due to newer autotools + cd "$srcdir/$_svnmod/xbmc/visualizations/Goom/goom2k4-0" + aclocal + libtoolize --copy --force + ./autogen.sh --enable-static --with-pic + + # Configure XBMC + cd "$srcdir/$_svnmod" + make distclean + ./configure --prefix=${_prefix} \ + --disable-debug --disable-pulse --enable-vdpau || return 1 + + # Fix false negative detections of realloc that happens some times + if grep -q 'HAVE_REALLOC 0' config.h; then + sed -e 's|#define HAVE_REALLOC 0|#define HAVE_REALLOC 1|' \ + -e 's|#define realloc rpl_realloc|/* #define realloc rpl_realloc */|' \ + -i config.h || return 1 + fi + + # XBMCTex will segfault on systems with nvidia installed if linked to OpenGL + sed -e 's/-lGLU -lGLEW -lGL//' \ + -i ${srcdir}/$_svnmod/tools/XBMCTex/Makefile + + # Now (finally) build + make || return 1 + make prefix=${pkgdir}${_prefix} install || return 1 + + # Install + install -Dm755 ${srcdir}/$_svnmod/xbmc-xrandr \ + ${pkgdir}${_prefix}/share/xbmc/xbmc-xrandr || return 1 + + install -Dm644 ${srcdir}/$_svnmod/tools/Linux/xbmc.desktop \ + ${pkgdir}${_prefix}/share/applications/xbmc.desktop || return 1 + + install -Dm644 ${srcdir}/$_svnmod/tools/Linux/xbmc.png \ + ${pkgdir}${_prefix}/share/pixmaps/xbmc.png || return 1 + + install -Dm755 ${srcdir}/$_svnmod/tools/XBMCTex/XBMCTex \ + ${pkgdir}${_prefix}/share/xbmc/tools/xbmctex || return 1 + + # Skins often use build.sh that looks for /usr/bin/XBMCTex + ln -s "${_prefix}/share/xbmc/tools/xbmctex" "$pkgdir/usr/bin/XBMCTex" + + install -dm755 ${pkgdir}${_prefix}/share/licenses/${pkgname} + for licensef in LICENSE.GPL README.linux copying.txt; do + mv ${pkgdir}${_prefix}/share/xbmc/${licensef} \ + ${pkgdir}${_prefix}/share/licenses/${pkgname} || return 1 + done +} diff --git a/abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch b/abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch new file mode 100644 index 0000000..b89db5a --- /dev/null +++ b/abs/extra-testing/community/xbmc-svn/libcurl-not-in-lib64.patch @@ -0,0 +1,13 @@ +Index: Makefile.include.in +=================================================================== +--- Makefile.include.in (revision 20149) ++++ Makefile.include.in (working copy) +@@ -24,7 +24,7 @@ + + ifeq (linux,$(findstring linux, $(ARCH))) + ifeq ($(ARCH), x86_64-linux) +- DEFINES+=-DDLL_PATH_LIBCURL="\"/usr/lib64/libcurl.so.4\"" ++ DEFINES+=-DDLL_PATH_LIBCURL="\"/usr/lib/libcurl.so.4\"" + else + DEFINES+=-DDLL_PATH_LIBCURL="\"/usr/lib/libcurl.so.4\"" + endif diff --git a/abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch b/abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch new file mode 100644 index 0000000..89d7497 --- /dev/null +++ b/abs/extra-testing/community/xbmc-svn/libfaad2-enable-AC_PROG_CXX.patch @@ -0,0 +1,13 @@ +Index: xbmc/cores/dvdplayer/Codecs/libfaad2/configure.in +=================================================================== +--- xbmc/cores/dvdplayer/Codecs/libfaad2/configure.in (revision 19486) ++++ xbmc/cores/dvdplayer/Codecs/libfaad2/configure.in (working copy) +@@ -18,7 +18,7 @@ + AC_PROG_CC + AC_PROG_CPP + dnl disable for mpeg4ip plugin +-dnl AC_PROG_CXX ++AC_PROG_CXX + AC_PROG_INSTALL + AC_PROG_LN_S + AC_PROG_MAKE_SET diff --git a/abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch b/abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch new file mode 100644 index 0000000..d112e52 --- /dev/null +++ b/abs/extra-testing/community/xbmc-svn/xbmc-safe-fullscreen.patch @@ -0,0 +1,23 @@ +Index: xbmc/Application.cpp +=================================================================== +--- xbmc/Application.cpp (revision 20059) ++++ xbmc/Application.cpp (working copy) +@@ -873,6 +873,8 @@ + #endif + + // set GUI res and force the clear of the screen ++ if (g_guiSettings.GetBool("videoscreen.safefull")) ++ g_guiSettings.m_LookAndFeelResolution = AUTORES; + g_graphicsContext.SetVideoResolution(g_guiSettings.m_LookAndFeelResolution, TRUE, true); + + #ifdef _WIN32PC +@@ -949,6 +951,9 @@ + time(&seconds); + srand((unsigned int)seconds); + ++ if (g_guiSettings.GetBool("videoscreen.safefull")) ++ g_graphicsContext.ToggleFullScreenRoot(); ++ + return CXBApplicationEx::Create(hWnd); + } + diff --git a/abs/extra-testing/community/xbmc-svn/xbmc-svn.install b/abs/extra-testing/community/xbmc-svn/xbmc-svn.install new file mode 100644 index 0000000..9316bc8 --- /dev/null +++ b/abs/extra-testing/community/xbmc-svn/xbmc-svn.install @@ -0,0 +1,9 @@ +post_install() { + echo ">> If XBMC won't start, but just segfaults, double check your X.Org config" + echo ">> so that your display depth is at least 24-bit. Eg: change " + echo ">> \"DefaultDepth 16\" under the \"Screen\" section so it says 24 instead" + echo ">> of 16." + /bin/true +} + +# vim:set ts=2 sw=2 et: -- cgit v0.12