Merge pull request #1858 from MilhouseVH/kodi18a1Aug

kodi: update to latest master
This commit is contained in:
Christian Hewitt 2017-08-08 10:03:17 +04:00 committed by GitHub
commit 95283af6c5
39 changed files with 280 additions and 399 deletions

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="adsp.biquad.filters"
PKG_VERSION="e08990f"
PKG_SHA256="459d3bc21f0da1204b882f9df3932dedbf6d9652e6973607d3ef371442d82858"
PKG_VERSION="a41eb28"
PKG_SHA256="093c3af2334cbd13ce6247a8a8c159ccf46e9687016f710db6721f0d4b9dcd0e"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="audiodecoder.timidity"
PKG_VERSION="f32c21c"
PKG_SHA256="90d024695a1c3a6aa5c3cb241d970d82382ca7d59412c81139438d1256f392ab"
PKG_VERSION="5567057"
PKG_SHA256="8bf3d7d99dfb8088b68a4feee810556e8c4f11c519f2e9e1ace47a2da7e3d519"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="audiodecoder.vgmstream"
PKG_VERSION="7397172"
PKG_SHA256="988872ca372c9c10be51b9e1856bba34cb279d4cd0af0a74e44b218a659bfb65"
PKG_VERSION="9569fe5"
PKG_SHA256="f872b029370dc613194bd93536558a118f352eed0ca3035f36a8202c39143d33"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="audioencoder.flac"
PKG_VERSION="d93774a"
PKG_SHA256="1e9de2464861f0534f54fce63ccad81f645945c5b9e59f16dd3e5eedf8d05736"
PKG_VERSION="1d540c6"
PKG_SHA256="e1266ef7afd73bdcd69eb92be78bd639573846d8b95aaa9bc46c8ae6f11d2dc1"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,11 +17,11 @@
################################################################################
PKG_NAME="inputstream.adaptive"
PKG_VERSION="db9b6a1"
PKG_SHA256="49035c28becc1029181b5e529c1afae3c3f5fd0fb4dd8c62c4caedc2735c3e08"
PKG_VERSION="08ea9d6"
PKG_SHA256="d3e8093718ec668f54b068d05246da17f659a3ca677b931dfe3c769fff380197"
PKG_LICENSE="GPL"
PKG_SITE="http://www.kodi.tv"
PKG_URL="https://github.com/liberty-developer/inputstream.adaptive/archive/$PKG_VERSION.tar.gz"
PKG_URL="https://github.com/peak3d/inputstream.adaptive/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain kodi-platform"
PKG_SECTION=""
PKG_SHORTDESC="inputstream.adaptive"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="inputstream.rtmp"
PKG_VERSION="6db3697"
PKG_SHA256="a233917b8c1efe9d99dbd7a02ba594a2960d17c65806622d42c0ce180eedb30f"
PKG_VERSION="476bde0"
PKG_SHA256="76990dcc1b20efdd3108cef06c822b901ad3d9d2930596797b8cfe78841e0df6"
PKG_LICENSE="GPL"
PKG_SITE="http://www.kodi.tv"
PKG_URL="https://github.com/notspiff/inputstream.rtmp/archive/$PKG_VERSION.tar.gz"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="peripheral.joystick"
PKG_VERSION="1b7ba07"
PKG_SHA256="dfa585141e6cc544273c3c4ab9b42a486e0fe9f5efbd1af2ec6ed3faa66b736a"
PKG_VERSION="1815c0f"
PKG_SHA256="326cda803c265820605fc8d5a835d2e4da7346d242b940d420810dd9a1b841f6"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.argustv"
PKG_VERSION="b281e04"
PKG_SHA256="96dc838227cd0bdc8934f4e29eb890a7544d20d817213b1534426acc975927d6"
PKG_VERSION="310737e"
PKG_SHA256="e41a8f267530cd19ad3380c682a2727a8b853795051a5c3cc49c600eecdce7c1"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.demo"
PKG_VERSION="ffee02b"
PKG_SHA256="f1356edfb0985ca2f5d3ed087884b4fbbbc3703005727c8718a1090b110cb2bf"
PKG_VERSION="9d0aa8f"
PKG_SHA256="e70dc21ba429ef75c8cefc3cb4e80f9a95b3301738fdb6b3a1006ddc91dbfd0a"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.dvblink"
PKG_VERSION="6d42eae"
PKG_SHA256="28d84412b119f3d71cde3fa6f2f52af9d9c3475d542ed8a0d82332e1acb51287"
PKG_VERSION="3572811"
PKG_SHA256="2c4ead089bf902cb9686776320c5d779de8a82905c0441f4c1edec927cab2989"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.dvbviewer"
PKG_VERSION="a5db9dd"
PKG_SHA256="e1d148ea44814ea2500a805d08dfea740f92cd84fb5ccd1bf0b20d8f0a399d1a"
PKG_VERSION="9faf241"
PKG_SHA256="31f3bd369fd52078f1db63f537cabcfcc327030235f3ef36889fcab90ed461d8"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.filmon"
PKG_VERSION="300c595"
PKG_SHA256="7ce828bf857bae343742059c61ce004130be1475bd01780f0956f5c21fa0a2bf"
PKG_VERSION="1c9d2eb"
PKG_SHA256="71a25b865034111e84b19db1186b51ccdd290a4f54146e0335b96b8adfe5c370"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.hdhomerun"
PKG_VERSION="9073b99"
PKG_SHA256="ee662825f491f65222c4364a9760b51a27a0fa4a2231eb347c3e75b73cb574a5"
PKG_VERSION="bd60a95"
PKG_SHA256="dd5e0258b5864f90db5ddc7f2e5ffd35e7c7856533d901257c71990e29a1a3de"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.hts"
PKG_VERSION="c2ca2db"
PKG_SHA256="4b6d8becc66fb25b7d9af5fba61aeb58e7feac94758f6a253ea3860407ae2055"
PKG_VERSION="1ceadf1"
PKG_SHA256="9eeef49d3ba1bbbd3131f28a8164f2772c6f6369cf0e5f11d25b9b5d48cf1ccd"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.iptvsimple"
PKG_VERSION="dbf6011"
PKG_SHA256="1ae06580762d645e4ee934f6caf2b552448f1aca8815d6ef77e487e97b744b48"
PKG_VERSION="66b1e6f"
PKG_SHA256="3b14418af3fc19006ef98099a144f85aae11bf89bbc7c4019dd9abc9c2a01795"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.mediaportal.tvserver"
PKG_VERSION="07d73f3"
PKG_SHA256="f52a3bf229f423b67296b8f49872204c4030a9720123dde232aeae74692f2455"
PKG_VERSION="d7a9acd"
PKG_SHA256="58cc7c7cda6130791ed017df3f9b8b4410ce3dae06394810bb0f44860eb51cdb"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.mythtv"
PKG_VERSION="6e88cbb"
PKG_SHA256="c0f5c80abd3444ffc3692597872ddaea429a053b1adfe805c67d54869325d2ab"
PKG_VERSION="d1f3ce5"
PKG_SHA256="918894341489eaf2db3783dfac8d3f7b0717b1816e304df0af3190da6507c5be"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.nextpvr"
PKG_VERSION="239dbef"
PKG_SHA256="5f42f0df3a3934f2fd08b1c95be5d96e8f250556703c30990d04841bb35f5522"
PKG_VERSION="03a3b71"
PKG_SHA256="1728293a8568d836c04852c041f55c4ce8563b5d03bc6f00d20c39caca00d06d"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.njoy"
PKG_VERSION="4785afd"
PKG_SHA256="fd15da24e986b8f840385a72cd884210274f6fb061d199ec5ccc455defb0878b"
PKG_VERSION="79e8e65"
PKG_SHA256="0f9f2c3cea2e9364c9a7578b7946e4cd74a7818c83bf0c86db02e65c0b7d3828"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.octonet"
PKG_VERSION="020dd98"
PKG_SHA256="e068f5d8f86dbb6663931efec64e73b83e56d706df39e9273fa89c45385faa91"
PKG_VERSION="a77cf11"
PKG_SHA256="abc87b790d67cf51a4ce3b11274d5d3b84d70f9e80c663318991a4110b0dbeab"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.pctv"
PKG_VERSION="f61e254"
PKG_SHA256="56d90a7ff9dfc2f5379ea1ad4755bba44a74bbc130e428b6470ab2f60a714a95"
PKG_VERSION="00b7668"
PKG_SHA256="1d50af333dcef54614ecf76a96629eea68a53bc7f89b159a9a2831f248d9743e"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.stalker"
PKG_VERSION="151e3d3"
PKG_SHA256="d27a8fc8c8c6515894e798beb75a97de9f3c45a0c2308202817a1211d82315c8"
PKG_VERSION="9e28f12"
PKG_SHA256="8f9cb68ca9a0ec84b0b6afe1cb34bbee4695b8f9af9c8ece35f0e75408bd0733"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.vbox"
PKG_VERSION="df9efea"
PKG_SHA256="94945178d31018f2060123d41bba1af238b360110ba5a0281121bd59baff48c0"
PKG_VERSION="44f3d04"
PKG_SHA256="aa2280e0bb3883dbbdeee7328ee725c8bc9b4d80d3b31f1ac515868e54bcbbae"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.vdr.vnsi"
PKG_VERSION="7d6b52e"
PKG_SHA256="31008cfffd42e49d33e6b871636b44a669f267722207f572f93f20915b92f7c1"
PKG_VERSION="6e332b0"
PKG_SHA256="b87111e9d5be6b8e441601fd79e5d0b2391ad25e07951cc158eae2d4798134fc"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.vuplus"
PKG_VERSION="83a729e"
PKG_SHA256="f6d249026e483b23c347332a2fc2e8efa2d929b3c48c126225cdcfc21ae124e1"
PKG_VERSION="a773bb5"
PKG_SHA256="af09fb971a7c74c2deea9d0a38466e07864c3e51e74ec2ccf6175e4fca58baa6"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="pvr.wmc"
PKG_VERSION="93cebfc"
PKG_SHA256="1466e35958166b7a61444edbd79ebe2c43f3acc454adbb81c6f22ee2368a8a14"
PKG_VERSION="1d65554"
PKG_SHA256="082d0aaf1de659792de65336bb22c5b0dc01e4aef7d4b2a5f70e9800eb216c56"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="vfs.rar"
PKG_VERSION="4ce78b0"
PKG_SHA256="aa84cc71e76bfbb938d5c02ad0b6e896cccc82bcb42ffda75cc7a26afe676891"
PKG_VERSION="6341803"
PKG_SHA256="23ddf293a1958720659fb79b4b2099d3c779aff45f9e62bbe3d82860c001662a"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="visualization.spectrum"
PKG_VERSION="2b78ea0"
PKG_SHA256="b63a81e68e793a5ff612b5e62c2d68efdd2f70e49db9595633874b19ffcf5015"
PKG_VERSION="9b4a792"
PKG_SHA256="127df27c73d47114477962480025659617d48d106e3d454110d9d1eccba84413"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="kodi"
PKG_VERSION="734cda1"
PKG_SHA256="5224dd437fdd110472fd0612844633642a6959e931f461cd61f1a1bbbb8f6cc4"
PKG_VERSION="a8fe8e3"
PKG_SHA256="de78083caa9afe295cbeab9596b3266385f1cd568fa1b085a9f2ddf696d941a5"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.kodi.tv"
@ -159,6 +159,12 @@ else
KODI_SSH="-DENABLE_SSH=OFF"
fi
if echo "$TARGET_FPU" | grep -q '^neon' || [[ "$TARGET_ARCH" = "aarch64" ]]; then
KODI_NEON="-DENABLE_NEON=ON"
else
KODI_NEON="-DENABLE_NEON=OFF"
fi
if [ "$VDPAU_SUPPORT" = "yes" -a "$DISPLAYSERVER" = "x11" ]; then
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libvdpau"
KODI_VDPAU="-DENABLE_VDPAU=ON"
@ -186,7 +192,7 @@ fi
if [ ! "$KODIPLAYER_DRIVER" = default ]; then
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $KODIPLAYER_DRIVER"
if [ "$KODIPLAYER_DRIVER" = bcm2835-driver ]; then
KODI_PLAYER="-DCORE_SYSTEM_NAME=rbpi"
KODI_PLAYER="-DCORE_PLATFORM_NAME=rbpi"
elif [ "$KODIPLAYER_DRIVER" = mesa ]; then
KODI_PLAYER="-DCORE_PLATFORM_NAME=gbm"
CFLAGS="$CFLAGS -DMESA_EGL_NO_X11_HEADERS"
@ -225,7 +231,7 @@ PKG_CMAKE_OPTS_TARGET="-DNATIVEPREFIX=$TOOLCHAIN \
-DENABLE_LDGOLD=ON \
-DENABLE_DEBUGFISSION=OFF \
$KODI_ARCH \
$KODI_OPENMAX \
$KODI_NEON \
$KODI_VDPAU \
$KODI_VAAPI \
$KODI_CEC \

View File

@ -1,18 +1,18 @@
From faebee708dc7c24d177fa6b8874b3f1374a08e25 Mon Sep 17 00:00:00 2001
From 4abf9ef52d9f5cf625e196935683eb35f150e7e9 Mon Sep 17 00:00:00 2001
From: MilhouseVH <milhouseVH.github@nmacleod.com>
Date: Wed, 5 Jul 2017 15:58:57 +0100
Date: Tue, 11 Jul 2017 17:46:48 +0100
Subject: [PATCH] use a wrapper to setup systemd services
---
xbmc/addons/Addon.cpp | 35 +++++++++++++++++++++++++++++++++++
xbmc/addons/Addon.cpp | 38 ++++++++++++++++++++++++++++++++++++++
xbmc/addons/Addon.h | 2 ++
2 files changed, 37 insertions(+)
2 files changed, 40 insertions(+)
diff --git a/xbmc/addons/Addon.cpp b/xbmc/addons/Addon.cpp
index 639ee5c..7f205a7 100644
index 45f42ad..5870328 100644
--- a/xbmc/addons/Addon.cpp
+++ b/xbmc/addons/Addon.cpp
@@ -396,18 +396,36 @@ AddonVersion CAddon::GetDependencyVersion(const std::string &dependencyID) const
@@ -397,13 +397,34 @@ AddonVersion CAddon::GetDependencyVersion(const std::string &dependencyID) const
return AddonVersion("0.0.0");
}
@ -23,33 +23,31 @@ index 639ee5c..7f205a7 100644
+ system(cmd);
+}
+
void OnEnabled(const std::string& id)
void OnEnabled(const AddonPtr& addon)
{
// If the addon is a special, call enabled handler
AddonPtr addon;
if (CAddonMgr::GetInstance().GetAddon(id, addon, ADDON_PVRDLL))
return addon->OnEnabled();
+ AddonPtr localAddon;
+
+ // OE: systemctl enable & start on addon enable
+ if (CAddonMgr::GetInstance().GetAddon(id, addon, ADDON_SERVICE))
+ if (CAddonMgr::GetInstance().GetAddon(addon->ID(), localAddon, ADDON_SERVICE))
+ CallOEWrapper(addon->ID(), false);
+ // OE
+
addon->OnEnabled();
}
void OnDisabled(const std::string& id)
void OnDisabled(const AddonPtr& addon)
{
AddonPtr addon;
+ AddonPtr localAddon;
+
+ // OE: systemctl stop & disable on addon disable
+ if (CAddonMgr::GetInstance().GetAddon(id, addon, ADDON_SERVICE, false))
+ if (CAddonMgr::GetInstance().GetAddon(addon->ID(), localAddon, ADDON_SERVICE, false))
+ CallOEWrapper(addon->ID(), true);
+ // OE
+
if (CAddonMgr::GetInstance().GetAddon(id, addon, ADDON_PVRDLL, false))
return addon->OnDisabled();
addon->OnDisabled();
}
@@ -443,11 +461,28 @@ void OnPostInstall(const AddonPtr& addon, bool update, bool modal)
@@ -438,11 +459,28 @@ void OnPostInstall(const AddonPtr& addon, bool update, bool modal)
}
// OE
@ -79,10 +77,10 @@ index 639ee5c..7f205a7 100644
}
diff --git a/xbmc/addons/Addon.h b/xbmc/addons/Addon.h
index 35203a2..8e4b95e 100644
index 95f3f23..5f2223c 100644
--- a/xbmc/addons/Addon.h
+++ b/xbmc/addons/Addon.h
@@ -84,6 +84,8 @@ public:
@@ -77,6 +77,8 @@ public:
const InfoMap& ExtraInfo() const override { return m_addonInfo.ExtraInfo(); }
const ADDONDEPS& GetDeps() const override { return m_addonInfo.GetDeps(); }

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="libass"
PKG_VERSION="0.13.6"
PKG_SHA256="f8a874d104e3e72e2cc057e5a1710c650b10367486845a26e5ff28ed7a912c2d"
PKG_VERSION="0.13.7"
PKG_SHA256="7065e5f5fb76e46f2042a62e7c68d81e5482dbeeda24644db1bd066e44da7e9d"
PKG_ARCH="any"
PKG_LICENSE="BSD"
PKG_SITE="https://github.com/libass/libass"

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="libbluray"
PKG_VERSION="0.9.3"
PKG_SHA256="a6366614ec45484b51fe94fcd1975b3b8716f90f038a33b24d59978de3863ce0"
PKG_VERSION="1.0.1"
PKG_SHA256="0f9f9a1db2f48cafc70ed2596ff3594b597e2027408f5f2be6191c245d67853a"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="https://www.videolan.org/developers/libbluray.html"
@ -43,8 +43,7 @@ PKG_CONFIGURE_OPTS_TARGET="--disable-werror \
--disable-extra-warnings \
--disable-optimizations \
--disable-examples \
--disable-bdjava \
--enable-udf \
--disable-bdjava-jar \
--disable-doxygen-doc \
--disable-doxygen-dot \
--disable-doxygen-man \

View File

@ -1,8 +1,8 @@
diff --git a/Makefile.am b/Makefile.am
index 3a54bfc..035553b 100644
index 33813b07..d7b909c4 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -161,6 +161,15 @@ noinst_HEADERS = \
@@ -210,6 +210,15 @@ noinst_HEADERS = \
jni/win32/jni_md.h \
jni/darwin/jni_md.h
@ -18,19 +18,20 @@ index 3a54bfc..035553b 100644
pkginclude_HEADERS = \
src/file/filesystem.h \
src/libbluray/bluray.h \
@@ -168,6 +177,9 @@ pkginclude_HEADERS = \
@@ -217,6 +226,10 @@ pkginclude_HEADERS = \
src/libbluray/keys.h \
src/libbluray/player_settings.h \
src/libbluray/bdnav/clpi_data.h \
+ src/libbluray/bdnav/clpi_parse.h \
+ src/libbluray/bdnav/mpls_parse.h \
+ src/libbluray/bdnav/mpls_data.h \
+ src/libbluray/bdnav/uo_mask_table.h \
src/libbluray/bdnav/meta_data.h \
src/libbluray/decoders/overlay.h \
src/util/log_control.h
diff --git a/config.h b/config.h
new file mode 100644
index 0000000..6764704
index 00000000..bd39268a
--- /dev/null
+++ b/config.h
@@ -0,0 +1,157 @@
@ -152,7 +153,7 @@ index 0000000..6764704
+#define PACKAGE_NAME "libbluray"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "libbluray 0.9.2"
+#define PACKAGE_STRING "libbluray 1.0.0"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "libbluray"
@ -161,7 +162,7 @@ index 0000000..6764704
+#define PACKAGE_URL ""
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "0.9.2"
+#define PACKAGE_VERSION "1.0.0"
+
+/* Define as the return type of signal handlers (`int' or `void'). */
+#define RETSIGTYPE void
@ -173,7 +174,7 @@ index 0000000..6764704
+/* #undef USING_BDJAVA */
+
+/* Version number of package */
+#define VERSION "0.9.2"
+#define VERSION "1.0.0"
+
+/* Enable large inode numbers on Mac OS X 10.5. */
+#ifndef _DARWIN_USE_64_BIT_INODE
@ -193,7 +194,7 @@ index 0000000..6764704
+#define _WIN32_WINNT 0x0502
diff --git a/includes/inttypes.h b/includes/inttypes.h
new file mode 100644
index 0000000..ead903f
index 00000000..ead903f7
--- /dev/null
+++ b/includes/inttypes.h
@@ -0,0 +1,305 @@
@ -504,7 +505,7 @@ index 0000000..ead903f
+#endif // _MSC_INTTYPES_H_ ]
diff --git a/libbluray.def b/libbluray.def
new file mode 100644
index 0000000..d4c93cb
index 00000000..d4c93cb9
--- /dev/null
+++ b/libbluray.def
@@ -0,0 +1,63 @@
@ -573,10 +574,10 @@ index 0000000..d4c93cb
+ bd_get_debug_mask
diff --git a/libbluray.vcxproj b/libbluray.vcxproj
new file mode 100644
index 0000000..c778955
index 00000000..393cd1a0
--- /dev/null
+++ b/libbluray.vcxproj
@@ -0,0 +1,231 @@
@@ -0,0 +1,236 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
@ -653,6 +654,7 @@ index 0000000..c778955
+ <ClInclude Include="src\util\array.h" />
+ <ClInclude Include="src\util\attributes.h" />
+ <ClInclude Include="src\util\bits.h" />
+ <ClInclude Include="src\util\event_queue.h" />
+ <ClInclude Include="src\util\logging.h" />
+ <ClInclude Include="src\util\log_control.h" />
+ <ClInclude Include="src\util\macro.h" />
@ -698,6 +700,7 @@ index 0000000..c778955
+ <ClCompile Include="src\libbluray\register.c" />
+ <ClCompile Include="src\util\array.c" />
+ <ClCompile Include="src\util\bits.c" />
+ <ClCompile Include="src\util\event_queue.c" />
+ <ClCompile Include="src\util\logging.c" />
+ <ClCompile Include="src\util\mutex.c" />
+ <ClCompile Include="src\util\refcnt.c" />
@ -722,6 +725,9 @@ index 0000000..c778955
+ <PropertyGroup Label="Configuration" Condition="'$(VisualStudioVersion)' == '14.0'">
+ <PlatformToolset>v140_xp</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Label="Configuration" Condition="'$(VisualStudioVersion)' == '15.0'">
+ <PlatformToolset>v141_xp</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)'=='Debug' Or '$(Configuration)'=='DebugRelease'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
@ -811,10 +817,10 @@ index 0000000..c778955
\ No newline at end of file
diff --git a/libbluray.vcxproj.filters b/libbluray.vcxproj.filters
new file mode 100644
index 0000000..57ff16c
index 00000000..4352ef05
--- /dev/null
+++ b/libbluray.vcxproj.filters
@@ -0,0 +1,353 @@
@@ -0,0 +1,359 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
@ -1036,6 +1042,9 @@ index 0000000..57ff16c
+ <ClInclude Include="src\file\mount.h">
+ <Filter>Header Files\file</Filter>
+ </ClInclude>
+ <ClInclude Include="src\util\event_queue.h">
+ <Filter>Header Files\util</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="src\util\logging.c">
@ -1161,6 +1170,9 @@ index 0000000..57ff16c
+ <ClCompile Include="src\file\mount.c">
+ <Filter>Source Files\file</Filter>
+ </ClCompile>
+ <ClCompile Include="src\util\event_queue.c">
+ <Filter>Source Files\util</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="libbluray.def">
@ -1170,22 +1182,29 @@ index 0000000..57ff16c
+</Project>
\ No newline at end of file
diff --git a/src/file/dir_win32.c b/src/file/dir_win32.c
index 2690658..f42114d 100644
index 5cbc3c86..40308966 100644
--- a/src/file/dir_win32.c
+++ b/src/file/dir_win32.c
@@ -86,8 +86,8 @@ static BD_DIR_H *_dir_open_win32(const char* dirname)
dir->internal = priv;
@@ -76,7 +76,7 @@ static dir_data_t *_open_impl(const char *dirname)
{
dir_data_t *priv;
char *filespec;
- wchar_t wfilespec[MAX_PATH];
- if (MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, filespec, -1, wfilespec, MAX_PATH))
+ wchar_t wfilespec[4096 + 1] = {0};
+ if (MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, filespec, -1, wfilespec, 4096))
priv->handle = _wfindfirst(wfilespec, &priv->info);
else
priv->handle = -1;
+ wchar_t wfilespec[4096 + 1];
int result;
filespec = str_printf("%s" DIR_SEP "*", dirname);
@@ -84,7 +84,7 @@ static dir_data_t *_open_impl(const char *dirname)
return NULL;
}
- result = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, filespec, -1, wfilespec, MAX_PATH);
+ result = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, filespec, -1, wfilespec, 4096);
X_FREE(filespec);
if (!result) {
return NULL;
diff --git a/src/file/dirs_win32.c b/src/file/dirs_win32.c
index e165fea..3d07251 100644
index e165feac..3d07251a 100644
--- a/src/file/dirs_win32.c
+++ b/src/file/dirs_win32.c
@@ -36,7 +36,7 @@
@ -1216,7 +1235,7 @@ index e165fea..3d07251 100644
if (!dir) {
// first call
diff --git a/src/file/dl_win32.c b/src/file/dl_win32.c
index e4492e1..7f6ae73 100644
index 6155ad6a..3a09fa1c 100644
--- a/src/file/dl_win32.c
+++ b/src/file/dl_win32.c
@@ -57,7 +57,7 @@ void *dl_dlopen(const char *path, const char *version)
@ -1227,8 +1246,19 @@ index e4492e1..7f6ae73 100644
+ wchar_t wname[MAX_PATH+1] = {0};
char *name;
void *result;
int iresult;
@@ -81,8 +81,8 @@ void *dl_dlopen(const char *path, const char *version)
if (GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")),
"SetDefaultDllDirectories") != NULL)
#endif
- flags = LOAD_LIBRARY_SEARCH_APPLICATION_DIR |
- LOAD_LIBRARY_SEARCH_SYSTEM32;
+ flags = 0xA00; /*LOAD_LIBRARY_SEARCH_APPLICATION_DIR |
+ LOAD_LIBRARY_SEARCH_SYSTEM32;*/
@@ -109,7 +109,7 @@ const char *dl_get_path(void)
result = LoadLibraryExW(wname, NULL, flags);
@@ -125,7 +125,7 @@ const char *dl_get_path(void)
if (!initialized) {
initialized = 1;
@ -1238,7 +1268,7 @@ index e4492e1..7f6ae73 100644
wchar_t wpath[MAX_PATH];
diff --git a/src/file/file_win32.c b/src/file/file_win32.c
index d9845fb..b4fb7ad 100644
index 11aaf820..f5518636 100644
--- a/src/file/file_win32.c
+++ b/src/file/file_win32.c
@@ -107,9 +107,9 @@ static BD_FILE_H *_file_open(const char* filename, const char *mode)
@ -1264,7 +1294,7 @@ index d9845fb..b4fb7ad 100644
if (!file) {
BD_DEBUG(DBG_FILE | DBG_CRIT, "Error opening file %s (out of memory)\n", filename);
diff --git a/src/libbluray/bdnav/clpi_parse.c b/src/libbluray/bdnav/clpi_parse.c
index 394347e..39bbcef 100644
index 839e10c3..5fa490dc 100644
--- a/src/libbluray/bdnav/clpi_parse.c
+++ b/src/libbluray/bdnav/clpi_parse.c
@@ -39,6 +39,7 @@
@ -1275,7 +1305,7 @@ index 394347e..39bbcef 100644
static void
_human_readable_sig(char *sig, uint32_t s1, uint32_t s2)
@@ -129,7 +130,8 @@ _parse_header(BITSTREAM *bits, CLPI_CL *cl)
@@ -134,7 +135,8 @@ _parse_header(BITSTREAM *bits, CLPI_CL *cl)
cl->type_indicator2 = bs_read(bits, 32);
if (cl->type_indicator != CLPI_SIG1 ||
(cl->type_indicator2 != CLPI_SIG2A &&
@ -1285,11 +1315,50 @@ index 394347e..39bbcef 100644
char sig[9];
char expect[9];
diff --git a/src/libbluray/bdnav/index_parse.c b/src/libbluray/bdnav/index_parse.c
index 6a0f5a01..56b3d949 100644
--- a/src/libbluray/bdnav/index_parse.c
+++ b/src/libbluray/bdnav/index_parse.c
@@ -104,12 +104,11 @@ static int _parse_index(BITSTREAM *bs, INDX_ROOT *index)
index->num_titles = bs_read(bs, 16);
if (!index->num_titles) {
- BD_DEBUG(DBG_CRIT, "empty index\n");
- return 0;
+ BD_DEBUG(DBG_NAV, "empty index\n");
}
index->titles = calloc(index->num_titles, sizeof(INDX_TITLE));
- if (!index->titles) {
+ if (index->num_titles && !index->titles) {
BD_DEBUG(DBG_CRIT, "out of memory\n");
return 0;
}
diff --git a/src/libbluray/bdnav/mpls_data.h b/src/libbluray/bdnav/mpls_data.h
index f148d513..b6a8cdd0 100644
--- a/src/libbluray/bdnav/mpls_data.h
+++ b/src/libbluray/bdnav/mpls_data.h
@@ -47,6 +47,7 @@ typedef struct
uint8_t sv_num_pip_pg_ref;
uint8_t *sv_secondary_audio_ref;
uint8_t *sv_pip_pg_ref;
+ uint8_t ss_offset_sequence_id;
} MPLS_STREAM;
typedef struct
@@ -107,6 +108,7 @@ typedef struct
uint8_t random_access_flag;
uint8_t audio_mix_flag;
uint8_t lossless_bypass_flag;
+ uint8_t mvc_base_view_r_flag;
} MPLS_AI;
typedef struct
diff --git a/src/libbluray/bdnav/mpls_parse.c b/src/libbluray/bdnav/mpls_parse.c
index e196118..87b240a 100644
index 82b61854..92ea99a7 100644
--- a/src/libbluray/bdnav/mpls_parse.c
+++ b/src/libbluray/bdnav/mpls_parse.c
@@ -39,6 +39,7 @@
@@ -40,6 +40,7 @@
#define MPLS_SIG1 ('M' << 24 | 'P' << 16 | 'L' << 8 | 'S')
#define MPLS_SIG2A ('0' << 24 | '2' << 16 | '0' << 8 | '0')
#define MPLS_SIG2B ('0' << 24 | '1' << 16 | '0' << 8 | '0')
@ -1297,18 +1366,19 @@ index e196118..87b240a 100644
static void
_human_readable_sig(char *sig, uint32_t s1, uint32_t s2)
@@ -137,8 +138,9 @@ _parse_appinfo(BITSTREAM *bits, MPLS_AI *ai)
@@ -92,9 +93,10 @@ _parse_appinfo(BITSTREAM *bits, MPLS_AI *ai)
ai->random_access_flag = bs_read(bits, 1);
ai->audio_mix_flag = bs_read(bits, 1);
ai->lossless_bypass_flag = bs_read(bits, 1);
+ ai->mvc_base_view_r_flag = bs_read(bits, 1);
#if 0
// Reserved
- bs_skip(bits, 13);
+ bs_skip(bits, 12);
bs_seek_byte(bits, pos + len);
#endif
return 1;
}
@@ -155,7 +157,8 @@ _parse_header(BITSTREAM *bits, MPLS_PL *pl)
@@ -112,7 +114,8 @@ _parse_header(BITSTREAM *bits, MPLS_PL *pl)
pl->type_indicator2 = bs_read(bits, 32);
if (pl->type_indicator != MPLS_SIG1 ||
(pl->type_indicator2 != MPLS_SIG2A &&
@ -1318,15 +1388,15 @@ index e196118..87b240a 100644
char sig[9];
char expect[9];
@@ -259,6 +262,7 @@ _parse_stream(BITSTREAM *bits, MPLS_STREAM *s)
@@ -218,6 +221,7 @@ _parse_stream(BITSTREAM *bits, MPLS_STREAM *s)
break;
};
s->lang[3] = '\0';
+ s->ss_offset_sequence_id = 0xFF;
bs_seek_byte(bits, pos + len);
return 1;
@@ -882,6 +886,99 @@ _parse_subpath_extension(BITSTREAM *bits, MPLS_PL *pl)
if (bs_seek_byte(bits, pos + len) < 0) {
return 0;
@@ -911,6 +915,99 @@ _parse_subpath_extension(BITSTREAM *bits, MPLS_PL *pl)
}
static int
@ -1426,7 +1496,7 @@ index e196118..87b240a 100644
_parse_mpls_extension(BITSTREAM *bits, int id1, int id2, void *handle)
{
MPLS_PL *pl = (MPLS_PL*)handle;
@@ -895,7 +992,7 @@ _parse_mpls_extension(BITSTREAM *bits, int id1, int id2, void *handle)
@@ -924,7 +1021,7 @@ _parse_mpls_extension(BITSTREAM *bits, int id1, int id2, void *handle)
if (id1 == 2) {
if (id2 == 1) {
@ -1435,31 +1505,11 @@ index e196118..87b240a 100644
}
if (id2 == 2) {
// SubPath entries extension
diff --git a/src/libbluray/bdnav/mpls_parse.h b/src/libbluray/bdnav/mpls_parse.h
index 94bfa67..c1b2c31 100644
--- a/src/libbluray/bdnav/mpls_parse.h
+++ b/src/libbluray/bdnav/mpls_parse.h
@@ -49,6 +49,7 @@ typedef struct
uint8_t sv_num_pip_pg_ref;
uint8_t *sv_secondary_audio_ref;
uint8_t *sv_pip_pg_ref;
+ uint8_t ss_offset_sequence_id;
} MPLS_STREAM;
typedef struct
@@ -109,6 +110,7 @@ typedef struct
uint8_t random_access_flag;
uint8_t audio_mix_flag;
uint8_t lossless_bypass_flag;
+ uint8_t mvc_base_view_r_flag;
} MPLS_AI;
typedef struct
diff --git a/src/libbluray/bluray.c b/src/libbluray/bluray.c
index 0e60b68..f633d7a 100644
index ce4854d8..94565278 100644
--- a/src/libbluray/bluray.c
+++ b/src/libbluray/bluray.c
@@ -1626,6 +1626,25 @@ int64_t bd_seek_time(BLURAY *bd, uint64_t tick)
@@ -1651,6 +1651,25 @@ int64_t bd_seek_time(BLURAY *bd, uint64_t tick)
return bd->s_pos;
}
@ -1485,26 +1535,26 @@ index 0e60b68..f633d7a 100644
uint64_t bd_tell_time(BLURAY *bd)
{
uint32_t clip_pkt = 0, out_pkt = 0, out_time = 0;
@@ -2602,6 +2621,7 @@ static BLURAY_TITLE_INFO* _fill_title_info(NAV_TITLE* title, uint32_t title_idx,
BLURAY_CLIP_INFO *ci = &title_info->clips[ii];
NAV_CLIP *nc = &title->clip_list.clip[ii];
@@ -2648,6 +2667,7 @@ static BLURAY_TITLE_INFO* _fill_title_info(NAV_TITLE* title, uint32_t title_idx,
NAV_CLIP *nc = &title->clip_list.clip[ii];
+ ci->idx = nc->clip_id;
ci->pkt_count = nc->end_pkt - nc->start_pkt;
ci->start_time = (uint64_t)nc->title_time * 2;
ci->in_time = (uint64_t)pi->in_time * 2;
@@ -2628,6 +2648,8 @@ static BLURAY_TITLE_INFO* _fill_title_info(NAV_TITLE* title, uint32_t title_idx,
_copy_streams(nc, ci->sec_audio_streams, pi->stn.secondary_audio, ci->sec_audio_stream_count);
memcpy(ci->clip_id, pi->clip->clip_id, sizeof(ci->clip_id));
+ ci->idx = nc->clip_id;
ci->pkt_count = nc->end_pkt - nc->start_pkt;
ci->start_time = (uint64_t)nc->title_time * 2;
ci->in_time = (uint64_t)pi->in_time * 2;
@@ -2672,6 +2692,8 @@ static BLURAY_TITLE_INFO* _fill_title_info(NAV_TITLE* title, uint32_t title_idx,
}
}
+ title_info->mvc_base_view_r_flag = title->pl->app_info.mvc_base_view_r_flag;
+
return title_info;
}
@@ -3746,3 +3768,28 @@ void bd_free_bdjo(struct bdjo_data *obj)
(void)obj;
#endif
error:
@@ -3825,3 +3847,28 @@ void bd_free_bdjo(struct bdjo_data *obj)
{
bdjo_free(&obj);
}
+
+int bd_get_clip_infos(BLURAY *bd, unsigned clip, uint64_t *clip_start_time, uint64_t *stream_start_time, uint64_t *pos, uint64_t *duration)
@ -1532,7 +1582,7 @@ index 0e60b68..f633d7a 100644
+ return NULL;
+}
diff --git a/src/libbluray/bluray.h b/src/libbluray/bluray.h
index cbf16fc..97dc1a3 100644
index b7b52e55..744a6926 100644
--- a/src/libbluray/bluray.h
+++ b/src/libbluray/bluray.h
@@ -32,6 +32,7 @@ extern "C" {
@ -1543,7 +1593,7 @@ index cbf16fc..97dc1a3 100644
#define TITLES_ALL 0 /**< all titles. */
#define TITLES_FILTER_DUP_TITLE 0x01 /**< remove duplicate titles. */
@@ -225,6 +226,7 @@ typedef struct bd_stream_info {
@@ -222,6 +223,7 @@ typedef struct bd_stream_info {
} BLURAY_STREAM_INFO;
typedef struct bd_clip {
@ -1551,16 +1601,16 @@ index cbf16fc..97dc1a3 100644
uint32_t pkt_count;
uint8_t still_mode;
uint16_t still_time; /* seconds */
@@ -275,6 +277,8 @@ typedef struct bd_title_info {
uint32_t mark_count;
@@ -272,6 +274,8 @@ typedef struct bd_title_info {
BLURAY_CLIP_INFO *clips;
BLURAY_TITLE_CHAPTER *chapters;
BLURAY_TITLE_MARK *marks;
+
+ uint8_t mvc_base_view_r_flag;
} BLURAY_TITLE_INFO;
/*
@@ -483,6 +487,16 @@ uint32_t bd_get_current_title(BLURAY *bd);
@@ -480,6 +484,16 @@ uint32_t bd_get_current_title(BLURAY *bd);
/**
*
@ -1577,7 +1627,7 @@ index cbf16fc..97dc1a3 100644
* Read from currently selected title file, decrypt if possible
*
* @param bd BLURAY object
@@ -1007,7 +1021,6 @@ int bd_mouse_select(BLURAY *bd, int64_t pts, uint16_t x, uint16_t y);
@@ -1033,7 +1047,6 @@ int bd_mouse_select(BLURAY *bd, int64_t pts, uint16_t x, uint16_t y);
/* access to internal information */
@ -1585,7 +1635,7 @@ index cbf16fc..97dc1a3 100644
/**
*
* Get copy of clip information for requested playitem.
@@ -1060,6 +1073,28 @@ void bd_stop_bdj(BLURAY *bd); // shutdown BD-J and clean up resources
@@ -1086,6 +1099,28 @@ void bd_stop_bdj(BLURAY *bd); // shutdown BD-J and clean up resources
*/
int bd_read_file(BLURAY *, const char *path, void **data, int64_t *size);
@ -1615,10 +1665,10 @@ index cbf16fc..97dc1a3 100644
#ifdef __cplusplus
}
diff --git a/src/libbluray/disc/disc.c b/src/libbluray/disc/disc.c
index defa084..375e6c3 100644
index be6a279d..8ed14e64 100644
--- a/src/libbluray/disc/disc.c
+++ b/src/libbluray/disc/disc.c
@@ -69,7 +69,7 @@ static BD_FILE_H *_bdrom_open_path(void *p, const char *rel_path)
@@ -75,7 +75,7 @@ static BD_FILE_H *_bdrom_open_path(void *p, const char *rel_path)
return NULL;
}
@ -1627,4 +1677,3 @@ index defa084..375e6c3 100644
X_FREE(abs_path);
return fp;

View File

@ -17,8 +17,8 @@
################################################################################
PKG_NAME="fontconfig"
PKG_VERSION="2.12.1"
PKG_SHA256="a9f42d03949f948a3a4f762287dbc16e53a927c91a07ee64207ebd90a9e5e292"
PKG_VERSION="2.12.4"
PKG_SHA256="fd5a6a663f4c4a00e196523902626654dd0c4a78686cbc6e472f338e50fdf806"
PKG_ARCH="any"
PKG_LICENSE="OSS"
PKG_SITE="http://www.fontconfig.org"

View File

@ -1,72 +0,0 @@
From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 11 Dec 2016 14:32:00 -0800
Subject: [PATCH] Avoid conflicts with integer width macros from TS
18661-1:2014
glibc 2.25+ has now defined these macros in <limits.h>
https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Upstream-Status: Submitted
fontconfig/fontconfig.h | 2 +-
src/fcobjs.h | 2 +-
src/fcobjshash.gperf | 2 +-
src/fcobjshash.h | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
Index: fontconfig-2.12.1/fontconfig/fontconfig.h
===================================================================
--- fontconfig-2.12.1.orig/fontconfig/fontconfig.h
+++ fontconfig-2.12.1/fontconfig/fontconfig.h
@@ -128,7 +128,8 @@ typedef int FcBool;
#define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION
/* Adjust outline rasterizer */
-#define FC_CHAR_WIDTH "charwidth" /* Int */
+#define FC_CHARWIDTH "charwidth" /* Int */
+#define FC_CHAR_WIDTH FC_CHARWIDTH
#define FC_CHAR_HEIGHT "charheight"/* Int */
#define FC_MATRIX "matrix" /* FcMatrix */
Index: fontconfig-2.12.1/src/fcobjs.h
===================================================================
--- fontconfig-2.12.1.orig/src/fcobjs.h
+++ fontconfig-2.12.1/src/fcobjs.h
@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble, NULL)
FC_OBJECT (RGBA, FcTypeInteger, NULL)
FC_OBJECT (SCALE, FcTypeDouble, NULL)
FC_OBJECT (MINSPACE, FcTypeBool, NULL)
-FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL)
+FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL)
FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL)
FC_OBJECT (MATRIX, FcTypeMatrix, NULL)
FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet)
Index: fontconfig-2.12.1/src/fcobjshash.gperf
===================================================================
--- fontconfig-2.12.1.orig/src/fcobjshash.gperf
+++ fontconfig-2.12.1/src/fcobjshash.gperf
@@ -44,7 +44,7 @@ int id;
"rgba",FC_RGBA_OBJECT
"scale",FC_SCALE_OBJECT
"minspace",FC_MINSPACE_OBJECT
-"charwidth",FC_CHAR_WIDTH_OBJECT
+"charwidth",FC_CHARWIDTH_OBJECT
"charheight",FC_CHAR_HEIGHT_OBJECT
"matrix",FC_MATRIX_OBJECT
"charset",FC_CHARSET_OBJECT
Index: fontconfig-2.12.1/src/fcobjshash.h
===================================================================
--- fontconfig-2.12.1.orig/src/fcobjshash.h
+++ fontconfig-2.12.1/src/fcobjshash.h
@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT},
{-1},
#line 47 "fcobjshash.gperf"
- {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHAR_WIDTH_OBJECT},
+ {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_CHARWIDTH_OBJECT},
#line 48 "fcobjshash.gperf"
{(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_CHAR_HEIGHT_OBJECT},
#line 55 "fcobjshash.gperf"

View File

@ -96,6 +96,29 @@ validate_pkg_url() {
[ "${url1}" = "${url2}" ] && return 0 || return 1
}
get_pkg_var() {
local pkg_name="$1" pkg_var="$2"
cd ../..
PROJECT=Generic ARCH=x86_64 source config/options ${pkg_name}
echo "${!pkg_var}"
}
update_pkg() {
local pkg_path="$1" pkg_name="$2" pkg_version="$3"
local old_version pkg_url new_sha256
old_version=$(get_pkg_var "${pkg_name}" PKG_VERSION)
if [ "${old_version}" != "${pkg_version}" ]; then
[ -n "$pkg_version}" ] && sed -e "s|PKG_VERSION=.*|PKG_VERSION=\"${pkg_version}\"|g" -i ${pkg_path}
pkg_url=$(get_pkg_var "${pkg_name}" PKG_URL)
new_sha256="$(wget -q ${pkg_url} -O- | sha256sum | awk '{print $1}')" || exit 1
sed -e "s|PKG_SHA256=.*|PKG_SHA256=\"${new_sha256}\"|g" -i ${pkg_path}
fi
}
if [ ! -d ${KODI_DIR} ] ; then
git_clone https://github.com/xbmc/xbmc ${KODI_BRANCH} ${KODI_DIR}
fi
@ -123,10 +146,7 @@ git_clone $REPO master $PKG_NAME.git $GIT_HASH
if [ -f ../../packages/mediacenter/kodi-platform/package.mk ] ; then
# update package.mk
RESOLVED_HASH=$(resolve_hash $PKG_NAME.git $GIT_HASH)
echo "Resolving hash for ${PKG_NAME}: ${GIT_HASH} => ${RESOLVED_HASH}"
sed -e "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" \
-e "s|PKG_GIT_URL=.*|PKG_GIT_URL=\"$REPO\"|g" \
-i ../../packages/mediacenter/kodi-platform/package.mk
update_pkg ../../packages/mediacenter/kodi-platform/package.mk ${PKG_NAME} ${RESOLVED_HASH}
fi
rm -rf $PKG_NAME.git
@ -161,9 +181,7 @@ for addontxt in $KODI_DIR/cmake/addons/bootstrap/repositories/*-addons.txt ; do
# update package.mk
RESOLVED_HASH=$(resolve_hash $PKG_NAME.git $GIT_HASH)
echo "Resolving hash for ${PKG_NAME}: ${GIT_HASH} => ${RESOLVED_HASH}"
sed -e "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" \
-e "s|PKG_GIT_URL=.*|PKG_GIT_URL=\"$REPO\"|g" \
-i ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk
update_pkg ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk ${PKG_NAME} ${RESOLVED_HASH}
rm -rf $PKG_NAME.git
else
@ -193,9 +211,7 @@ for ADDON in $(ls -1 ../../packages/mediacenter/kodi-binary-addons); do
# update package.mk for stale github.com packages
RESOLVED_HASH=$(resolve_hash ${ADDON}.git HEAD) || continue
echo "Resolving hash for ${ADDON}: HEAD => ${RESOLVED_HASH}"
sed -e "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" \
-i ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk
update_pkg ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk ${ADDON} ${RESOLVED_HASH}
rm -rf $ADDON.git
done

View File

@ -1,78 +0,0 @@
#!/bin/sh
################################################################################
# This file is part of LibreELEC - https://libreelec.tv
# Copyright (C) 2016 Team LibreELEC
#
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
################################################################################
git_clone() {
# git_clone https://repo.url branch ./target_dir [githash]
echo "[mkpkg] Checking out $1 ..."
if [ ! -d "$3" ]; then
git clone --recursive "$1" -b $2 "$3"
else
if [ -d "$3" ] ; then
cd "$3"
git checkout $2 >/dev/null 2>/dev/null
git pull
cd ..
fi
fi
if [ ! -z "$4" ] ; then
cd "$3"
git fetch >/dev/null 2>/dev/null
git branch -D $4 >/dev/null 2>/dev/null
git checkout $4 >/dev/null 2>/dev/null
git checkout -b ref-$4 >/dev/null 2>/dev/null
cd ..
fi
}
resolve_hash() {
if [ -d "$1" ] ; then
cd "$1"
git rev-parse --short $2 2>/dev/null
fi
}
if [ -z "$1" ]; then
echo "Usage: $0 <emulator-name>"
exit 0
else
addontxt="binary-addons https://github.com/lrusak/repo-binary-addons.git retroplayer"
ADDONS=$(echo $addontxt | awk '{print $1}')
ADDONREPO=$(echo $addontxt | awk '{print $2}')
GIT_HASH=$(echo $addontxt | awk '{print $3}')
git_clone $ADDONREPO retroplayer $ADDONS.git $GIT_HASH
addon="$ADDONS.git/$1"
if [ -n "$(echo $addon | grep game.)" -o -n "$(echo $addon | grep peripheral.)" ]; then
ADDON=$(basename $addon)
REPO=$(cat $addon/$ADDON.txt | awk '{print $2}')
GIT_HASH=$(cat $addon/$ADDON.txt | awk '{print $3}')
if ! grep -q all $addon/platforms.txt && ! grep -q linux $addon/platforms.txt && ! grep -q ! $addon/platforms.txt; then
continue
fi
git_clone $REPO master $ADDON.git $GIT_HASH
if [ -f ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk ] ; then
# update package.mk
RESOLVED_HASH=$(resolve_hash $ADDON.git $GIT_HASH)
sed -i "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk
fi
fi
fi

View File

@ -1,61 +0,0 @@
#!/bin/sh
################################################################################
# This file is part of LibreELEC - https://libreelec.tv
# Copyright (C) 2016 Team LibreELEC
#
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
################################################################################
git_clone() {
# git_clone https://repo.url branch ./target_dir [githash]
echo "[mkpkg] Checking out $1 ..."
if [ ! -d "$3" ]; then
git clone --recursive "$1" -b $2 "$3"
else
if [ -d "$3" ] ; then
cd "$3"
git checkout $2 >/dev/null 2>/dev/null
git pull
cd ..
fi
fi
if [ ! -z "$4" ] ; then
cd "$3"
git fetch >/dev/null 2>/dev/null
git branch -D $4 >/dev/null 2>/dev/null
git checkout $4 -b ref-$4 >/dev/null 2>/dev/null
cd ..
fi
}
resolve_hash() {
if [ -d "$1" ] ; then
cd "$1"
git rev-parse --short $2 2>/dev/null
fi
}
if [ -z "$1" ]; then
echo "Usage: $0 <emulator-name>"
exit 0
else
. ../../packages/emulation/$1/package.mk
git_clone $PKG_SITE master $PKG_NAME.git
if [ -f ../../packages/emulation/$PKG_NAME/package.mk ] ; then
# update package.mk
RESOLVED_HASH=$(resolve_hash $PKG_NAME.git master)
sed -i "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" ../../packages/emulation/$PKG_NAME/package.mk
fi
fi

View File

@ -47,6 +47,29 @@ resolve_hash() {
fi
}
get_pkg_var() {
local pkg_name="$1" pkg_var="$2"
cd ../..
PROJECT=Generic ARCH=x86_64 source config/options ${pkg_name}
echo "${!pkg_var}"
}
update_pkg() {
local pkg_path="$1" pkg_name="$2" pkg_version="$3"
local old_version pkg_url new_sha256
old_version=$(get_pkg_var "${pkg_name}" PKG_VERSION)
if [ "${old_version}" != "${pkg_version}" ]; then
[ -n "$pkg_version}" ] && sed -e "s|PKG_VERSION=.*|PKG_VERSION=\"${pkg_version}\"|g" -i ${pkg_path}
pkg_url=$(get_pkg_var "${pkg_name}" PKG_URL)
new_sha256="$(wget -q ${pkg_url} -O- | sha256sum | awk '{print $1}')" || exit 1
sed -e "s|PKG_SHA256=.*|PKG_SHA256=\"${new_sha256}\"|g" -i ${pkg_path}
fi
}
# addons
for addontxt in "binary-addons https://github.com/lrusak/repo-binary-addons.git retroplayer" ; do
ADDONS=$(echo $addontxt | awk '{print $1}')
@ -81,7 +104,8 @@ for addontxt in "binary-addons https://github.com/lrusak/repo-binary-addons.git
RESOLVED_HASH=$(resolve_hash $ADDON.git $GIT_HASH)
if [ "$OLD_HASH" != "$RESOLVED_HASH" ]; then
sed -i "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk
update_pkg ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk ${ADDON} ${RESOLVED_HASH}
BUMP_REV=true
echo "OLD_HASH: $OLD_HASH"
@ -103,7 +127,7 @@ for addontxt in "binary-addons https://github.com/lrusak/repo-binary-addons.git
RESOLVED_HASH=$(resolve_hash $EMULATOR.git master)
if [ "$OLD_HASH" != "$RESOLVED_HASH" ]; then
sed -i "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" ../../packages/emulation/$EMULATOR/package.mk
update_pkg ../../packages/emulation/$EMULATOR/package.mk ${EMULATOR} ${RESOLVED_HASH}
BUMP_REV=true
echo "OLD_HASH: $OLD_HASH"