Browse Source

fix usb keyboard support, startup xbmc without read-write root, add bluray support

Waldemar Brodkorb 11 years ago
parent
commit
af7ff722d2

+ 26 - 0
package/libbluray/Makefile

@@ -0,0 +1,26 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		libbluray
+PKG_VERSION:=		0.4.0
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		c7a1cc71cb9747f93122ec650d4ae933
+PKG_DESCR:=		bluray library
+PKG_SECTION:=		libs
+PKG_URL:=		http://www.videolan.org/developers/libbluray.html
+PKG_SITES:=		ftp://ftp.videolan.org/pub/videolan/libbluray/${PKG_VERSION}/
+
+DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.tar.bz2
+
+include $(TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,LIBBLURAY,libbluray,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+
+libbluray-install:
+	$(INSTALL_DIR) $(IDIR_LIBBLURAY)/usr/lib
+	$(CP) $(WRKINST)/usr/lib/libbluray*.so* \
+		$(IDIR_LIBBLURAY)/usr/lib
+
+include ${TOPDIR}/mk/pkg-bottom.mk

+ 4 - 1
package/xbmc/Makefile

@@ -16,12 +16,13 @@ PKG_DEPENDS+=		libflac libopenssl libbz2 libtiff liblzo
 PKG_DEPENDS+=		yajl tinyxml libsqlite libpcrecpp libpng
 PKG_DEPENDS+=		libpcre libcdio libfreetype libsamplerate
 PKG_DEPENDS+=		taglib libjasper libmp3lame libmicrohttpd
+PKG_DEPENDS+=		omxplayer libusb-compat libbluray
 PKG_BUILDDEP:=		boost ffmpeg python2 MesaLib libglew libass
 PKG_BUILDDEP+=		libmpeg2 libmad jpeg libogg libvorbis libmodplug
 PKG_BUILDDEP+=		curl flac openssl bzip2 libtiff liblzo yajl
 PKG_BUILDDEP+=		tinyxml sqlite pcre libpng libcdio freetype 
 PKG_BUILDDEP+=		libsamplerate taglib libjasper lame libmicrohttpd
-PKG_BUILDDEP+=		bcm2835-vc libgpg-error dbus
+PKG_BUILDDEP+=		bcm2835-vc libgpg-error dbus libusb-compat libbluray
 PKG_URL:=		http://xbmc.org/
 PKG_SITES:=		http://mirrors.xbmc.org/releases/source/
 
@@ -45,6 +46,8 @@ CONFIGURE_ARGS+=	--disable-optical-drive \
 			--disable-ssh \
 			--disable-samba \
 			--disable-mysql \
+			--enable-libusb \
+			--enable-libbluray \
 			--enable-external-libraries \
 			--enable-player=omxplayer \
 			--enable-gles \

+ 41 - 0
package/xbmc/patches/patch-xbmc_Application_cpp

@@ -0,0 +1,41 @@
+--- xbmc-12.2.orig/xbmc/Application.cpp	2013-05-03 07:57:41.000000000 +0200
++++ xbmc-12.2/xbmc/Application.cpp	2013-10-08 13:55:01.000000000 +0200
+@@ -615,7 +615,7 @@ bool CApplication::Create()
+ 
+   if (!CLog::Init(CSpecialProtocol::TranslatePath(g_settings.m_logFolder).c_str()))
+   {
+-    fprintf(stderr,"Could not init logging classes. Permission errors on ~/.xbmc (%s)\n",
++    fprintf(stderr,"Could not init logging classes. Permission errors on %s\n",
+       CSpecialProtocol::TranslatePath(g_settings.m_logFolder).c_str());
+     return false;
+   }
+@@ -966,10 +966,13 @@ bool CApplication::InitDirectoriesLinux(
+     userName = "root";
+ 
+   CStdString userHome;
++  userHome = "/etc/xbmc";
++/*
+   if (getenv("HOME"))
+     userHome = getenv("HOME");
+   else
+     userHome = "/root";
++*/
+ 
+   CStdString xbmcBinPath, xbmcPath;
+   CUtil::GetHomePath(xbmcBinPath, "XBMC_BIN_HOME");
+@@ -1001,11 +1004,11 @@ bool CApplication::InitDirectoriesLinux(
+     // map our special drives
+     CSpecialProtocol::SetXBMCBinPath(xbmcBinPath);
+     CSpecialProtocol::SetXBMCPath(xbmcPath);
+-    CSpecialProtocol::SetHomePath(userHome + "/.xbmc");
+-    CSpecialProtocol::SetMasterProfilePath(userHome + "/.xbmc/userdata");
++    CSpecialProtocol::SetHomePath(userHome);
++    CSpecialProtocol::SetMasterProfilePath(userHome + "/userdata");
+ 
+-    CStdString strTempPath = userHome;
+-    strTempPath = URIUtils::AddFileToFolder(strTempPath, ".xbmc/temp");
++    CStdString strTempPath = "/tmp";
++    strTempPath = URIUtils::AddFileToFolder(strTempPath, "/.xbmc/temp");
+     if (getenv("XBMC_TEMP"))
+       strTempPath = getenv("XBMC_TEMP");
+     CSpecialProtocol::SetTempPath(strTempPath);