Openembedded Devel Discussions
 help / color / mirror / Atom feed
* [meta-oe][PATCH 01/49] libqmi: Fix build with clang
@ 2016-11-23  9:21 Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 02/49] meta_oe_security_flags: Disable PIE for s3c64xx-gpio/s3c24xx-gpio/cpufrequtils Khem Raj
                   ` (47 more replies)
  0 siblings, 48 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../libqmi/libqmi/0001-Detect-clang.patch          | 84 ++++++++++++++++++++++
 .../recipes-connectivity/libqmi/libqmi_1.16.0.bb   |  4 +-
 2 files changed, 87 insertions(+), 1 deletion(-)
 create mode 100644 meta-oe/recipes-connectivity/libqmi/libqmi/0001-Detect-clang.patch

diff --git a/meta-oe/recipes-connectivity/libqmi/libqmi/0001-Detect-clang.patch b/meta-oe/recipes-connectivity/libqmi/libqmi/0001-Detect-clang.patch
new file mode 100644
index 0000000..4047ffb
--- /dev/null
+++ b/meta-oe/recipes-connectivity/libqmi/libqmi/0001-Detect-clang.patch
@@ -0,0 +1,84 @@
+From 4cfb728804157e8f3c69e11ba4df449d8f76388f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Oct 2016 04:42:26 +0000
+Subject: [PATCH] Detect clang
+
+Check for clang compiler since we need to disable
+unused-function warning for clang, at same time
+pass werror when checking for compiler options if
+werror is enabled so spurious options do not get
+enabled. Only the ones that are supported by given
+compiler are accepted.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+---
+ m4/compiler-warnings.m4 | 29 +++++++++++++++++++++++++----
+ 1 file changed, 25 insertions(+), 4 deletions(-)
+
+diff --git a/m4/compiler-warnings.m4 b/m4/compiler-warnings.m4
+index de4a8b0..e4ba718 100644
+--- a/m4/compiler-warnings.m4
++++ b/m4/compiler-warnings.m4
+@@ -2,10 +2,30 @@ AC_DEFUN([LIBQMI_COMPILER_WARNINGS],
+ [AC_ARG_ENABLE(more-warnings,
+ 	AS_HELP_STRING([--enable-more-warnings], [Possible values: no/yes/error]),
+ 	set_more_warnings="$enableval",set_more_warnings=error)
++
++# Clang throws a lot of warnings when it does not understand a flag. Disable
++# this warning for now so other warnings are visible.
++AC_MSG_CHECKING([if compiling with clang])
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[
++#ifndef __clang__
++	not clang
++#endif
++	]])],
++	[CLANG=yes],
++	[CLANG=no]
++)
++AC_MSG_RESULT([$CLANG])
++AS_IF([test "x$CLANG" = "xyes"], [CLANG_FLAGS=-Wno-error=unused-function])
++CFLAGS="$CFLAGS $CLANG_FLAGS"
++LDFLAGS="$LDFLAGS $CLANG_FLAGS"
++
+ AC_MSG_CHECKING(for more warnings)
+ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
+ 	AC_MSG_RESULT(yes)
+ 	CFLAGS="-Wall -std=gnu89 $CFLAGS"
++	if test "x$set_more_warnings" = xerror; then
++		WERROR="-Werror"
++	fi
+ 
+ 	for option in -Wmissing-declarations -Wmissing-prototypes \
+ 		      -Wdeclaration-after-statement -Wstrict-prototypes \
+@@ -17,22 +37,23 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
+ 		      -Wmissing-include-dirs -Waggregate-return \
+ 		      -Wformat-security; do
+ 		SAVE_CFLAGS="$CFLAGS"
+-		CFLAGS="$CFLAGS $option"
++		CFLAGS="$CFLAGS $option $WERROR"
+ 		AC_MSG_CHECKING([whether gcc understands $option])
+ 		AC_TRY_COMPILE([], [],
+ 			has_option=yes,
+ 			has_option=no,)
+ 		if test $has_option = no; then
+ 			CFLAGS="$SAVE_CFLAGS"
++		else
++			CFLAGS="$SAVE_CFLAGS $option"
+ 		fi
+ 		AC_MSG_RESULT($has_option)
+ 		unset has_option
+ 		unset SAVE_CFLAGS
+ 	done
++	CFLAGS="$CFLAGS $WERROR"
+ 	unset option
+-	if test "x$set_more_warnings" = xerror; then
+-		CFLAGS="$CFLAGS -Werror"
+-	fi
++	unset WERROR
+ else
+ 	AC_MSG_RESULT(no)
+ fi
+-- 
+1.9.1
+
diff --git a/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb b/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb
index 5ac889f..679b102 100644
--- a/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb
+++ b/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb
@@ -11,6 +11,8 @@ DEPENDS = "glib-2.0 libgudev libmbim"
 
 inherit autotools pkgconfig bash-completion
 
-SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz"
+SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz \
+           file://0001-Detect-clang.patch \
+           "
 SRC_URI[md5sum] = "4970c110f160b33637a3515004c637b2"
 SRC_URI[sha256sum] = "7ab6bb47fd23bf4d3fa17424e40ea5552d08b19e5ee4f125f21f316c8086ba2a"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 02/49] meta_oe_security_flags: Disable PIE for s3c64xx-gpio/s3c24xx-gpio/cpufrequtils
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 03/49] boinc: Add recipe for boinc-client Khem Raj
                   ` (46 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/conf/distro/include/meta_oe_security_flags.inc | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/meta-oe/conf/distro/include/meta_oe_security_flags.inc b/meta-oe/conf/distro/include/meta_oe_security_flags.inc
index b0d30a3..93f35e2 100644
--- a/meta-oe/conf/distro/include/meta_oe_security_flags.inc
+++ b/meta-oe/conf/distro/include/meta_oe_security_flags.inc
@@ -6,3 +6,6 @@ SECURITY_CFLAGS_pn-rrdtool = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-llvm3.3 = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-mozjs = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-openldap = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-s3c64xx-gpio = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-s3c24xx-gpio = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-cpufrequtils = "${SECURITY_NO_PIE_CFLAGS}"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 03/49] boinc: Add recipe for boinc-client
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 02/49] meta_oe_security_flags: Disable PIE for s3c64xx-gpio/s3c24xx-gpio/cpufrequtils Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 04/49] libplist: Remove rpaths surgically Khem Raj
                   ` (45 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../boinc/boinc-client/boinc-AM_CONDITIONAL.patch  | 24 ++++++
 .../boinc/boinc-client/cross-compile.patch         | 98 ++++++++++++++++++++++
 .../boinc/boinc-client/gtk-configure.patch         | 29 +++++++
 .../boinc/boinc-client/opengl_m4_check.patch       | 19 +++++
 .../recipes-extended/boinc/boinc-client_7.6.33.bb  | 77 +++++++++++++++++
 5 files changed, 247 insertions(+)
 create mode 100644 meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch
 create mode 100644 meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch
 create mode 100644 meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch
 create mode 100644 meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch
 create mode 100644 meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb

diff --git a/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch b/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch
new file mode 100644
index 0000000..7becb94
--- /dev/null
+++ b/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch
@@ -0,0 +1,24 @@
+Add configure check for gtk2+ and objc++
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+--- A/configure.ac
++++ B/configure.ac
+@@ -39,6 +39,7 @@ AC_PROG_CC
+ AC_PROG_CXX
+ AC_PROG_F77
+ AC_PROG_CPP
++AC_PROG_OBJCXX
+ AC_PROG_MAKE_SET
+ SAH_LINKS
+ AC_LANG_PUSH(C)
+@@ -744,6 +745,8 @@ AM_CONDITIONAL(ENABLE_LIBRARIES, [test "
+ AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes])
+ AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so])
+ 
++PKG_CHECK_MODULES([GTK2], [gtk+-2.0])
++
+ dnl ======================================================================
+ dnl some more vodoo required for building portable client-binary (client, clientgui)
+ dnl ======================================================================
diff --git a/meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch b/meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch
new file mode 100644
index 0000000..287391a
--- /dev/null
+++ b/meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch
@@ -0,0 +1,98 @@
+Remove rpath, its bad for cross compiling to encode
+build time rpaths
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+Index: boinc-client_release-7.6-7.6.33/api/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/api/Makefile.am
++++ boinc-client_release-7.6-7.6.33/api/Makefile.am
+@@ -43,18 +43,18 @@ endif
+ 
+ lib_LTLIBRARIES = libboinc_api.la
+ libboinc_api_la_SOURCES = $(api_files)
+-libboinc_api_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_api_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+ 
+ if BUILD_GRAPHICS_API
+ lib_LTLIBRARIES += libboinc_graphics2.la
+ libboinc_graphics2_la_SOURCES = $(graphics2_files)
+ libboinc_graphics2_la_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_srcdir)/samples/image_libs
+-libboinc_graphics2_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION) -ljpeg
++libboinc_graphics2_la_LDFLAGS = -version-number $(LIBBOINC_VERSION) -ljpeg
+ endif #BUILD_GRAPHICS_API
+ 
+ lib_LTLIBRARIES += libboinc_opencl.la
+ libboinc_opencl_la_SOURCES = $(opencl_files)
+-libboinc_opencl_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_opencl_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+ 
+ if INSTALL_HEADERS
+ ## install only headers that are meant for exporting the API !!
+Index: boinc-client_release-7.6-7.6.33/lib/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/lib/Makefile.am
++++ boinc-client_release-7.6-7.6.33/lib/Makefile.am
+@@ -173,7 +173,7 @@ lib_LTLIBRARIES = libboinc.la
+ libboinc_la_SOURCES = $(generic_sources) $(mac_sources) $(win_sources)
+ libboinc_la_CFLAGS = $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+ libboinc_la_CXXFLAGS = $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+-libboinc_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -static -version-number $(LIBBOINC_VERSION)
++libboinc_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
+ libboinc_la_LIBADD =
+ 
+ if ENABLE_BOINCCRYPT
+@@ -181,7 +181,7 @@ lib_LTLIBRARIES += libboinc_crypt.la
+ libboinc_crypt_la_SOURCES = crypt.cpp
+ libboinc_crypt_la_CFLAGS = $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS) $(SSL_CFLAGS)
+ libboinc_crypt_la_CXXFLAGS = $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS) $(SSL_CXXFLAGS)
+-libboinc_crypt_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -static -version-number $(LIBBOINC_VERSION)
++libboinc_crypt_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
+ libboinc_crypt_la_LIBADD =
+ endif
+ 
+@@ -190,7 +190,7 @@ lib_LTLIBRARIES += libboinc_fcgi.la
+ libboinc_fcgi_la_SOURCES = $(libfcgi_sources) $(mac_sources) $(win_sources)
+ libboinc_fcgi_la_CFLAGS = -D_USING_FCGI_ $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+ libboinc_fcgi_la_CXXFLAGS = -D_USING_FCGI_ $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+-libboinc_fcgi_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_fcgi_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+ libboinc_fcgi_la_LIBADD =
+ endif 
+ # end of "if ENABLE_FCGI"
+Index: boinc-client_release-7.6-7.6.33/sched/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/sched/Makefile.am
++++ boinc-client_release-7.6-7.6.33/sched/Makefile.am
+@@ -26,7 +26,7 @@ lib_LTLIBRARIES = libsched.la
+ libsched_la_SOURCES = $(libsched_sources)
+ libsched_la_CFLAGS = $(AM_CPPFLAGS)
+ libsched_la_CXXFLAGS = $(AM_CPPFLAGS)
+-libsched_la_LDFLAGS= -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libsched_la_LDFLAGS= -version-number $(LIBBOINC_VERSION)
+ libsched_la_LIBADD= $(SSL_LIBS)
+ 
+ ## install only headers that are meant for exporting the API !!
+@@ -48,7 +48,7 @@ lib_LTLIBRARIES += libsched_fcgi.la
+ libsched_fcgi_la_SOURCES = $(libsched_sources)
+ libsched_fcgi_la_CFLAGS = -D_USING_FCGI_ $(AM_CPPFLAGS)
+ libsched_fcgi_la_CXXFLAGS = -D_USING_FCGI_ $(AM_CPPFLAGS)
+-libsched_fcgi_la_LDFLAGS= -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libsched_fcgi_la_LDFLAGS= -version-number $(LIBBOINC_VERSION)
+ libsched_fcgi_la_LIBADD=
+ 
+ endif
+Index: boinc-client_release-7.6-7.6.33/zip/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/zip/Makefile.am
++++ boinc-client_release-7.6-7.6.33/zip/Makefile.am
+@@ -61,7 +61,7 @@ endif
+ 
+ lib_LTLIBRARIES = libboinc_zip.la
+ libboinc_zip_la_SOURCES = $(libboinc_zip_sources)
+-libboinc_zip_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_zip_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+ libboinc_zip_la_LIBADD =
+ 
+ # Some OSs may not prefix libraries with lib.
diff --git a/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch b/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch
new file mode 100644
index 0000000..4ae8d58
--- /dev/null
+++ b/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch
@@ -0,0 +1,29 @@
+Check for gtk2+ only when manager is enabled
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+Index: boinc-client_release-7.6-7.6.33/configure.ac
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/configure.ac
++++ boinc-client_release-7.6-7.6.33/configure.ac
+@@ -1033,6 +1033,11 @@ else
+   AM_CONDITIONAL([GUI_GTK], false)
+ fi
+ 
++dnl ---------- GTK+2.0-----------------------------------------------------
++if test "X${no_x}" != "Xyes"; then
++  PKG_CHECK_MODULES([GTK2], [gtk+-2.0])
++fi
++
+ dnl ---------- libNotify --------------------------------------------------
+ if test "${enable_manager}" = yes ; then
+   PKG_CHECK_MODULES(LIBNOTIFY, [libnotify])
+@@ -1082,7 +1087,6 @@ AM_CONDITIONAL(ENABLE_BOINCCRYPT, [test
+ AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes])
+ AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so])
+ 
+-PKG_CHECK_MODULES([GTK2], [gtk+-2.0])
+ 
+ dnl ======================================================================
+ dnl some more vodoo required for building portable client-binary (client, clientgui)
diff --git a/meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch b/meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch
new file mode 100644
index 0000000..0b057ea
--- /dev/null
+++ b/meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch
@@ -0,0 +1,19 @@
+Do not add prefix/lib to library search path
+let sysroot take care of that
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Inappropriate[Cross-compile specific]
+
+Index: boinc-client_release-7.6-7.6.33/m4/ax_check_gl.m4
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/m4/ax_check_gl.m4
++++ boinc-client_release-7.6-7.6.33/m4/ax_check_gl.m4
+@@ -58,7 +58,7 @@ else
+     else
+       ax_try_lib="${ax_lib}"
+     fi
+-    LIBS="-L${prefix}/lib ${ax_try_lib} ${GL_LIBS} ${ax_save_LIBS}"
++    LIBS="${ax_try_lib} ${GL_LIBS} ${ax_save_LIBS}"
+     AC_LINK_IFELSE(
+     [AC_LANG_PROGRAM([[
+ # if HAVE_WINDOWS_H && defined(_WIN32)
diff --git a/meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb b/meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb
new file mode 100644
index 0000000..ac5f755
--- /dev/null
+++ b/meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb
@@ -0,0 +1,77 @@
+# Copyright (C) 2016 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "Open-source software for volunteer computing"
+DESCRIPTION = "The Berkeley Open Infrastructure for Network Computing (BOINC) is an open- \
+source software platform which supports distributed computing, primarily in \
+the form of volunteer computing and desktop Grid computing.  It is well \
+suited for problems which are often described as trivially parallel.  BOINC \
+is the underlying software used by projects such as SETI@home, Einstein@Home, \
+ClimatePrediciton.net, the World Community Grid, and many other distributed \
+computing projects. \
+This package installs the BOINC client software, which will allow your \
+computer to participate in one or more BOINC projects, using your spare \
+computer time to search for cures for diseases, model protein folding, study \
+global warming, discover sources of gravitational waves, and many other types \
+of scientific and mathematical research."
+
+HOMEPAGE = "http://boinc.berkeley.edu/"
+LICENSE = "LGPLv2+ & GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+                    file://COPYING.LESSER;md5=6a6a8e020838b23406c81b19c1d46df6"
+SECTION = "applications"
+DEPENDS = "curl \
+           jpeg \
+           openssl \
+           sqlite3 \
+           virtual/libgl \
+           ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'libnotify', '', d)} \
+           ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk+ libnotify xcb-util libxscrnsaver', '', d)} \
+           nettle \
+"
+
+SRC_URI = "https://github.com/BOINC/boinc/archive/client_release/7.6/${PV}.tar.gz \
+           file://boinc-AM_CONDITIONAL.patch \
+           file://opengl_m4_check.patch \
+           file://cross-compile.patch \
+           file://gtk-configure.patch \
+"
+SRC_URI[md5sum] = "437b4b98e384b4bda4ef7056e68166ac"
+SRC_URI[sha256sum] = "c4b1c29b9655013e0ac61dddf47ad7f30f38c46159f02a9d9dc8ab854e99aa6d"
+
+inherit gettext autotools-brokensep pkgconfig
+
+S = "${WORKDIR}/${BPN}_release-7.6-${PV}"
+
+EXTRA_OECONF += "\
+    --enable-libraries \
+    --enable-unicode \
+    --enable-shared \
+    --enable-dynamic-client-linkage \
+    --enable-client \
+    --disable-server \
+    --disable-static \
+    --disable-manager \
+    --with-ssl=${STAGING_EXECPREFIXDIR} \
+    --without-wxdir \
+    --without-x \
+    --with-boinc-platform=${TARGET_SYS} \
+"
+export PKG_CONFIG = "${STAGING_BINDIR_NATIVE}/pkg-config"
+
+do_configure_prepend () {
+	if "${@bb.utils.contains('DEPENDS', 'gtk+', '1', '0', d)}" = "0"
+	then
+		export GTK2_CFLAGS=""
+		export GTK2_LIBS=""
+	fi
+}
+
+do_compile_prepend () {
+	# Disable rpaths
+	sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${B}/${TARGET_SYS}-libtool
+	sed -i -e 's|^sys_lib_dlsearch_path_spec=.*|sys_lib_dlsearch_path_spec=""|g' ${B}/${TARGET_SYS}-libtool
+	sed -i -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${B}/${TARGET_SYS}-libtool
+}
+
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 04/49] libplist: Remove rpaths surgically
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 02/49] meta_oe_security_flags: Disable PIE for s3c64xx-gpio/s3c24xx-gpio/cpufrequtils Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 03/49] boinc: Add recipe for boinc-client Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 05/49] meta_oe_security_flags.inc: Add libcec, libmodplug, libcdio Khem Raj
                   ` (44 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Check for files first before operating on it

Fixes QA errors like below

  /usr/lib/python2.7/site-packages/plist/__init__.py
  /usr/lib/python2.7/site-packages/plist/_plist.so
  /usr/lib/python2.7/site-packages/plist/plist.py
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
libplist: 3 installed and not shipped files. [installed-vs-shipped]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb b/meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb
index 10d40fb..f789796 100644
--- a/meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb
+++ b/meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb
@@ -16,8 +16,16 @@ SRC_URI = "http://www.libimobiledevice.org/downloads/libplist-${PV}.tar.bz2 \
 SRC_URI[md5sum] = "2a9e0258847d50f9760dc3ece25f4dc6"
 SRC_URI[sha256sum] = "a418da3880308199b74766deef2a760a9b169b81a868a6a9032f7614e20500ec"
 
-PACKAGES =+ "${PN}-utils ${PN}++"
+do_install_append () {
+    if [ -e ${D}${libdir}/python*/site-packages/plist/_plist.so ]; then
+        chrpath -d ${D}${libdir}/python*/site-packages/plist/_plist.so
+    fi
+}
+
+PACKAGES =+ "${PN}-utils ${PN}++ ${PN}-python"
 FILES_${PN} = "${libdir}/libplist${SOLIBS}"
 FILES_${PN}++ = "${libdir}/libplist++${SOLIBS}"
 FILES_${PN}-utils = "${bindir}/*"
+FILES_${PN}-python = "${libdir}/python*/site-packages/*"
+
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 05/49] meta_oe_security_flags.inc: Add libcec, libmodplug, libcdio
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (2 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 04/49] libplist: Remove rpaths surgically Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-multimedia][PATCH 06/49] dcadec, libsquish: Add new recipes Khem Raj
                   ` (43 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/conf/distro/include/meta_oe_security_flags.inc | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/meta-oe/conf/distro/include/meta_oe_security_flags.inc b/meta-oe/conf/distro/include/meta_oe_security_flags.inc
index 93f35e2..2559948 100644
--- a/meta-oe/conf/distro/include/meta_oe_security_flags.inc
+++ b/meta-oe/conf/distro/include/meta_oe_security_flags.inc
@@ -9,3 +9,6 @@ SECURITY_CFLAGS_pn-openldap = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-s3c64xx-gpio = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-s3c24xx-gpio = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-cpufrequtils = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-libcec = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-libmodplug = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-libcdio = "${SECURITY_NO_PIE_CFLAGS}"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 06/49] dcadec, libsquish: Add new recipes
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (3 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 05/49] meta_oe_security_flags.inc: Add libcec, libmodplug, libcdio Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 07/49] libcec: Update to 3.1.0+ Khem Raj
                   ` (42 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

Transport from meta-dominion, to support
new kodi mediacenter

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-multimedia/dca/dcadec_0.2.0.bb            | 17 +++++++++++++++++
 .../recipes-multimedia/libsquish/libsquish_git.bb     | 19 +++++++++++++++++++
 2 files changed, 36 insertions(+)
 create mode 100644 meta-multimedia/recipes-multimedia/dca/dcadec_0.2.0.bb
 create mode 100644 meta-multimedia/recipes-multimedia/libsquish/libsquish_git.bb

diff --git a/meta-multimedia/recipes-multimedia/dca/dcadec_0.2.0.bb b/meta-multimedia/recipes-multimedia/dca/dcadec_0.2.0.bb
new file mode 100644
index 0000000..45b53c1
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/dca/dcadec_0.2.0.bb
@@ -0,0 +1,17 @@
+SUMMARY = "DTS Coherent Acoustics decoder with support for HD extensions"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING.LGPLv2.1;md5=4fbd65380cdd255951079008b364516c"
+
+SRCREV = "b93deed1a231dd6dd7e39b9fe7d2abe05aa00158"
+SRC_URI = "git://github.com/foo86/dcadec.git;protocol=http"
+
+S = "${WORKDIR}/git"
+
+inherit lib_package
+
+EXTRA_OEMAKE = "CONFIG_SHARED=1"
+
+do_install() {
+	oe_runmake install DESTDIR="${D}" PREFIX="${prefix}"
+}
diff --git a/meta-multimedia/recipes-multimedia/libsquish/libsquish_git.bb b/meta-multimedia/recipes-multimedia/libsquish/libsquish_git.bb
new file mode 100644
index 0000000..f060f1e
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/libsquish/libsquish_git.bb
@@ -0,0 +1,19 @@
+SUMMARY = "The squish library (abbreviated to libsquish) is an open source DXT compression library written in C++ "
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://alpha.cpp;beginline=3;endline=22;md5=6665e479f71feb92d590ea9ae9b9f6d5"
+
+PV = "1.10+git${SRCPV}"
+
+SRCREV = "52e7d93c5947f72380521116c05d97c528863ba8"
+SRC_URI = "git://github.com/OpenELEC/libsquish.git;protocol=https"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "INSTALL_DIR=${D}${prefix}"
+
+do_install() {
+	install -d ${D}${includedir}
+	install -d ${D}${libdir}/pkgconfig
+	oe_runmake install 
+}
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 07/49] libcec: Update to 3.1.0+
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (4 preceding siblings ...)
  2016-11-23  9:21 ` [meta-multimedia][PATCH 06/49] dcadec, libsquish: Add new recipes Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes Khem Raj
                   ` (41 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

Depends on p8platform therefore add recipe for
p8platform

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-extended/libcec/libcec_git.bb         | 18 ++++++++++++------
 meta-oe/recipes-extended/p8platform/p8platform_git.bb | 18 ++++++++++++++++++
 2 files changed, 30 insertions(+), 6 deletions(-)
 create mode 100644 meta-oe/recipes-extended/p8platform/p8platform_git.bb

diff --git a/meta-oe/recipes-extended/libcec/libcec_git.bb b/meta-oe/recipes-extended/libcec/libcec_git.bb
index 0f2a64e..32ab4b9 100644
--- a/meta-oe/recipes-extended/libcec/libcec_git.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_git.bb
@@ -2,18 +2,24 @@ SUMMARY = "USB CEC Adaptor communication Library"
 HOMEPAGE = "http://libcec.pulse-eight.com/"
 
 LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5e8e16396992369f73f3d28875f846da"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e61fd86f9c947b430126181da2c6c715"
 
-DEPENDS = "udev lockdev"
+DEPENDS = "p8platform udev lockdev"
 
-PV = "2.1.4"
+DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11 libxrandr', '', d)}"
 
-SRCREV = "81e38211724bc6e8bd7a60f484433053ed682635"
-SRC_URI = "git://github.com/Pulse-Eight/libcec.git;branch=release"
+PV = "3.1.0+gitr${SRCPV}"
+
+SRCREV = "6d68d21243aa92862592435e8396b4280ea46c3f"
+SRC_URI = "git://github.com/Pulse-Eight/libcec.git"
 
 S = "${WORKDIR}/git"
 
-inherit autotools pkgconfig
+inherit cmake pkgconfig
+
+# Disable python wrapper, it doesn't have crosscompiles
+EXTRA_OECMAKE = "-DCMAKE_INSTALL_LIBDIR=${libdir} -DCMAKE_INSTALL_LIBDIR_NOARCH=${libdir} \
+                 -DSKIP_PYTHON_WRAPPER=1"
 
 # cec-client and xbmc need the .so present to work :(
 FILES_${PN} += "${libdir}/*.so"
diff --git a/meta-oe/recipes-extended/p8platform/p8platform_git.bb b/meta-oe/recipes-extended/p8platform/p8platform_git.bb
new file mode 100644
index 0000000..f6347c2
--- /dev/null
+++ b/meta-oe/recipes-extended/p8platform/p8platform_git.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Platform support library used by libCEC and binary add-ons for Kodi"
+HOMEPAGE = "http://libcec.pulse-eight.com/"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://src/os.h;md5=752555fa94e82005d45fd201fee5bd33"
+
+PV = "2.1.0"
+
+SRC_URI = "git://github.com/Pulse-Eight/platform.git"
+SRCREV = "d7bceb64541cb046421cbcd4c98d91e9bf24822f"
+
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+EXTRA_OECMAKE += "-DCMAKE_INSTALL_LIBDIR=${libdir} -DCMAKE_INSTALL_LIBDIR_NOARCH=${libdir}"
+
+FILES_${PN}-dev += "${libdir}/p8-platform"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (5 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 07/49] libcec: Update to 3.1.0+ Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-26  0:15   ` Martin Jansa
  2016-11-23  9:21 ` [meta-oe][PATCH 09/49] fwts: Update to 16.09 release Khem Raj
                   ` (40 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

16.x is the default since its the latest released version

remove obsoleted xbmc recipes
rename to recipes-mediacenter

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../kodi/jsonschemabuilder-native.bb               |   24 +
 ...re-don-t-try-to-run-stuff-to-find-tinyxml.patch |   25 +
 ...uild-breakages-due-to-architecture-specif.patch |   83 ++
 .../0003-configure-add-aarch64-support.patch       |   50 +
 ...gure-remove-gles-neon-wayland-assumptions.patch |   39 +
 .../kodi/kodi-16/0005-handle-SIGTERM.patch         |  158 +++
 ...-to-read-frequency-output-if-using-intel-.patch |   26 +
 .../kodi/kodi-16/0006-ffmpeg30.patch               |  646 +++++++++
 ...b.com-OpenELEC-OpenELEC.tv-blob-master-pa.patch |   85 ++
 ...ding-issue-when-reading-certain-id3v1-tag.patch |   82 ++
 ...lib-cximage-6.0-fix-compilation-with-gcc6.patch | 1438 ++++++++++++++++++++
 ...10-curl-support-version-7.5.0-and-upwards.patch |   34 +
 ...bmc_pvr_types.h-Fix-compilation-with-gcc6.patch |   30 +
 ...re-don-t-try-to-run-stuff-to-find-tinyxml.patch |   25 +
 .../kodi/kodi-17/0002-handle-SIGTERM.patch         |  163 +++
 ...-to-read-frequency-output-if-using-intel-.patch |   26 +
 .../kodi/kodi-17/0004-Disable-DVD-support.patch    |   35 +
 .../0001-Update-to-p8-platform.patch               |  427 ++++++
 .../kodi/kodi-addon-pvr-hts_git.bb                 |   55 +
 .../0001-Fix-build-after-platform-rename.patch     |   67 +
 .../0001-fix-cross-compile-badness.patch           |   40 +
 .../kodi-platform-02_no-multi-lib.patch            |   12 +
 .../recipes-mediacenter/kodi/kodi-platform_git.bb  |   39 +
 .../recipes-mediacenter/kodi/kodi-startup.bb       |   20 +
 .../kodi/kodi-startup/kodi.service                 |   14 +
 .../recipes-mediacenter/kodi/kodi_16.bb            |  188 +++
 .../recipes-mediacenter/kodi/kodi_17.bb            |  181 +++
 ...on-t-run-python-distutils-to-find-STAGING.patch |   31 -
 ...d-ios-Add-memory-barriers-to-atomic-Add-S.patch |   97 --
 ...d-ios-Add-memory-barriers-to-cas-assembly.patch |   69 -
 ...igure-cope-with-ld-is-gold-DISTRO_FEATURE.patch |   43 -
 .../xbmc/configure.in-Avoid-running-code.patch     |   32 -
 .../recipes-mediacentre/xbmc/xbmc_git.bb           |   97 --
 33 files changed, 4012 insertions(+), 369 deletions(-)
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/jsonschemabuilder-native.bb
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0002-arm64-Fix-build-breakages-due-to-architecture-specif.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0003-configure-add-aarch64-support.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0004-configure-remove-gles-neon-wayland-assumptions.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0005-handle-SIGTERM.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-add-support-to-read-frequency-output-if-using-intel-.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-ffmpeg30.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0007-https-github.com-OpenELEC-OpenELEC.tv-blob-master-pa.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0010-curl-support-version-7.5.0-and-upwards.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-handle-SIGTERM.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-add-support-to-read-frequency-output-if-using-intel-.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-Disable-DVD-support.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts/0001-Update-to-p8-platform.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts_git.bb
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-Fix-build-after-platform-rename.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-fix-cross-compile-badness.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-platform/kodi-platform-02_no-multi-lib.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-startup.bb
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-startup/kodi.service
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
 delete mode 100644 meta-multimedia/recipes-mediacentre/xbmc/xbmc/0001-configure-don-t-run-python-distutils-to-find-STAGING.patch
 delete mode 100644 meta-multimedia/recipes-mediacentre/xbmc/xbmc/0002-Revert-fixed-ios-Add-memory-barriers-to-atomic-Add-S.patch
 delete mode 100644 meta-multimedia/recipes-mediacentre/xbmc/xbmc/0003-Revert-fixed-ios-Add-memory-barriers-to-cas-assembly.patch
 delete mode 100644 meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch
 delete mode 100644 meta-multimedia/recipes-mediacentre/xbmc/xbmc/configure.in-Avoid-running-code.patch
 delete mode 100644 meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb

diff --git a/meta-multimedia/recipes-mediacenter/kodi/jsonschemabuilder-native.bb b/meta-multimedia/recipes-mediacenter/kodi/jsonschemabuilder-native.bb
new file mode 100644
index 0000000..094ccff
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/jsonschemabuilder-native.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Kodi Media Center"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://JsonSchemaBuilder.cpp;beginline=2;endline=18;md5=1f67721215c03f66545390f6e45b99c7"
+
+SRCREV = "b587e98911fcedc4b800cd923a882c7aeeaa2146"
+
+PV = "16.0+gitr${SRCPV}"
+SRC_URI = "git://github.com/xbmc/xbmc.git;branch=Jarvis"
+
+inherit autotools-brokensep gettext native
+
+S = "${WORKDIR}/git/tools/depends/native/JsonSchemaBuilder/src"
+
+do_compile_prepend() {
+    for i in $(find . -name "Makefile") ; do
+        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' $i
+    done
+
+    for i in $(find . -name "*.mak*" -o    -name "Makefile") ; do
+        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' -e 's:-rpath \$(libdir):-rpath ${libdir}:g' $i
+    done
+}
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
new file mode 100644
index 0000000..772ab2c
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
@@ -0,0 +1,25 @@
+From 27fc03853c9305d285a80563db27aea5ddebda2a Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Sat, 6 Feb 2016 15:43:01 +0100
+Subject: [PATCH 1/7] configure: don't try to run stuff to find tinyxml
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 95f285b..d26c5d0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1109,7 +1109,7 @@ AC_CHECK_LIB([bluetooth],   [hci_devid],, AC_MSG_RESULT([Could not find suitable
+ AC_LANG_PUSH([C++])
+ PKG_CHECK_MODULES([TINYXML], [tinyxml >= 2.6.2],
+   [INCLUDES="$INCLUDES $TINYXML_CFLAGS"; LIBS="$LIBS $TINYXML_LIBS"],
+-  [AC_RUN_IFELSE(
++  [AC_COMPILE_IFELSE(
+    [AC_LANG_SOURCE([[
+ #include <stdlib.h>
+ #include <tinyxml.h>
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0002-arm64-Fix-build-breakages-due-to-architecture-specif.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0002-arm64-Fix-build-breakages-due-to-architecture-specif.patch
new file mode 100644
index 0000000..8da5cb9
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0002-arm64-Fix-build-breakages-due-to-architecture-specif.patch
@@ -0,0 +1,83 @@
+From 0ef6bf309d3acf433e1c113306c8a9933c7fb7da Mon Sep 17 00:00:00 2001
+From: Edmund Grimley Evans <edmund.grimley.evans@gmail.com>
+Date: Wed, 26 Aug 2015 08:00:58 +0200
+Subject: [PATCH 2/7] arm64: Fix build breakages due to architecture specific
+ guards
+
+Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796532
+---
+ xbmc/cores/DllLoader/DllLoader.h            | 2 +-
+ xbmc/cores/DllLoader/ldt_keeper.c           | 2 +-
+ xbmc/cores/VideoRenderers/LinuxRendererGL.h | 2 +-
+ xbmc/threads/Atomics.cpp                    | 2 +-
+ xbmc/utils/MathUtils.h                      | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/xbmc/cores/DllLoader/DllLoader.h b/xbmc/cores/DllLoader/DllLoader.h
+index 070aee6..e669203 100644
+--- a/xbmc/cores/DllLoader/DllLoader.h
++++ b/xbmc/cores/DllLoader/DllLoader.h
+@@ -23,7 +23,7 @@
+ #include "coffldr.h"
+ #include "LibraryLoader.h"
+ 
+-#if defined(__linux__) && !defined(__powerpc__) && !defined(__arm__) && !defined(__mips__)
++#if defined(__linux__) && !defined(__powerpc__) && !defined(__arm__) && !defined(__mips__) && !defined(__aarch64__)
+ #define USE_LDT_KEEPER
+ #include "ldt_keeper.h"
+ #endif
+diff --git a/xbmc/cores/DllLoader/ldt_keeper.c b/xbmc/cores/DllLoader/ldt_keeper.c
+index 8af9a86..1c0cdb2 100644
+--- a/xbmc/cores/DllLoader/ldt_keeper.c
++++ b/xbmc/cores/DllLoader/ldt_keeper.c
+@@ -19,7 +19,7 @@
+  */
+ 
+ //#ifndef __powerpc__
+-#if !defined(__powerpc__) && !defined(__ppc__) && !defined(__arm__) && !defined(__mips__)
++#if !defined(__powerpc__) && !defined(__ppc__) && !defined(__arm__) && !defined(__mips__) && !defined(__aarch64__)
+ 
+ #include "ldt_keeper.h"
+ 
+diff --git a/xbmc/cores/VideoRenderers/LinuxRendererGL.h b/xbmc/cores/VideoRenderers/LinuxRendererGL.h
+index fcdea8d..5a3e3df 100644
+--- a/xbmc/cores/VideoRenderers/LinuxRendererGL.h
++++ b/xbmc/cores/VideoRenderers/LinuxRendererGL.h
+@@ -323,7 +323,7 @@ protected:
+ 
+ 
+ inline int NP2( unsigned x ) {
+-#if defined(TARGET_POSIX) && !defined(__POWERPC__) && !defined(__PPC__) && !defined(__arm__) && !defined(__mips__)
++#if defined(TARGET_POSIX) && !defined(__POWERPC__) && !defined(__PPC__) && !defined(__arm__) && !defined(__mips__) && !defined(__aarch64__)
+   // If there are any issues compiling this, just append a ' && 0'
+   // to the above to make it '#if defined(TARGET_POSIX) && 0'
+ 
+diff --git a/xbmc/threads/Atomics.cpp b/xbmc/threads/Atomics.cpp
+index 417b2b6..c172867 100644
+--- a/xbmc/threads/Atomics.cpp
++++ b/xbmc/threads/Atomics.cpp
+@@ -106,7 +106,7 @@ long cas(volatile long *pAddr, long expectedVal, long swapVal)
+ ///////////////////////////////////////////////////////////////////////////
+ long long cas2(volatile long long* pAddr, long long expectedVal, long long swapVal)
+ {
+-#if defined(__ppc__) || defined(__powerpc__) || defined(__arm__)// PowerPC and ARM
++#if defined(__ppc__) || defined(__powerpc__) || defined(__arm__) || defined(__aarch64__) // PowerPC and ARM
+ // Not available/required
+ // Hack to allow compilation
+   throw "cas2 is not implemented";
+diff --git a/xbmc/utils/MathUtils.h b/xbmc/utils/MathUtils.h
+index 21b6a37..1039ba9 100644
+--- a/xbmc/utils/MathUtils.h
++++ b/xbmc/utils/MathUtils.h
+@@ -35,7 +35,7 @@
+ #if defined(__ppc__) || \
+     defined(__powerpc__) || \
+     defined(__mips__) || \
+-    defined(__arm__)
++    defined(__arm__) || defined(__aarch64__)
+   #define DISABLE_MATHUTILS_ASM_ROUND_INT
+ #endif
+ 
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0003-configure-add-aarch64-support.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0003-configure-add-aarch64-support.patch
new file mode 100644
index 0000000..6bf58c6
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0003-configure-add-aarch64-support.patch
@@ -0,0 +1,50 @@
+From 8d7649565863731593e1a4123195b6ce9961cd12 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Tue, 9 Feb 2016 13:35:36 +0100
+Subject: [PATCH 3/7] configure: add aarch64 support
+
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+---
+ configure.ac    | 11 +++++++++++
+ m4/xbmc_arch.m4 |  3 +++
+ 2 files changed, 14 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index d26c5d0..8aad06d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -656,6 +656,17 @@ case $host in
+      use_wayland=no
+      USE_STATIC_FFMPEG=1
+      ;;
++  aarch64*-*-linux-gnu*|aarch64*-*-linux-uclibc*)
++     target_platform=target_linux
++     ARCH="aarch64"
++     use_arch="aarch64"
++     use_joystick=no
++     use_neon=yes
++     use_gles=yes
++     use_gl=no
++     use_wayland=no
++     USE_STATIC_FFMPEG=1
++     ;;
+   arm*-*linux-android*)
+      target_platform=target_android
+      use_arch="arm"
+diff --git a/m4/xbmc_arch.m4 b/m4/xbmc_arch.m4
+index 0b66a82..ad09584 100644
+--- a/m4/xbmc_arch.m4
++++ b/m4/xbmc_arch.m4
+@@ -63,6 +63,9 @@ case $host in
+   arm*-*-linux-gnu*|arm*-*-linux-uclibc*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
++  aarch64*-*-linux-gnu*|aarch64*-*-linux-uclibc*)
++     AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
++     ;;
+   mips*-*-linux-gnu*|mips*-*-linux-uclibc*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0004-configure-remove-gles-neon-wayland-assumptions.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0004-configure-remove-gles-neon-wayland-assumptions.patch
new file mode 100644
index 0000000..6232e0d
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0004-configure-remove-gles-neon-wayland-assumptions.patch
@@ -0,0 +1,39 @@
+From e9c7f4d2b134e7b8721487c19a50d9e443db95b5 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Thu, 11 Feb 2016 14:56:49 +0100
+Subject: [PATCH 4/7] configure: remove gles/neon/wayland assumptions
+
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+---
+ configure.ac | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 8aad06d..e7178ee 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -650,10 +650,6 @@ case $host in
+      ARCH="arm"
+      use_arch="arm"
+      use_joystick=no
+-     use_neon=yes
+-     use_gles=yes
+-     use_gl=no
+-     use_wayland=no
+      USE_STATIC_FFMPEG=1
+      ;;
+   aarch64*-*-linux-gnu*|aarch64*-*-linux-uclibc*)
+@@ -661,10 +657,6 @@ case $host in
+      ARCH="aarch64"
+      use_arch="aarch64"
+      use_joystick=no
+-     use_neon=yes
+-     use_gles=yes
+-     use_gl=no
+-     use_wayland=no
+      USE_STATIC_FFMPEG=1
+      ;;
+   arm*-*linux-android*)
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0005-handle-SIGTERM.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0005-handle-SIGTERM.patch
new file mode 100644
index 0000000..efb774e
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0005-handle-SIGTERM.patch
@@ -0,0 +1,158 @@
+From bc991427b10a83ac652ba0186f0b8bd46d441c8a Mon Sep 17 00:00:00 2001
+From: Stefan Saraev <stefan@saraev.ca>
+Date: Mon, 15 Dec 2014 21:28:54 +0200
+Subject: [PATCH 5/7] handle SIGTERM
+
+0. CApplication::Stop cant be trusted. (deadlocks crashes and boo)
+
+so, when shutdown/reboot is requested:
+
+1. save an exit code (for CEC...)
+2. call CPowerManager::{Reboot,PowerDown}
+3. ... then systemd sends TERM and waits xx seconds before sending KILL
+4. CApplication::Stop has xx seconds to save guisettings.xml and boo
+5. CEC thread has xx seconds to switch off after it received OnQuit
+6. addons / pvrmanager / cec / everything else.. are free to deadlock / crash now, we dont care
+7. KILL
+---
+ xbmc/Application.cpp     | 17 ++++++++++++-----
+ xbmc/Application.h       |  1 +
+ xbmc/XBApplicationEx.cpp |  1 +
+ xbmc/XBApplicationEx.h   |  1 +
+ xbmc/main/main.cpp       | 15 +++++++++++++++
+ 5 files changed, 30 insertions(+), 5 deletions(-)
+
+diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
+index 0e3d6da..74c3b7b 100644
+--- a/xbmc/Application.cpp
++++ b/xbmc/Application.cpp
+@@ -2502,12 +2502,12 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
+   switch (pMsg->dwMessage)
+   {
+   case TMSG_POWERDOWN:
+-    Stop(EXITCODE_POWERDOWN);
++    SetExitCode(EXITCODE_POWERDOWN);
+     g_powerManager.Powerdown();
+     break;
+ 
+   case TMSG_QUIT:
+-    Stop(EXITCODE_QUIT);
++    SetExitCode(EXITCODE_QUIT);
+     break;
+   
+   case TMSG_SHUTDOWN:
+@@ -2528,12 +2528,13 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
+ 
+   case TMSG_RESTART:
+   case TMSG_RESET:
+-    Stop(EXITCODE_REBOOT);
++    SetExitCode(EXITCODE_REBOOT);
+     g_powerManager.Reboot();
+     break;
+ 
+   case TMSG_RESTARTAPP:
+ #if defined(TARGET_WINDOWS) || defined(TARGET_LINUX)
++    SetExitCode(EXITCODE_RESTARTAPP);
+     Stop(EXITCODE_RESTARTAPP);
+ #endif
+     break;
+@@ -2920,12 +2921,19 @@ bool CApplication::Cleanup()
+   }
+ }
+ 
++void CApplication::SetExitCode(int exitCode)
++{
++  // save it for CEC
++  m_ExitCode = exitCode;
++  m_ExitCodeSet = true;
++}
++
+ void CApplication::Stop(int exitCode)
+ {
+   try
+   {
+     CVariant vExitCode(CVariant::VariantTypeObject);
+-    vExitCode["exitcode"] = exitCode;
++    vExitCode["exitcode"] = m_ExitCode;
+     CAnnouncementManager::GetInstance().Announce(System, "xbmc", "OnQuit", vExitCode);
+ 
+     // Abort any active screensaver
+@@ -2952,7 +2960,6 @@ void CApplication::Stop(int exitCode)
+ 
+     m_bStop = true;
+     m_AppFocused = false;
+-    m_ExitCode = exitCode;
+     CLog::Log(LOGNOTICE, "stop all");
+ 
+     // cancel any jobs from the jobmanager
+diff --git a/xbmc/Application.h b/xbmc/Application.h
+index d7e5eee..b9fe604 100644
+--- a/xbmc/Application.h
++++ b/xbmc/Application.h
+@@ -154,6 +154,7 @@ public:
+   void StartPVRManager();
+   void StopPVRManager();
+   bool IsCurrentThread() const;
++  void SetExitCode(int exitCode);
+   void Stop(int exitCode);
+   void RestartApp();
+   void UnloadSkin(bool forReload = false);
+diff --git a/xbmc/XBApplicationEx.cpp b/xbmc/XBApplicationEx.cpp
+index 048a6c1..fa99ac1 100644
+--- a/xbmc/XBApplicationEx.cpp
++++ b/xbmc/XBApplicationEx.cpp
+@@ -40,6 +40,7 @@ CXBApplicationEx::CXBApplicationEx()
+   m_bStop = false;
+   m_AppFocused = true;
+   m_ExitCode = EXITCODE_QUIT;
++  m_ExitCodeSet = false;
+   m_renderGUI = false;
+ }
+ 
+diff --git a/xbmc/XBApplicationEx.h b/xbmc/XBApplicationEx.h
+index c46cba1..ed3f35f 100644
+--- a/xbmc/XBApplicationEx.h
++++ b/xbmc/XBApplicationEx.h
+@@ -40,6 +40,7 @@ public:
+   // Variables for timing
+   bool m_bStop;
+   int  m_ExitCode;
++  bool m_ExitCodeSet;
+   bool m_AppFocused;
+   bool m_renderGUI;
+ 
+diff --git a/xbmc/main/main.cpp b/xbmc/main/main.cpp
+index 01027f8..4cfb04e 100644
+--- a/xbmc/main/main.cpp
++++ b/xbmc/main/main.cpp
+@@ -41,12 +41,27 @@
+ #include "input/linux/LIRC.h"
+ #endif
+ #include "XbmcContext.h"
++#include "Application.h"
++
++void xbmc_term_handler(int signum)
++{
++  CLog::Log(LOGINFO, "Received SIGTERM...");
++  if (!g_application.m_ExitCodeSet)
++    g_application.SetExitCode(EXITCODE_RESTARTAPP);
++  g_application.Stop(EXITCODE_RESTARTAPP);
++}
+ 
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+ int main(int argc, char* argv[])
+ {
++  // SIGTERM handler
++  struct sigaction action;
++  memset(&action, 0, sizeof(struct sigaction));
++  action.sa_handler = xbmc_term_handler;
++  sigaction(SIGTERM, &action, NULL);
++
+   // set up some xbmc specific relationships
+   XBMC::Context context;
+ 
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-add-support-to-read-frequency-output-if-using-intel-.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-add-support-to-read-frequency-output-if-using-intel-.patch
new file mode 100644
index 0000000..059abca
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-add-support-to-read-frequency-output-if-using-intel-.patch
@@ -0,0 +1,26 @@
+From 3145f271b9ac67a34481e4e3ad371b4769aca2f0 Mon Sep 17 00:00:00 2001
+From: Stephan Raue <stephan@openelec.tv>
+Date: Mon, 1 Sep 2014 03:16:37 +0200
+Subject: [PATCH 6/7] add support to read frequency output if using intel's
+ pstate driver
+
+---
+ xbmc/utils/CPUInfo.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/xbmc/utils/CPUInfo.cpp b/xbmc/utils/CPUInfo.cpp
+index 660d355..8074520 100644
+--- a/xbmc/utils/CPUInfo.cpp
++++ b/xbmc/utils/CPUInfo.cpp
+@@ -269,6 +269,8 @@ CCPUInfo::CCPUInfo(void)
+     m_fProcTemperature = fopen("/sys/class/thermal/thermal_zone0/temp", "r");  // On Raspberry PIs
+ 
+   m_fCPUFreq = fopen ("/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq", "r");
++  if (m_fCPUFreq == NULL)
++    m_fCPUFreq = fopen ("/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq", "r");
+   if (!m_fCPUFreq)
+   {
+     m_cpuInfoForFreq = true;
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-ffmpeg30.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-ffmpeg30.patch
new file mode 100644
index 0000000..9164d48
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0006-ffmpeg30.patch
@@ -0,0 +1,646 @@
+Add support for ffmpeg 3.0
+
+Changes from original commit are only in file paths & quilt refresh.
+
+commit c31b7d374062f87c7512d9872cbceac920465913
+Author: Philip Langdale <philipl@overt.org>
+Date:   Mon Sep 21 19:49:36 2015 -0700
+
+    ffmpeg: Update AVPixelFormat and AV_PIX_FMT_* to compile with master
+    
+    The deprecated PixelFormat and PIX_FMT_* names have been removed in
+    ffmpeg master.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+[Downloaded from
+https://gitweb.gentoo.org/repo/gentoo.git/tree/media-tv/kodi/files/kodi-16-ffmpeg3.patch]
+
+Index: xbmc-16.0-Jarvis/xbmc/cores/FFmpeg.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/FFmpeg.h
++++ xbmc-16.0-Jarvis/xbmc/cores/FFmpeg.h
+@@ -24,7 +24,6 @@
+ #include "utils/CPUInfo.h"
+ 
+ extern "C" {
+-#include "libswscale/swscale.h"
+ #include "libavcodec/avcodec.h"
+ #include "libavformat/avformat.h"
+ #include "libavutil/avutil.h"
+@@ -33,23 +32,6 @@ extern "C" {
+ #include "libpostproc/postprocess.h"
+ }
+ 
+-inline int SwScaleCPUFlags()
+-{
+-  unsigned int cpuFeatures = g_cpuInfo.GetCPUFeatures();
+-  int flags = 0;
+-
+-  if (cpuFeatures & CPU_FEATURE_MMX)
+-    flags |= SWS_CPU_CAPS_MMX;
+-  if (cpuFeatures & CPU_FEATURE_MMX2)
+-    flags |= SWS_CPU_CAPS_MMX2;
+-  if (cpuFeatures & CPU_FEATURE_3DNOW)
+-    flags |= SWS_CPU_CAPS_3DNOW;
+-  if (cpuFeatures & CPU_FEATURE_ALTIVEC)
+-    flags |= SWS_CPU_CAPS_ALTIVEC;
+-
+-  return flags;
+-}
+-
+ inline int PPCPUFlags()
+ {
+   unsigned int cpuFeatures = g_cpuInfo.GetCPUFeatures();
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecUtils.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecUtils.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecUtils.cpp
+@@ -39,7 +39,7 @@ extern "C" {
+ #include "libswscale/swscale.h"
+ }
+ 
+-// allocate a new picture (PIX_FMT_YUV420P)
++// allocate a new picture (AV_PIX_FMT_YUV420P)
+ DVDVideoPicture* CDVDCodecUtils::AllocatePicture(int iWidth, int iHeight)
+ {
+   DVDVideoPicture* pPicture = new DVDVideoPicture;
+@@ -264,13 +264,13 @@ DVDVideoPicture* CDVDCodecUtils::Convert
+ 
+         int dstformat;
+         if (format == RENDER_FMT_UYVY422)
+-          dstformat = PIX_FMT_UYVY422;
++          dstformat = AV_PIX_FMT_UYVY422;
+         else
+-          dstformat = PIX_FMT_YUYV422;
++          dstformat = AV_PIX_FMT_YUYV422;
+ 
+-        struct SwsContext *ctx = sws_getContext(pSrc->iWidth, pSrc->iHeight, PIX_FMT_YUV420P,
++        struct SwsContext *ctx = sws_getContext(pSrc->iWidth, pSrc->iHeight, AV_PIX_FMT_YUV420P,
+                                                            pPicture->iWidth, pPicture->iHeight, (AVPixelFormat)dstformat,
+-                                                           SWS_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                                           SWS_BILINEAR, NULL, NULL, NULL);
+         sws_scale(ctx, src, srcStride, 0, pSrc->iHeight, dst, dstStride);
+         sws_freeContext(ctx);
+       }
+@@ -403,25 +403,25 @@ double CDVDCodecUtils::NormalizeFramedur
+ }
+ 
+ struct EFormatMap {
+-  PixelFormat   pix_fmt;
++  AVPixelFormat   pix_fmt;
+   ERenderFormat format;
+ };
+ 
+ static const EFormatMap g_format_map[] = {
+-   { PIX_FMT_YUV420P,     RENDER_FMT_YUV420P    }
+-,  { PIX_FMT_YUVJ420P,    RENDER_FMT_YUV420P    }
+-,  { PIX_FMT_YUV420P10,   RENDER_FMT_YUV420P10  }
+-,  { PIX_FMT_YUV420P16,   RENDER_FMT_YUV420P16  }
+-,  { PIX_FMT_UYVY422,     RENDER_FMT_UYVY422    }
+-,  { PIX_FMT_YUYV422,     RENDER_FMT_YUYV422    }
+-,  { PIX_FMT_VAAPI_VLD,   RENDER_FMT_VAAPI      }
+-,  { PIX_FMT_DXVA2_VLD,   RENDER_FMT_DXVA       }
+-,  { PIX_FMT_NONE     ,   RENDER_FMT_NONE       }
++   { AV_PIX_FMT_YUV420P,     RENDER_FMT_YUV420P    }
++,  { AV_PIX_FMT_YUVJ420P,    RENDER_FMT_YUV420P    }
++,  { AV_PIX_FMT_YUV420P10,   RENDER_FMT_YUV420P10  }
++,  { AV_PIX_FMT_YUV420P16,   RENDER_FMT_YUV420P16  }
++,  { AV_PIX_FMT_UYVY422,     RENDER_FMT_UYVY422    }
++,  { AV_PIX_FMT_YUYV422,     RENDER_FMT_YUYV422    }
++,  { AV_PIX_FMT_VAAPI_VLD,   RENDER_FMT_VAAPI      }
++,  { AV_PIX_FMT_DXVA2_VLD,   RENDER_FMT_DXVA       }
++,  { AV_PIX_FMT_NONE     ,   RENDER_FMT_NONE       }
+ };
+ 
+ ERenderFormat CDVDCodecUtils::EFormatFromPixfmt(int fmt)
+ {
+-  for(const EFormatMap *p = g_format_map; p->pix_fmt != PIX_FMT_NONE; ++p)
++  for(const EFormatMap *p = g_format_map; p->pix_fmt != AV_PIX_FMT_NONE; ++p)
+   {
+     if(p->pix_fmt == fmt)
+       return p->format;
+@@ -431,10 +431,10 @@ ERenderFormat CDVDCodecUtils::EFormatFro
+ 
+ int CDVDCodecUtils::PixfmtFromEFormat(ERenderFormat fmt)
+ {
+-  for(const EFormatMap *p = g_format_map; p->pix_fmt != PIX_FMT_NONE; ++p)
++  for(const EFormatMap *p = g_format_map; p->pix_fmt != AV_PIX_FMT_NONE; ++p)
+   {
+     if(p->format == fmt)
+       return p->pix_fmt;
+   }
+-  return PIX_FMT_NONE;
++  return AV_PIX_FMT_NONE;
+ }
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+@@ -77,8 +77,8 @@ enum DecoderState
+   STATE_SW_MULTI
+ };
+ 
+-enum PixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx
+-                                                , const PixelFormat * fmt )
++enum AVPixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx
++                                                , const AVPixelFormat * fmt )
+ {
+   CDVDVideoCodecFFmpeg* ctx  = (CDVDVideoCodecFFmpeg*)avctx->opaque;
+ 
+@@ -104,8 +104,8 @@ enum PixelFormat CDVDVideoCodecFFmpeg::G
+     avctx->hwaccel_context = 0;
+   }
+ 
+-  const PixelFormat * cur = fmt;
+-  while(*cur != PIX_FMT_NONE)
++  const AVPixelFormat * cur = fmt;
++  while(*cur != AV_PIX_FMT_NONE)
+   {
+ #ifdef HAVE_LIBVDPAU
+     if(VDPAU::CDecoder::IsVDPAUFormat(*cur) && CSettings::GetInstance().GetBool(CSettings::SETTING_VIDEOPLAYER_USEVDPAU))
+@@ -137,7 +137,7 @@ enum PixelFormat CDVDVideoCodecFFmpeg::G
+ #endif
+ #ifdef HAVE_LIBVA
+     // mpeg4 vaapi decoding is disabled
+-    if(*cur == PIX_FMT_VAAPI_VLD && CSettings::GetInstance().GetBool(CSettings::SETTING_VIDEOPLAYER_USEVAAPI))
++    if(*cur == AV_PIX_FMT_VAAPI_VLD && CSettings::GetInstance().GetBool(CSettings::SETTING_VIDEOPLAYER_USEVAAPI))
+     {
+       VAAPI::CDecoder* dec = new VAAPI::CDecoder();
+       if(dec->Open(avctx, ctx->m_pCodecContext, *cur, ctx->m_uSurfacesCount) == true)
+@@ -214,11 +214,11 @@ bool CDVDVideoCodecFFmpeg::Open(CDVDStre
+ 
+   for(std::vector<ERenderFormat>::iterator it = options.m_formats.begin(); it != options.m_formats.end(); ++it)
+   {
+-    m_formats.push_back((PixelFormat)CDVDCodecUtils::PixfmtFromEFormat(*it));
++    m_formats.push_back((AVPixelFormat)CDVDCodecUtils::PixfmtFromEFormat(*it));
+     if(*it == RENDER_FMT_YUV420P)
+-      m_formats.push_back(PIX_FMT_YUVJ420P);
++      m_formats.push_back(AV_PIX_FMT_YUVJ420P);
+   }
+-  m_formats.push_back(PIX_FMT_NONE); /* always add none to get a terminated list in ffmpeg world */
++  m_formats.push_back(AV_PIX_FMT_NONE); /* always add none to get a terminated list in ffmpeg world */
+ 
+   pCodec = avcodec_find_decoder(hints.codec);
+ 
+@@ -655,7 +655,7 @@ bool CDVDVideoCodecFFmpeg::GetPictureCom
+   pDvdVideoPicture->color_transfer = m_pCodecContext->color_trc;
+   pDvdVideoPicture->color_matrix = m_pCodecContext->colorspace;
+   if(m_pCodecContext->color_range == AVCOL_RANGE_JPEG
+-  || m_pCodecContext->pix_fmt     == PIX_FMT_YUVJ420P)
++  || m_pCodecContext->pix_fmt     == AV_PIX_FMT_YUVJ420P)
+     pDvdVideoPicture->color_range = 1;
+   else
+     pDvdVideoPicture->color_range = 0;
+@@ -738,8 +738,8 @@ bool CDVDVideoCodecFFmpeg::GetPicture(DV
+   pDvdVideoPicture->iFlags |= pDvdVideoPicture->data[0] ? 0 : DVP_FLAG_DROPPED;
+   pDvdVideoPicture->extended_format = 0;
+ 
+-  PixelFormat pix_fmt;
+-  pix_fmt = (PixelFormat)m_pFrame->format;
++  AVPixelFormat pix_fmt;
++  pix_fmt = (AVPixelFormat)m_pFrame->format;
+ 
+   pDvdVideoPicture->format = CDVDCodecUtils::EFormatFromPixfmt(pix_fmt);
+   return true;
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
+@@ -46,7 +46,7 @@ public:
+     public:
+              IHardwareDecoder() {}
+     virtual ~IHardwareDecoder() {};
+-    virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces) = 0;
++    virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces) = 0;
+     virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame) = 0;
+     virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture) = 0;
+     virtual int  Check     (AVCodecContext* avctx) = 0;
+@@ -77,7 +77,7 @@ public:
+   void               SetHardware(IHardwareDecoder* hardware);
+ 
+ protected:
+-  static enum PixelFormat GetFormat(struct AVCodecContext * avctx, const PixelFormat * fmt);
++  static enum AVPixelFormat GetFormat(struct AVCodecContext * avctx, const AVPixelFormat * fmt);
+ 
+   int  FilterOpen(const std::string& filters, bool scale);
+   void FilterClose();
+@@ -119,7 +119,7 @@ protected:
+   int m_iLastKeyframe;
+   double m_dts;
+   bool   m_started;
+-  std::vector<PixelFormat> m_formats;
++  std::vector<AVPixelFormat> m_formats;
+   double m_decoderPts;
+   int    m_skippedDeint;
+   bool   m_requestSkipDeint;
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
+@@ -554,11 +554,11 @@ void CDVDVideoCodecVDA::DisplayQueuePop(
+ 
+ void CDVDVideoCodecVDA::UYVY422_to_YUV420P(uint8_t *yuv422_ptr, int yuv422_stride, DVDVideoPicture *picture)
+ {
+-  // convert PIX_FMT_UYVY422 to PIX_FMT_YUV420P.
++  // convert AV_PIX_FMT_UYVY422 to AV_PIX_FMT_YUV420P.
+   struct SwsContext *swcontext = sws_getContext(
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_UYVY422, 
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_YUV420P, 
+-    SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_UYVY422,
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_YUV420P,
++    SWS_FAST_BILINEAR, NULL, NULL, NULL);
+   if (swcontext)
+   {
+     uint8_t  *src[] = { yuv422_ptr, 0, 0, 0 };
+@@ -574,11 +574,11 @@ void CDVDVideoCodecVDA::UYVY422_to_YUV42
+ 
+ void CDVDVideoCodecVDA::BGRA_to_YUV420P(uint8_t *bgra_ptr, int bgra_stride, DVDVideoPicture *picture)
+ {
+-  // convert PIX_FMT_BGRA to PIX_FMT_YUV420P.
++  // convert AV_PIX_FMT_BGRA to AV_PIX_FMT_YUV420P.
+   struct SwsContext *swcontext = sws_getContext(
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_BGRA, 
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_YUV420P, 
+-    SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_BGRA,
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_YUV420P,
++    SWS_FAST_BILINEAR, NULL, NULL, NULL);
+   if (swcontext)
+   {
+     uint8_t  *src[] = { bgra_ptr, 0, 0, 0 };
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
+@@ -886,7 +886,7 @@ static bool CheckCompatibility(AVCodecCo
+   return true;
+ }
+ 
+-bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   if (!CheckCompatibility(avctx))
+     return false;
+@@ -1135,9 +1135,9 @@ bool CDecoder::OpenDecoder()
+   return true;
+ }
+ 
+-bool CDecoder::Supports(enum PixelFormat fmt)
++bool CDecoder::Supports(enum AVPixelFormat fmt)
+ {
+-  if(fmt == PIX_FMT_DXVA2_VLD)
++  if(fmt == AV_PIX_FMT_DXVA2_VLD)
+     return true;
+   return false;
+ }
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.h
+@@ -141,7 +141,7 @@ class CDecoder
+ public:
+   CDecoder();
+  ~CDecoder();
+-  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces);
++  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces);
+   virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual int  Check     (AVCodecContext* avctx);
+@@ -154,7 +154,7 @@ public:
+   int   GetBuffer(AVCodecContext *avctx, AVFrame *pic, int flags);
+   void  RelBuffer(uint8_t *data);
+ 
+-  static bool      Supports(enum PixelFormat fmt);
++  static bool      Supports(enum AVPixelFormat fmt);
+ 
+   void CloseDXVADecoder();
+ 
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
+@@ -479,7 +479,7 @@ CDecoder::~CDecoder()
+   Close();
+ }
+ 
+-bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   // don't support broken wrappers by default
+   // nvidia cards with a vaapi to vdpau wrapper
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.h
+@@ -406,7 +406,7 @@ public:
+   CDecoder();
+   virtual ~CDecoder();
+ 
+-  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces = 0);
++  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces = 0);
+   virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual void Reset();
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.cpp
+@@ -186,7 +186,7 @@ void CDecoder::Close()
+   m_bitstream = NULL;
+ }
+ 
+-bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   Close();
+ 
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.h
+@@ -35,7 +35,7 @@ class CDecoder
+ public:
+   CDecoder();
+  ~CDecoder();
+-  virtual bool Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces = 0);
++  virtual bool Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces = 0);
+   virtual int Decode(AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual int Check(AVCodecContext* avctx);
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp
+@@ -486,7 +486,7 @@ CDecoder::CDecoder() : m_vdpauOutput(&m_
+   m_vdpauConfig.context = 0;
+ }
+ 
+-bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   // check if user wants to decode this format with VDPAU
+   std::string gpuvendor = g_Windowing.GetRenderVendor();
+@@ -760,7 +760,7 @@ int CDecoder::Check(AVCodecContext* avct
+   return 0;
+ }
+ 
+-bool CDecoder::IsVDPAUFormat(PixelFormat format)
++bool CDecoder::IsVDPAUFormat(AVPixelFormat format)
+ {
+   if (format == AV_PIX_FMT_VDPAU)
+     return true;
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.h
+@@ -556,7 +556,7 @@ public:
+   CDecoder();
+   virtual ~CDecoder();
+ 
+-  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces = 0);
++  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces = 0);
+   virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual void Reset();
+@@ -571,7 +571,7 @@ public:
+   bool Supports(VdpVideoMixerFeature feature);
+   bool Supports(EINTERLACEMETHOD method);
+   EINTERLACEMETHOD AutoInterlaceMethod();
+-  static bool IsVDPAUFormat(PixelFormat fmt);
++  static bool IsVDPAUFormat(AVPixelFormat fmt);
+ 
+   static void FFReleaseBuffer(void *opaque, uint8_t *data);
+   static int FFGetBuffer(AVCodecContext *avctx, AVFrame *pic, int flags);
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+@@ -1638,7 +1638,7 @@ void CDVDDemuxFFmpeg::ParsePacket(AVPack
+ 
+   // for video we need a decoder to get desired information into codec context
+   if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO && st->codec->extradata &&
+-      (!st->codec->width || st->codec->pix_fmt == PIX_FMT_NONE))
++      (!st->codec->width || st->codec->pix_fmt == AV_PIX_FMT_NONE))
+   {
+     // open a decoder, it will be cleared down by ffmpeg on closing the stream
+     if (!st->codec->codec)
+@@ -1695,7 +1695,7 @@ bool CDVDDemuxFFmpeg::IsVideoReady()
+       st = m_pFormatContext->streams[idx];
+       if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO)
+       {
+-        if (st->codec->width && st->codec->pix_fmt != PIX_FMT_NONE)
++        if (st->codec->width && st->codec->pix_fmt != AV_PIX_FMT_NONE)
+           return true;
+         hasVideo = true;
+       }
+@@ -1708,7 +1708,7 @@ bool CDVDDemuxFFmpeg::IsVideoReady()
+       st = m_pFormatContext->streams[i];
+       if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO)
+       {
+-        if (st->codec->width && st->codec->pix_fmt != PIX_FMT_NONE)
++        if (st->codec->width && st->codec->pix_fmt != AV_PIX_FMT_NONE)
+           return true;
+         hasVideo = true;
+       }
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDFileInfo.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDFileInfo.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDFileInfo.cpp
+@@ -275,7 +275,7 @@ bool CDVDFileInfo::ExtractThumb(const st
+ 
+             uint8_t *pOutBuf = new uint8_t[nWidth * nHeight * 4];
+             struct SwsContext *context = sws_getContext(picture.iWidth, picture.iHeight,
+-                  PIX_FMT_YUV420P, nWidth, nHeight, PIX_FMT_BGRA, SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                  AV_PIX_FMT_YUV420P, nWidth, nHeight, AV_PIX_FMT_BGRA, SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+             if (context)
+             {
+Index: xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp
+@@ -2932,7 +2932,7 @@ void CLinuxRendererGL::ToRGBFrame(YV12Im
+   }
+   else if (m_format == RENDER_FMT_NV12)
+   {
+-    srcFormat = PIX_FMT_NV12;
++    srcFormat = AV_PIX_FMT_NV12;
+     for (int i = 0; i < 2; i++)
+     {
+       src[i]       = im->plane[i];
+@@ -2941,13 +2941,13 @@ void CLinuxRendererGL::ToRGBFrame(YV12Im
+   }
+   else if (m_format == RENDER_FMT_YUYV422)
+   {
+-    srcFormat    = PIX_FMT_YUYV422;
++    srcFormat    = AV_PIX_FMT_YUYV422;
+     src[0]       = im->plane[0];
+     srcStride[0] = im->stride[0];
+   }
+   else if (m_format == RENDER_FMT_UYVY422)
+   {
+-    srcFormat    = PIX_FMT_UYVY422;
++    srcFormat    = AV_PIX_FMT_UYVY422;
+     src[0]       = im->plane[0];
+     srcStride[0] = im->stride[0];
+   }
+@@ -2965,8 +2965,8 @@ void CLinuxRendererGL::ToRGBFrame(YV12Im
+ 
+   m_context = sws_getCachedContext(m_context,
+                                                  im->width, im->height, (AVPixelFormat)srcFormat,
+-                                                 im->width, im->height, (AVPixelFormat)PIX_FMT_BGRA,
+-                                                 SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                                 im->width, im->height, (AVPixelFormat)AV_PIX_FMT_BGRA,
++                                                 SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+   uint8_t *dst[]       = { m_rgbBuffer, 0, 0, 0 };
+   int      dstStride[] = { (int)m_sourceWidth * 4, 0, 0, 0 };
+@@ -2995,7 +2995,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+ 
+   if (m_format == RENDER_FMT_YUV420P)
+   {
+-    srcFormat = PIX_FMT_YUV420P;
++    srcFormat = AV_PIX_FMT_YUV420P;
+     for (int i = 0; i < 3; i++)
+     {
+       srcTop[i]       = im->plane[i];
+@@ -3006,7 +3006,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+   }
+   else if (m_format == RENDER_FMT_NV12)
+   {
+-    srcFormat = PIX_FMT_NV12;
++    srcFormat = AV_PIX_FMT_NV12;
+     for (int i = 0; i < 2; i++)
+     {
+       srcTop[i]       = im->plane[i];
+@@ -3017,7 +3017,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+   }
+   else if (m_format == RENDER_FMT_YUYV422)
+   {
+-    srcFormat       = PIX_FMT_YUYV422;
++    srcFormat       = AV_PIX_FMT_YUYV422;
+     srcTop[0]       = im->plane[0];
+     srcStrideTop[0] = im->stride[0] * 2;
+     srcBot[0]       = im->plane[0] + im->stride[0];
+@@ -3025,7 +3025,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+   }
+   else if (m_format == RENDER_FMT_UYVY422)
+   {
+-    srcFormat       = PIX_FMT_UYVY422;
++    srcFormat       = AV_PIX_FMT_UYVY422;
+     srcTop[0]       = im->plane[0];
+     srcStrideTop[0] = im->stride[0] * 2;
+     srcBot[0]       = im->plane[0] + im->stride[0];
+@@ -3045,8 +3045,8 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+ 
+   m_context = sws_getCachedContext(m_context,
+                                                  im->width, im->height >> 1, (AVPixelFormat)srcFormat,
+-                                                 im->width, im->height >> 1, (AVPixelFormat)PIX_FMT_BGRA,
+-                                                 SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                                 im->width, im->height >> 1, (AVPixelFormat)AV_PIX_FMT_BGRA,
++                                                 SWS_FAST_BILINEAR, NULL, NULL, NULL);
+   uint8_t *dstTop[]    = { m_rgbBuffer, 0, 0, 0 };
+   uint8_t *dstBot[]    = { m_rgbBuffer + m_sourceWidth * m_sourceHeight * 2, 0, 0, 0 };
+   int      dstStride[] = { (int)m_sourceWidth * 4, 0, 0, 0 };
+Index: xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp
+@@ -2006,8 +2006,8 @@ void CLinuxRendererGLES::UploadYV12Textu
+ #endif
+     {
+       m_sw_context = sws_getCachedContext(m_sw_context,
+-        im->width, im->height, PIX_FMT_YUV420P,
+-        im->width, im->height, PIX_FMT_RGBA,
++        im->width, im->height, AV_PIX_FMT_YUV420P,
++        im->width, im->height, AV_PIX_FMT_RGBA,
+         SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+       uint8_t *src[]  = { im->plane[0], im->plane[1], im->plane[2], 0 };
+Index: xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/WinRenderer.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/VideoRenderers/WinRenderer.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/WinRenderer.cpp
+@@ -94,16 +94,16 @@ CWinRenderer::~CWinRenderer()
+   UnInit();
+ }
+ 
+-static enum PixelFormat PixelFormatFromFormat(ERenderFormat format)
++static enum AVPixelFormat PixelFormatFromFormat(ERenderFormat format)
+ {
+-  if (format == RENDER_FMT_DXVA)      return PIX_FMT_NV12;
+-  if (format == RENDER_FMT_YUV420P)   return PIX_FMT_YUV420P;
+-  if (format == RENDER_FMT_YUV420P10) return PIX_FMT_YUV420P10;
+-  if (format == RENDER_FMT_YUV420P16) return PIX_FMT_YUV420P16;
+-  if (format == RENDER_FMT_NV12)      return PIX_FMT_NV12;
+-  if (format == RENDER_FMT_UYVY422)   return PIX_FMT_UYVY422;
+-  if (format == RENDER_FMT_YUYV422)   return PIX_FMT_YUYV422;
+-  return PIX_FMT_NONE;
++  if (format == RENDER_FMT_DXVA)      return AV_PIX_FMT_NV12;
++  if (format == RENDER_FMT_YUV420P)   return AV_PIX_FMT_YUV420P;
++  if (format == RENDER_FMT_YUV420P10) return AV_PIX_FMT_YUV420P10;
++  if (format == RENDER_FMT_YUV420P16) return AV_PIX_FMT_YUV420P16;
++  if (format == RENDER_FMT_NV12)      return AV_PIX_FMT_NV12;
++  if (format == RENDER_FMT_UYVY422)   return AV_PIX_FMT_UYVY422;
++  if (format == RENDER_FMT_YUYV422)   return AV_PIX_FMT_YUYV422;
++  return AV_PIX_FMT_NONE;
+ }
+ 
+ void CWinRenderer::ManageTextures()
+@@ -719,13 +719,13 @@ void CWinRenderer::Render(DWORD flags)
+ 
+ void CWinRenderer::RenderSW()
+ {
+-  enum PixelFormat format = PixelFormatFromFormat(m_format);
++  enum AVPixelFormat format = PixelFormatFromFormat(m_format);
+ 
+   // 1. convert yuv to rgb
+   m_sw_scale_ctx = sws_getCachedContext(m_sw_scale_ctx,
+                                         m_sourceWidth, m_sourceHeight, format,
+-                                        m_sourceWidth, m_sourceHeight, PIX_FMT_BGRA,
+-                                        SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                        m_sourceWidth, m_sourceHeight, AV_PIX_FMT_BGRA,
++                                        SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+   YUVBuffer* buf = (YUVBuffer*)m_VideoBuffers[m_iYV12RenderBuffer];
+ 
+Index: xbmc-16.0-Jarvis/xbmc/pictures/Picture.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/pictures/Picture.cpp
++++ xbmc-16.0-Jarvis/xbmc/pictures/Picture.cpp
+@@ -342,9 +342,9 @@ bool CPicture::ScaleImage(uint8_t *in_pi
+                           uint8_t *out_pixels, unsigned int out_width, unsigned int out_height, unsigned int out_pitch,
+                           CPictureScalingAlgorithm::Algorithm scalingAlgorithm /* = CPictureScalingAlgorithm::NoAlgorithm */)
+ {
+-  struct SwsContext *context = sws_getContext(in_width, in_height, PIX_FMT_BGRA,
+-                                                         out_width, out_height, PIX_FMT_BGRA,
+-                                                         CPictureScalingAlgorithm::ToSwscale(scalingAlgorithm) | SwScaleCPUFlags(), NULL, NULL, NULL);
++  struct SwsContext *context = sws_getContext(in_width, in_height, AV_PIX_FMT_BGRA,
++                                                         out_width, out_height, AV_PIX_FMT_BGRA,
++                                                         CPictureScalingAlgorithm::ToSwscale(scalingAlgorithm), NULL, NULL, NULL);
+ 
+   uint8_t *src[] = { in_pixels, 0, 0, 0 };
+   int     srcStride[] = { (int)in_pitch, 0, 0, 0 };
+Index: xbmc-16.0-Jarvis/xbmc/video/FFmpegVideoDecoder.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/video/FFmpegVideoDecoder.cpp
++++ xbmc-16.0-Jarvis/xbmc/video/FFmpegVideoDecoder.cpp
+@@ -252,7 +252,7 @@ bool FFmpegVideoDecoder::nextFrame( CBas
+       return false;
+ 
+     // Due to a bug in swsscale we need to allocate one extra line of data
+-    if ( avpicture_alloc( m_pFrameRGB, PIX_FMT_RGB32, m_frameRGBwidth, m_frameRGBheight + 1 ) < 0 )
++    if ( avpicture_alloc( m_pFrameRGB, AV_PIX_FMT_RGB32, m_frameRGBwidth, m_frameRGBheight + 1 ) < 0 )
+       return false;
+   }
+ 
+@@ -287,7 +287,7 @@ bool FFmpegVideoDecoder::nextFrame( CBas
+ 
+   // We got the video frame, render it into the picture buffer
+   struct SwsContext * context = sws_getContext( m_pCodecCtx->width, m_pCodecCtx->height, m_pCodecCtx->pix_fmt,
+-                           m_frameRGBwidth, m_frameRGBheight, PIX_FMT_RGB32, SWS_FAST_BILINEAR, NULL, NULL, NULL );
++                           m_frameRGBwidth, m_frameRGBheight, AV_PIX_FMT_RGB32, SWS_FAST_BILINEAR, NULL, NULL, NULL );
+ 
+   sws_scale( context, m_pFrame->data, m_pFrame->linesize, 0, m_pCodecCtx->height,
+                                                                      m_pFrameRGB->data, m_pFrameRGB->linesize );
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0007-https-github.com-OpenELEC-OpenELEC.tv-blob-master-pa.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0007-https-github.com-OpenELEC-OpenELEC.tv-blob-master-pa.patch
new file mode 100644
index 0000000..89a06a5
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0007-https-github.com-OpenELEC-OpenELEC.tv-blob-master-pa.patch
@@ -0,0 +1,85 @@
+From 1ec2dca41d4e50d06f35a98f2fef6f81fd0571ae Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Fri, 19 Feb 2016 10:41:36 +0100
+Subject: [PATCH 7/7] 
+ https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/mediacenter/kodi/patches/kodi-999.42-KEY_EPG.patch
+
+---
+ system/keymaps/keyboard.xml            | 2 ++
+ xbmc/input/XBMC_keysym.h               | 1 +
+ xbmc/input/XBMC_keytable.cpp           | 1 +
+ xbmc/input/XBMC_vkeys.h                | 1 +
+ xbmc/input/linux/LinuxInputDevices.cpp | 1 +
+ 5 files changed, 6 insertions(+)
+
+diff --git a/system/keymaps/keyboard.xml b/system/keymaps/keyboard.xml
+index 9833cff..4bcc1ce 100644
+--- a/system/keymaps/keyboard.xml
++++ b/system/keymaps/keyboard.xml
+@@ -95,6 +95,7 @@
+       <sleep>ActivateWindow(shutdownmenu)</sleep>
+       <!-- PVR windows -->
+       <e>ActivateWindow(TVGuide)</e>
++      <epg>ActivateWindow(TVGuide)</epg>
+       <h>ActivateWindow(TVChannels)</h>
+       <j>ActivateWindow(RadioChannels)</j>
+       <k>ActivateWindow(TVRecordings)</k>
+@@ -246,6 +247,7 @@
+   <TVGuide>
+     <keyboard>
+       <e>PreviousMenu</e>
++      <epg>PreviousMenu</epg>
+     </keyboard>
+   </TVGuide>
+   <MyFiles>
+diff --git a/xbmc/input/XBMC_keysym.h b/xbmc/input/XBMC_keysym.h
+index 89c21f5..e7410ec 100644
+--- a/xbmc/input/XBMC_keysym.h
++++ b/xbmc/input/XBMC_keysym.h
+@@ -229,6 +229,7 @@ typedef enum {
+   XBMCK_FAVORITES   = 0x14d,
+   XBMCK_HOMEPAGE    = 0x14e,
+   XBMCK_CONFIG      = 0x14f,
++  XBMCK_EPG         = 0x150,
+ 
+   // Add any other keys here
+ 
+diff --git a/xbmc/input/XBMC_keytable.cpp b/xbmc/input/XBMC_keytable.cpp
+index 4d05464..14fd384 100644
+--- a/xbmc/input/XBMC_keytable.cpp
++++ b/xbmc/input/XBMC_keytable.cpp
+@@ -243,6 +243,7 @@ static const XBMCKEYTABLE XBMCKeyTable[] =
+ , { XBMCK_FAVORITES,              0,    0, XBMCVK_FAVORITES,     "favorites" }
+ , { XBMCK_HOMEPAGE ,              0,    0, XBMCVK_HOMEPAGE,      "homepage" }
+ , { XBMCK_CONFIG,                 0,    0, XBMCVK_CONFIG,        "config" }
++, { XBMCK_EPG   ,                 0,    0, XBMCVK_EPG,           "epg" }
+ };
+ 
+ static int XBMCKeyTableSize = sizeof(XBMCKeyTable)/sizeof(XBMCKEYTABLE);
+diff --git a/xbmc/input/XBMC_vkeys.h b/xbmc/input/XBMC_vkeys.h
+index af114c9..4e3787c 100644
+--- a/xbmc/input/XBMC_vkeys.h
++++ b/xbmc/input/XBMC_vkeys.h
+@@ -221,6 +221,7 @@ typedef enum {
+   XBMCVK_FAVORITES      = 0xE9,
+   XBMCVK_HOMEPAGE       = 0xEA,
+   XBMCVK_CONFIG         = 0xEB,
++  XBMCVK_EPG            = 0xEC,
+ 
+   XBMCVK_LAST           = 0xFF
+ } XBMCVKey;
+diff --git a/xbmc/input/linux/LinuxInputDevices.cpp b/xbmc/input/linux/LinuxInputDevices.cpp
+index 9f3e866..73f338f 100644
+--- a/xbmc/input/linux/LinuxInputDevices.cpp
++++ b/xbmc/input/linux/LinuxInputDevices.cpp
+@@ -268,6 +268,7 @@ KeyMap keyMap[] = {
+   { KEY_FILE          , XBMCK_LAUNCH_FILE_BROWSER},
+   { KEY_SELECT        , XBMCK_RETURN      },
+   { KEY_CONFIG        , XBMCK_CONFIG      },
++  { KEY_EPG           , XBMCK_EPG         },
+   // The Little Black Box Remote Additions
+   { 384               , XBMCK_LEFT        }, // Red
+   { 378               , XBMCK_RIGHT       }, // Green
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch
new file mode 100644
index 0000000..dc428d6
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch
@@ -0,0 +1,82 @@
+From 78571ed421e3fd3d5244cd76670e4e1bab69132f Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Fri, 27 May 2016 17:30:28 +0200
+Subject: [PATCH 1/1] Fix nullpadding issue when reading certain id3v1 tags
+
+backported from upstream commit to master branch:
+
+https://github.com/xbmc/xbmc/commit/cdabf9dd9e82f4b2d639fb769db08227a7c52046
+
+to fix problems with taglib-1.11:
+
+http://trac.kodi.tv/ticket/16454
+https://github.com/taglib/taglib/issues/741#issuecomment-218059031
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ xbmc/music/tags/TagLoaderTagLib.cpp | 21 ---------------------
+ xbmc/music/tags/TagLoaderTagLib.h   |  3 +++
+ 2 files changed, 3 insertions(+), 21 deletions(-)
+
+diff --git a/xbmc/music/tags/TagLoaderTagLib.cpp b/xbmc/music/tags/TagLoaderTagLib.cpp
+index b78a591..0fc346a 100644
+--- a/xbmc/music/tags/TagLoaderTagLib.cpp
++++ b/xbmc/music/tags/TagLoaderTagLib.cpp
+@@ -46,31 +46,12 @@
+ #include "utils/URIUtils.h"
+ #include "utils/log.h"
+ #include "utils/StringUtils.h"
+-#include "utils/CharsetConverter.h"
+ #include "utils/Base64.h"
+ #include "settings/AdvancedSettings.h"
+ 
+ using namespace TagLib;
+ using namespace MUSIC_INFO;
+ 
+-template<class T>
+-class TagStringHandler : public T
+-{
+-public:
+-  TagStringHandler() {}
+-  virtual ~TagStringHandler() {}
+-  virtual String parse(const ByteVector &data) const
+-  {
+-    std::string strSource(data.data(), data.size());
+-    std::string strUTF8;
+-    g_charsetConverter.unknownToUTF8(strSource, strUTF8);
+-    return String(strUTF8, String::UTF8);
+-  }
+-};
+-
+-static const TagStringHandler<ID3v1::StringHandler> ID3v1StringHandler;
+-static const TagStringHandler<ID3v2::Latin1StringHandler> ID3v2StringHandler;
+-
+ CTagLoaderTagLib::CTagLoaderTagLib()
+ {
+ }
+@@ -824,8 +805,6 @@ bool CTagLoaderTagLib::Load(const std::string& strFileName, CMusicInfoTag& tag,
+     return false;
+   }
+ 
+-  ID3v1::Tag::setStringHandler(&ID3v1StringHandler);
+-  ID3v2::Tag::setLatin1StringHandler(&ID3v2StringHandler);
+   TagLib::File*              file = NULL;
+   TagLib::APE::File*         apeFile = NULL;
+   TagLib::ASF::File*         asfFile = NULL;
+diff --git a/xbmc/music/tags/TagLoaderTagLib.h b/xbmc/music/tags/TagLoaderTagLib.h
+index f83ea4f..0edb84f 100644
+--- a/xbmc/music/tags/TagLoaderTagLib.h
++++ b/xbmc/music/tags/TagLoaderTagLib.h
+@@ -44,6 +44,9 @@
+ #include <taglib/mp4tag.h>
+ #include "ImusicInfoTagLoader.h"
+ 
++#include <string>
++#include <vector>
++
+ namespace MUSIC_INFO
+ {
+   class CMusicInfoTag;
+-- 
+2.8.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch
new file mode 100644
index 0000000..a8de36c
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch
@@ -0,0 +1,1438 @@
+From 8f82e51563f0e1bc9b7a8adf669ad2b66e7ce3e5 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Thu, 28 Apr 2016 17:17:40 +0200
+Subject: [PATCH] lib/cximage-6.0: fix compilation with gcc6
+
+For a quick fix I renamed min() to cxmin() and max() to cxmax() to
+prevent the conflict with the gcc definition.
+
+Forum thread for reference:
+http://forum.kodi.tv/showthread.php?tid=263884
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+(Patch sent upstream: https://github.com/xbmc/xbmc/pull/9703)
+---
+ lib/cximage-6.0/CxImage/ximabmp.cpp  |   6 +-
+ lib/cximage-6.0/CxImage/ximadef.h    |   8 +-
+ lib/cximage-6.0/CxImage/ximadsp.cpp  | 182 +++++++++++++++++------------------
+ lib/cximage-6.0/CxImage/ximage.cpp   |   4 +-
+ lib/cximage-6.0/CxImage/ximagif.cpp  |   6 +-
+ lib/cximage-6.0/CxImage/ximahist.cpp |  12 +--
+ lib/cximage-6.0/CxImage/ximaint.cpp  |   8 +-
+ lib/cximage-6.0/CxImage/ximaiter.h   |   4 +-
+ lib/cximage-6.0/CxImage/ximajbg.cpp  |   2 +-
+ lib/cximage-6.0/CxImage/ximapal.cpp  |  14 +--
+ lib/cximage-6.0/CxImage/ximapng.cpp  |  12 +--
+ lib/cximage-6.0/CxImage/ximaraw.cpp  |   4 +-
+ lib/cximage-6.0/CxImage/ximasel.cpp  |  50 +++++-----
+ lib/cximage-6.0/CxImage/ximath.cpp   |   8 +-
+ lib/cximage-6.0/CxImage/ximatif.cpp  |   6 +-
+ lib/cximage-6.0/CxImage/ximatran.cpp | 138 +++++++++++++-------------
+ lib/cximage-6.0/CxImage/ximawnd.cpp  |  16 +--
+ 17 files changed, 236 insertions(+), 244 deletions(-)
+
+diff --git a/lib/cximage-6.0/CxImage/ximabmp.cpp b/lib/cximage-6.0/CxImage/ximabmp.cpp
+index 726ff91..55842b1 100644
+--- a/lib/cximage-6.0/CxImage/ximabmp.cpp
++++ b/lib/cximage-6.0/CxImage/ximabmp.cpp
+@@ -46,7 +46,7 @@ bool CxImageBMP::Encode(CxFile * hFile)
+ 		bihtoh(&infohdr);
+ 
+ 		// Write the file header
+-		hFile->Write(&hdr,min(14,sizeof(BITMAPFILEHEADER)),1);
++		hFile->Write(&hdr,cxmin(14,sizeof(BITMAPFILEHEADER)),1);
+ 		hFile->Write(&infohdr,sizeof(BITMAPINFOHEADER),1);
+ 		 //and DIB+ALPHA interlaced
+ 		BYTE *srcalpha = AlphaGetPointer();
+@@ -64,7 +64,7 @@ bool CxImageBMP::Encode(CxFile * hFile)
+ #endif //CXIMAGE_SUPPORT_ALPHA
+ 	{
+ 		// Write the file header
+-		hFile->Write(&hdr,min(14,sizeof(BITMAPFILEHEADER)),1);
++		hFile->Write(&hdr,cxmin(14,sizeof(BITMAPFILEHEADER)),1);
+ 		//copy attributes
+ 		memcpy(pDib,&head,sizeof(BITMAPINFOHEADER));
+ 		bihtoh((BITMAPINFOHEADER*)pDib);
+@@ -86,7 +86,7 @@ bool CxImageBMP::Decode(CxFile * hFile)
+ 	BITMAPFILEHEADER   bf;
+ 	DWORD off = hFile->Tell(); //<CSC>
+   cx_try {
+-	if (hFile->Read(&bf,min(14,sizeof(bf)),1)==0) cx_throw("Not a BMP");
++	if (hFile->Read(&bf,cxmin(14,sizeof(bf)),1)==0) cx_throw("Not a BMP");
+ 
+ 	bf.bfSize = my_ntohl(bf.bfSize); 
+ 	bf.bfOffBits = my_ntohl(bf.bfOffBits); 
+diff --git a/lib/cximage-6.0/CxImage/ximadef.h b/lib/cximage-6.0/CxImage/ximadef.h
+index fe383bf..53ea452 100644
+--- a/lib/cximage-6.0/CxImage/ximadef.h
++++ b/lib/cximage-6.0/CxImage/ximadef.h
+@@ -53,12 +53,8 @@
+  #define CXIMAGE_SUPPORT_WINDOWS 0
+ #endif
+ 
+-#ifndef min
+-#define min(a,b) (((a)<(b))?(a):(b))
+-#endif
+-#ifndef max
+-#define max(a,b) (((a)>(b))?(a):(b))
+-#endif
++#define cxmin(a,b) (((a)<(b))?(a):(b))
++#define cxmax(a,b) (((a)>(b))?(a):(b))
+ 
+ #ifndef PI
+  #define PI 3.141592653589793f
+diff --git a/lib/cximage-6.0/CxImage/ximadsp.cpp b/lib/cximage-6.0/CxImage/ximadsp.cpp
+index 8425bb2..813253b 100644
+--- a/lib/cximage-6.0/CxImage/ximadsp.cpp
++++ b/lib/cximage-6.0/CxImage/ximadsp.cpp
+@@ -389,8 +389,8 @@ RGBQUAD CxImage::RGBtoHSL(RGBQUAD lRGBColor)
+ 	G = lRGBColor.rgbGreen;
+ 	B = lRGBColor.rgbBlue;
+ 
+-	cMax = max( max(R,G), B);	/* calculate lightness */
+-	cMin = min( min(R,G), B);
++	cMax = cxmax( cxmax(R,G), B);	/* calculate lightness */
++	cMin = cxmin( cxmin(R,G), B);
+ 	L = (BYTE)((((cMax+cMin)*HSLMAX)+RGBMAX)/(2*RGBMAX));
+ 
+ 	if (cMax==cMin){			/* r=g=b --> achromatic case */
+@@ -489,9 +489,9 @@ RGBQUAD CxImage::YUVtoRGB(RGBQUAD lYUVColor)
+ 	G = (int)( Y - 0.344f * U - 0.714f * V);
+ 	B = (int)( Y + 1.770f * U);
+ 
+-	R= min(255,max(0,R));
+-	G= min(255,max(0,G));
+-	B= min(255,max(0,B));
++	R= cxmin(255,cxmax(0,R));
++	G= cxmin(255,cxmax(0,G));
++	B= cxmin(255,cxmax(0,B));
+ 	RGBQUAD rgb={(BYTE)B,(BYTE)G,(BYTE)R,0};
+ 	return rgb;
+ }
+@@ -510,9 +510,9 @@ RGBQUAD CxImage::RGBtoYUV(RGBQUAD lRGBColor)
+ 	U = (int)((B-Y) * 0.565f + 128);
+ 	V = (int)((R-Y) * 0.713f + 128);
+ 
+-	Y= min(255,max(0,Y));
+-	U= min(255,max(0,U));
+-	V= min(255,max(0,V));
++	Y= cxmin(255,cxmax(0,Y));
++	U= cxmin(255,cxmax(0,U));
++	V= cxmin(255,cxmax(0,V));
+ 	RGBQUAD yuv={(BYTE)V,(BYTE)U,(BYTE)Y,0};
+ 	return yuv;
+ }
+@@ -528,9 +528,9 @@ RGBQUAD CxImage::YIQtoRGB(RGBQUAD lYIQColor)
+ 	G = (int)( Y - 0.273f * I - 0.647f * Q);
+ 	B = (int)( Y - 1.104f * I + 1.701f * Q);
+ 
+-	R= min(255,max(0,R));
+-	G= min(255,max(0,G));
+-	B= min(255,max(0,B));
++	R= cxmin(255,cxmax(0,R));
++	G= cxmin(255,cxmax(0,G));
++	B= cxmin(255,cxmax(0,B));
+ 	RGBQUAD rgb={(BYTE)B,(BYTE)G,(BYTE)R,0};
+ 	return rgb;
+ }
+@@ -546,9 +546,9 @@ RGBQUAD CxImage::RGBtoYIQ(RGBQUAD lRGBColor)
+ 	I = (int)( 0.5960f * R - 0.2742f * G - 0.3219f * B + 128);
+ 	Q = (int)( 0.2109f * R - 0.5229f * G + 0.3120f * B + 128);
+ 
+-	Y= min(255,max(0,Y));
+-	I= min(255,max(0,I));
+-	Q= min(255,max(0,Q));
++	Y= cxmin(255,cxmax(0,Y));
++	I= cxmin(255,cxmax(0,I));
++	Q= cxmin(255,cxmax(0,Q));
+ 	RGBQUAD yiq={(BYTE)Q,(BYTE)I,(BYTE)Y,0};
+ 	return yiq;
+ }
+@@ -565,9 +565,9 @@ RGBQUAD CxImage::XYZtoRGB(RGBQUAD lXYZColor)
+ 	G = (int)( -0.969256f * X + 1.875992f * Y + 0.041556f * Z * k);
+ 	B = (int)(  0.055648f * X - 0.204043f * Y + 1.057311f * Z * k);
+ 
+-	R= min(255,max(0,R));
+-	G= min(255,max(0,G));
+-	B= min(255,max(0,B));
++	R= cxmin(255,cxmax(0,R));
++	G= cxmin(255,cxmax(0,G));
++	B= cxmin(255,cxmax(0,B));
+ 	RGBQUAD rgb={(BYTE)B,(BYTE)G,(BYTE)R,0};
+ 	return rgb;
+ }
+@@ -583,9 +583,9 @@ RGBQUAD CxImage::RGBtoXYZ(RGBQUAD lRGBColor)
+ 	Y = (int)( 0.212671f * R + 0.715160f * G + 0.072169f * B);
+ 	Z = (int)((0.019334f * R + 0.119193f * G + 0.950227f * B)*0.918483657f);
+ 
+-	//X= min(255,max(0,X));
+-	//Y= min(255,max(0,Y));
+-	//Z= min(255,max(0,Z));
++	//X= cxmin(255,cxmax(0,X));
++	//Y= cxmin(255,cxmax(0,Y));
++	//Z= cxmin(255,cxmax(0,Z));
+ 	RGBQUAD xyz={(BYTE)Z,(BYTE)Y,(BYTE)X,0};
+ 	return xyz;
+ }
+@@ -707,7 +707,7 @@ bool CxImage::Light(long brightness, long contrast)
+ 
+ 	BYTE cTable[256]; //<nipper>
+ 	for (int i=0;i<256;i++)	{
+-		cTable[i] = (BYTE)max(0,min(255,(int)((i-128)*c + brightness + 0.5f)));
++		cTable[i] = (BYTE)cxmax(0,cxmin(255,(int)((i-128)*c + brightness + 0.5f)));
+ 	}
+ 
+ 	return Lut(cTable);
+@@ -830,11 +830,11 @@ bool CxImage::Filter(long* kernel, long Ksize, long Kfactor, long Koffset)
+ 						}
+ 					}
+ 					if (Kfactor==0 || ksumcur==0){
+-						cPtr2[iY1] = (BYTE)min(255, max(0,(int)(b + Koffset)));
++						cPtr2[iY1] = (BYTE)cxmin(255, cxmax(0,(int)(b + Koffset)));
+ 					} else if (ksumtot == ksumcur) {
+-						cPtr2[iY1] = (BYTE)min(255, max(0,(int)(b/Kfactor + Koffset)));
++						cPtr2[iY1] = (BYTE)cxmin(255, cxmax(0,(int)(b/Kfactor + Koffset)));
+ 					} else {
+-						cPtr2[iY1] = (BYTE)min(255, max(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset)));
++						cPtr2[iY1] = (BYTE)cxmin(255, cxmax(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset)));
+ 					}
+ 				}
+ 			}
+@@ -863,17 +863,17 @@ bool CxImage::Filter(long* kernel, long Ksize, long Kfactor, long Koffset)
+ 						}
+ 					}
+ 					if (Kfactor==0 || ksumcur==0){
+-						c.rgbRed   = (BYTE)min(255, max(0,(int)(r + Koffset)));
+-						c.rgbGreen = (BYTE)min(255, max(0,(int)(g + Koffset)));
+-						c.rgbBlue  = (BYTE)min(255, max(0,(int)(b + Koffset)));
++						c.rgbRed   = (BYTE)cxmin(255, cxmax(0,(int)(r + Koffset)));
++						c.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(g + Koffset)));
++						c.rgbBlue  = (BYTE)cxmin(255, cxmax(0,(int)(b + Koffset)));
+ 					} else if (ksumtot == ksumcur) {
+-						c.rgbRed   = (BYTE)min(255, max(0,(int)(r/Kfactor + Koffset)));
+-						c.rgbGreen = (BYTE)min(255, max(0,(int)(g/Kfactor + Koffset)));
+-						c.rgbBlue  = (BYTE)min(255, max(0,(int)(b/Kfactor + Koffset)));
++						c.rgbRed   = (BYTE)cxmin(255, cxmax(0,(int)(r/Kfactor + Koffset)));
++						c.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(g/Kfactor + Koffset)));
++						c.rgbBlue  = (BYTE)cxmin(255, cxmax(0,(int)(b/Kfactor + Koffset)));
+ 					} else {
+-						c.rgbRed   = (BYTE)min(255, max(0,(int)((r*ksumtot)/(ksumcur*Kfactor) + Koffset)));
+-						c.rgbGreen = (BYTE)min(255, max(0,(int)((g*ksumtot)/(ksumcur*Kfactor) + Koffset)));
+-						c.rgbBlue  = (BYTE)min(255, max(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset)));
++						c.rgbRed   = (BYTE)cxmin(255, cxmax(0,(int)((r*ksumtot)/(ksumcur*Kfactor) + Koffset)));
++						c.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)((g*ksumtot)/(ksumcur*Kfactor) + Koffset)));
++						c.rgbBlue  = (BYTE)cxmin(255, cxmax(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset)));
+ 					}
+ 					tmp.BlindSetPixelColor(x,y,c);
+ 				}
+@@ -1078,8 +1078,8 @@ bool CxImage::Edge(long Ksize)
+ // 
+ void CxImage::Mix(CxImage & imgsrc2, ImageOpType op, long lXOffset, long lYOffset, bool bMixAlpha)
+ {
+-    long lWide = min(GetWidth(),imgsrc2.GetWidth()-lXOffset);
+-    long lHeight = min(GetHeight(),imgsrc2.GetHeight()-lYOffset);
++    long lWide = cxmin(GetWidth(),imgsrc2.GetWidth()-lXOffset);
++    long lHeight = cxmin(GetHeight(),imgsrc2.GetHeight()-lYOffset);
+ 
+ 	bool bEditAlpha = imgsrc2.AlphaIsValid() & bMixAlpha;
+ 
+@@ -1112,16 +1112,16 @@ void CxImage::Mix(CxImage & imgsrc2, ImageOpType op, long lXOffset, long lYOffse
+ 						if (bEditAlpha) rgbDest.rgbReserved = (BYTE)((rgb1.rgbReserved+rgb2.rgbReserved)/2);
+ 					break;
+ 					case OpAdd:
+-						rgbDest.rgbBlue = (BYTE)max(0,min(255,rgb1.rgbBlue+rgb2.rgbBlue));
+-						rgbDest.rgbGreen = (BYTE)max(0,min(255,rgb1.rgbGreen+rgb2.rgbGreen));
+-						rgbDest.rgbRed = (BYTE)max(0,min(255,rgb1.rgbRed+rgb2.rgbRed));
+-						if (bEditAlpha) rgbDest.rgbReserved = (BYTE)max(0,min(255,rgb1.rgbReserved+rgb2.rgbReserved));
++						rgbDest.rgbBlue = (BYTE)cxmax(0,cxmin(255,rgb1.rgbBlue+rgb2.rgbBlue));
++						rgbDest.rgbGreen = (BYTE)cxmax(0,cxmin(255,rgb1.rgbGreen+rgb2.rgbGreen));
++						rgbDest.rgbRed = (BYTE)cxmax(0,cxmin(255,rgb1.rgbRed+rgb2.rgbRed));
++						if (bEditAlpha) rgbDest.rgbReserved = (BYTE)cxmax(0,cxmin(255,rgb1.rgbReserved+rgb2.rgbReserved));
+ 					break;
+ 					case OpSub:
+-						rgbDest.rgbBlue = (BYTE)max(0,min(255,rgb1.rgbBlue-rgb2.rgbBlue));
+-						rgbDest.rgbGreen = (BYTE)max(0,min(255,rgb1.rgbGreen-rgb2.rgbGreen));
+-						rgbDest.rgbRed = (BYTE)max(0,min(255,rgb1.rgbRed-rgb2.rgbRed));
+-						if (bEditAlpha) rgbDest.rgbReserved = (BYTE)max(0,min(255,rgb1.rgbReserved-rgb2.rgbReserved));
++						rgbDest.rgbBlue = (BYTE)cxmax(0,cxmin(255,rgb1.rgbBlue-rgb2.rgbBlue));
++						rgbDest.rgbGreen = (BYTE)cxmax(0,cxmin(255,rgb1.rgbGreen-rgb2.rgbGreen));
++						rgbDest.rgbRed = (BYTE)cxmax(0,cxmin(255,rgb1.rgbRed-rgb2.rgbRed));
++						if (bEditAlpha) rgbDest.rgbReserved = (BYTE)cxmax(0,cxmin(255,rgb1.rgbReserved-rgb2.rgbReserved));
+ 					break;
+ 					case OpAnd:
+ 						rgbDest.rgbBlue = (BYTE)(rgb1.rgbBlue&rgb2.rgbBlue);
+@@ -1202,11 +1202,11 @@ void CxImage::Mix(CxImage & imgsrc2, ImageOpType op, long lXOffset, long lYOffse
+ 							double dSmallAmt = dSmall*((double)rgb2.rgbBlue);
+ 
+ 							if( lAverage < lThresh+1){
+-								rgbDest.rgbBlue = (BYTE)max(0,min(255,(int)(dLarge*((double)rgb1.rgbBlue) +
++								rgbDest.rgbBlue = (BYTE)cxmax(0,cxmin(255,(int)(dLarge*((double)rgb1.rgbBlue) +
+ 												dSmallAmt)));
+-								rgbDest.rgbGreen = (BYTE)max(0,min(255,(int)(dLarge*((double)rgb1.rgbGreen) +
++								rgbDest.rgbGreen = (BYTE)cxmax(0,cxmin(255,(int)(dLarge*((double)rgb1.rgbGreen) +
+ 												dSmallAmt)));
+-								rgbDest.rgbRed = (BYTE)max(0,min(255,(int)(dLarge*((double)rgb1.rgbRed) +
++								rgbDest.rgbRed = (BYTE)cxmax(0,cxmin(255,(int)(dLarge*((double)rgb1.rgbRed) +
+ 												dSmallAmt)));
+ 							}
+ 							else
+@@ -1274,9 +1274,9 @@ bool CxImage::ShiftRGB(long r, long g, long b)
+ #endif //CXIMAGE_SUPPORT_SELECTION
+ 				{
+ 					color = BlindGetPixelColor(x,y);
+-					color.rgbRed = (BYTE)max(0,min(255,(int)(color.rgbRed + r)));
+-					color.rgbGreen = (BYTE)max(0,min(255,(int)(color.rgbGreen + g)));
+-					color.rgbBlue = (BYTE)max(0,min(255,(int)(color.rgbBlue + b)));
++					color.rgbRed = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbRed + r)));
++					color.rgbGreen = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbGreen + g)));
++					color.rgbBlue = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbBlue + b)));
+ 					BlindSetPixelColor(x,y,color);
+ 				}
+ 			}
+@@ -1284,9 +1284,9 @@ bool CxImage::ShiftRGB(long r, long g, long b)
+ 	} else {
+ 		for(DWORD j=0; j<head.biClrUsed; j++){
+ 			color = GetPaletteColor((BYTE)j);
+-			color.rgbRed = (BYTE)max(0,min(255,(int)(color.rgbRed + r)));
+-			color.rgbGreen = (BYTE)max(0,min(255,(int)(color.rgbGreen + g)));
+-			color.rgbBlue = (BYTE)max(0,min(255,(int)(color.rgbBlue + b)));
++			color.rgbRed = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbRed + r)));
++			color.rgbGreen = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbGreen + g)));
++			color.rgbBlue = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbBlue + b)));
+ 			SetPaletteColor((BYTE)j,color);
+ 		}
+ 	}
+@@ -1310,7 +1310,7 @@ bool CxImage::Gamma(float gamma)
+ 
+ 	BYTE cTable[256]; //<nipper>
+ 	for (int i=0;i<256;i++)	{
+-		cTable[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax)));
++		cTable[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax)));
+ 	}
+ 
+ 	return Lut(cTable);
+@@ -1337,21 +1337,21 @@ bool CxImage::GammaRGB(float gammaR, float gammaG, float gammaB)
+ 	dMax = pow(255.0, dinvgamma) / 255.0;
+ 	BYTE cTableR[256];
+ 	for (i=0;i<256;i++)	{
+-		cTableR[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax)));
++		cTableR[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax)));
+ 	}
+ 
+ 	dinvgamma = 1/gammaG;
+ 	dMax = pow(255.0, dinvgamma) / 255.0;
+ 	BYTE cTableG[256];
+ 	for (i=0;i<256;i++)	{
+-		cTableG[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax)));
++		cTableG[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax)));
+ 	}
+ 
+ 	dinvgamma = 1/gammaB;
+ 	dMax = pow(255.0, dinvgamma) / 255.0;
+ 	BYTE cTableB[256];
+ 	for (i=0;i<256;i++)	{
+-		cTableB[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax)));
++		cTableB[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax)));
+ 	}
+ 
+ 	return Lut(cTableR, cTableG, cTableB);
+@@ -1442,11 +1442,11 @@ bool CxImage::Noise(long level)
+ 			{
+ 				color = BlindGetPixelColor(x,y);
+ 				n=(long)((rand()/(float)RAND_MAX - 0.5)*level);
+-				color.rgbRed = (BYTE)max(0,min(255,(int)(color.rgbRed + n)));
++				color.rgbRed = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbRed + n)));
+ 				n=(long)((rand()/(float)RAND_MAX - 0.5)*level);
+-				color.rgbGreen = (BYTE)max(0,min(255,(int)(color.rgbGreen + n)));
++				color.rgbGreen = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbGreen + n)));
+ 				n=(long)((rand()/(float)RAND_MAX - 0.5)*level);
+-				color.rgbBlue = (BYTE)max(0,min(255,(int)(color.rgbBlue + n)));
++				color.rgbBlue = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbBlue + n)));
+ 				BlindSetPixelColor(x,y,color);
+ 			}
+ 		}
+@@ -1561,8 +1561,8 @@ bool CxImage::FFT2(CxImage* srcReal, CxImage* srcImag, CxImage* dstReal, CxImage
+ 
+ 	//DFT buffers
+ 	double *real2,*imag2;
+-	real2 = (double*)malloc(max(w,h) * sizeof(double));
+-	imag2 = (double*)malloc(max(w,h) * sizeof(double));
++	real2 = (double*)malloc(cxmax(w,h) * sizeof(double));
++	imag2 = (double*)malloc(cxmax(w,h) * sizeof(double));
+ 
+ 	/* Transform the rows */
+ 	real = (double *)malloc(w * sizeof(double));
+@@ -1617,7 +1617,7 @@ bool CxImage::FFT2(CxImage* srcReal, CxImage* srcImag, CxImage* dstReal, CxImage
+ 
+ 	/* converting from double to byte, there is a HUGE loss in the dynamics
+ 	  "nn" tries to keep an acceptable SNR, but 8bit=48dB: don't ask more */
+-	double nn=pow((double)2,(double)log((double)max(w,h))/(double)log((double)2)-4);
++	double nn=pow((double)2,(double)log((double)cxmax(w,h))/(double)log((double)2)-4);
+ 	//reversed gain for reversed transform
+ 	if (direction==-1) nn=1/nn;
+ 	//bMagnitude : just to see it on the screen
+@@ -1626,15 +1626,15 @@ bool CxImage::FFT2(CxImage* srcReal, CxImage* srcImag, CxImage* dstReal, CxImage
+ 	for (j=0;j<h;j++) {
+ 		for (k=0;k<w;k++) {
+ 			if (bMagnitude){
+-				tmpReal->SetPixelIndex(k,j,(BYTE)max(0,min(255,(nn*(3+log(_cabs(grid[k][j])))))));
++				tmpReal->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(nn*(3+log(_cabs(grid[k][j])))))));
+ 				if (grid[k][j].x==0){
+-					tmpImag->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128+(atan(grid[k][j].y/0.0000000001)*nn)))));
++					tmpImag->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128+(atan(grid[k][j].y/0.0000000001)*nn)))));
+ 				} else {
+-					tmpImag->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128+(atan(grid[k][j].y/grid[k][j].x)*nn)))));
++					tmpImag->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128+(atan(grid[k][j].y/grid[k][j].x)*nn)))));
+ 				}
+ 			} else {
+-				tmpReal->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128 + grid[k][j].x*nn))));
+-				tmpImag->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128 + grid[k][j].y*nn))));
++				tmpReal->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128 + grid[k][j].x*nn))));
++				tmpImag->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128 + grid[k][j].y*nn))));
+ 			}
+ 		}
+ 	}
+@@ -1922,7 +1922,7 @@ bool CxImage::RepairChannel(CxImage *ch, float radius)
+ 
+ 			correction = ((1.0+iy*iy)*ixx - ix*iy*ixy + (1.0+ix*ix)*iyy)/(1.0+ix*ix+iy*iy);
+ 
+-			tmp.BlindSetPixelIndex(x,y,(BYTE)min(255,max(0,(xy0 + radius * correction + 0.5))));
++			tmp.BlindSetPixelIndex(x,y,(BYTE)cxmin(255,cxmax(0,(xy0 + radius * correction + 0.5))));
+ 		}
+ 	}
+ 
+@@ -1943,7 +1943,7 @@ bool CxImage::RepairChannel(CxImage *ch, float radius)
+ 
+ 			correction = ((1.0+iy*iy)*ixx - ix*iy*ixy + (1.0+ix*ix)*iyy)/(1.0+ix*ix+iy*iy);
+ 
+-			tmp.BlindSetPixelIndex(x,y,(BYTE)min(255,max(0,(xy0 + radius * correction + 0.5))));
++			tmp.BlindSetPixelIndex(x,y,(BYTE)cxmin(255,cxmax(0,(xy0 + radius * correction + 0.5))));
+ 		}
+ 	}
+ 	for (x=0;x<=w;x+=w){
+@@ -1963,7 +1963,7 @@ bool CxImage::RepairChannel(CxImage *ch, float radius)
+ 
+ 			correction = ((1.0+iy*iy)*ixx - ix*iy*ixy + (1.0+ix*ix)*iyy)/(1.0+ix*ix+iy*iy);
+ 
+-			tmp.BlindSetPixelIndex(x,y,(BYTE)min(255,max(0,(xy0 + radius * correction + 0.5))));
++			tmp.BlindSetPixelIndex(x,y,(BYTE)cxmin(255,cxmax(0,(xy0 + radius * correction + 0.5))));
+ 		}
+ 	}
+ 
+@@ -2621,8 +2621,8 @@ bool CxImage::SelectiveBlur(float radius, BYTE threshold, CxImage* iDst)
+ 	}
+ 
+ 	//build the difference mask
+-	BYTE thresh_dw = (BYTE)max( 0 ,(int)(128 - threshold));
+-	BYTE thresh_up = (BYTE)min(255,(int)(128 + threshold));
++	BYTE thresh_dw = (BYTE)cxmax( 0 ,(int)(128 - threshold));
++	BYTE thresh_up = (BYTE)cxmin(255,(int)(128 + threshold));
+ 	long kernel[]={-100,-100,-100,-100,801,-100,-100,-100,-100};
+ 	if (!Tmp.Filter(kernel,3,800,128)){
+ 		delete [] pPalette;
+@@ -2755,7 +2755,7 @@ bool CxImage::UnsharpMask(float radius /*= 5.0*/, float amount /*= 0.5*/, int th
+ 					if (abs(diff) < threshold){
+ 						dest_row[z] = cur_row[z];
+ 					} else {
+-						dest_row[z] = (BYTE)min(255, max(0,(int)(cur_row[z] + amount * diff)));
++						dest_row[z] = (BYTE)cxmin(255, cxmax(0,(int)(cur_row[z] + amount * diff)));
+ 					}
+ 				}
+ 			}
+@@ -2952,7 +2952,7 @@ bool CxImage::RedEyeRemove(float strength)
+ 				float a = 1.0f-5.0f*((float)((x-0.5f*(xmax+xmin))*(x-0.5f*(xmax+xmin))+(y-0.5f*(ymax+ymin))*(y-0.5f*(ymax+ymin))))/((float)((xmax-xmin)*(ymax-ymin)));
+ 				if (a<0) a=0;
+ 				color = BlindGetPixelColor(x,y);
+-				color.rgbRed = (BYTE)(a*min(color.rgbGreen,color.rgbBlue)+(1.0f-a)*color.rgbRed);
++				color.rgbRed = (BYTE)(a*cxmin(color.rgbGreen,color.rgbBlue)+(1.0f-a)*color.rgbRed);
+ 				BlindSetPixelColor(x,y,color);
+ 			}
+ 		}
+@@ -2990,7 +2990,7 @@ bool CxImage::Saturate(const long saturation, const long colorspace)
+ 	case 1:
+ 		{
+ 			for (int i=0;i<256;i++)	{
+-				cTable[i] = (BYTE)max(0,min(255,(int)(i + saturation)));
++				cTable[i] = (BYTE)cxmax(0,cxmin(255,(int)(i + saturation)));
+ 			}
+ 			for(long y=ymin; y<ymax; y++){
+ 				info.nProgress = (long)(100*(y-ymin)/(ymax-ymin));
+@@ -3012,7 +3012,7 @@ bool CxImage::Saturate(const long saturation, const long colorspace)
+ 	case 2:
+ 		{
+ 			for (int i=0;i<256;i++)	{
+-				cTable[i] = (BYTE)max(0,min(255,(int)((i-128)*(100 + saturation)/100.0f + 128.5f)));
++				cTable[i] = (BYTE)cxmax(0,cxmin(255,(int)((i-128)*(100 + saturation)/100.0f + 128.5f)));
+ 			}
+ 			for(long y=ymin; y<ymax; y++){
+ 				info.nProgress = (long)(100*(y-ymin)/(ymax-ymin));
+@@ -3242,10 +3242,10 @@ int  CxImage::OptimalThreshold(long method, RECT * pBox, CxImage* pContrastMask)
+ 
+ 	long xmin,xmax,ymin,ymax;
+ 	if (pBox){
+-		xmin = max(pBox->left,0);
+-		xmax = min(pBox->right,head.biWidth);
+-		ymin = max(pBox->bottom,0);
+-		ymax = min(pBox->top,head.biHeight);
++		xmin = cxmax(pBox->left,0);
++		xmax = cxmin(pBox->right,head.biWidth);
++		ymin = cxmax(pBox->bottom,0);
++		ymax = cxmin(pBox->top,head.biHeight);
+ 	} else {
+ 		xmin = ymin = 0;
+ 		xmax = head.biWidth; ymax=head.biHeight;
+@@ -3463,7 +3463,7 @@ bool CxImage::AdaptiveThreshold(long method, long nBoxSize, CxImage* pContrastMa
+ 			r.top = r.bottom + nBoxSize;
+ 			int threshold = OptimalThreshold(method, &r, pContrastMask);
+ 			if (threshold <0) return false;
+-			mask.SetPixelIndex(x,y,(BYTE)max(0,min(255,nBias+((1.0f-fGlobalLocalBalance)*threshold + fGlobalLocalBalance*globalthreshold))));
++			mask.SetPixelIndex(x,y,(BYTE)cxmax(0,cxmin(255,nBias+((1.0f-fGlobalLocalBalance)*threshold + fGlobalLocalBalance*globalthreshold))));
+ 		}
+ 	}
+ 
+@@ -3490,10 +3490,6 @@ bool CxImage::AdaptiveThreshold(long method, long nBoxSize, CxImage* pContrastMa
+  * Note: nOpacity=0 && bSelectFilledArea=true act as a "magic wand"
+  * \return true if everything is ok
+  */
+-#if defined(XBMC) && !defined(_WIN32)
+-int max(int a, int b) { return a > b ? a : b; }
+-int min(int a, int b) { return a < b ? a : b; }
+-#endif
+ 
+ bool CxImage::FloodFill(const long xStart, const long yStart, const RGBQUAD cFillColor, const BYTE nTolerance,
+ 						BYTE nOpacity, const bool bSelectFilledArea, const BYTE nSelectionLevel)
+@@ -3538,8 +3534,8 @@ bool CxImage::FloodFill(const long xStart, const long yStart, const RGBQUAD cFil
+ 	if (IsIndexed()){ //--- Generic indexed image, no tolerance OR Grayscale image with tolerance
+ 		BYTE idxRef = GetPixelIndex(xStart,yStart);
+ 		BYTE idxFill = GetNearestIndex(cFillColor);
+-		BYTE idxMin = (BYTE)min(255, max(0,(int)(idxRef - nTolerance)));
+-		BYTE idxMax = (BYTE)min(255, max(0,(int)(idxRef + nTolerance)));
++		BYTE idxMin = (BYTE)cxmin(255, cxmax(0,(int)(idxRef - nTolerance)));
++		BYTE idxMax = (BYTE)cxmin(255, cxmax(0,(int)(idxRef + nTolerance)));
+ 
+ 		while(!q.empty())
+ 		{
+@@ -3575,12 +3571,12 @@ bool CxImage::FloodFill(const long xStart, const long yStart, const RGBQUAD cFil
+ 	} else { //--- RGB image
+ 		RGBQUAD cRef = GetPixelColor(xStart,yStart);
+ 		RGBQUAD cRefMin, cRefMax;
+-		cRefMin.rgbRed   = (BYTE)min(255, max(0,(int)(cRef.rgbRed   - nTolerance)));
+-		cRefMin.rgbGreen = (BYTE)min(255, max(0,(int)(cRef.rgbGreen - nTolerance)));
+-		cRefMin.rgbBlue  = (BYTE)min(255, max(0,(int)(cRef.rgbBlue  - nTolerance)));
+-		cRefMax.rgbRed   = (BYTE)min(255, max(0,(int)(cRef.rgbRed   + nTolerance)));
+-		cRefMax.rgbGreen = (BYTE)min(255, max(0,(int)(cRef.rgbGreen + nTolerance)));
+-		cRefMax.rgbBlue  = (BYTE)min(255, max(0,(int)(cRef.rgbBlue  + nTolerance)));
++		cRefMin.rgbRed   = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbRed   - nTolerance)));
++		cRefMin.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbGreen - nTolerance)));
++		cRefMin.rgbBlue  = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbBlue  - nTolerance)));
++		cRefMax.rgbRed   = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbRed   + nTolerance)));
++		cRefMax.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbGreen + nTolerance)));
++		cRefMax.rgbBlue  = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbBlue  + nTolerance)));
+ 
+ 		while(!q.empty())
+ 		{
+diff --git a/lib/cximage-6.0/CxImage/ximage.cpp b/lib/cximage-6.0/CxImage/ximage.cpp
+index e81d3c6..26c6993 100644
+--- a/lib/cximage-6.0/CxImage/ximage.cpp
++++ b/lib/cximage-6.0/CxImage/ximage.cpp
+@@ -460,7 +460,7 @@ bool CxImage::CreateFromArray(BYTE* pArray,DWORD dwWidth,DWORD dwHeight,DWORD dw
+ 				src+=4;
+ 			}
+ 		} else {
+-			memcpy(dst,src,min(info.dwEffWidth,dwBytesperline));
++			memcpy(dst,src,cxmin(info.dwEffWidth,dwBytesperline));
+ 		}
+ 	}
+ 	return true;
+@@ -500,7 +500,7 @@ bool CxImage::CreateFromMatrix(BYTE** ppMatrix,DWORD dwWidth,DWORD dwHeight,DWOR
+ 					src+=4;
+ 				}
+ 			} else {
+-				memcpy(dst,src,min(info.dwEffWidth,dwBytesperline));
++				memcpy(dst,src,cxmin(info.dwEffWidth,dwBytesperline));
+ 			}
+ 		}
+ 	}
+diff --git a/lib/cximage-6.0/CxImage/ximagif.cpp b/lib/cximage-6.0/CxImage/ximagif.cpp
+index b89e061..64b1ccc 100644
+--- a/lib/cximage-6.0/CxImage/ximagif.cpp
++++ b/lib/cximage-6.0/CxImage/ximagif.cpp
+@@ -478,7 +478,7 @@ bool CxImageGIF::Encode(CxFile * fp, CxImage ** pImages, int pagecount, bool bLo
+ 	ghost.EncodeHeader(fp);
+ 
+ 	if (m_loops!=1){
+-		ghost.SetLoops(max(0,m_loops-1));
++		ghost.SetLoops(cxmax(0,m_loops-1));
+ 		ghost.EncodeLoopExtension(fp);
+ 	}
+ 
+@@ -1340,10 +1340,10 @@ void CxImageGIF::GetComment(char* sz_comment_out)
+ ////////////////////////////////////////////////////////////////////////////////
+ void CxImageGIF::GifMix(CxImage & imgsrc2, struct_image & imgdesc)
+ {
+-	long ymin = max(0,(long)(GetHeight()-imgdesc.t - imgdesc.h));
++	long ymin = cxmax(0,(long)(GetHeight()-imgdesc.t - imgdesc.h));
+ 	long ymax = GetHeight()-imgdesc.t;
+ 	long xmin = imgdesc.l;
+-	long xmax = min(GetWidth(), (DWORD)(imgdesc.l + imgdesc.w));
++	long xmax = cxmin(GetWidth(), (DWORD)(imgdesc.l + imgdesc.w));
+ 
+ 	long ibg2= imgsrc2.GetTransIndex();
+     BYTE i2;
+diff --git a/lib/cximage-6.0/CxImage/ximahist.cpp b/lib/cximage-6.0/CxImage/ximahist.cpp
+index a2aed03..5391107 100644
+--- a/lib/cximage-6.0/CxImage/ximahist.cpp
++++ b/lib/cximage-6.0/CxImage/ximahist.cpp
+@@ -110,7 +110,7 @@ bool CxImage::HistogramStretch(long method, double threshold)
+ 	// calculate LUT
+ 	BYTE lut[256];
+ 	for (x = 0; x <256; x++){
+-		lut[x] = (BYTE)max(0,min(255,(255 * (x - minc) / (maxc - minc))));
++		lut[x] = (BYTE)cxmax(0,cxmin(255,(255 * (x - minc) / (maxc - minc))));
+ 	}
+ 
+ 	for (y=0; y<head.biHeight; y++)	{
+@@ -152,7 +152,7 @@ bool CxImage::HistogramStretch(long method, double threshold)
+ 		// calculate LUT
+ 		BYTE lut[256];
+ 		for (x = 0; x <256; x++){
+-			lut[x] = (BYTE)max(0,min(255,(255 * (x - minc) / (maxc - minc))));
++			lut[x] = (BYTE)cxmax(0,cxmin(255,(255 * (x - minc) / (maxc - minc))));
+ 		}
+ 
+ 		// normalize image
+@@ -225,7 +225,7 @@ bool CxImage::HistogramStretch(long method, double threshold)
+ 		BYTE range = maxR - minR;
+ 		if (range != 0)	{
+ 			for (x = 0; x <256; x++){
+-				lutR[x] = (BYTE)max(0,min(255,(255 * (x - minR) / range)));
++				lutR[x] = (BYTE)cxmax(0,cxmin(255,(255 * (x - minR) / range)));
+ 			}
+ 		} else lutR[minR] = minR;
+ 
+@@ -233,7 +233,7 @@ bool CxImage::HistogramStretch(long method, double threshold)
+ 		range = maxG - minG;
+ 		if (range != 0)	{
+ 			for (x = 0; x <256; x++){
+-				lutG[x] = (BYTE)max(0,min(255,(255 * (x - minG) / range)));
++				lutG[x] = (BYTE)cxmax(0,cxmin(255,(255 * (x - minG) / range)));
+ 			}
+ 		} else lutG[minG] = minG;
+ 			
+@@ -241,7 +241,7 @@ bool CxImage::HistogramStretch(long method, double threshold)
+ 		range = maxB - minB;
+ 		if (range != 0)	{
+ 			for (x = 0; x <256; x++){
+-				lutB[x] = (BYTE)max(0,min(255,(255 * (x - minB) / range)));
++				lutB[x] = (BYTE)cxmax(0,cxmin(255,(255 * (x - minB) / range)));
+ 			}
+ 		} else lutB[minB] = minB;
+ 
+@@ -292,7 +292,7 @@ bool CxImage::HistogramStretch(long method, double threshold)
+ 		// calculate LUT
+ 		BYTE lut[256];
+ 		for (x = 0; x <256; x++){
+-			lut[x] = (BYTE)max(0,min(255,(255 * (x - minc) / (maxc - minc))));
++			lut[x] = (BYTE)cxmax(0,cxmin(255,(255 * (x - minc) / (maxc - minc))));
+ 		}
+ 
+ 		for(y=0; y<head.biHeight; y++){
+diff --git a/lib/cximage-6.0/CxImage/ximaint.cpp b/lib/cximage-6.0/CxImage/ximaint.cpp
+index 989d76c..5d49213 100644
+--- a/lib/cximage-6.0/CxImage/ximaint.cpp
++++ b/lib/cximage-6.0/CxImage/ximaint.cpp
+@@ -26,8 +26,8 @@ void CxImage::OverflowCoordinates(long &x, long &y, OverflowMethod const ofMetho
+   switch (ofMethod) {
+     case OM_REPEAT:
+       //clip coordinates
+-      x=max(x,0); x=min(x, head.biWidth-1);
+-      y=max(y,0); y=min(y, head.biHeight-1);
++      x=cxmax(x,0); x=cxmin(x, head.biWidth-1);
++      y=cxmax(y,0); y=cxmin(y, head.biHeight-1);
+       break;
+     case OM_WRAP:
+       //wrap coordinates
+@@ -59,8 +59,8 @@ void CxImage::OverflowCoordinates(float &x, float &y, OverflowMethod const ofMet
+   switch (ofMethod) {
+     case OM_REPEAT:
+       //clip coordinates
+-      x=max(x,0); x=min(x, head.biWidth-1);
+-      y=max(y,0); y=min(y, head.biHeight-1);
++      x=cxmax(x,0); x=cxmin(x, head.biWidth-1);
++      y=cxmax(y,0); y=cxmin(y, head.biHeight-1);
+       break;
+     case OM_WRAP:
+       //wrap coordinates
+diff --git a/lib/cximage-6.0/CxImage/ximaiter.h b/lib/cximage-6.0/CxImage/ximaiter.h
+index 9788919..01a720b 100644
+--- a/lib/cximage-6.0/CxImage/ximaiter.h
++++ b/lib/cximage-6.0/CxImage/ximaiter.h
+@@ -140,7 +140,7 @@ inline void CImageIterator::SetY(int y)
+ inline void CImageIterator::SetRow(BYTE *buf, int n)
+ {
+ 	if (n<0) n = (int)ima->GetEffWidth();
+-	else n = min(n,(int)ima->GetEffWidth());
++	else n = cxmin(n,(int)ima->GetEffWidth());
+ 
+ 	if ((IterImage!=NULL)&&(buf!=NULL)&&(n>0)) memcpy(IterImage,buf,n);
+ }
+@@ -148,7 +148,7 @@ inline void CImageIterator::SetRow(BYTE *buf, int n)
+ inline void CImageIterator::GetRow(BYTE *buf, int n)
+ {
+ 	if ((IterImage!=NULL)&&(buf!=NULL)&&(n>0))
+-		memcpy(buf,IterImage,min(n,(int)ima->GetEffWidth()));
++		memcpy(buf,IterImage,cxmin(n,(int)ima->GetEffWidth()));
+ }
+ /////////////////////////////////////////////////////////////////////
+ inline BYTE* CImageIterator::GetRow()
+diff --git a/lib/cximage-6.0/CxImage/ximajbg.cpp b/lib/cximage-6.0/CxImage/ximajbg.cpp
+index 06fb9bf..8a01e28 100644
+--- a/lib/cximage-6.0/CxImage/ximajbg.cpp
++++ b/lib/cximage-6.0/CxImage/ximajbg.cpp
+@@ -145,7 +145,7 @@ bool CxImageJBG::Encode(CxFile * hFile)
+ 	jbg_enc_init(&jbig_state, w, h, planes, &buffer, jbig_data_out, hFile);
+ 
+     //jbg_enc_layers(&jbig_state, 2);
+-    //jbg_enc_lrlmax(&jbig_state, 800, 600);
++    //jbg_enc_lrlcxmax(&jbig_state, 800, 600);
+ 
+ 	// Specify a few other options (each is ignored if negative)
+ 	int dl = -1, dh = -1, d = -1, l0 = -1, mx = -1;
+diff --git a/lib/cximage-6.0/CxImage/ximapal.cpp b/lib/cximage-6.0/CxImage/ximapal.cpp
+index b3bd3da..3788c98 100644
+--- a/lib/cximage-6.0/CxImage/ximapal.cpp
++++ b/lib/cximage-6.0/CxImage/ximapal.cpp
+@@ -398,8 +398,8 @@ void CxImage::RGBtoBGR(BYTE *buffer, int length)
+ {
+ 	if (buffer && (head.biClrUsed==0)){
+ 		BYTE temp;
+-		length = min(length,(int)info.dwEffWidth);
+-		length = min(length,(int)(3*head.biWidth));
++		length = cxmin(length,(int)info.dwEffWidth);
++		length = cxmin(length,(int)(3*head.biWidth));
+ 		for (int i=0;i<length;i+=3){
+ 			temp = buffer[i]; buffer[i] = buffer[i+2]; buffer[i+2] = temp;
+ 		}
+@@ -444,7 +444,7 @@ void CxImage::SetPalette(DWORD n, BYTE *r, BYTE *g, BYTE *b)
+ 	if (!g) g = r;
+ 	if (!b) b = g;
+ 	RGBQUAD* ppal=GetPalette();
+-	DWORD m=min(n,head.biClrUsed);
++	DWORD m=cxmin(n,head.biClrUsed);
+ 	for (DWORD i=0; i<m;i++){
+ 		ppal[i].rgbRed=r[i];
+ 		ppal[i].rgbGreen=g[i];
+@@ -457,7 +457,7 @@ void CxImage::SetPalette(rgb_color *rgb,DWORD nColors)
+ {
+ 	if ((!rgb)||(pDib==NULL)||(head.biClrUsed==0)) return;
+ 	RGBQUAD* ppal=GetPalette();
+-	DWORD m=min(nColors,head.biClrUsed);
++	DWORD m=cxmin(nColors,head.biClrUsed);
+ 	for (DWORD i=0; i<m;i++){
+ 		ppal[i].rgbRed=rgb[i].r;
+ 		ppal[i].rgbGreen=rgb[i].g;
+@@ -469,7 +469,7 @@ void CxImage::SetPalette(rgb_color *rgb,DWORD nColors)
+ void CxImage::SetPalette(RGBQUAD* pPal,DWORD nColors)
+ {
+ 	if ((pPal==NULL)||(pDib==NULL)||(head.biClrUsed==0)) return;
+-	memcpy(GetPalette(),pPal,min(GetPaletteSize(),nColors*sizeof(RGBQUAD)));
++	memcpy(GetPalette(),pPal,cxmin(GetPaletteSize(),nColors*sizeof(RGBQUAD)));
+ 	info.last_c_isvalid = false;
+ }
+ ////////////////////////////////////////////////////////////////////////////////
+@@ -654,10 +654,10 @@ void CxImage::SetClrImportant(DWORD ncolors)
+ 
+ 	switch(head.biBitCount){
+ 	case 1:
+-		head.biClrImportant = min(ncolors,2);
++		head.biClrImportant = cxmin(ncolors,2);
+ 		break;
+ 	case 4:
+-		head.biClrImportant = min(ncolors,16);
++		head.biClrImportant = cxmin(ncolors,16);
+ 		break;
+ 	case 8:
+ 		head.biClrImportant = ncolors;
+diff --git a/lib/cximage-6.0/CxImage/ximapng.cpp b/lib/cximage-6.0/CxImage/ximapng.cpp
+index a58441c..4b5cc50 100644
+--- a/lib/cximage-6.0/CxImage/ximapng.cpp
++++ b/lib/cximage-6.0/CxImage/ximapng.cpp
+@@ -206,9 +206,9 @@ bool CxImagePNG::Decode(CxFile *hFile)
+ 	} else SetGrayPalette(); //<DP> needed for grayscale PNGs
+ 	
+ #ifdef USE_NEW_LIBPNG_API
+-	int nshift = max(0,(_bit_depth>>3)-1)<<3;
++	int nshift = cxmax(0,(_bit_depth>>3)-1)<<3;
+ #else
+-	int nshift = max(0,(info_ptr->bit_depth>>3)-1)<<3;
++	int nshift = cxmax(0,(info_ptr->bit_depth>>3)-1)<<3;
+ #endif
+ 
+ #ifdef USE_NEW_LIBPNG_API
+@@ -255,10 +255,10 @@ bool CxImagePNG::Decode(CxFile *hFile)
+ 			if (pal){
+ 				DWORD ip;
+ #ifdef USE_NEW_LIBPNG_API
+-				for (ip=0;ip<min(head.biClrUsed,(unsigned long)_num_trans);ip++)
++				for (ip=0;ip<cxmin(head.biClrUsed,(unsigned long)_num_trans);ip++)
+ 					pal[ip].rgbReserved=_trans_alpha[ip];
+ #else
+-				for (ip=0;ip<min(head.biClrUsed,(unsigned long)info_ptr->num_trans);ip++)
++				for (ip=0;ip<cxmin(head.biClrUsed,(unsigned long)info_ptr->num_trans);ip++)
+ #if PNG_LIBPNG_VER > 10399
+ 					pal[ip].rgbReserved=info_ptr->trans_alpha[ip];
+ #else
+@@ -737,9 +737,9 @@ bool CxImagePNG::Encode(CxFile *hFile)
+ #endif // CXIMAGE_SUPPORT_ALPHA	// <vho>
+ 
+ #ifdef USE_NEW_LIBPNG_API
+-	int row_size = max(info.dwEffWidth, (_width * _channels * _bit_depth / 8));
++	int row_size = cxmax(info.dwEffWidth, (_width * _channels * _bit_depth / 8));
+ #else
+-	int row_size = max(info.dwEffWidth, info_ptr->width*info_ptr->channels*(info_ptr->bit_depth/8));
++	int row_size = cxmax(info.dwEffWidth, info_ptr->width*info_ptr->channels*(info_ptr->bit_depth/8));
+ 	info_ptr->rowbytes = row_size;
+ #endif
+ 	BYTE *row_pointers = new BYTE[row_size];
+diff --git a/lib/cximage-6.0/CxImage/ximaraw.cpp b/lib/cximage-6.0/CxImage/ximaraw.cpp
+index fd86f96..52d964d 100644
+--- a/lib/cximage-6.0/CxImage/ximaraw.cpp
++++ b/lib/cximage-6.0/CxImage/ximaraw.cpp
+@@ -216,7 +216,7 @@ bool CxImageRAW::Decode(CxFile *hFile)
+ 
+ 		DWORD size = dcr.width * (dcr.colors*dcr.opt.output_bps/8);
+ 		RGBtoBGR(ppm,size);
+-		memcpy(GetBits(dcr.height - 1 - row), ppm, min(size,GetEffWidth()));
++		memcpy(GetBits(dcr.height - 1 - row), ppm, cxmin(size,GetEffWidth()));
+ 	}
+ 	free (ppm);
+ 
+@@ -298,7 +298,7 @@ bool CxImageRAW::GetExifThumbnail(const char *filename, const char *outname, int
+ 			// Resizing.
+       		if (image.GetWidth() > 256 || image.GetHeight() > 256)
+ 		    {
+-				float amount = 256.0f / max(image.GetWidth(), image.GetHeight());
++				float amount = 256.0f / cxmax(image.GetWidth(), image.GetHeight());
+ 				image.Resample((long)(image.GetWidth() * amount), (long)(image.GetHeight() * amount), 0);
+ 		    }
+ 	      	
+diff --git a/lib/cximage-6.0/CxImage/ximasel.cpp b/lib/cximage-6.0/CxImage/ximasel.cpp
+index 3a7c9a1..37cd10f 100644
+--- a/lib/cximage-6.0/CxImage/ximasel.cpp
++++ b/lib/cximage-6.0/CxImage/ximasel.cpp
+@@ -113,15 +113,15 @@ bool CxImage::SelectionAddRect(RECT r, BYTE level)
+ 	if (r.left<r.right) {r2.left=r.left; r2.right=r.right; } else {r2.left=r.right ; r2.right=r.left; }
+ 	if (r.bottom<r.top) {r2.bottom=r.bottom; r2.top=r.top; } else {r2.bottom=r.top ; r2.top=r.bottom; }
+ 
+-	if (info.rSelectionBox.top <= r2.top) info.rSelectionBox.top = max(0L,min(head.biHeight,r2.top+1));
+-	if (info.rSelectionBox.left > r2.left) info.rSelectionBox.left = max(0L,min(head.biWidth,r2.left));
+-	if (info.rSelectionBox.right <= r2.right) info.rSelectionBox.right = max(0L,min(head.biWidth,r2.right+1));
+-	if (info.rSelectionBox.bottom > r2.bottom) info.rSelectionBox.bottom = max(0L,min(head.biHeight,r2.bottom));
++	if (info.rSelectionBox.top <= r2.top) info.rSelectionBox.top = cxmax(0L,cxmin(head.biHeight,r2.top+1));
++	if (info.rSelectionBox.left > r2.left) info.rSelectionBox.left = cxmax(0L,cxmin(head.biWidth,r2.left));
++	if (info.rSelectionBox.right <= r2.right) info.rSelectionBox.right = cxmax(0L,cxmin(head.biWidth,r2.right+1));
++	if (info.rSelectionBox.bottom > r2.bottom) info.rSelectionBox.bottom = cxmax(0L,cxmin(head.biHeight,r2.bottom));
+ 
+-	long ymin = max(0L,min(head.biHeight,r2.bottom));
+-	long ymax = max(0L,min(head.biHeight,r2.top+1));
+-	long xmin = max(0L,min(head.biWidth,r2.left));
+-	long xmax = max(0L,min(head.biWidth,r2.right+1));
++	long ymin = cxmax(0L,cxmin(head.biHeight,r2.bottom));
++	long ymax = cxmax(0L,cxmin(head.biHeight,r2.top+1));
++	long xmin = cxmax(0L,cxmin(head.biWidth,r2.left));
++	long xmax = cxmax(0L,cxmin(head.biWidth,r2.right+1));
+ 
+ 	for (long y=ymin; y<ymax; y++)
+ 		memset(pSelection + xmin + y * head.biWidth, level, xmax-xmin);
+@@ -144,18 +144,18 @@ bool CxImage::SelectionAddEllipse(RECT r, BYTE level)
+ 	long xcenter = (r.right + r.left)/2;
+ 	long ycenter = (r.top + r.bottom)/2;
+ 
+-	if (info.rSelectionBox.left > (xcenter - xradius)) info.rSelectionBox.left = max(0L,min(head.biWidth,(xcenter - xradius)));
+-	if (info.rSelectionBox.right <= (xcenter + xradius)) info.rSelectionBox.right = max(0L,min(head.biWidth,(xcenter + xradius + 1)));
+-	if (info.rSelectionBox.bottom > (ycenter - yradius)) info.rSelectionBox.bottom = max(0L,min(head.biHeight,(ycenter - yradius)));
+-	if (info.rSelectionBox.top <= (ycenter + yradius)) info.rSelectionBox.top = max(0L,min(head.biHeight,(ycenter + yradius + 1)));
++	if (info.rSelectionBox.left > (xcenter - xradius)) info.rSelectionBox.left = cxmax(0L,cxmin(head.biWidth,(xcenter - xradius)));
++	if (info.rSelectionBox.right <= (xcenter + xradius)) info.rSelectionBox.right = cxmax(0L,cxmin(head.biWidth,(xcenter + xradius + 1)));
++	if (info.rSelectionBox.bottom > (ycenter - yradius)) info.rSelectionBox.bottom = cxmax(0L,cxmin(head.biHeight,(ycenter - yradius)));
++	if (info.rSelectionBox.top <= (ycenter + yradius)) info.rSelectionBox.top = cxmax(0L,cxmin(head.biHeight,(ycenter + yradius + 1)));
+ 
+-	long xmin = max(0L,min(head.biWidth,xcenter - xradius));
+-	long xmax = max(0L,min(head.biWidth,xcenter + xradius + 1));
+-	long ymin = max(0L,min(head.biHeight,ycenter - yradius));
+-	long ymax = max(0L,min(head.biHeight,ycenter + yradius + 1));
++	long xmin = cxmax(0L,cxmin(head.biWidth,xcenter - xradius));
++	long xmax = cxmax(0L,cxmin(head.biWidth,xcenter + xradius + 1));
++	long ymin = cxmax(0L,cxmin(head.biHeight,ycenter - yradius));
++	long ymax = cxmax(0L,cxmin(head.biHeight,ycenter + yradius + 1));
+ 
+ 	long y,yo;
+-	for (y=ymin; y<min(ycenter,ymax); y++){
++	for (y=ymin; y<cxmin(ycenter,ymax); y++){
+ 		for (long x=xmin; x<xmax; x++){
+ 			yo = (long)(ycenter - yradius * sqrt(1-pow((float)(x - xcenter)/(float)xradius,2)));
+ 			if (yo<y) pSelection[x + y * head.biWidth] = level;
+@@ -268,10 +268,10 @@ bool CxImage::SelectionAddPolygon(POINT *points, long npoints, BYTE level)
+ 		RECT r2;
+ 		if (current->x < next->x) {r2.left=current->x; r2.right=next->x; } else {r2.left=next->x ; r2.right=current->x; }
+ 		if (current->y < next->y) {r2.bottom=current->y; r2.top=next->y; } else {r2.bottom=next->y ; r2.top=current->y; }
+-		if (localbox.top < r2.top) localbox.top = max(0L,min(head.biHeight-1,r2.top+1));
+-		if (localbox.left > r2.left) localbox.left = max(0L,min(head.biWidth-1,r2.left-1));
+-		if (localbox.right < r2.right) localbox.right = max(0L,min(head.biWidth-1,r2.right+1));
+-		if (localbox.bottom > r2.bottom) localbox.bottom = max(0L,min(head.biHeight-1,r2.bottom-1));
++		if (localbox.top < r2.top) localbox.top = cxmax(0L,cxmin(head.biHeight-1,r2.top+1));
++		if (localbox.left > r2.left) localbox.left = cxmax(0L,cxmin(head.biWidth-1,r2.left-1));
++		if (localbox.right < r2.right) localbox.right = cxmax(0L,cxmin(head.biWidth-1,r2.right+1));
++		if (localbox.bottom > r2.bottom) localbox.bottom = cxmax(0L,cxmin(head.biHeight-1,r2.bottom-1));
+ 
+ 		i++;
+ 	}
+@@ -385,10 +385,10 @@ bool CxImage::SelectionAddPolygon(POINT *points, long npoints, BYTE level)
+ 		for (x=localbox.left; x<=localbox.right; x++)
+ 			if (plocal[x + yoffset]!=1) pSelection[x + yoffset]=level;
+ 	}
+-	if (info.rSelectionBox.top <= localbox.top) info.rSelectionBox.top = min(head.biHeight,localbox.top + 1);
+-	if (info.rSelectionBox.left > localbox.left) info.rSelectionBox.left = min(head.biWidth,localbox.left);
+-	if (info.rSelectionBox.right <= localbox.right) info.rSelectionBox.right = min(head.biWidth,localbox.right + 1);
+-	if (info.rSelectionBox.bottom > localbox.bottom) info.rSelectionBox.bottom = min(head.biHeight,localbox.bottom);
++	if (info.rSelectionBox.top <= localbox.top) info.rSelectionBox.top = cxmin(head.biHeight,localbox.top + 1);
++	if (info.rSelectionBox.left > localbox.left) info.rSelectionBox.left = cxmin(head.biWidth,localbox.left);
++	if (info.rSelectionBox.right <= localbox.right) info.rSelectionBox.right = cxmin(head.biWidth,localbox.right + 1);
++	if (info.rSelectionBox.bottom > localbox.bottom) info.rSelectionBox.bottom = cxmin(head.biHeight,localbox.bottom);
+ 
+ 	free(plocal);
+ 	free(pix);
+diff --git a/lib/cximage-6.0/CxImage/ximath.cpp b/lib/cximage-6.0/CxImage/ximath.cpp
+index 37533e2..f84eb72 100644
+--- a/lib/cximage-6.0/CxImage/ximath.cpp
++++ b/lib/cximage-6.0/CxImage/ximath.cpp
+@@ -64,10 +64,10 @@ CxRect2 CxRect2::CrossSection(CxRect2 const &r2) const
+  */
+ {
+   CxRect2 cs;
+-  cs.botLeft.x=max(botLeft.x, r2.botLeft.x);
+-  cs.botLeft.y=max(botLeft.y, r2.botLeft.y);
+-  cs.topRight.x=min(topRight.x, r2.topRight.x);
+-  cs.topRight.y=min(topRight.y, r2.topRight.y);
++  cs.botLeft.x=cxmax(botLeft.x, r2.botLeft.x);
++  cs.botLeft.y=cxmax(botLeft.y, r2.botLeft.y);
++  cs.topRight.x=cxmin(topRight.x, r2.topRight.x);
++  cs.topRight.y=cxmin(topRight.y, r2.topRight.y);
+   if (cs.botLeft.x<=cs.topRight.x && cs.botLeft.y<=cs.topRight.y) {
+     return cs;
+   } else {
+diff --git a/lib/cximage-6.0/CxImage/ximatif.cpp b/lib/cximage-6.0/CxImage/ximatif.cpp
+index 658392a..002766c 100644
+--- a/lib/cximage-6.0/CxImage/ximatif.cpp
++++ b/lib/cximage-6.0/CxImage/ximatif.cpp
+@@ -470,9 +470,9 @@ bool CxImageTIF::Decode(CxFile * hFile)
+ 						if ( cb > 0.00304 ) cb = 1.055 * pow(cb,0.41667) - 0.055;
+ 							else            cb = 12.92 * cb;
+ 
+-						c.rgbRed  =(BYTE)max(0,min(255,(int)(cr*255)));
+-						c.rgbGreen=(BYTE)max(0,min(255,(int)(cg*255)));
+-						c.rgbBlue =(BYTE)max(0,min(255,(int)(cb*255)));
++						c.rgbRed  =(BYTE)cxmax(0,cxmin(255,(int)(cr*255)));
++						c.rgbGreen=(BYTE)cxmax(0,cxmin(255,(int)(cg*255)));
++						c.rgbBlue =(BYTE)cxmax(0,cxmin(255,(int)(cb*255)));
+ 
+ 						SetPixelColor(xi,yi,c);
+ #if CXIMAGE_SUPPORT_ALPHA
+diff --git a/lib/cximage-6.0/CxImage/ximatran.cpp b/lib/cximage-6.0/CxImage/ximatran.cpp
+index 64a71e7..84d5e03 100644
+--- a/lib/cximage-6.0/CxImage/ximatran.cpp
++++ b/lib/cximage-6.0/CxImage/ximatran.cpp
+@@ -302,12 +302,12 @@ bool CxImage::RotateLeft(CxImage* iDst)
+ 			for (ys = 0; ys < newHeight; ys+=RBLOCK) {
+ 				if (head.biBitCount==24) {
+ 					//RGB24 optimized pixel access:
+-					for (x = xs; x < min(newWidth, xs+RBLOCK); x++){    //do rotation
++					for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){    //do rotation
+ 						info.nProgress = (long)(100*x/newWidth);
+ 						x2=newWidth-x-1;
+ 						dstPtr = (BYTE*) imgDest.BlindGetPixelPointer(x,ys);
+ 						srcPtr = (BYTE*) BlindGetPixelPointer(ys, x2);
+-						for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++						for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 							//imgDest.SetPixelColor(x, y, GetPixelColor(y, x2));
+ 							*(dstPtr) = *(srcPtr);
+ 							*(dstPtr+1) = *(srcPtr+1);
+@@ -318,19 +318,19 @@ bool CxImage::RotateLeft(CxImage* iDst)
+ 					}//for x
+ 				} else {
+ 					//anything else than 24bpp (and 1bpp): palette
+-					for (x = xs; x < min(newWidth, xs+RBLOCK); x++){
++					for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){
+ 						info.nProgress = (long)(100*x/newWidth); //<Anatoly Ivasyuk>
+ 						x2=newWidth-x-1;
+-						for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++						for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 							imgDest.SetPixelIndex(x, y, BlindGetPixelIndex(y, x2));
+ 						}//for y
+ 					}//for x
+ 				}//if (version selection)
+ #if CXIMAGE_SUPPORT_ALPHA
+ 				if (AlphaIsValid()) {
+-					for (x = xs; x < min(newWidth, xs+RBLOCK); x++){
++					for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){
+ 						x2=newWidth-x-1;
+-						for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++						for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 							imgDest.AlphaSet(x,y,BlindAlphaGet(y, x2));
+ 						}//for y
+ 					}//for x
+@@ -343,9 +343,9 @@ bool CxImage::RotateLeft(CxImage* iDst)
+ 					imgDest.info.rSelectionBox.right = newWidth-info.rSelectionBox.bottom;
+ 					imgDest.info.rSelectionBox.bottom = info.rSelectionBox.left;
+ 					imgDest.info.rSelectionBox.top = info.rSelectionBox.right;
+-					for (x = xs; x < min(newWidth, xs+RBLOCK); x++){
++					for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){
+ 						x2=newWidth-x-1;
+-						for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++						for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 							imgDest.SelectionSet(x,y,BlindSelectionGet(y, x2));
+ 						}//for y
+ 					}//for x
+@@ -447,12 +447,12 @@ bool CxImage::RotateRight(CxImage* iDst)
+ 			for (ys = 0; ys < newHeight; ys+=RBLOCK) {
+ 				if (head.biBitCount==24) {
+ 					//RGB24 optimized pixel access:
+-					for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++					for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 						info.nProgress = (long)(100*y/newHeight); //<Anatoly Ivasyuk>
+ 						y2=newHeight-y-1;
+ 						dstPtr = (BYTE*) imgDest.BlindGetPixelPointer(xs,y);
+ 						srcPtr = (BYTE*) BlindGetPixelPointer(y2, xs);
+-						for (x = xs; x < min(newWidth, xs+RBLOCK); x++){
++						for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){
+ 							//imgDest.SetPixelColor(x, y, GetPixelColor(y2, x));
+ 							*(dstPtr) = *(srcPtr);
+ 							*(dstPtr+1) = *(srcPtr+1);
+@@ -463,19 +463,19 @@ bool CxImage::RotateRight(CxImage* iDst)
+ 					}//for y
+ 				} else {
+ 					//anything else than BW & RGB24: palette
+-					for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++					for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 						info.nProgress = (long)(100*y/newHeight); //<Anatoly Ivasyuk>
+ 						y2=newHeight-y-1;
+-						for (x = xs; x < min(newWidth, xs+RBLOCK); x++){
++						for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){
+ 							imgDest.SetPixelIndex(x, y, BlindGetPixelIndex(y2, x));
+ 						}//for x
+ 					}//for y
+ 				}//if
+ #if CXIMAGE_SUPPORT_ALPHA
+ 				if (AlphaIsValid()){
+-					for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++					for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 						y2=newHeight-y-1;
+-						for (x = xs; x < min(newWidth, xs+RBLOCK); x++){
++						for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){
+ 							imgDest.AlphaSet(x,y,BlindAlphaGet(y2, x));
+ 						}//for x
+ 					}//for y
+@@ -488,9 +488,9 @@ bool CxImage::RotateRight(CxImage* iDst)
+ 					imgDest.info.rSelectionBox.right = info.rSelectionBox.top;
+ 					imgDest.info.rSelectionBox.bottom = newHeight-info.rSelectionBox.right;
+ 					imgDest.info.rSelectionBox.top = newHeight-info.rSelectionBox.left;
+-					for (y = ys; y < min(newHeight, ys+RBLOCK); y++){
++					for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){
+ 						y2=newHeight-y-1;
+-						for (x = xs; x < min(newWidth, xs+RBLOCK); x++){
++						for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){
+ 							imgDest.SelectionSet(x,y,BlindSelectionGet(y2, x));
+ 						}//for x
+ 					}//for y
+@@ -608,10 +608,10 @@ bool CxImage::Rotate(float angle, CxImage* iDst)
+ 	newP4.x = (float)(p4.x*cos_angle - p4.y*sin_angle);
+ 	newP4.y = (float)(p4.x*sin_angle + p4.y*cos_angle);
+ 
+-	leftTop.x = min(min(newP1.x,newP2.x),min(newP3.x,newP4.x));
+-	leftTop.y = min(min(newP1.y,newP2.y),min(newP3.y,newP4.y));
+-	rightBottom.x = max(max(newP1.x,newP2.x),max(newP3.x,newP4.x));
+-	rightBottom.y = max(max(newP1.y,newP2.y),max(newP3.y,newP4.y));
++	leftTop.x = cxmin(cxmin(newP1.x,newP2.x),cxmin(newP3.x,newP4.x));
++	leftTop.y = cxmin(cxmin(newP1.y,newP2.y),cxmin(newP3.y,newP4.y));
++	rightBottom.x = cxmax(cxmax(newP1.x,newP2.x),cxmax(newP3.x,newP4.x));
++	rightBottom.y = cxmax(cxmax(newP1.y,newP2.y),cxmax(newP3.y,newP4.y));
+ 	leftBottom.x = leftTop.x;
+ 	leftBottom.y = rightBottom.y;
+ 	rightTop.x = rightBottom.x;
+@@ -740,10 +740,10 @@ bool CxImage::Rotate2(float angle,
+ 	}//if
+ 
+ 	//(read new dimensions from location of corners)
+-	float minx = (float) min(min(newp[0].x,newp[1].x),min(newp[2].x,newp[3].x));
+-	float miny = (float) min(min(newp[0].y,newp[1].y),min(newp[2].y,newp[3].y));
+-	float maxx = (float) max(max(newp[0].x,newp[1].x),max(newp[2].x,newp[3].x));
+-	float maxy = (float) max(max(newp[0].y,newp[1].y),max(newp[2].y,newp[3].y));
++	float minx = (float) cxmin(cxmin(newp[0].x,newp[1].x),cxmin(newp[2].x,newp[3].x));
++	float miny = (float) cxmin(cxmin(newp[0].y,newp[1].y),cxmin(newp[2].y,newp[3].y));
++	float maxx = (float) cxmax(cxmax(newp[0].x,newp[1].x),cxmax(newp[2].x,newp[3].x));
++	float maxy = (float) cxmax(cxmax(newp[0].y,newp[1].y),cxmax(newp[2].y,newp[3].y));
+ 	int newWidth = (int) floor(maxx-minx+0.5f);
+ 	int newHeight= (int) floor(maxy-miny+0.5f);
+ 	float ssx=((maxx+minx)- ((float) newWidth-1))/2.0f;   //start for x
+@@ -1003,12 +1003,12 @@ bool CxImage::Resample(long newx, long newy, int mode, CxImage* iDst)
+ 				if (info.nEscape) break;
+ 				fY = y * yScale;
+ 				ifY = (int)fY;
+-				ifY1 = min(ymax, ifY+1);
++				ifY1 = cxmin(ymax, ifY+1);
+ 				dy = fY - ifY;
+ 				for(long x=0; x<newx; x++){
+ 					fX = x * xScale;
+ 					ifX = (int)fX;
+-					ifX1 = min(xmax, ifX+1);
++					ifX1 = cxmin(xmax, ifX+1);
+ 					dx = fX - ifX;
+ 					// Interpolate using the four nearest pixels in the source
+ 					if (head.biClrUsed){
+@@ -1328,9 +1328,9 @@ bool CxImage::DecreaseBpp(DWORD nbit, bool errordiffusion, RGBQUAD* ppal, DWORD
+ 				eb=(long)c.rgbBlue - (long)ce.rgbBlue;
+ 
+ 				c = GetPixelColor(x+1,y);
+-				c.rgbRed = (BYTE)min(255L,max(0L,(long)c.rgbRed + ((er*7)/16)));
+-				c.rgbGreen = (BYTE)min(255L,max(0L,(long)c.rgbGreen + ((eg*7)/16)));
+-				c.rgbBlue = (BYTE)min(255L,max(0L,(long)c.rgbBlue + ((eb*7)/16)));
++				c.rgbRed = (BYTE)cxmin(255L,cxmax(0L,(long)c.rgbRed + ((er*7)/16)));
++				c.rgbGreen = (BYTE)cxmin(255L,cxmax(0L,(long)c.rgbGreen + ((eg*7)/16)));
++				c.rgbBlue = (BYTE)cxmin(255L,cxmax(0L,(long)c.rgbBlue + ((eb*7)/16)));
+ 				SetPixelColor(x+1,y,c);
+ 				int coeff=1;
+ 				for(int i=-1; i<2; i++){
+@@ -1343,9 +1343,9 @@ bool CxImage::DecreaseBpp(DWORD nbit, bool errordiffusion, RGBQUAD* ppal, DWORD
+ 						coeff=1; break;
+ 					}
+ 					c = GetPixelColor(x+i,y+1);
+-					c.rgbRed = (BYTE)min(255L,max(0L,(long)c.rgbRed + ((er * coeff)/16)));
+-					c.rgbGreen = (BYTE)min(255L,max(0L,(long)c.rgbGreen + ((eg * coeff)/16)));
+-					c.rgbBlue = (BYTE)min(255L,max(0L,(long)c.rgbBlue + ((eb * coeff)/16)));
++					c.rgbRed = (BYTE)cxmin(255L,cxmax(0L,(long)c.rgbRed + ((er * coeff)/16)));
++					c.rgbGreen = (BYTE)cxmin(255L,cxmax(0L,(long)c.rgbGreen + ((eg * coeff)/16)));
++					c.rgbBlue = (BYTE)cxmin(255L,cxmax(0L,(long)c.rgbBlue + ((eb * coeff)/16)));
+ 					SetPixelColor(x+i,y+1,c);
+ 				}
+ 			}
+@@ -1566,10 +1566,10 @@ bool CxImage::Dither(long method)
+ 				}
+ 
+ 				nlevel = GetPixelIndex(x + 1, y) + (error * 8) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 1, y, level);
+ 				nlevel = GetPixelIndex(x + 2, y) + (error * 4) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 2, y, level);
+ 				int i;
+ 				for (i = -2; i < 3; i++) {
+@@ -1591,7 +1591,7 @@ bool CxImage::Dither(long method)
+ 						break;
+ 					}
+ 					nlevel = GetPixelIndex(x + i, y + 1) + (error * coeff) / TotalCoeffSum;
+-					level = (BYTE)min(255, max(0, (int)nlevel));
++					level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 					SetPixelIndex(x + i, y + 1, level);
+ 				}
+ 			}
+@@ -1620,10 +1620,10 @@ bool CxImage::Dither(long method)
+ 				}
+ 
+ 				nlevel = GetPixelIndex(x + 1, y) + (error * 8) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 1, y, level);
+ 				nlevel = GetPixelIndex(x + 2, y) + (error * 4) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 2, y, level);
+ 				int i;
+ 				for (i = -2; i < 3; i++) {
+@@ -1645,7 +1645,7 @@ bool CxImage::Dither(long method)
+ 						break;
+ 					}
+ 					nlevel = GetPixelIndex(x + i, y + 1) + (error * coeff) / TotalCoeffSum;
+-					level = (BYTE)min(255, max(0, (int)nlevel));
++					level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 					SetPixelIndex(x + i, y + 1, level);
+ 				}
+ 				for (i = -2; i < 3; i++) {
+@@ -1667,7 +1667,7 @@ bool CxImage::Dither(long method)
+ 						break;
+ 					}
+ 					nlevel = GetPixelIndex(x + i, y + 2) + (error * coeff) / TotalCoeffSum;
+-					level = (BYTE)min(255, max(0, (int)nlevel));
++					level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 					SetPixelIndex(x + i, y + 2, level);
+ 				}
+ 			}
+@@ -1696,10 +1696,10 @@ bool CxImage::Dither(long method)
+ 				}
+ 
+ 				nlevel = GetPixelIndex(x + 1, y) + (error * 7) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 1, y, level);
+ 				nlevel = GetPixelIndex(x + 2, y) + (error * 5) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 2, y, level);
+ 				int i;
+ 				for (i = -2; i < 3; i++) {
+@@ -1721,7 +1721,7 @@ bool CxImage::Dither(long method)
+ 						break;
+ 					}
+ 					nlevel = GetPixelIndex(x + i, y + 1) + (error * coeff) / TotalCoeffSum;
+-					level = (BYTE)min(255, max(0, (int)nlevel));
++					level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 					SetPixelIndex(x + i, y + 1, level);
+ 				}
+ 				for (i = -2; i < 3; i++) {
+@@ -1743,7 +1743,7 @@ bool CxImage::Dither(long method)
+ 						break;
+ 					}
+ 					nlevel = GetPixelIndex(x + i, y + 2) + (error * coeff) / TotalCoeffSum;
+-					level = (BYTE)min(255, max(0, (int)nlevel));
++					level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 					SetPixelIndex(x + i, y + 2, level);
+ 				}
+ 			}
+@@ -1772,10 +1772,10 @@ bool CxImage::Dither(long method)
+ 				}
+ 
+ 				nlevel = GetPixelIndex(x + 1, y) + (error * 5) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 1, y, level);
+ 				nlevel = GetPixelIndex(x + 2, y) + (error * 3) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(x + 2, y, level);
+ 				int i;
+ 				for (i = -2; i < 3; i++) {
+@@ -1797,7 +1797,7 @@ bool CxImage::Dither(long method)
+ 						break;
+ 					}
+ 					nlevel = GetPixelIndex(x + i, y + 1) + (error * coeff) / TotalCoeffSum;
+-					level = (BYTE)min(255, max(0, (int)nlevel));
++					level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 					SetPixelIndex(x + i, y + 1, level);
+ 				}
+ 				for (i = -1; i < 2; i++) {
+@@ -1813,7 +1813,7 @@ bool CxImage::Dither(long method)
+ 						break;
+ 					}
+ 					nlevel = GetPixelIndex(x + i, y + 2) + (error * coeff) / TotalCoeffSum;
+-					level = (BYTE)min(255, max(0, (int)nlevel));
++					level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 					SetPixelIndex(x + i, y + 2, level);
+ 				}
+ 			}
+@@ -1845,76 +1845,76 @@ bool CxImage::Dither(long method)
+ 				int tmp_index_y = y;
+ 				int tmp_coeff = 32;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x - 3;
+ 				tmp_index_y = y + 1;
+ 				tmp_coeff = 12;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x - 1;
+ 				tmp_coeff = 26;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x + 1;
+ 				tmp_coeff = 30;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x + 3;
+ 				tmp_coeff = 16;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x - 2;
+ 				tmp_index_y = y + 2;
+ 				tmp_coeff = 12;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x;
+ 				tmp_coeff = 26;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x + 2;
+ 				tmp_coeff = 12;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x - 3;
+ 				tmp_index_y = y + 3;
+ 				tmp_coeff = 5;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x - 1;
+ 				tmp_coeff = 12;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x + 1;
+ 				tmp_coeff = 12;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 
+ 				tmp_index_x = x + 3;
+ 				tmp_coeff = 5;
+ 				nlevel = GetPixelIndex(tmp_index_x, tmp_index_y) + (error * tmp_coeff) / TotalCoeffSum;
+-				level = (BYTE)min(255, max(0, (int)nlevel));
++				level = (BYTE)cxmin(255, cxmax(0, (int)nlevel));
+ 				SetPixelIndex(tmp_index_x, tmp_index_y, level);
+ 			}
+ 		}
+@@ -1941,7 +1941,7 @@ bool CxImage::Dither(long method)
+ 			Bmatrix[i] = (BYTE)(dither);
+ 		}
+ 
+-		int scale = max(0,(8-2*order));
++		int scale = cxmax(0,(8-2*order));
+ 		int level;
+ 		for (long y=0;y<head.biHeight;y++){
+ 			info.nProgress = (long)(100*y/head.biHeight);
+@@ -1981,7 +1981,7 @@ bool CxImage::Dither(long method)
+ 				}
+ 
+ 				nlevel = GetPixelIndex(x+1,y) + (error * 7)/16;
+-				level = (BYTE)min(255,max(0,(int)nlevel));
++				level = (BYTE)cxmin(255,cxmax(0,(int)nlevel));
+ 				SetPixelIndex(x+1,y,level);
+ 				for(int i=-1; i<2; i++){
+ 					switch(i){
+@@ -1993,7 +1993,7 @@ bool CxImage::Dither(long method)
+ 						coeff=1; break;
+ 					}
+ 					nlevel = GetPixelIndex(x+i,y+1) + (error * coeff)/16;
+-					level = (BYTE)min(255,max(0,(int)nlevel));
++					level = (BYTE)cxmin(255,cxmax(0,(int)nlevel));
+ 					SetPixelIndex(x+i,y+1,level);
+ 				}
+ 			}
+@@ -2031,7 +2031,7 @@ bool CxImage::CropRotatedRectangle( long topx, long topy, long width, long heigh
+ 	if ( fabs(angle)<0.0002 )
+ 		return Crop( topx, topy, topx+width, topy+height, iDst);
+ 
+-	startx = min(topx, topx - (long)(sin_angle*(double)height));
++	startx = cxmin(topx, topx - (long)(sin_angle*(double)height));
+ 	endx   = topx + (long)(cos_angle*(double)width);
+ 	endy   = topy + (long)(cos_angle*(double)height + sin_angle*(double)width);
+ 	// check: corners of the rectangle must be inside
+@@ -2079,10 +2079,10 @@ bool CxImage::Crop(long left, long top, long right, long bottom, CxImage* iDst)
+ {
+ 	if (!pDib) return false;
+ 
+-	long startx = max(0L,min(left,head.biWidth));
+-	long endx = max(0L,min(right,head.biWidth));
+-	long starty = head.biHeight - max(0L,min(top,head.biHeight));
+-	long endy = head.biHeight - max(0L,min(bottom,head.biHeight));
++	long startx = cxmax(0L,cxmin(left,head.biWidth));
++	long endx = cxmax(0L,cxmin(right,head.biWidth));
++	long starty = head.biHeight - cxmax(0L,cxmin(top,head.biHeight));
++	long endy = head.biHeight - cxmax(0L,cxmin(bottom,head.biHeight));
+ 
+ 	if (startx==endx || starty==endy) return false;
+ 
+@@ -2443,8 +2443,8 @@ bool CxImage::CircleTransform(int type,long rmax,float Koeff)
+ 						nx=x+(x%32)-16;
+ 						ny=y;
+ 					}
+-//					nx=max(xmin,min(nx,xmax));
+-//					ny=max(ymin,min(ny,ymax));
++//					nx=cxmax(xmin,cxmin(nx,xmax));
++//					ny=cxmax(ymin,cxmin(ny,ymax));
+ 				}
+ 				else { nx=-1;ny=-1;}
+ 				if (head.biClrUsed==0){
+diff --git a/lib/cximage-6.0/CxImage/ximawnd.cpp b/lib/cximage-6.0/CxImage/ximawnd.cpp
+index 2ae2f93..7029cc7 100644
+--- a/lib/cximage-6.0/CxImage/ximawnd.cpp
++++ b/lib/cximage-6.0/CxImage/ximawnd.cpp
+@@ -682,10 +682,10 @@ long CxImage::Draw(HDC hdc, long x, long y, long cx, long cy, RECT* pClipRect, b
+ 	RECT clipbox,paintbox;
+ 	GetClipBox(hdc,&clipbox);
+ 
+-	paintbox.top = min(clipbox.bottom,max(clipbox.top,y));
+-	paintbox.left = min(clipbox.right,max(clipbox.left,x));
+-	paintbox.right = max(clipbox.left,min(clipbox.right,x+cx));
+-	paintbox.bottom = max(clipbox.top,min(clipbox.bottom,y+cy));
++	paintbox.top = cxmin(clipbox.bottom,cxmax(clipbox.top,y));
++	paintbox.left = cxmin(clipbox.right,cxmax(clipbox.left,x));
++	paintbox.right = cxmax(clipbox.left,cxmin(clipbox.right,x+cx));
++	paintbox.bottom = cxmax(clipbox.top,cxmin(clipbox.bottom,y+cy));
+ 
+ 	long destw = paintbox.right - paintbox.left;
+ 	long desth = paintbox.bottom - paintbox.top;
+@@ -730,12 +730,12 @@ long CxImage::Draw(HDC hdc, long x, long y, long cx, long cy, RECT* pClipRect, b
+ 
+ 				for(yy=0;yy<desth;yy++){
+ 					dy = head.biHeight-(ymax-yy-y)*fy;
+-					sy = max(0L,(long)floor(dy));
++					sy = cxmax(0L,(long)floor(dy));
+ 					psrc = info.pImage+sy*info.dwEffWidth;
+ 					pdst = pbase+yy*ew;
+ 					for(xx=0;xx<destw;xx++){
+ 						dx = (xx+xmin-x)*fx;
+-						sx = max(0L,(long)floor(dx));
++						sx = cxmax(0L,(long)floor(dx));
+ #if CXIMAGE_SUPPORT_INTERPOLATION
+ 						if (bSmooth){
+ 							if (fx > 1 && fy > 1) { 
+@@ -813,7 +813,7 @@ long CxImage::Draw(HDC hdc, long x, long y, long cx, long cy, RECT* pClipRect, b
+ 				
+ 				for(yy=0;yy<desth;yy++){
+ 					dy = head.biHeight-(ymax-yy-y)*fy;
+-					sy = max(0L,(long)floor(dy));
++					sy = cxmax(0L,(long)floor(dy));
+ 
+ 					alphaoffset = sy*head.biWidth;
+ 					pdst = pbase + yy*ew;
+@@ -821,7 +821,7 @@ long CxImage::Draw(HDC hdc, long x, long y, long cx, long cy, RECT* pClipRect, b
+ 
+ 					for(xx=0;xx<destw;xx++){
+ 						dx = (xx+xmin-x)*fx;
+-						sx = max(0L,(long)floor(dx));
++						sx = cxmax(0L,(long)floor(dx));
+ 
+ 						if (bAlpha) a=pAlpha[alphaoffset+sx]; else a=255;
+ 						a =(BYTE)((a*(1+info.nAlphaMax))>>8);
+-- 
+2.8.0.rc3
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0010-curl-support-version-7.5.0-and-upwards.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0010-curl-support-version-7.5.0-and-upwards.patch
new file mode 100644
index 0000000..b6743ae
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0010-curl-support-version-7.5.0-and-upwards.patch
@@ -0,0 +1,34 @@
+From 7d3c70b163bc67aeb1fdef8fd2347b39f311c584 Mon Sep 17 00:00:00 2001
+From: fritsch <peter.fruehberger@gmail.com>
+Date: Sun, 24 Jul 2016 20:24:07 +0200
+Subject: [PATCH] Curl: Adjust multi_cleanup method which returns CURLMcode
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+(backported from upstream commit:
+ https://github.com/xbmc/xbmc/commit/2a8d3e7f6cffea52740b8392a3be8ec251d5ff70)
+---
+ xbmc/filesystem/DllLibCurl.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/xbmc/filesystem/DllLibCurl.h b/xbmc/filesystem/DllLibCurl.h
+index db97f92..9e78a91 100644
+--- a/xbmc/filesystem/DllLibCurl.h
++++ b/xbmc/filesystem/DllLibCurl.h
+@@ -52,7 +52,7 @@ namespace XCURL
+     virtual CURLMcode multi_fdset(CURLM *multi_handle, fd_set *read_fd_set, fd_set *write_fd_set, fd_set *exc_fd_set, int *max_fd)=0;
+     virtual CURLMcode multi_timeout(CURLM *multi_handle, long *timeout)=0;
+     virtual CURLMsg*  multi_info_read(CURLM *multi_handle, int *msgs_in_queue)=0;
+-    virtual void multi_cleanup(CURL_HANDLE * handle )=0;
++    virtual CURLMcode multi_cleanup(CURLM * handle )=0;
+     virtual struct curl_slist* slist_append(struct curl_slist *, const char *)=0;
+     virtual void  slist_free_all(struct curl_slist *)=0;
+   };
+@@ -77,7 +77,7 @@ namespace XCURL
+     DEFINE_METHOD5(CURLMcode, multi_fdset, (CURLM *p1, fd_set *p2, fd_set *p3, fd_set *p4, int *p5))
+     DEFINE_METHOD2(CURLMcode, multi_timeout, (CURLM *p1, long *p2))
+     DEFINE_METHOD2(CURLMsg*,  multi_info_read, (CURLM *p1, int *p2))
+-    DEFINE_METHOD1(void, multi_cleanup, (CURLM *p1))
++    DEFINE_METHOD1(CURLMcode, multi_cleanup, (CURLM *p1))
+     DEFINE_METHOD2(struct curl_slist*, slist_append, (struct curl_slist * p1, const char * p2))
+     DEFINE_METHOD1(void, slist_free_all, (struct curl_slist * p1))
+     DEFINE_METHOD1(const char *, easy_strerror, (CURLcode p1))
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch
new file mode 100644
index 0000000..a3a9d50
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch
@@ -0,0 +1,30 @@
+From a17e8d39cf01e26955574acd236b4ef5b54b8c3b Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Mon, 5 Sep 2016 12:34:20 +0200
+Subject: [PATCH 2/2] xbmc_pvr_types.h: Fix compilation with gcc6
+
+Backport of upstream commit from master branch:
+https://github.com/xbmc/xbmc/commit/c8a346109926fa03bf6882c0b6e3885af0e0f8ed
+
+This patch can be removed when Kodi is bumped to 17.0-Krypton.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ xbmc/addons/include/xbmc_pvr_types.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/xbmc/addons/include/xbmc_pvr_types.h b/xbmc/addons/include/xbmc_pvr_types.h
+index c5ab20b..e518de1 100644
+--- a/xbmc/addons/include/xbmc_pvr_types.h
++++ b/xbmc/addons/include/xbmc_pvr_types.h
+@@ -34,6 +34,7 @@
+ #endif
+ #include <string.h>
+ #include <stdint.h>
++#include <stdio.h>
+ 
+ #include "xbmc_addon_types.h"
+ #include "xbmc_epg_types.h"
+-- 
+2.9.3
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
new file mode 100644
index 0000000..b3780db
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
@@ -0,0 +1,25 @@
+From 53c7b1667a41b25775d1dc009d8ced61f383da0b Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Sat, 6 Feb 2016 15:43:01 +0100
+Subject: [PATCH 1/3] configure: don't try to run stuff to find tinyxml
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5a41fb4..243c7e5 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1043,7 +1043,7 @@ fi
+ AC_LANG_PUSH([C++])
+ PKG_CHECK_MODULES([TINYXML], [tinyxml >= 2.6.2],
+   [INCLUDES="$INCLUDES $TINYXML_CFLAGS"; LIBS="$LIBS $TINYXML_LIBS"],
+-  [AC_RUN_IFELSE(
++  [AC_COMPILE_IFELSE(
+    [AC_LANG_SOURCE([[
+ #include <stdlib.h>
+ #include <tinyxml.h>
+-- 
+2.10.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-handle-SIGTERM.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-handle-SIGTERM.patch
new file mode 100644
index 0000000..b2af5de
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-handle-SIGTERM.patch
@@ -0,0 +1,163 @@
+From 1c1484303a055bfde655ffae3829554aaefc2e07 Mon Sep 17 00:00:00 2001
+From: Stefan Saraev <stefan@saraev.ca>
+Date: Wed, 2 Nov 2016 11:28:34 -0700
+Subject: [PATCH 2/3] handle SIGTERM
+
+0. CApplication::Stop cant be trusted. (deadlocks crashes and boo)
+
+so, when shutdown/reboot is requested:
+
+1. save an exit code (for CEC...)
+2. call CPowerManager::{Reboot,PowerDown}
+3. ... then systemd sends TERM and waits xx seconds before sending KILL
+4. CApplication::Stop has xx seconds to save guisettings.xml and boo
+5. CEC thread has xx seconds to switch off after it received OnQuit
+6. addons / pvrmanager / cec / everything else.. are free to deadlock / crash now, we dont care
+7. KILL
+
+Signed-off-by: Stefan Saraev <stefan@saraev.ca>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ xbmc/Application.cpp         | 17 ++++++++++++-----
+ xbmc/Application.h           |  1 +
+ xbmc/XBApplicationEx.cpp     |  1 +
+ xbmc/XBApplicationEx.h       |  1 +
+ xbmc/platform/posix/main.cpp | 15 +++++++++++++++
+ 5 files changed, 30 insertions(+), 5 deletions(-)
+
+diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
+index 4c118e0..58b151a 100644
+--- a/xbmc/Application.cpp
++++ b/xbmc/Application.cpp
+@@ -2428,12 +2428,12 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
+   switch (pMsg->dwMessage)
+   {
+   case TMSG_POWERDOWN:
+-    Stop(EXITCODE_POWERDOWN);
++    SetExitCode(EXITCODE_POWERDOWN);
+     g_powerManager.Powerdown();
+     break;
+ 
+   case TMSG_QUIT:
+-    Stop(EXITCODE_QUIT);
++    SetExitCode(EXITCODE_QUIT);
+     break;
+   
+   case TMSG_SHUTDOWN:
+@@ -2454,12 +2454,13 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
+ 
+   case TMSG_RESTART:
+   case TMSG_RESET:
+-    Stop(EXITCODE_REBOOT);
++    SetExitCode(EXITCODE_REBOOT);
+     g_powerManager.Reboot();
+     break;
+ 
+   case TMSG_RESTARTAPP:
+ #if defined(TARGET_WINDOWS) || defined(TARGET_LINUX)
++    SetExitCode(EXITCODE_RESTARTAPP);
+     Stop(EXITCODE_RESTARTAPP);
+ #endif
+     break;
+@@ -2883,6 +2884,13 @@ bool CApplication::Cleanup()
+   }
+ }
+ 
++void CApplication::SetExitCode(int exitCode)
++{
++  // save it for CEC
++  m_ExitCode = exitCode;
++  m_ExitCodeSet = true;
++}
++
+ void CApplication::Stop(int exitCode)
+ {
+   try
+@@ -2890,7 +2898,7 @@ void CApplication::Stop(int exitCode)
+     m_frameMoveGuard.unlock();
+ 
+     CVariant vExitCode(CVariant::VariantTypeObject);
+-    vExitCode["exitcode"] = exitCode;
++    vExitCode["exitcode"] = m_ExitCode;
+     CAnnouncementManager::GetInstance().Announce(System, "xbmc", "OnQuit", vExitCode);
+ 
+     // Abort any active screensaver
+@@ -2924,7 +2932,6 @@ void CApplication::Stop(int exitCode)
+ 
+     m_bStop = true;
+     m_AppFocused = false;
+-    m_ExitCode = exitCode;
+     CLog::Log(LOGNOTICE, "stop all");
+ 
+     // cancel any jobs from the jobmanager
+diff --git a/xbmc/Application.h b/xbmc/Application.h
+index 22aca81..9992677 100644
+--- a/xbmc/Application.h
++++ b/xbmc/Application.h
+@@ -160,6 +160,7 @@ public:
+   void StopPVRManager();
+   void ReinitPVRManager();
+   bool IsCurrentThread() const;
++  void SetExitCode(int exitCode);
+   void Stop(int exitCode);
+   void RestartApp();
+   void UnloadSkin(bool forReload = false);
+diff --git a/xbmc/XBApplicationEx.cpp b/xbmc/XBApplicationEx.cpp
+index 035aed2..34102f5 100644
+--- a/xbmc/XBApplicationEx.cpp
++++ b/xbmc/XBApplicationEx.cpp
+@@ -46,6 +46,7 @@ CXBApplicationEx::CXBApplicationEx()
+   m_bStop = false;
+   m_AppFocused = true;
+   m_ExitCode = EXITCODE_QUIT;
++  m_ExitCodeSet = false;
+   m_renderGUI = false;
+ }
+ 
+diff --git a/xbmc/XBApplicationEx.h b/xbmc/XBApplicationEx.h
+index 9bc14fa..f696b89 100644
+--- a/xbmc/XBApplicationEx.h
++++ b/xbmc/XBApplicationEx.h
+@@ -42,6 +42,7 @@ public:
+   // Variables for timing
+   bool m_bStop;
+   int  m_ExitCode;
++  bool m_ExitCodeSet;
+   bool m_AppFocused;
+   bool m_renderGUI;
+ 
+diff --git a/xbmc/platform/posix/main.cpp b/xbmc/platform/posix/main.cpp
+index a8b64e5..3d80032 100644
+--- a/xbmc/platform/posix/main.cpp
++++ b/xbmc/platform/posix/main.cpp
+@@ -41,12 +41,27 @@
+ #include "input/linux/LIRC.h"
+ #endif
+ #include "platform/XbmcContext.h"
++#include "Application.h"
++
++void xbmc_term_handler(int signum)
++{
++  CLog::Log(LOGINFO, "Received SIGTERM...");
++  if (!g_application.m_ExitCodeSet)
++    g_application.SetExitCode(EXITCODE_RESTARTAPP);
++  g_application.Stop(EXITCODE_RESTARTAPP);
++}
+ 
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+ int main(int argc, char* argv[])
+ {
++  // SIGTERM handler
++  struct sigaction action;
++  memset(&action, 0, sizeof(struct sigaction));
++  action.sa_handler = xbmc_term_handler;
++  sigaction(SIGTERM, &action, NULL);
++
+   // set up some xbmc specific relationships
+   XBMC::Context context;
+ 
+-- 
+2.10.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-add-support-to-read-frequency-output-if-using-intel-.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-add-support-to-read-frequency-output-if-using-intel-.patch
new file mode 100644
index 0000000..d638550
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-add-support-to-read-frequency-output-if-using-intel-.patch
@@ -0,0 +1,26 @@
+From 4ef1e9dab9193f1a5305d25c8eda97f8f06ea154 Mon Sep 17 00:00:00 2001
+From: Stephan Raue <stephan@openelec.tv>
+Date: Mon, 1 Sep 2014 03:16:37 +0200
+Subject: [PATCH 3/3] add support to read frequency output if using intel's
+ pstate driver
+
+---
+ xbmc/utils/CPUInfo.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/xbmc/utils/CPUInfo.cpp b/xbmc/utils/CPUInfo.cpp
+index 5e2ebbd..fd04d5a 100644
+--- a/xbmc/utils/CPUInfo.cpp
++++ b/xbmc/utils/CPUInfo.cpp
+@@ -274,6 +274,8 @@ CCPUInfo::CCPUInfo(void)
+     m_fProcTemperature = fopen("/sys/class/thermal/thermal_zone0/temp", "r");  // On Raspberry PIs
+ 
+   m_fCPUFreq = fopen ("/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq", "r");
++  if (m_fCPUFreq == NULL)
++    m_fCPUFreq = fopen ("/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq", "r");
+   if (!m_fCPUFreq)
+   {
+     m_cpuInfoForFreq = true;
+-- 
+2.10.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-Disable-DVD-support.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-Disable-DVD-support.patch
new file mode 100644
index 0000000..6f5f9a2
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-Disable-DVD-support.patch
@@ -0,0 +1,35 @@
+From 191cf3f084b4d34846711034a7fe3078f8243c82 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 2 Nov 2016 12:39:20 -0700
+Subject: [PATCH 4/4] Disable DVD support
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.in | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 58b3a17..b7c3fce 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -10,8 +10,7 @@ EC_DIRS= \
+ 	tools/EventClients
+ 
+ DVDPCODECS_DIRS= \
+-	lib \
+-	lib/libdvd
++	lib
+ 
+ VideoPlayer_ARCHIVES=xbmc/cores/VideoPlayer/VideoPlayer.a \
+                    xbmc/cores/VideoPlayer/DVDCodecs/DVDCodecs.a \
+@@ -343,7 +342,6 @@ libaddon: exports
+ 	$(MAKE) -C lib/addons/library.xbmc.pvr
+ 	$(MAKE) -C lib/addons/library.kodi.inputstream
+ dvdpcodecs: dllloader
+-	$(MAKE) -C lib/libdvd
+ 
+ dvdpextcodecs:
+ 
+-- 
+2.10.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts/0001-Update-to-p8-platform.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts/0001-Update-to-p8-platform.patch
new file mode 100644
index 0000000..c4a6ae7
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts/0001-Update-to-p8-platform.patch
@@ -0,0 +1,427 @@
+From 06a8224c99282ac1a606edd9e8ea3f591112942d Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Thu, 18 Feb 2016 14:04:31 +0100
+Subject: [PATCH] Update to p8-platform
+
+---
+ CMakeLists.txt                         |  6 +++---
+ pvr.hts/changelog.txt                  |  4 ++--
+ src/AutoRecordings.cpp                 |  2 +-
+ src/HTSPConnection.cpp                 |  8 +++----
+ src/HTSPDemuxer.cpp                    |  2 +-
+ src/HTSPVFS.cpp                        |  6 +++---
+ src/TimeRecordings.cpp                 |  2 +-
+ src/Tvheadend.cpp                      |  4 ++--
+ src/Tvheadend.h                        | 38 +++++++++++++++++-----------------
+ src/client.cpp                         |  4 ++--
+ src/client.h                           |  4 ++--
+ src/tvheadend/Subscription.cpp         |  2 +-
+ src/tvheadend/Subscription.h           |  4 ++--
+ src/tvheadend/utilities/AsyncState.cpp |  4 ++--
+ src/tvheadend/utilities/AsyncState.h   |  6 +++---
+ 15 files changed, 48 insertions(+), 48 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0842682..cb04942 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,10 +6,10 @@ enable_language(CXX)
+ 
+ find_package(kodi REQUIRED)
+ find_package(kodiplatform REQUIRED)
+-find_package(platform REQUIRED)
++find_package(p8-platform REQUIRED)
+ 
+ include_directories(${kodiplatform_INCLUDE_DIRS}
+-                    ${platform_INCLUDE_DIRS}
++                    ${p8-platform_INCLUDE_DIRS}
+                     ${KODI_INCLUDE_DIR}
+                     ${PROJECT_SOURCE_DIR}/lib)
+ 
+@@ -95,7 +95,7 @@ list(APPEND HTS_SOURCES
+ 
+ add_subdirectory(lib/libhts)
+ 
+-set(DEPLIBS ${platform_LIBRARIES} hts)
++set(DEPLIBS ${p8-platform_LIBRARIES} hts)
+ if(WIN32)
+   list(APPEND DEPLIBS ws2_32)
+ endif()
+diff --git a/pvr.hts/changelog.txt b/pvr.hts/changelog.txt
+index 9ffa33c..1e7fe30 100644
+--- a/pvr.hts/changelog.txt
++++ b/pvr.hts/changelog.txt
+@@ -49,7 +49,7 @@
+ - fixed: Autorec: Start and stop time handling.
+ - fixed: LocaltimeToUTC conversion (timer settings clock display incorrect).
+ - fixed: Several issues with predictive tuning.
+-- added: build: Automatically fill in platform and library name.
++- added: build: Automatically fill in p8-platform and library name.
+ - fixed: Use epg data only for creation of epg-based timers.
+ - improved: Do not try to reconnect to tvh while suspending or not fully awake again.
+ 
+@@ -97,7 +97,7 @@
+ - added: support for creating repeating timers, aka time schedules
+ - fixed: conditions for addon restart after settings changes
+ - internal: fixed build system regressions introduced with move to cmake
+-- internal: updated to use libplatform
++- internal: updated to use libp8-platform
+ 
+ 2.1.7
+ - added: support for radio channel groups
+diff --git a/src/AutoRecordings.cpp b/src/AutoRecordings.cpp
+index 5fa60a0..d9e5e1d 100644
+--- a/src/AutoRecordings.cpp
++++ b/src/AutoRecordings.cpp
+@@ -26,7 +26,7 @@
+ #include "tvheadend/utilities/Utilities.h"
+ #include "tvheadend/utilities/Logger.h"
+ 
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend;
+ using namespace tvheadend::entity;
+ using namespace tvheadend::utilities;
+diff --git a/src/HTSPConnection.cpp b/src/HTSPConnection.cpp
+index aec1296..86f5004 100644
+--- a/src/HTSPConnection.cpp
++++ b/src/HTSPConnection.cpp
+@@ -19,9 +19,9 @@
+  *
+  */
+ 
+-#include "platform/threads/mutex.h"
+-#include "platform/util/StringUtils.h"
+-#include "platform/sockets/tcp.h"
++#include "p8-platform/threads/mutex.h"
++#include "p8-platform/util/StringUtils.h"
++#include "p8-platform/sockets/tcp.h"
+ 
+ extern "C" {
+ #include "libhts/htsmsg_binary.h"
+@@ -33,7 +33,7 @@ extern "C" {
+ 
+ using namespace std;
+ using namespace ADDON;
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend;
+ using namespace tvheadend::utilities;
+ 
+diff --git a/src/HTSPDemuxer.cpp b/src/HTSPDemuxer.cpp
+index a6e1f12..7f45345 100644
+--- a/src/HTSPDemuxer.cpp
++++ b/src/HTSPDemuxer.cpp
+@@ -27,7 +27,7 @@
+ 
+ using namespace std;
+ using namespace ADDON;
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend;
+ using namespace tvheadend::utilities;
+ 
+diff --git a/src/HTSPVFS.cpp b/src/HTSPVFS.cpp
+index 0463f56..0404bab 100644
+--- a/src/HTSPVFS.cpp
++++ b/src/HTSPVFS.cpp
+@@ -19,8 +19,8 @@
+  *
+  */
+ 
+-#include "platform/threads/mutex.h"
+-#include "platform/util/StringUtils.h"
++#include "p8-platform/threads/mutex.h"
++#include "p8-platform/util/StringUtils.h"
+ #include "tvheadend/utilities/Logger.h"
+ 
+ extern "C" {
+@@ -30,7 +30,7 @@ extern "C" {
+ #include "Tvheadend.h"
+ 
+ using namespace std;
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend::utilities;
+ 
+ /*
+diff --git a/src/TimeRecordings.cpp b/src/TimeRecordings.cpp
+index 5d34938..97aae09 100644
+--- a/src/TimeRecordings.cpp
++++ b/src/TimeRecordings.cpp
+@@ -25,7 +25,7 @@
+ #include "tvheadend/utilities/Utilities.h"
+ #include "tvheadend/utilities/Logger.h"
+ 
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend;
+ using namespace tvheadend::entity;
+ using namespace tvheadend::utilities;
+diff --git a/src/Tvheadend.cpp b/src/Tvheadend.cpp
+index 2057241..14c3bd4 100644
+--- a/src/Tvheadend.cpp
++++ b/src/Tvheadend.cpp
+@@ -23,7 +23,7 @@
+ #include <ctime>
+ #include <memory>
+ 
+-#include "platform/util/StringUtils.h"
++#include "p8-platform/util/StringUtils.h"
+ 
+ #include "Tvheadend.h"
+ #include "tvheadend/utilities/Utilities.h"
+@@ -31,7 +31,7 @@
+ 
+ using namespace std;
+ using namespace ADDON;
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend;
+ using namespace tvheadend::entity;
+ using namespace tvheadend::utilities;
+diff --git a/src/Tvheadend.h b/src/Tvheadend.h
+index 2ce4552..e794716 100644
+--- a/src/Tvheadend.h
++++ b/src/Tvheadend.h
+@@ -22,10 +22,10 @@
+  */
+ 
+ #include "client.h"
+-#include "platform/sockets/tcp.h"
+-#include "platform/threads/threads.h"
+-#include "platform/threads/mutex.h"
+-#include "platform/util/buffer.h"
++#include "p8-platform/sockets/tcp.h"
++#include "p8-platform/threads/threads.h"
++#include "p8-platform/threads/mutex.h"
++#include "p8-platform/util/buffer.h"
+ #include "kodi/xbmc_codec_types.h"
+ #include "kodi/xbmc_stream_utils.hpp"
+ #include "kodi/libXBMC_addon.h"
+@@ -88,7 +88,7 @@ class CHTSPMessage;
+ 
+ /* Typedefs */
+ typedef std::map<uint32_t,CHTSPResponse*> CHTSPResponseList;
+-typedef PLATFORM::SyncedBuffer<CHTSPMessage> CHTSPMessageQueue;
++typedef P8PLATFORM::SyncedBuffer<CHTSPMessage> CHTSPMessageQueue;
+ 
+ /*
+  * HTSP Response handler
+@@ -98,10 +98,10 @@ class CHTSPResponse
+ public:
+   CHTSPResponse();
+   ~CHTSPResponse();
+-  htsmsg_t *Get ( PLATFORM::CMutex &mutex, uint32_t timeout );
++  htsmsg_t *Get ( P8PLATFORM::CMutex &mutex, uint32_t timeout );
+   void      Set ( htsmsg_t *m );
+ private:
+-  PLATFORM::CCondition<volatile bool> m_cond;
++  P8PLATFORM::CCondition<volatile bool> m_cond;
+   bool                                m_flag;
+   htsmsg_t                           *m_msg;
+ };
+@@ -146,7 +146,7 @@ public:
+  * HTSP Connection registration thread
+  */
+ class CHTSPRegister
+-  : public PLATFORM::CThread
++  : public P8PLATFORM::CThread
+ {
+   friend class CHTSPConnection;
+ 
+@@ -163,7 +163,7 @@ private:
+  * HTSP Connection
+  */
+ class CHTSPConnection
+-  : public PLATFORM::CThread
++  : public P8PLATFORM::CThread
+ {
+   friend class CHTSPRegister;
+ 
+@@ -190,7 +190,7 @@ public:
+   inline bool IsConnected       ( void ) const { return m_ready; }
+   bool        WaitForConnection ( void );
+ 
+-  inline PLATFORM::CMutex& Mutex ( void ) { return m_mutex; }
++  inline P8PLATFORM::CMutex& Mutex ( void ) { return m_mutex; }
+ 
+   void        OnSleep ( void );
+   void        OnWake  ( void );
+@@ -202,10 +202,10 @@ private:
+   bool        SendHello        ( void );
+   bool        SendAuth         ( const std::string &u, const std::string &p );
+ 
+-  PLATFORM::CTcpSocket               *m_socket;
+-  PLATFORM::CMutex                    m_mutex;
++  P8PLATFORM::CTcpSocket               *m_socket;
++  P8PLATFORM::CMutex                    m_mutex;
+   CHTSPRegister                       m_regThread;
+-  PLATFORM::CCondition<volatile bool> m_regCond;
++  P8PLATFORM::CCondition<volatile bool> m_regCond;
+   bool                                m_ready;
+   uint32_t                            m_seq;
+   std::string                         m_serverName;
+@@ -273,13 +273,13 @@ public:
+   void SetStreamingProfile(const std::string &profile);
+ 
+ private:
+-  PLATFORM::CMutex                        m_mutex;
++  P8PLATFORM::CMutex                        m_mutex;
+   CHTSPConnection                        &m_conn;
+-  PLATFORM::SyncedBuffer<DemuxPacket*>    m_pktBuffer;
++  P8PLATFORM::SyncedBuffer<DemuxPacket*>    m_pktBuffer;
+   ADDON::XbmcStreamProperties             m_streams;
+   std::map<int,int>                       m_streamStat;
+   int64_t                                 m_seekTime;
+-  PLATFORM::CCondition<volatile int64_t>  m_seekCond;
++  P8PLATFORM::CCondition<volatile int64_t>  m_seekCond;
+   bool                                    m_seeking;
+   bool                                    m_speedChange;
+   tvheadend::status::SourceInfo           m_sourceInfo;
+@@ -350,7 +350,7 @@ private:
+  * Root object for Tvheadend connection
+  */
+ class CTvheadend
+-  : public PLATFORM::CThread
++  : public P8PLATFORM::CThread
+ {
+ public:
+   CTvheadend();
+@@ -422,7 +422,7 @@ private:
+    */
+   tvheadend::Profiles         m_profiles;
+ 
+-  PLATFORM::CMutex            m_mutex;
++  P8PLATFORM::CMutex            m_mutex;
+ 
+   CHTSPConnection             m_conn;
+ 
+@@ -519,7 +519,7 @@ public:
+    */
+   bool WaitForConnection ( void )
+   {
+-    PLATFORM::CLockObject lock(m_conn.Mutex());
++    P8PLATFORM::CLockObject lock(m_conn.Mutex());
+     return m_conn.WaitForConnection();
+   }
+   std::string GetServerName    ( void )
+diff --git a/src/client.cpp b/src/client.cpp
+index 94d2db9..3295914 100644
+--- a/src/client.cpp
++++ b/src/client.cpp
+@@ -22,14 +22,14 @@
+ #include "client.h"
+ #include "kodi/xbmc_pvr_dll.h"
+ #include "kodi/libKODI_guilib.h"
+-#include "platform/util/util.h"
++#include "p8-platform/util/util.h"
+ #include "Tvheadend.h"
+ #include "tvheadend/Settings.h"
+ #include "tvheadend/utilities/Logger.h"
+ 
+ using namespace std;
+ using namespace ADDON;
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend;
+ using namespace tvheadend::utilities;
+ 
+diff --git a/src/client.h b/src/client.h
+index 3a5f950..a10659b 100644
+--- a/src/client.h
++++ b/src/client.h
+@@ -20,8 +20,8 @@
+  *
+  */
+ 
+-#include "platform/os.h"
+-#include "platform/threads/mutex.h"
++#include "p8-platform/os.h"
++#include "p8-platform/threads/mutex.h"
+ #include "kodi/libXBMC_addon.h"
+ #include "kodi/libXBMC_pvr.h"
+ #include "kodi/libXBMC_codec.h"
+diff --git a/src/tvheadend/Subscription.cpp b/src/tvheadend/Subscription.cpp
+index 182ca7f..e18af1e 100644
+--- a/src/tvheadend/Subscription.cpp
++++ b/src/tvheadend/Subscription.cpp
+@@ -23,7 +23,7 @@
+ #include "utilities/Logger.h"
+ #include "../Tvheadend.h"
+ 
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ using namespace tvheadend;
+ using namespace tvheadend::utilities;
+ 
+diff --git a/src/tvheadend/Subscription.h b/src/tvheadend/Subscription.h
+index b03bcce..363e5ef 100644
+--- a/src/tvheadend/Subscription.h
++++ b/src/tvheadend/Subscription.h
+@@ -22,7 +22,7 @@
+  */
+ 
+ #include <string>
+-#include "platform/threads/mutex.h"
++#include "p8-platform/threads/mutex.h"
+ 
+ extern "C"
+ {
+@@ -146,6 +146,6 @@ namespace tvheadend
+     std::string       m_profile;
+     CHTSPConnection   &m_conn;
+ 
+-    mutable PLATFORM::CMutex  m_mutex;
++    mutable P8PLATFORM::CMutex  m_mutex;
+   };
+ }
+diff --git a/src/tvheadend/utilities/AsyncState.cpp b/src/tvheadend/utilities/AsyncState.cpp
+index 0c30a93..1f4fdf3 100644
+--- a/src/tvheadend/utilities/AsyncState.cpp
++++ b/src/tvheadend/utilities/AsyncState.cpp
+@@ -22,7 +22,7 @@
+ #include "AsyncState.h"
+ 
+ using namespace tvheadend::utilities;
+-using namespace PLATFORM;
++using namespace P8PLATFORM;
+ 
+ struct Param {
+   eAsyncState state;
+@@ -37,7 +37,7 @@ AsyncState::AsyncState(int timeout)
+ 
+ eAsyncState AsyncState::GetState()
+ {
+-  PLATFORM::CLockObject lock(m_mutex);
++  P8PLATFORM::CLockObject lock(m_mutex);
+   return m_state;
+ }
+ 
+diff --git a/src/tvheadend/utilities/AsyncState.h b/src/tvheadend/utilities/AsyncState.h
+index 1d672da..0819cd8 100644
+--- a/src/tvheadend/utilities/AsyncState.h
++++ b/src/tvheadend/utilities/AsyncState.h
+@@ -22,7 +22,7 @@
+ #ifndef ASYNCSTATE_H
+ #define	ASYNCSTATE_H
+ 
+-#include "platform/threads/mutex.h"
++#include "p8-platform/threads/mutex.h"
+ 
+ namespace tvheadend {
+   namespace utilities {
+@@ -75,8 +75,8 @@ namespace tvheadend {
+       static bool PredicateCallback ( void *param );
+ 
+       eAsyncState m_state;
+-      PLATFORM::CMutex m_mutex;
+-      PLATFORM::CCondition<bool> m_condition;
++      P8PLATFORM::CMutex m_mutex;
++      P8PLATFORM::CCondition<bool> m_condition;
+       int m_timeout;
+ 
+     };
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts_git.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts_git.bb
new file mode 100644
index 0000000..1f33a8a
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts_git.bb
@@ -0,0 +1,55 @@
+SUMMARY = "Kodi Media Center PVR plugins"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://src/client.cpp;md5=c8f6b73c5bc1048a3d6506700a7a91d2"
+
+DEPENDS = " \
+            zip-native \
+            p8platform \
+            kodi-platform \
+          "
+
+SRCREV_pvrhts = "7f75b70527922aef953123ff97ebaa22d9fb7cb4"
+
+SRCREV_FORMAT = "pvrhts"
+
+PV = "2.2.13+gitr${SRCPV}"
+SRC_URI = "git://github.com/kodi-pvr/pvr.hts.git;branch=Jarvis;destsuffix=pvr.hts;name=pvrhts \
+           file://0001-Update-to-p8-platform.patch \
+          "
+
+inherit cmake pkgconfig gettext
+
+S = "${WORKDIR}/pvr.hts"
+
+EXTRA_OECMAKE = " \
+	  -DADDONS_TO_BUILD=pvr.hts \
+	  -DADDON_SRC_PREFIX=${WORKDIR}/git \
+	  -DCMAKE_BUILD_TYPE=Debug \
+	  -DCMAKE_INSTALL_PREFIX=${datadir}/kodi/addons \
+          -DCMAKE_MODULE_PATH=${STAGING_DIR_HOST}${libdir}/kodi \
+          -DCMAKE_PREFIX_PATH=${STAGING_DIR_HOST}${prefix} \
+          -DPACKAGE_ZIP=1 \
+        "
+
+do_compile_prepend() {
+	sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' \
+	       -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g' \
+	          ${B}/CMakeFiles/*/flags.make
+	sed -i -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g'\
+	          ${B}/CMakeFiles/*/link.txt
+}
+
+# Make zip package for manual installation
+do_install_append() {
+	install -d ${D}${datadir}/kodi/addons/packages/
+	( cd ${D}${datadir}/kodi/addons
+	  zip -r ${D}${datadir}/kodi/addons/packages/pvr.hts-${PV}.zip pvr.hts -x '*.debug*' )
+}
+
+# Doesn't get added automagically, dlopen()?
+RDEPENDS_${PN} = "libkodiplatform"
+
+INSANE_SKIP_${PN} = "dev-so"
+FILES_${PN} += "${datadir}/kodi"
+FILES_${PN}-dbg += "${datadir}/kodi/addons/*/.debug/"
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-Fix-build-after-platform-rename.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-Fix-build-after-platform-rename.patch
new file mode 100644
index 0000000..35e5134
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-Fix-build-after-platform-rename.patch
@@ -0,0 +1,67 @@
+From 7cf366faa7a24c7146c745c8cd8dc3ae3d1cabea Mon Sep 17 00:00:00 2001
+From: Garrett Brown <themagnificentmrb@gmail.com>
+Date: Thu, 7 Jan 2016 15:55:22 -0800
+Subject: [PATCH] Fix build after platform rename
+
+update source code to use renamed platform pkg
+---
+ CMakeLists.txt      | 6 +++---
+ debian/control      | 2 +-
+ src/util/XMLUtils.h | 2 +-
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2ce8c0d..bf6b659 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,7 +8,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR})
+ find_package(kodi REQUIRED)
+ find_package(TinyXML REQUIRED)
+ find_package(Threads REQUIRED)
+-find_package(platform REQUIRED)
++find_package(p8-platform REQUIRED)
+ include(UseMultiArch.cmake)
+ include(CheckAtomic.cmake)
+ 
+@@ -36,10 +36,10 @@ endif()
+ 
+ set(SOURCES src/util/XMLUtils.cpp)
+ 
+-include_directories(${TINYXML_INCLUDE_DIR} ${KODI_INCLUDE_DIR} ${platform_INCLUDE_DIRS})
++include_directories(${TINYXML_INCLUDE_DIR} ${KODI_INCLUDE_DIR} ${p8-platform_INCLUDE_DIRS})
+ 
+ add_library(kodiplatform ${SOURCES} ${PLAT_SOURCES})
+-target_link_libraries(kodiplatform ${kodiplatform_LIBRARIES} ${platform_LIBRARIES})
++target_link_libraries(kodiplatform ${kodiplatform_LIBRARIES} ${p8-platform_LIBRARIES})
+ set_target_properties(kodiplatform PROPERTIES VERSION ${kodiplatform_VERSION_MAJOR}.${kodiplatform_VERSION_MINOR}.${kodiplatform_VERSION_PATCH}
+                                               SOVERSION ${kodiplatform_VERSION_MAJOR}.0)
+ 
+diff --git a/debian/control b/debian/control
+index 42cadb2..e40c982 100644
+--- a/debian/control
++++ b/debian/control
+@@ -1,7 +1,7 @@
+ Source: kodiplatform
+ Priority: extra
+ Maintainer: Arne Morten Kvarving <arne.morten.kvarving@sintef.no>
+-Build-Depends: debhelper (>= 8.0.0), cmake, libtinyxml-dev, kodi-addon-dev, libplatform-dev
++Build-Depends: debhelper (>= 8.0.0), cmake, libtinyxml-dev, kodi-addon-dev, libp8-platform-dev
+ Standards-Version: 3.9.2
+ Section: libs
+ 
+diff --git a/src/util/XMLUtils.h b/src/util/XMLUtils.h
+index f22fd07..a10d831 100644
+--- a/src/util/XMLUtils.h
++++ b/src/util/XMLUtils.h
+@@ -21,7 +21,7 @@
+  *
+  */
+ 
+-#include <platform/util/StdString.h>
++#include <p8-platform/util/StdString.h>
+ #include "tinyxml.h"
+ 
+ class XMLUtils
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-fix-cross-compile-badness.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-fix-cross-compile-badness.patch
new file mode 100644
index 0000000..27e9d21
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-fix-cross-compile-badness.patch
@@ -0,0 +1,40 @@
+From 3136317f096ea7fda4fb907e775a01952c4aae3d Mon Sep 17 00:00:00 2001
+From: Stefan Saraev <stefan@saraev.ca>
+Date: Fri, 19 Feb 2016 10:33:00 +0100
+Subject: [PATCH] fix cross compile badness
+
+From https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/mediacenter/kodi-platform/patches/kodi-platform-01_crosscompile-badness.patch
+---
+ CMakeLists.txt               | 2 +-
+ kodiplatform-config.cmake.in | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bf6b659..9abe773 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -22,7 +22,7 @@ if(NOT WIN32)
+   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
+ endif()
+ 
+-set(kodiplatform_INCLUDE_DIRS ${TINYXML_INCLUDE_DIR} "${CMAKE_INSTALL_PREFIX}/include/kodi")
++set(kodiplatform_INCLUDE_DIRS ${TINYXML_INCLUDE_DIR} "${CMAKE_INSTALL_PREFIX_TOOLCHAIN}/include/kodi")
+ IF(WIN32)
+   LIST(APPEND kodiplatform_INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/include/kodi/windows")
+ ENDIF(WIN32)
+diff --git a/kodiplatform-config.cmake.in b/kodiplatform-config.cmake.in
+index 3fc5273..60bdf1b 100644
+--- a/kodiplatform-config.cmake.in
++++ b/kodiplatform-config.cmake.in
+@@ -10,7 +10,7 @@
+ #
+ # propagate these properties from one build system to the other
+ set (kodiplatform_VERSION "@kodiplatform_VERSION_MAJOR@.@kodiplatform_VERSION_MINOR@")
+-set (kodiplatform_INCLUDE_DIRS @kodiplatform_INCLUDE_DIRS@ @CMAKE_INSTALL_PREFIX@/include)
++set (kodiplatform_INCLUDE_DIRS @kodiplatform_INCLUDE_DIRS@ @CMAKE_INSTALL_PREFIX_TOOLCHAIN@/include)
+ set (kodiplatform_LIBRARY_DIRS "@CMAKE_LIBRARY_OUTPUT_DIRECTORY@")
+ set (kodiplatform_LINKER_FLAGS "@kodiplatform_LINKER_FLAGS@")
+ set (kodiplatform_CONFIG_VARS "@kodiplatform_CONFIG_VARS@")
+-- 
+2.0.1
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/kodi-platform-02_no-multi-lib.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/kodi-platform-02_no-multi-lib.patch
new file mode 100644
index 0000000..a13c53b
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/kodi-platform-02_no-multi-lib.patch
@@ -0,0 +1,12 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9abe773..ae433fc 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -9,7 +9,6 @@ find_package(kodi REQUIRED)
+ find_package(TinyXML REQUIRED)
+ find_package(Threads REQUIRED)
+ find_package(p8-platform REQUIRED)
+-include(UseMultiArch.cmake)
+ include(CheckAtomic.cmake)
+ 
+ set(kodiplatform_NAME kodiplatform)
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
new file mode 100644
index 0000000..5077454
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Platform support library used by libCEC and binary add-ons for Kodi"
+HOMEPAGE = "http://libcec.pulse-eight.com/"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://src/util/XMLUtils.cpp;beginline=2;endline=18;md5=dae8e846500e70dd8ecee55f3f018c30"
+
+DEPENDS = "libtinyxml kodi"
+
+PV = "16.0.0"
+
+SRCREV = "15edaf78d6307eaa5e1d17028122d8bce9d55aa2"
+SRC_URI = "git://github.com/xbmc/kodi-platform.git \
+           file://0001-Fix-build-after-platform-rename.patch \
+           file://0001-fix-cross-compile-badness.patch \
+           file://kodi-platform-02_no-multi-lib.patch \
+          "
+
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+EXTRA_OECMAKE = " -DCMAKE_INSTALL_PREFIX_TOOLCHAIN=${STAGING_DIR_TARGET} \
+                  -DCMAKE_INSTALL_LIBDIR=${libdir} \
+                  -DCMAKE_INSTALL_LIBDIR_NOARCH=${libdir} \
+                  -DKODI_INCLUDE_DIR=${STAGING_LIBDIR}/kodi \
+                  -DKODI_INCLUDE_DIR=${STAGING_INCDIR}/kodi \
+                "
+
+do_compile_prepend() {
+	sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' \
+	       -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g' \
+	          ${B}/CMakeFiles/kodiplatform.dir/flags.make
+	sed -i -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g'\
+	          ${B}/CMakeFiles/kodiplatform.dir/link.txt
+}
+
+RPROVIDES_${PN} += "libkodiplatform"
+FILES_${PN}-dev += "${libdir}/*platform"
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-startup.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi-startup.bb
new file mode 100644
index 0000000..955d02b
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-startup.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Systemd service for kodi startup"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"
+
+PV = "1.0"
+
+SRC_URI = "file://kodi.service"
+
+inherit systemd
+
+do_install() {
+	install -d ${D}/lib/systemd/system
+	install -m 0644 ${WORKDIR}/kodi.service ${D}/lib/systemd/system/ 
+}
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "kodi.service"
+
+RDEPENDS_${PN} += "xinit kodi"
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-startup/kodi.service b/meta-multimedia/recipes-mediacenter/kodi/kodi-startup/kodi.service
new file mode 100644
index 0000000..29d0394
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-startup/kodi.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Kodi media thing
+
+[Service]
+User=root
+Type=simple
+SuccessExitStatus=0 1
+IOSchedulingClass=realtime
+IOSchedulingPriority=0
+
+ExecStart=/usr/bin/xinit /usr/bin/kodi-standalone -- /usr/bin/X :0 
+
+[Install]
+WantedBy=basic.target
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb
new file mode 100644
index 0000000..38a53ee
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb
@@ -0,0 +1,188 @@
+SUMMARY = "Kodi Media Center"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=930e2a5f63425d8dd72dbd7391c43c46"
+
+FILESPATH =. "${FILE_DIRNAME}/kodi-16:"
+
+DEPENDS = " \
+            cmake-native \
+            curl-native \
+            gperf-native \
+            jsonschemabuilder-native \
+            nasm-native \
+            swig-native \
+            yasm-native \
+            zip-native \
+            avahi \
+            boost \
+            bzip2 \
+            curl \
+            dcadec \
+            enca \
+            expat \
+            faad2 \
+            ffmpeg \
+            fontconfig \
+            fribidi \
+            giflib \
+            jasper \
+            libass \
+            libcdio \
+            libcec \
+            libmad \
+            libmicrohttpd \
+            libmms \
+            libmms \
+            libmodplug \
+            libpcre \
+            libplist \
+            libsamplerate0 \
+            libsdl-image \
+            libsdl-mixer \
+            libsquish \
+            libssh \
+            libtinyxml \
+            libusb1 \
+            libxslt \
+            lzo \
+            mpeg2dec \
+            python \
+            samba \
+            sqlite3 \
+            taglib \
+            virtual/egl \
+            virtual/libsdl \
+            wavpack \
+            yajl \
+            zlib \
+            ${@enable_glew(bb, d)} \
+          "
+
+PROVIDES = "xbmc"
+
+SRCREV = "4982009b56d184f8ce7890e947d0bd986e49828a"
+PV = "16.1+gitr${SRCPV}"
+SRC_URI = "git://github.com/xbmc/xbmc.git;branch=Jarvis \
+           file://0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch \
+           file://0002-arm64-Fix-build-breakages-due-to-architecture-specif.patch \
+           file://0003-configure-add-aarch64-support.patch \
+           file://0004-configure-remove-gles-neon-wayland-assumptions.patch \
+           file://0005-handle-SIGTERM.patch \
+           file://0006-add-support-to-read-frequency-output-if-using-intel-.patch \
+           file://0006-ffmpeg30.patch \
+           file://0007-https-github.com-OpenELEC-OpenELEC.tv-blob-master-pa.patch \
+           file://0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch \
+           file://0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch \
+           file://0010-curl-support-version-7.5.0-and-upwards.patch \
+           file://0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch \
+"
+
+inherit autotools-brokensep gettext pythonnative
+
+S = "${WORKDIR}/git"
+
+# breaks compilation
+ASNEEDED = ""
+
+ACCEL ?= ""
+ACCEL_x86 = "vaapi vdpau"
+ACCEL_x86-64 = "vaapi vdpau"
+
+PACKAGECONFIG ??= "${ACCEL}"
+PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)}"
+PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', ' opengl', ' openglesv2', d)}"
+
+PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,"
+PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,virtual/egl"
+PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
+PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
+PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
+PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
+PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
+
+EXTRA_OECONF_append_rpi = "--disable-openmax --enable-player=omxplayer --with-platform=raspberry-pi"
+#LDFLAGS_append_rpi = " -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm -lvchostif -lmmal -lmmal_core -lmmal_util "
+LDFLAGS_append_rpi = " -lvchostif "
+EXTRA_OECONF = " \
+    --disable-debug \
+    --disable-libcap \
+    --disable-ccache \
+    --disable-mid \
+    --enable-libusb \
+    --enable-airplay \
+    --enable-alsa \
+    --disable-optical-drive \
+    --with-ffmpeg=shared \
+    --enable-texturepacker=no \
+"
+
+FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -fomit-frame-pointer -O4 -ffast-math"
+FULL_OPTIMIZATION_armv7ve = "-fexpensive-optimizations -fomit-frame-pointer -O4 -ffast-math"
+BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
+
+# for python modules
+export HOST_SYS
+export BUILD_SYS
+export STAGING_LIBDIR
+export STAGING_INCDIR
+export PYTHON_DIR
+
+def enable_glew(bb, d):
+    if bb.utils.contains('PACKAGECONFIG', 'x11', True, False, d) and bb.utils.contains('DISTRO_FEATURES', 'opengl', True, False, d):
+        return "glew"
+    return ""
+
+do_configure() {
+    ( for i in $(find ${S} -name "configure.*" ) ; do
+       cd $(dirname $i) && gnu-configize --force || true
+    done )
+    make -C tools/depends/target/crossguid PREFIX=${STAGING_DIR_HOST}${prefix}
+
+    BOOTSTRAP_STANDALONE=1 make -f bootstrap.mk JSON_BUILDER="${STAGING_BINDIR_NATIVE}/JsonSchemaBuilder"
+    BOOTSTRAP_STANDALONE=1 make -f codegenerator.mk JSON_BUILDER="${STAGING_BINDIR_NATIVE}/JsonSchemaBuilder"
+    oe_runconf
+}
+
+do_compile_prepend() {
+    for i in $(find . -name "Makefile") ; do
+        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' $i
+    done
+
+    for i in $(find . -name "*.mak*" -o    -name "Makefile") ; do
+        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' -e 's:-rpath \$(libdir):-rpath ${libdir}:g' $i
+    done
+}
+
+INSANE_SKIP_${PN} = "rpaths"
+
+FILES_${PN} += "${datadir}/xsessions ${datadir}/icons ${libdir}/xbmc ${datadir}/xbmc"
+FILES_${PN}-dbg += "${libdir}/kodi/.debug ${libdir}/kodi/*/.debug ${libdir}/kodi/*/*/.debug ${libdir}/kodi/*/*/*/.debug"
+
+# kodi uses some kind of dlopen() method for libcec so we need to add it manually
+# OpenGL builds need glxinfo, that's in mesa-demos
+RRECOMMENDS_${PN}_append = " libcec \
+                             python \
+                             python-lang \
+                             python-re \
+                             python-netclient \
+                             python-html \
+                             python-difflib \
+                             python-json \
+                             python-zlib \
+                             python-shell \
+                             python-sqlite3 \
+                             python-compression \
+                             libcurl \
+                             ${@bb.utils.contains('PACKAGECONFIG', 'x11', 'xrandr xdpyinfo', '', d)} \
+"
+RRECOMMENDS_${PN}_append_libc-glibc = " glibc-charmap-ibm850 \
+                                        glibc-gconv-ibm850 \
+					glibc-gconv-unicode \
+                                        glibc-gconv-utf-32 \
+					glibc-charmap-utf-8 \
+					glibc-localedata-en-us \
+                                      "
+
+RPROVIDES_${PN} += "xbmc"
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
new file mode 100644
index 0000000..bdf077a
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
@@ -0,0 +1,181 @@
+SUMMARY = "Kodi Media Center"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=930e2a5f63425d8dd72dbd7391c43c46"
+
+DEFAULT_PREFERENCE = "-1"
+
+FILESPATH =. "${FILE_DIRNAME}/kodi-17:"
+
+DEPENDS = " \
+            cmake-native \
+            curl-native \
+            gperf-native \
+            jsonschemabuilder-native \
+            nasm-native \
+            swig-native \
+            yasm-native \
+            zip-native \
+            avahi \
+            boost \
+            bzip2 \
+            curl \
+            dcadec \
+            enca \
+            expat \
+            faad2 \
+            ffmpeg \
+            fontconfig \
+            fribidi \
+            giflib \
+            jasper \
+            libass \
+            libcdio \
+            libcec \
+            libmad \
+            libmicrohttpd \
+            libmms \
+            libmms \
+            libmodplug \
+            libpcre \
+            libplist \
+            libsamplerate0 \
+            libsdl-image \
+            libsdl-mixer \
+            libsquish \
+            libssh \
+            libtinyxml \
+            libusb1 \
+            libxslt \
+            lzo \
+            mpeg2dec \
+            python \
+            samba \
+            sqlite3 \
+            taglib \
+            virtual/egl \
+            virtual/libsdl \
+            wavpack \
+            yajl \
+            zlib \
+            ${@enable_glew(bb, d)} \
+          "
+
+PROVIDES = "xbmc"
+
+SRCREV = "32c7788e7cce711be5b7f3893c82dddd79658268"
+PV = "17.0+gitr${SRCPV}"
+SRC_URI = "git://github.com/xbmc/xbmc.git;branch=master \
+           file://0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch \
+           file://0002-handle-SIGTERM.patch \
+           file://0003-add-support-to-read-frequency-output-if-using-intel-.patch \
+           file://0004-Disable-DVD-support.patch \
+"
+
+inherit autotools-brokensep gettext pythonnative
+
+S = "${WORKDIR}/git"
+
+# breaks compilation
+ASNEEDED = ""
+
+ACCEL ?= ""
+ACCEL_x86 = "vaapi vdpau"
+ACCEL_x86-64 = "vaapi vdpau"
+
+PACKAGECONFIG ??= "${ACCEL}"
+PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)}"
+PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', ' opengl', ' openglesv2', d)}"
+
+PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,"
+PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,virtual/egl"
+PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
+PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
+PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
+PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
+PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
+
+EXTRA_OECONF_append_rpi = " --disable-openmax --enable-player=omxplayer --with-platform=raspberry-pi2"
+LDFLAGS_append_rpi = " -lvchostif "
+EXTRA_OECONF = " \
+    --disable-debug \
+    --disable-libcap \
+    --disable-ccache \
+    --disable-mid \
+    --enable-libusb \
+    --enable-alsa \
+    --enable-airplay \
+    --disable-optical-drive \
+    --with-ffmpeg=shared \
+    --enable-texturepacker=no \
+"
+
+FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -fomit-frame-pointer -O4 -ffast-math"
+FULL_OPTIMIZATION_armv7ve = "-fexpensive-optimizations -fomit-frame-pointer -O4 -ffast-math"
+BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
+
+# for python modules
+export HOST_SYS
+export BUILD_SYS
+export STAGING_LIBDIR
+export STAGING_INCDIR
+export PYTHON_DIR
+
+def enable_glew(bb, d):
+    if bb.utils.contains('PACKAGECONFIG', 'x11', True, False, d) and bb.utils.contains('DISTRO_FEATURES', 'opengl', True, False, d):
+        return "glew"
+    return ""
+
+do_configure() {
+    ( for i in $(find ${S} -name "configure.*" ) ; do
+       cd $(dirname $i) && gnu-configize --force || true
+    done )
+    make -C tools/depends/target/crossguid PREFIX=${STAGING_DIR_HOST}${prefix}
+
+    BOOTSTRAP_STANDALONE=1 make -f bootstrap.mk JSON_BUILDER="${STAGING_BINDIR_NATIVE}/JsonSchemaBuilder"
+    BOOTSTRAP_STANDALONE=1 make -f codegenerator.mk JSON_BUILDER="${STAGING_BINDIR_NATIVE}/JsonSchemaBuilder"
+    oe_runconf
+}
+
+do_compile_prepend() {
+    for i in $(find . -name "Makefile") ; do
+        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' $i
+    done
+
+    for i in $(find . -name "*.mak*" -o    -name "Makefile") ; do
+        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' -e 's:-rpath \$(libdir):-rpath ${libdir}:g' $i
+    done
+}
+
+INSANE_SKIP_${PN} = "rpaths"
+
+FILES_${PN} += "${datadir}/xsessions ${datadir}/icons ${libdir}/xbmc ${datadir}/xbmc"
+FILES_${PN}-dbg += "${libdir}/kodi/.debug ${libdir}/kodi/*/.debug ${libdir}/kodi/*/*/.debug ${libdir}/kodi/*/*/*/.debug"
+
+# kodi uses some kind of dlopen() method for libcec so we need to add it manually
+# OpenGL builds need glxinfo, that's in mesa-demos
+RRECOMMENDS_${PN}_append = " libcec \
+                             python \
+                             python-lang \
+                             python-re \
+                             python-netclient \
+                             python-html \
+                             python-difflib \
+                             python-json \
+                             python-zlib \
+                             python-shell \
+                             python-sqlite3 \
+                             python-compression \
+                             libcurl \
+                             ${@bb.utils.contains('PACKAGECONFIG', 'x11', 'xrandr xdpyinfo', '', d)} \
+"
+RRECOMMENDS_${PN}_append_libc-glibc = " glibc-charmap-ibm850 \
+                                        glibc-gconv-ibm850 \
+					glibc-gconv-unicode \
+                                        glibc-gconv-utf-32 \
+					glibc-charmap-utf-8 \
+					glibc-localedata-en-us \
+                                      "
+
+RPROVIDES_${PN} += "xbmc"
+
diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0001-configure-don-t-run-python-distutils-to-find-STAGING.patch b/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0001-configure-don-t-run-python-distutils-to-find-STAGING.patch
deleted file mode 100644
index dfc3959..0000000
--- a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0001-configure-don-t-run-python-distutils-to-find-STAGING.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 0dce5a2abd9f42876616c35772a4d71c5399543c Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Sat, 17 Dec 2011 11:38:15 +0100
-Subject: [PATCH 1/4] configure: don't run python distutils to find STAGING_INCDIR/python, it is not safe for per-machine sysroots
-
-Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
----
- m4/ax_python_devel.m4 |    7 +------
- 1 files changed, 1 insertions(+), 6 deletions(-)
-
-diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4
-index adbd207..dee70f6 100644
---- a/m4/ax_python_devel.m4
-+++ b/m4/ax_python_devel.m4
-@@ -151,12 +151,7 @@ $ac_distutils_result])
- 	#
- 	AC_MSG_CHECKING([for Python include path])
- 	if test -z "$PYTHON_CPPFLAGS"; then
--		python_path=`$PYTHON -c "import distutils.sysconfig; \
--			print (distutils.sysconfig.get_python_inc ());"`
--		if test -n "${python_path}"; then
--			python_path="-I$python_path"
--		fi
--		PYTHON_CPPFLAGS=$python_path
-+		PYTHON_CPPFLAGS="-I${STAGING_INCDIR}/${PYTHON_DIR}"
- 	fi
- 	AC_MSG_RESULT([$PYTHON_CPPFLAGS])
- 	AC_SUBST([PYTHON_CPPFLAGS])
--- 
-1.7.2.5
-
diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0002-Revert-fixed-ios-Add-memory-barriers-to-atomic-Add-S.patch b/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0002-Revert-fixed-ios-Add-memory-barriers-to-atomic-Add-S.patch
deleted file mode 100644
index e0a4037..0000000
--- a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0002-Revert-fixed-ios-Add-memory-barriers-to-atomic-Add-S.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From 7b2a8a7869d257cba35f53f6d877877c29cdac27 Mon Sep 17 00:00:00 2001
-From: Paul Menzel <paulepanter@users.sourceforge.net>
-Date: Sun, 14 Aug 2011 21:53:47 +0200
-Subject: [PATCH 2/4] Revert "fixed:[ios] Add memory barriers to atomic Add/Subtract and Increment/Decrement functions to ensure synchronized accesses."
-
-This reverts commit 9a10c48710df79118e39e9b3bb0a15bf1fe694d1.
-
-The build (OpenEmbedded `angstrom-2010.x` for `MACHINE = "beagleboard") fails with the following error.
-
-        make -C xbmc/threads
-        make[1]: Entering directory `/oe/build-angstrom-next/angstrom-dev/work/armv7a-angstrom-linux-gnueabi/xbmc-10.05-r11+gitr0+9a10c48710df79118e39e9b3bb0a15bf1fe694d1/git/xbmc/threads'
-        CPP     Atomics.o
-        /tmp/ccIzTm3L.s: Assembler messages:
-        /tmp/ccIzTm3L.s:40: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:48: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:76: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:83: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:111: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:118: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:145: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:152: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:180: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccIzTm3L.s:187: Error: garbage following instruction -- `dmb ish'
-        make[1]: *** [Atomics.o] Error 1
-        make[1]: Leaving directory `/oe/build-angstrom-next/angstrom-dev/work/armv7a-angstrom-linux-gnueabi/xbmc-10.05-r11+gitr0+9a10c48710df79118e39e9b3bb0a15bf1fe694d1/git/xbmc/threads'
-        make: *** [xbmc/threads/threads.a] Error 2
----
- xbmc/threads/Atomics.cpp |    8 --------
- 1 files changed, 0 insertions(+), 8 deletions(-)
-
-diff --git a/xbmc/threads/Atomics.cpp b/xbmc/threads/Atomics.cpp
-index 5b09f18..0a98a7e 100644
---- a/xbmc/threads/Atomics.cpp
-+++ b/xbmc/threads/Atomics.cpp
-@@ -194,14 +194,12 @@ long AtomicIncrement(volatile long* pAddr)
- {
-   register long val;
-   asm volatile (
--                "dmb      ish            \n" // Memory barrier. Make sure all memory accesses appearing before this complete before any that appear after
-                 "1:                     \n" 
-                 "ldrex   %0, [%1]       \n" // (val = *pAddr)
-                 "add     %0,  #1        \n" // (val += 1)
-                 "strex   r1,  %0, [%1]	\n"
-                 "cmp     r1,   #0       \n"
-                 "bne     1b             \n"
--                "dmb     ish            \n" // Memory barrier.
-                 : "=&r" (val)
-                 : "r"(pAddr)
-                 : "r1"
-@@ -273,14 +271,12 @@ long AtomicAdd(volatile long* pAddr, long amount)
- {
-   register long val;
-   asm volatile (
--                "dmb      ish            \n" // Memory barrier. Make sure all memory accesses appearing before this complete before any that appear after
-                 "1:                     \n" 
-                 "ldrex   %0, [%1]       \n" // (val = *pAddr)
-                 "add     %0,  %2        \n" // (val += amount)
-                 "strex   r1,  %0, [%1]	\n"
-                 "cmp     r1,   #0       \n"
-                 "bne     1b             \n"
--                "dmb     ish            \n" // Memory barrier.
-                 : "=&r" (val)
-                 : "r"(pAddr), "r"(amount)
-                 : "r1"
-@@ -351,14 +347,12 @@ long AtomicDecrement(volatile long* pAddr)
- {
-   register long val;
-   asm volatile (
--                "dmb      ish            \n" // Memory barrier. Make sure all memory accesses appearing before this complete before any that appear after
-                 "1:                     \n" 
-                 "ldrex   %0, [%1]       \n" // (val = *pAddr)
-                 "sub     %0,  #1        \n" // (val -= 1)
-                 "strex   r1,  %0, [%1]	\n"
-                 "cmp     r1,   #0       \n"
-                 "bne     1b             \n"
--                "dmb     ish            \n" // Memory barrier.
-                 : "=&r" (val)
-                 : "r"(pAddr)
-                 : "r1"
-@@ -431,14 +425,12 @@ long AtomicSubtract(volatile long* pAddr, long amount)
- {
-   register long val;
-   asm volatile (
--                "dmb     ish            \n" // Memory barrier. Make sure all memory accesses appearing before this complete before any that appear after
-                 "1:                     \n" 
-                 "ldrex   %0, [%1]       \n" // (val = *pAddr)
-                 "sub     %0,  %2        \n" // (val -= amount)
-                 "strex   r1,  %0, [%1]	\n"
-                 "cmp     r1,   #0       \n"
-                 "bne     1b             \n"
--                "dmb     ish            \n" // Memory barrier.
-                 : "=&r" (val)
-                 : "r"(pAddr), "r"(amount)
-                 : "r1"
--- 
-1.7.2.5
-
diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0003-Revert-fixed-ios-Add-memory-barriers-to-cas-assembly.patch b/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0003-Revert-fixed-ios-Add-memory-barriers-to-cas-assembly.patch
deleted file mode 100644
index 629017b..0000000
--- a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0003-Revert-fixed-ios-Add-memory-barriers-to-cas-assembly.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From aaae1616a09d359b52e929f944ca0ceb4bb7f831 Mon Sep 17 00:00:00 2001
-From: Paul Menzel <paulepanter@users.sourceforge.net>
-Date: Sun, 14 Aug 2011 21:55:09 +0200
-Subject: [PATCH 3/4] Revert "fixed:[ios] Add memory barriers to cas() assembly to ensure alignment of memory accesses."
-
-This reverts commit 92bab651e2253d172879995b50985645b77fecd2.
-
-The build (OpenEmbedded `angstrom-2010.x` for `MACHINE = "beagleboard") fails with the following error.
-
-        CPP     Atomics.o
-        make[1]: Entering directory `/oe/build-angstrom-next/angstrom-dev/work/armv7a-angstrom-linux-gnueabi/xbmc-10.05-r11+gitr0+92bab651e2253d172879995b50985645b77fecd2/git/xbmc/windows'
-        CPP     GUIMediaWindow.o
-        /tmp/ccrsywuV.s: Assembler messages:
-        /tmp/ccrsywuV.s:40: Error: garbage following instruction -- `dmb ish'
-        /tmp/ccrsywuV.s:48: Error: garbage following instruction -- `dmb ish'
-        make[1]: *** [Atomics.o] Error 1
-        make[1]: Leaving directory `/oe/build-angstrom-next/angstrom-dev/work/armv7a-angstrom-linux-gnueabi/xbmc-10.05-r11+gitr0+92bab651e2253d172879995b50985645b77fecd2/git/xbmc/threads'
-        make: *** [xbmc/threads/threads.a] Error 2
----
- xbmc/threads/Atomics.cpp |   33 ++++++++++++++++-----------------
- 1 files changed, 16 insertions(+), 17 deletions(-)
-
-diff --git a/xbmc/threads/Atomics.cpp b/xbmc/threads/Atomics.cpp
-index 0a98a7e..0967eb2 100644
---- a/xbmc/threads/Atomics.cpp
-+++ b/xbmc/threads/Atomics.cpp
-@@ -49,23 +49,22 @@ long cas(volatile long *pAddr, long expectedVal, long swapVal)
- #elif defined(__arm__)
- long cas(volatile long* pAddr, long expectedVal, long swapVal)
- {
--  register long prev;
--  asm volatile (
--                "dmb      ish            \n" // Memory barrier. Make sure all memory accesses appearing before this complete before any that appear after
--                "1:                      \n"
--                "ldrex    %0, [%1]       \n" // Load the current value of *pAddr(%1) into prev (%0) and lock pAddr,
--                "cmp      %0,  %2        \n" // Verify that the current value (%0) == old value (%2)
--                "bne      2f             \n" // Bail if the two values are not equal [not as expected]
--                "strex    r1,  %3, [%1]  \n"
--                "cmp      r1,  #0        \n"
--                "bne      1b             \n"
--                "dmb      ish            \n" // Memory barrier.
--                "2:                      \n"
--                : "=&r" (prev)
--                : "r"(pAddr), "r"(expectedVal),"r"(swapVal)
--                : "r1"
--                );
--  return prev;
-+  return(__sync_val_compare_and_swap(pAddr, expectedVal, swapVal));
-+//  register long prev;
-+//  asm volatile (
-+//                "1:                      \n"
-+//                "ldrex    %0, [%1]       \n" /* Load the current value of *pAddr(%1) into prev (%0) and lock pAddr,  */
-+//                "cmp      %0,  %2        \n" /* Verify that the current value (%0) == old value (%2) */
-+//                "bne      2f             \n" /* Bail if the two values are not equal [not as expected] */
-+//                "strex    r1,  %3, [%1]  \n"
-+//                "cmp      r1,  #0        \n"                
-+//                "bne      1b             \n"
-+//                "2:                        "
-+//                : "=&r" (prev)
-+//                : "r"(pAddr), "r"(expectedVal),"r"(swapVal)
-+//                : "r1"
-+//                );
-+//  return prev;
- }
- 
- #elif defined(__mips__)
--- 
-1.7.2.5
-
diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch b/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch
deleted file mode 100644
index 345e20e..0000000
--- a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From fd8f73826240aae543a41a2bfeea0056e2fe594d Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Mon, 11 Mar 2013 11:04:29 +0100
-Subject: [PATCH] configure: cope with ld-is-gold DISTRO_FEATURE
-
-Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
----
-
-Upstream-Stature: backport
-
- configure.in |   12 +++++++-----
- 1 files changed, 7 insertions(+), 5 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index ef94683..c8b459b 100755
---- a/configure.in
-+++ b/configure.in
-@@ -18,9 +18,14 @@ tolower(){
- # check for library basenames
- AC_DEFUN([XB_FIND_SONAME],
- [
-+  #set -x
-   if [[ "$host_vendor" != "apple" ]]; then
-     AC_MSG_CHECKING([for lib$2 soname])
-     $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-M 2>/dev/null | grep "^LOAD.*$2" | awk '{V=2; print $V}')
-+    if [[ -z $$1_FILENAME ]]; then
-+      #try gold linker syntax
-+      $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-t 3>&1 1>&2 2>&3 | grep "$2")
-+    fi
-     if [[ ! -z $$1_FILENAME ]]; then
-       $1_SONAME=$(objdump -p $$1_FILENAME | grep "SONAME.*$2" | awk '{V=2; print $V}')
-     fi
-@@ -55,6 +60,7 @@ AC_DEFUN([XB_FIND_SONAME],
-     AC_MSG_RESULT([$$1_SONAME])
-     AC_SUBST($1_SONAME)
-   fi
-+  #set +x
- ])
- 
- # Function to push and pop libs and includes for a command
--- 
-1.7.7.6
-
diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/configure.in-Avoid-running-code.patch b/meta-multimedia/recipes-mediacentre/xbmc/xbmc/configure.in-Avoid-running-code.patch
deleted file mode 100644
index 5c14059..0000000
--- a/meta-multimedia/recipes-mediacentre/xbmc/xbmc/configure.in-Avoid-running-code.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From cfd851660a594801a591e80dc820c65cb7bd7836 Mon Sep 17 00:00:00 2001
-From: Otavio Salvador <otavio@ossystems.com.br>
-Date: Sat, 6 Oct 2012 06:40:03 -0300
-Subject: [PATCH] configure.in: Avoid running code or we break cross-compile
-
-Upstream-Status: Backport [similar change done for 12.0]
-
-Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
----
- configure.in |    6 +-----
- 1 files changed, 1 insertions(+), 5 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index ef94683..d7efcb0 100755
---- a/configure.in
-+++ b/configure.in
-@@ -1246,11 +1246,7 @@ if test "$use_external_ffmpeg" = "yes"; then
-   AC_DEFINE([USE_EXTERNAL_FFMPEG], [1], [Whether to use external FFmpeg libraries.])
- 
-   # Disable vdpau support if external libavcodec doesn't have it
--  AC_RUN_IFELSE(
--    AC_LANG_PROGRAM([[#include <libavcodec/avcodec.h>]],
--      [[avcodec_register_all();
--        AVCodec *codec = avcodec_find_decoder_by_name("vc1_vdpau");
--        return (codec) ? 0 : 1;]]),,
-+  AC_CHECK_LIB([avcodec], [ff_vdpau_vc1_decode_picture],,
-     [if test "x$use_vdpau" = "xyes"; then
-       AC_MSG_ERROR($ffmpeg_vdpau_not_supported)
-     else
--- 
-1.7.2.5
-
diff --git a/meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb b/meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb
deleted file mode 100644
index 0d8dd5c..0000000
--- a/meta-multimedia/recipes-mediacentre/xbmc/xbmc_git.bb
+++ /dev/null
@@ -1,97 +0,0 @@
-SUMMARY = "XBMC Media Center"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=6eb631b6da7fdb01508a80213ffc35ff"
-
-DEPENDS = "libusb1 libcec libplist expat yajl gperf-native libxmu fribidi mpeg2dec ffmpeg samba fontconfig curl python libass libmodplug libmicrohttpd wavpack libmms cmake-native libsdl-image libsdl-mixer virtual/egl mysql5 sqlite3 libmms faad2 libcdio libpcre boost lzo enca avahi libsamplerate0 libxinerama libxrandr libxtst bzip2 virtual/libsdl jasper zip-native zlib libtinyxml libmad"
-#require recipes/egl/egl.inc
-
-
-SRCREV = "82388d55dae79cbb2e486e307e23202e76a43efa"
-
-# multiple issues
-PNBLACKLIST[xbmc] ?= "/usr/include/c++/ctime:70:11: error: '::gmtime' has not been declared"
-
-PV = "11.0+gitr${SRCPV}"
-PR = "r14"
-SRC_URI = "git://github.com/xbmc/xbmc.git;branch=Eden \
-           file://0001-configure-don-t-run-python-distutils-to-find-STAGING.patch \
-           file://0002-Revert-fixed-ios-Add-memory-barriers-to-atomic-Add-S.patch \
-           file://0003-Revert-fixed-ios-Add-memory-barriers-to-cas-assembly.patch \
-           file://0004-configure-cope-with-ld-is-gold-DISTRO_FEATURE.patch \
-           file://configure.in-Avoid-running-code.patch \
-"
-
-inherit autotools gettext python-dir
-
-S = "${WORKDIR}/git"
-
-# breaks compilation
-CCACHE = ""
-
-CACHED_CONFIGUREVARS += " \
-    ac_cv_path_PYTHON="${STAGING_BINDIR_NATIVE}/python-native/python" \
-"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl', 'openglesv2', d)}"
-PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,glew"
-PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,"
-
-EXTRA_OECONF = " \
-    --disable-rpath \
-    --enable-libusb \
-    --enable-airplay \
-    --disable-optical-drive \
-    --enable-external-libraries \
-    ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '--enable-gl', '--enable-gles', d)} \
-"
-
-FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -fomit-frame-pointer -O4 -ffast-math"
-BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
-
-EXTRA_OECONF_append_armv7a = "--cpu=cortex-a8"
-
-# for python modules
-export STAGING_LIBDIR
-export STAGING_INCDIR
-export PYTHON_DIR
-
-do_configure() {
-    sh bootstrap
-    oe_runconf
-}
-
-PARALLEL_MAKE = ""
-
-do_compile_prepend() {
-    for i in $(find . -name "Makefile") ; do
-        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' $i
-    done
-
-    for i in $(find . -name "*.mak*" -o    -name "Makefile") ; do
-        sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' -e 's:-rpath \$(libdir):-rpath ${libdir}:g' $i
-    done
-}
-
-INSANE_SKIP_${PN} = "rpaths"
-
-# on ARM architectures xbmc will use GLES which will make the regular wrapper fail, so start it directly
-do_install_append_arm() {
-    sed -i -e 's:Exec=xbmc:Exec=${libdir}/xbmc/xbmc.bin:g' ${D}${datadir}/applications/xbmc.desktop
-}
-
-FILES_${PN} += "${datadir}/xsessions ${datadir}/icons"
-FILES_${PN}-dbg += "${libdir}/xbmc/.debug ${libdir}/xbmc/*/.debug ${libdir}/xbmc/*/*/.debug ${libdir}/xbmc/*/*/*/.debug"
-
-# xbmc uses some kind of dlopen() method for libcec so we need to add it manually
-# OpenGL builds need glxinfo, that's in mesa-demos
-RRECOMMENDS_${PN}_append = " libcec \
-                             python \
-                             python-lang \
-                             python-re \
-                             python-netclient \
-                             libcurl \
-                             xdpyinfo \
-                             ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-demos', '', d)} \
-"
-RRECOMMENDS_${PN}_append_libc-glibc = " glibc-charmap-ibm850 glibc-gconv-ibm850"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 09/49] fwts: Update to 16.09 release
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (6 preceding siblings ...)
  2016-11-23  9:21 ` [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 10/49] libvdpau: Add recipe Khem Raj
                   ` (39 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

license change is just year change from 2014 to 2016
Fix build with clang while here

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...nstant-logical-operand-warning-with-clang.patch | 81 ++++++++++++++++++++++
 meta-oe/recipes-test/fwts/fwts_git.bb              | 21 ++++--
 2 files changed, 95 insertions(+), 7 deletions(-)
 create mode 100644 meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch

diff --git a/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch b/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch
new file mode 100644
index 0000000..ccfe580
--- /dev/null
+++ b/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch
@@ -0,0 +1,81 @@
+From 953cff93c85d3cfd5cbcac56e14443dc5f6e5fbd Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 19 Oct 2016 01:57:16 +0000
+Subject: [PATCH] ignore constant-logical-operand warning with clang
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/uefi/uefirtauthvar/uefirtauthvar.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+Index: git/src/uefi/uefirtauthvar/uefirtauthvar.c
+===================================================================
+--- git.orig/src/uefi/uefirtauthvar/uefirtauthvar.c
++++ git/src/uefi/uefirtauthvar/uefirtauthvar.c
+@@ -142,6 +142,9 @@ static int uefirtauthvar_deinit(fwts_fra
+ 	return FWTS_OK;
+ }
+ 
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Wconstant-logical-operand"
++
+ static int check_fw_support(fwts_framework *fw, uint64_t status)
+ {
+ 	if ((status == EFI_INVALID_PARAMETER) &&
+@@ -172,6 +175,8 @@ static int check_fw_support(fwts_framewo
+ 	return FWTS_OK;
+ }
+ 
++#pragma clang diagnostic pop
++
+ /*
+  * Set the created authenticated variable, AuthVarCreate,
+  * and checking the data size and data.
+Index: git/src/lib/src/fwts_acpi_tables.c
+===================================================================
+--- git.orig/src/lib/src/fwts_acpi_tables.c
++++ git/src/lib/src/fwts_acpi_tables.c
+@@ -392,10 +392,14 @@ static int fwts_acpi_handle_fadt(
+ 	/* Determine FACS addr and load it.
+ 	 * Will ignore the missing FACS in the hardware-reduced mode.
+ 	 */
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Waddress-of-packed-member"
++
+ 	result = fwts_acpi_handle_fadt_tables(fw, fadt,
+ 			"FACS", "FIRMWARE_CTRL", "X_FIRMWARE_CTRL",
+ 			&fadt->firmware_control, &fadt->x_firmware_ctrl,
+ 			provenance);
++
+ 	if (result != FWTS_OK) {
+ 		if ((result == FWTS_NULL_POINTER) &&
+ 				fwts_acpi_is_reduced_hardware(fadt)) {
+@@ -414,6 +418,7 @@ static int fwts_acpi_handle_fadt(
+ 		return FWTS_ERROR;
+ 	}
+ 	return FWTS_OK;
++#pragma clang diagnostic pop
+ }
+ 
+ /*
+Index: git/src/dmi/dmicheck/dmicheck.c
+===================================================================
+--- git.orig/src/dmi/dmicheck/dmicheck.c
++++ git/src/dmi/dmicheck/dmicheck.c
+@@ -209,6 +209,8 @@ static const char *uuid_patterns[] = {
+ 	"0A0A0A0A-0A0A-0A0A-0A0A-0A0A0A0A0A0A",
+ 	NULL,
+ };
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Wunneeded-internal-declaration"
+ 
+ static const fwts_chassis_type_map fwts_dmi_chassis_type[] = {
+ 	{ "Invalid",		FWTS_SMBIOS_CHASSIS_INVALID },
+@@ -245,6 +247,7 @@ static const fwts_chassis_type_map fwts_
+ 	{ "Convertible",	FWTS_SMBIOS_CHASSIS_CONVERTIBLE },
+ 	{ "Detachable",		FWTS_SMBIOS_CHASSIS_DETACHABLE },
+ };
++#pragma clang diagnostic pop
+ 
+ /* Remapping table from buggy version numbers to correct values */
+ static const fwts_dmi_version dmi_versions[] = {
diff --git a/meta-oe/recipes-test/fwts/fwts_git.bb b/meta-oe/recipes-test/fwts/fwts_git.bb
index 197fe20..b04be02 100644
--- a/meta-oe/recipes-test/fwts/fwts_git.bb
+++ b/meta-oe/recipes-test/fwts/fwts_git.bb
@@ -3,22 +3,29 @@ DESCRIPTION = "The tool fwts comprises of over fifty tests that are designed to
 HOMEPAGE = "https://wiki.ubuntu.com/Kernel/Reference/fwts"
 
 LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=deb8af5388e838d133eaa036f4d1496f"
+LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=31da590f3e9f3bd34dcdb9e4db568519"
 
-PV = "14.12.00"
+PV = "16.09.00"
 
-SRCREV = "efc18d16294f492b7f72bba64344b2eed50e6a69"
-SRC_URI = "git://kernel.ubuntu.com/hwe/fwts.git"
+SRCREV = "15386283ad55e2a5b9366c1f43f4531ef79b01cb"
+SRC_URI = "git://kernel.ubuntu.com/hwe/fwts.git \
+           file://0001-ignore-constant-logical-operand-warning-with-clang.patch \
+           "
 
 S = "${WORKDIR}/git"
 
-DEPENDS = "libpcre json-c glib-2.0"
+COMPATIBLE_HOST = "(i.86|x86_64|aarch64|powerpc64).*-linux"
 
-inherit autotools-brokensep
+DEPENDS = "libpcre json-c glib-2.0 dtc"
 
-CFLAGS += "-I${STAGING_INCDIR}/json-c -Wno-error=misleading-indentation"
+inherit autotools pkgconfig
+
+CFLAGS += "-I${STAGING_INCDIR}/json-c -Wno-error=unknown-pragmas"
 
 FILES_${PN} += "${libdir}/fwts/lib*${SOLIBS}"
 FILES_${PN}-dev += "${libdir}/fwts/lib*${SOLIBSDEV} ${libdir}/fwts/lib*.la"
 FILES_${PN}-staticdev += "${libdir}/fwts/lib*a"
 FILES_${PN}-dbg += "${libdir}/fwts/.debug"
+
+TOOLCHAIN = "gcc"
+
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 10/49] libvdpau: Add recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (7 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 09/49] fwts: Update to 16.09 release Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-12-17 23:53   ` Martin Jansa
  2016-11-23  9:21 ` [meta-oe][PATCH 11/49] krb5: Add -fPIC to compile flags Khem Raj
                   ` (38 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

From: Koen Kooi <koen@dominion.thruhere.net>

Needed for x86 machines

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-graphics/vdpau/libvdpau_git.bb | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 meta-oe/recipes-graphics/vdpau/libvdpau_git.bb

diff --git a/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb b/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
new file mode 100644
index 0000000..31f4df4
--- /dev/null
+++ b/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Video Decode and Presentation API for UNIX"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=83af8811a28727a13f04132cc33b7f58"
+
+DEPENDS = "virtual/libx11 libxext dri2proto"
+
+PV = "1.1.1+git${SRCPV}"
+
+SRCREV = "a21bf7aa438f5dd40d0a300a3167aa3d6f26dccc"
+SRC_URI = "git://anongit.freedesktop.org/vdpau/libvdpau"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+do_install_append() {
+    rm -f ${D}${libdir}/*/*.la
+}
+
+FILES_${PN}-dbg += "${libdir}/vdpau/.debug"
+FILES_${PN}-dev += "${libdir}/vdpau/lib*${SOLIBSDEV}"
+FILES_${PN} += "${libdir}/vdpau/lib*${SOLIBS}"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 11/49] krb5: Add -fPIC to compile flags
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (8 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 10/49] libvdpau: Add recipe Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 12/49] Disable PIE for libvdpau Khem Raj
                   ` (37 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Fixes errors on x86_64 e.g.
errors.so: relocation R_X86_64_PC32 against symbol `k5_vset_error' can not be used when making a shared object; recompile with -fPIC

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb b/meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb
index e2d0594..06f7f90 100644
--- a/meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb
+++ b/meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb
@@ -51,8 +51,8 @@ CACHED_CONFIGUREVARS += "krb5_cv_attr_constructor_destructor=yes ac_cv_func_regc
                   ac_cv_printf_positional=yes ac_cv_file__etc_environment=yes \
                   ac_cv_file__etc_TIMEZONE=no"
 
-CFLAGS_append = " -DDESTRUCTOR_ATTR_WORKS=1 -I${STAGING_INCDIR}/et"
-LDFLAGS_append = " -lpthread"
+CFLAGS_append = " -fPIC -DDESTRUCTOR_ATTR_WORKS=1 -I${STAGING_INCDIR}/et"
+LDFLAGS_append = " -pthread"
 
 FILES_${PN} += "${datadir}/gnats"
 FILES_${PN}-doc += "${datadir}/examples"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 12/49] Disable PIE for libvdpau
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (9 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 11/49] krb5: Add -fPIC to compile flags Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-multimedia][PATCH 13/49] kodi: Fix build with pic on x86_64 Khem Raj
                   ` (36 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/conf/distro/include/meta_oe_security_flags.inc | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta-oe/conf/distro/include/meta_oe_security_flags.inc b/meta-oe/conf/distro/include/meta_oe_security_flags.inc
index 2559948..e57cc5b 100644
--- a/meta-oe/conf/distro/include/meta_oe_security_flags.inc
+++ b/meta-oe/conf/distro/include/meta_oe_security_flags.inc
@@ -12,3 +12,8 @@ SECURITY_CFLAGS_pn-cpufrequtils = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libcec = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libmodplug = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-libcdio = "${SECURITY_NO_PIE_CFLAGS}"
+
+#| /mnt/b/build/tmp-glibc/sysroots/intel-corei7-64/usr/lib/libc_nonshared.a(elf-init.oS): In function `__libc_csu_init':
+#| /usr/src/debug/glibc/2.24-r0/git/csu/elf-init.c:86: undefined reference to `__init_array_start'
+
+SECURITY_CFLAGS_pn-libvdpau = "${SECURITY_NO_PIE_CFLAGS}"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 13/49] kodi: Fix build with pic on x86_64
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (10 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 12/49] Disable PIE for libvdpau Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-multimedia][PATCH 14/49] kodi-17: Add packageconfig for lcms support Khem Raj
                   ` (35 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Upgrade 17.x to latest on master

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../0012-Always-compile-libcpluff-as-PIC.patch     | 30 ++++++++++++++++++++++
 .../0005-Always-compile-libcpluff-as-PIC.patch     | 30 ++++++++++++++++++++++
 .../recipes-mediacenter/kodi/kodi_16.bb            |  1 +
 .../recipes-mediacenter/kodi/kodi_17.bb            |  3 ++-
 4 files changed, 63 insertions(+), 1 deletion(-)
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-16/0012-Always-compile-libcpluff-as-PIC.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-Always-compile-libcpluff-as-PIC.patch

diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0012-Always-compile-libcpluff-as-PIC.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0012-Always-compile-libcpluff-as-PIC.patch
new file mode 100644
index 0000000..f4b22cd
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-16/0012-Always-compile-libcpluff-as-PIC.patch
@@ -0,0 +1,30 @@
+From 1fa9026dbcaaf674aedc9734034869934845812a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 3 Nov 2016 13:10:00 -0700
+Subject: [PATCH] Always compile libcpluff as PIC
+
+Fixes errors e.g.
+
+ld: lib/cpluff/libcpluff/.libs/libcpluff.a(pcontrol.o): relocation R_X86_64_PC32 against symbol `cp_stop_plugins' can not be used when making a shared object; recompile with -fPIC
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5d47a4a..cd59129 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2636,7 +2636,7 @@ XB_CONFIG_MODULE([lib/cpluff], [
+     --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
+     --host=$host_alias \
+     --build=$build_alias \
+-    --target=$target_alias CFLAGS="$CFLAGS" CC="$CC" CXX="$CXX" LDFLAGS="$LDFLAGS" LIBS=""
++    --target=$target_alias --with-pic=yes CFLAGS="$CFLAGS" CC="$CC" CXX="$CXX" LDFLAGS="$LDFLAGS" LIBS=""
+     #LDFLAGS="$LDFLAGS -Wl,-read_only_relocs,suppress"    
+ ], [0])
+ 
+-- 
+2.10.2
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-Always-compile-libcpluff-as-PIC.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-Always-compile-libcpluff-as-PIC.patch
new file mode 100644
index 0000000..f513334
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-Always-compile-libcpluff-as-PIC.patch
@@ -0,0 +1,30 @@
+From 603e8925a8b1609d483d866346a35fefbc66cfca Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 3 Nov 2016 13:10:00 -0700
+Subject: [PATCH 5/5] Always compile libcpluff as PIC
+
+Fixes errors e.g.
+
+ld: lib/cpluff/libcpluff/.libs/libcpluff.a(pcontrol.o): relocation R_X86_64_PC32 against symbol `cp_stop_plugins' can not be used when making a shared object; recompile with -fPIC
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index b210b73..52d5f11 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2385,7 +2385,7 @@ XB_CONFIG_MODULE([lib/cpluff], [
+     --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
+     --host=$host_alias \
+     --build=$build_alias \
+-    --target=$target_alias CFLAGS="$CFLAGS" CC="$CC" CXX="$CXX" LDFLAGS="$LDFLAGS" LIBS=""
++    --target=$target_alias --with-pic=yes CFLAGS="$CFLAGS" CC="$CC" CXX="$CXX" LDFLAGS="$LDFLAGS" LIBS=""
+     #LDFLAGS="$LDFLAGS -Wl,-read_only_relocs,suppress"
+ ], [0])
+ 
+-- 
+2.10.2
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb
index 38a53ee..02216fc 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi_16.bb
@@ -76,6 +76,7 @@ SRC_URI = "git://github.com/xbmc/xbmc.git;branch=Jarvis \
            file://0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch \
            file://0010-curl-support-version-7.5.0-and-upwards.patch \
            file://0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch \
+           file://0012-Always-compile-libcpluff-as-PIC.patch \
 "
 
 inherit autotools-brokensep gettext pythonnative
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
index bdf077a..22b23c6 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
@@ -63,13 +63,14 @@ DEPENDS = " \
 
 PROVIDES = "xbmc"
 
-SRCREV = "32c7788e7cce711be5b7f3893c82dddd79658268"
+SRCREV = "7f6abd1dd6d1aefcb4303083f34aaa90a8df9fce"
 PV = "17.0+gitr${SRCPV}"
 SRC_URI = "git://github.com/xbmc/xbmc.git;branch=master \
            file://0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch \
            file://0002-handle-SIGTERM.patch \
            file://0003-add-support-to-read-frequency-output-if-using-intel-.patch \
            file://0004-Disable-DVD-support.patch \
+           file://0005-Always-compile-libcpluff-as-PIC.patch \
 "
 
 inherit autotools-brokensep gettext pythonnative
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 14/49] kodi-17: Add packageconfig for lcms support
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (11 preceding siblings ...)
  2016-11-23  9:21 ` [meta-multimedia][PATCH 13/49] kodi: Fix build with pic on x86_64 Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-networking][PATCH 15/49] samba: Fix build with musl Khem Raj
                   ` (34 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Keep it disabled by default, makes builds more
deterministic

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
index 22b23c6..05d9975 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
@@ -95,6 +95,7 @@ PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
 PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
 PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
 PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
+PACKAGECONFIG[lcms] = "--enable-lcms2,--disable-lcms2,lcms"
 
 EXTRA_OECONF_append_rpi = " --disable-openmax --enable-player=omxplayer --with-platform=raspberry-pi2"
 LDFLAGS_append_rpi = " -lvchostif "
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 15/49] samba: Fix build with musl
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (12 preceding siblings ...)
  2016-11-23  9:21 ` [meta-multimedia][PATCH 14/49] kodi-17: Add packageconfig for lcms support Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 16/49] lockdev: Pretend GNU libc on musl Khem Raj
                   ` (33 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../samba/samba-4.4.5/samba-4.2.7-pam.patch        | 36 +++++++++
 .../samba-4.3.9-remove-getpwent_r.patch            | 87 ++++++++++++++++++++++
 .../recipes-connectivity/samba/samba_4.4.5.bb      |  7 ++
 3 files changed, 130 insertions(+)
 create mode 100644 meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.2.7-pam.patch
 create mode 100644 meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.3.9-remove-getpwent_r.patch

diff --git a/meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.2.7-pam.patch b/meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.2.7-pam.patch
new file mode 100644
index 0000000..6b9ade9
--- /dev/null
+++ b/meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.2.7-pam.patch
@@ -0,0 +1,36 @@
+Lifted from gentoo and ported to 4.4.5
+
+http://data.gpo.zugaina.org/musl/net-fs/samba/files/samba-4.2.7-pam.patch
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+
+Index: samba-4.4.5/source3/wscript
+===================================================================
+--- samba-4.4.5.orig/source3/wscript
++++ samba-4.4.5/source3/wscript
+@@ -873,7 +873,7 @@ msg.msg_accrightslen = sizeof(fd);
+         if conf.env.with_iconv:
+             conf.DEFINE('HAVE_ICONV', 1)
+ 
+-    if Options.options.with_pam:
++    if Options.options.with_pam != False:
+         use_pam=True
+         conf.CHECK_HEADERS('security/pam_appl.h pam/pam_appl.h')
+         if not conf.CONFIG_SET('HAVE_SECURITY_PAM_APPL_H') and not conf.CONFIG_SET('HAVE_PAM_PAM_APPL_H'):
+@@ -945,6 +945,15 @@ int i; i = PAM_RADIO_TYPE;
+         if use_pam:
+             conf.DEFINE('WITH_PAM', 1)
+             conf.DEFINE('WITH_PAM_MODULES', 1)
++    else:
++        Logs.warn("PAM disabled")
++        use_pam=False
++        conf.undefine('WITH_PAM')
++        conf.undefine('WITH_PAM_MODULES')
++        conf.undefine('HAVE_SECURITY_PAM_APPL_H')
++        conf.undefine('PAM_RHOST')
++        conf.undefine('PAM_TTY')
++        conf.undefine('HAVE_PAM_PAM_APPL_H')
+ 
+     seteuid = False
+ 
diff --git a/meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.3.9-remove-getpwent_r.patch b/meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.3.9-remove-getpwent_r.patch
new file mode 100644
index 0000000..71db99c
--- /dev/null
+++ b/meta-networking/recipes-connectivity/samba/samba-4.4.5/samba-4.3.9-remove-getpwent_r.patch
@@ -0,0 +1,87 @@
+Musl does not have _r versions of getent() and getpwent() APIs
+
+Taken from gentoo
+http://data.gpo.zugaina.org/musl/net-fs/samba/files/samba-4.3.9-remove-getpwent_r.patch
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: samba-4.4.5/source4/torture/local/nss_tests.c
+===================================================================
+--- samba-4.4.5.orig/source4/torture/local/nss_tests.c
++++ samba-4.4.5/source4/torture/local/nss_tests.c
+@@ -247,7 +247,6 @@ static bool test_getgrnam_r(struct tortu
+ 	return true;
+ }
+ 
+-
+ static bool test_getgrgid(struct torture_context *tctx,
+ 			  gid_t gid,
+ 			  struct group *grp_p)
+@@ -333,6 +332,7 @@ static bool test_enum_passwd(struct tort
+ 	return true;
+ }
+ 
++#if HAVE_GETPWENT_R
+ static bool test_enum_r_passwd(struct torture_context *tctx,
+ 			       struct passwd **pwd_array_p,
+ 			       size_t *num_pwd_p)
+@@ -381,6 +381,7 @@ static bool test_enum_r_passwd(struct to
+ 
+ 	return true;
+ }
++#endif
+ 
+ static bool torture_assert_passwd_equal(struct torture_context *tctx,
+ 					const struct passwd *p1,
+@@ -432,7 +433,7 @@ static bool test_passwd_r(struct torture
+ 	struct passwd *pwd, pwd1, pwd2;
+ 	size_t num_pwd;
+ 
+-	torture_assert(tctx, test_enum_r_passwd(tctx, &pwd, &num_pwd),
++	torture_assert(tctx, test_enum_passwd(tctx, &pwd, &num_pwd),
+ 						"failed to enumerate passwd");
+ 
+ 	for (i=0; i < num_pwd; i++) {
+@@ -460,7 +461,7 @@ static bool test_passwd_r_cross(struct t
+ 	struct passwd *pwd, pwd1, pwd2, pwd3, pwd4;
+ 	size_t num_pwd;
+ 
+-	torture_assert(tctx, test_enum_r_passwd(tctx, &pwd, &num_pwd),
++	torture_assert(tctx, test_enum_passwd(tctx, &pwd, &num_pwd),
+ 						"failed to enumerate passwd");
+ 
+ 	for (i=0; i < num_pwd; i++) {
+@@ -531,6 +532,7 @@ static bool test_enum_group(struct tortu
+ 	return true;
+ }
+ 
++#if HAVE_GETGRENT_R
+ static bool test_enum_r_group(struct torture_context *tctx,
+ 			      struct group **grp_array_p,
+ 			      size_t *num_grp_p)
+@@ -579,6 +581,7 @@ static bool test_enum_r_group(struct tor
+ 
+ 	return true;
+ }
++#endif
+ 
+ static bool torture_assert_group_equal(struct torture_context *tctx,
+ 				       const struct group *g1,
+@@ -635,7 +638,7 @@ static bool test_group_r(struct torture_
+ 	struct group *grp, grp1, grp2;
+ 	size_t num_grp;
+ 
+-	torture_assert(tctx, test_enum_r_group(tctx, &grp, &num_grp),
++	torture_assert(tctx, test_enum_group(tctx, &grp, &num_grp),
+ 					       "failed to enumerate group");
+ 
+ 	for (i=0; i < num_grp; i++) {
+@@ -663,7 +666,7 @@ static bool test_group_r_cross(struct to
+ 	struct group *grp, grp1, grp2, grp3, grp4;
+ 	size_t num_grp;
+ 
+-	torture_assert(tctx, test_enum_r_group(tctx, &grp, &num_grp),
++	torture_assert(tctx, test_enum_group(tctx, &grp, &num_grp),
+ 					       "failed to enumerate group");
+ 
+ 	for (i=0; i < num_grp; i++) {
diff --git a/meta-networking/recipes-connectivity/samba/samba_4.4.5.bb b/meta-networking/recipes-connectivity/samba/samba_4.4.5.bb
index e9694d4..a27bcd1 100644
--- a/meta-networking/recipes-connectivity/samba/samba_4.4.5.bb
+++ b/meta-networking/recipes-connectivity/samba/samba_4.4.5.bb
@@ -20,6 +20,10 @@ SRC_URI = "${SAMBA_MIRROR}/stable/samba-${PV}.tar.gz \
            file://0006-avoid-using-colon-in-the-checking-msg.patch \
            file://volatiles.03_samba \
           "
+SRC_URI_append_libc-musl = " \
+           file://samba-4.2.7-pam.patch \
+           file://samba-4.3.9-remove-getpwent_r.patch \
+          "
 
 SRC_URI[md5sum] = "6950c5e9f7bdeb8a610c2ca957a15be4"
 SRC_URI[sha256sum] = "b876ef2e63f66265490e80a122e66ef2d7616112b839df68f56ac2e1ce17a7bd"
@@ -29,6 +33,9 @@ inherit systemd waf-samba cpan-base perlnative update-rc.d
 RDEPENDS_${PN}_remove = "perl"
 
 DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libldb krb5 libbsd libaio libpam"
+DEPENDS_append_libc-musl = " libtirpc"
+CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc"
+LDFLAGS_append_libc-musl = " -ltirpc"
 
 SYSVINITTYPE_linuxstdbase = "lsb"
 SYSVINITTYPE = "sysv"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 16/49] lockdev: Pretend GNU libc on musl
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (13 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 15/49] samba: Fix build with musl Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-multimedia][PATCH 17/49] kodi-17: Fix build with musl Khem Raj
                   ` (32 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

it has all needed features but expects " -D__GNU_LIBRARY__"
so make it happy when using musl

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-support/lockdev/lockdev_git.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta-oe/recipes-support/lockdev/lockdev_git.bb b/meta-oe/recipes-support/lockdev/lockdev_git.bb
index 023b9a7..507ce3f 100644
--- a/meta-oe/recipes-support/lockdev/lockdev_git.bb
+++ b/meta-oe/recipes-support/lockdev/lockdev_git.bb
@@ -18,3 +18,5 @@ do_configure_prepend () {
     # Make automake happy
     touch ChangeLog
 }
+
+CFLAGS_append_libc-musl = " -D__GNU_LIBRARY__"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 17/49] kodi-17: Fix build with musl
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (14 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 16/49] lockdev: Pretend GNU libc on musl Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH V2 18/49] breakpad: Upgrade to latest Khem Raj
                   ` (31 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../0006-build-Add-support-for-musl-triplets.patch | 180 ++++++++
 .../kodi/kodi-17/0007-Remove-FILEWRAP.patch        |  58 +++
 .../kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch   | 496 +++++++++++++++++++++
 .../recipes-mediacenter/kodi/kodi_17.bb            |   6 +
 4 files changed, 740 insertions(+)
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-build-Add-support-for-musl-triplets.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Remove-FILEWRAP.patch
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch

diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-build-Add-support-for-musl-triplets.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-build-Add-support-for-musl-triplets.patch
new file mode 100644
index 0000000..71c5c41
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-build-Add-support-for-musl-triplets.patch
@@ -0,0 +1,180 @@
+From 99769ac5653884e49d1c8c34e65d2e565cd9e314 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 6 Nov 2016 11:54:41 -0800
+Subject: [PATCH 6/6] build: Add support for musl triplets
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac               | 12 ++++++------
+ m4/xbmc_arch.m4            | 22 +++++++++++-----------
+ tools/depends/configure.ac | 12 ++++++------
+ 3 files changed, 23 insertions(+), 23 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 52d5f11..a772973 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -526,7 +526,7 @@ case $host in
+      use_x11=no
+      build_shared_lib=yes
+      ;;
+-  i*86*-linux-gnu*|i*86*-*-linux-uclibc*)
++  i*86*-linux-gnu*|i*86*-*-linux-uclibc*|i*86*-*-linux-musl*)
+      target_platform=target_linux
+      CORE_SYSTEM_NAME=linux
+      ARCH="i486-linux"
+@@ -549,7 +549,7 @@ case $host in
+        fi
+      fi
+      ;;
+-  x86_64-*-linux-gnu*|x86_64-*-linux-uclibc*)
++  x86_64-*-linux-gnu*|x86_64-*-linux-uclibc*|x86_64-*-linux-musl*)
+      target_platform=target_linux
+      CORE_SYSTEM_NAME=linux
+      ARCH="x86_64-linux"
+@@ -601,17 +601,17 @@ case $host in
+      DEPENDS_ROOT_FOR_XCODE=$(echo ${prefix%/*})
+      AC_SUBST([DEPENDS_ROOT_FOR_XCODE])
+      ;;
+-  powerpc-*-linux-gnu*|powerpc-*-linux-uclibc*)
++  powerpc-*-linux-gnu*|powerpc-*-linux-uclibc*|powerpc-*-linux-musl*)
+      target_platform=target_linux
+      CORE_SYSTEM_NAME=linux
+      ARCH="powerpc-linux"
+      ;;
+-  powerpc64*-*-linux-gnu*|powerpc64*-*-linux-uclibc*)
++  powerpc64*-*-linux-gnu*|powerpc64*-*-linux-uclibc*|powerpc64*-*-linux-musl*)
+      target_platform=target_linux
+      CORE_SYSTEM_NAME=linux
+      ARCH="powerpc64-linux"
+      ;;
+-  arm*-*-linux-gnu*|arm*-*-linux-uclibc*)
++  arm*-*-linux-gnu*|arm*-*-linux-uclibc*|arm*-*-linux-musl*)
+      target_platform=target_linux
+      CORE_SYSTEM_NAME=linux
+      ARCH="arm"
+@@ -621,7 +621,7 @@ case $host in
+      use_gl=no
+      USE_STATIC_FFMPEG=1
+      ;;
+-  aarch64*-*-linux-gnu*|aarch64*-*-linux-uclibc*)
++  aarch64*-*-linux-gnu*|aarch64*-*-linux-uclibc*|aarch64*-*-linux-musl*)
+      target_platform=target_linux
+      ARCH="aarch64"
+      use_arch="aarch64"
+diff --git a/m4/xbmc_arch.m4 b/m4/xbmc_arch.m4
+index d28f263..ff5dc20 100644
+--- a/m4/xbmc_arch.m4
++++ b/m4/xbmc_arch.m4
+@@ -2,10 +2,10 @@ AC_DEFUN([XBMC_SETUP_ARCH_DEFINES],[
+ 
+ # build detection and setup - this is the native arch
+ case $build in
+-  i*86*-linux-gnu*|i*86*-*-linux-uclibc*)
++  i*86*-linux-gnu*|i*86*-*-linux-uclibc*|i*86*-*-linux-musl*)
+      AC_SUBST(NATIVE_ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+-  x86_64-*-linux-gnu*|x86_64-*-linux-uclibc*)
++  x86_64-*-linux-gnu*|x86_64-*-linux-uclibc*|x86_64-*-linux-musl*)
+      AC_SUBST(NATIVE_ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+   i386-*-freebsd*)
+@@ -17,13 +17,13 @@ case $build in
+   *86*-apple-darwin*)
+      AC_SUBST(NATIVE_ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_DARWIN -DTARGET_DARWIN_OSX -D_LINUX")
+      ;;
+-  powerpc-*-linux-gnu*|powerpc-*-linux-uclibc*)
++  powerpc-*-linux-gnu*|powerpc-*-linux-uclibc*|powerpc-*-linux-musl*)
+      AC_SUBST(NATIVE_ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_POWERPC")
+      ;;
+-  powerpc64-*-linux-gnu*|powerpc64-*-linux-uclibc*)
++  powerpc64-*-linux-gnu*|powerpc64-*-linux-uclibc*|powerpc64-*-linux-musl*)
+      AC_SUBST(NATIVE_ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_POWERPC64")
+      ;;
+-  arm*-*-linux-gnu*|arm*-*-linux-uclibc*)
++  arm*-*-linux-gnu*|arm*-*-linux-uclibc*|arm*-*-linux-musl*)
+      AC_SUBST(NATIVE_ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+   *)
+@@ -33,10 +33,10 @@ esac
+ 
+ # host detection and setup - this is the target arch
+ case $host in
+-  i*86*-linux-gnu*|i*86*-*-linux-uclibc*)
++  i*86*-linux-gnu*|i*86*-*-linux-uclibc*|i*86*-*-linux-musl*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+-  x86_64-*-linux-gnu*|x86_64-*-linux-uclibc*)
++  x86_64-*-linux-gnu*|x86_64-*-linux-uclibc*|x86_64-*-linux-musl*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+   i386-*-freebsd*)
+@@ -54,16 +54,16 @@ case $host in
+   powerpc-apple-darwin*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_DARWIN -DTARGET_DARWIN_OSX -D_LINUX")
+      ;;
+-  powerpc-*-linux-gnu*|powerpc-*-linux-uclibc*)
++  powerpc-*-linux-gnu*|powerpc-*-linux-uclibc*|powerpc-*-linux-musl*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_POWERPC")
+      ;;
+-  powerpc64*-*-linux-gnu*|powerpc64*-*-linux-uclibc*)
++  powerpc64*-*-linux-gnu*|powerpc64*-*-linux-uclibc*|powerpc64*-*-linux-musl*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_POWERPC64")
+      ;;
+-  arm*-*-linux-gnu*|arm*-*-linux-uclibc*|aarch64*-*-linux-gnu*|aarch64*-*-linux-uclibc*)
++  arm*-*-linux-gnu*|arm*-*-linux-uclibc*|arm*-*-linux-musl*|aarch64*-*-linux-gnu*|aarch64*-*-linux-uclibc*|aarch64*-*-linux-musl*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+-  mips*-*-linux-gnu*|mips*-*-linux-uclibc*)
++  mips*-*-linux-gnu*|mips*-*-linux-uclibc*|mips*-*-linux-musl*)
+      AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
+      ;;
+   *-*linux-android*)
+diff --git a/tools/depends/configure.ac b/tools/depends/configure.ac
+index a0bc386..b96d20e 100644
+--- a/tools/depends/configure.ac
++++ b/tools/depends/configure.ac
+@@ -120,13 +120,13 @@ platform_cc=gcc
+ platform_cxx=g++
+ 
+ case $build in
+-  arm*-*-linux-gnu*|arm*-*-linux-uclibc*)
++  arm*-*-linux-gnu*|arm*-*-linux-uclibc*|arm*-*-linux-musl*)
+     build_os="linux"
+   ;;
+-  *i686*-linux-gnu*|i*86*-*-linux-uclibc*)
++  *i686*-linux-gnu*|i*86*-*-linux-uclibc*|i*86*-*-linux-musl*)
+     build_os="linux"
+   ;;
+-  x86_64*-linux-gnu*|x86_64-*-linux-uclibc*)
++  x86_64*-linux-gnu*|x86_64-*-linux-uclibc*|x86_64-*-linux-musl*)
+     build_os="linux"
+   ;;
+   *darwin*)
+@@ -186,7 +186,7 @@ case $host in
+     #android builds are always cross
+     cross_compiling="yes"
+   ;;
+-  arm*-*-linux-gnu*|arm*-*-linux-uclibc*)
++  arm*-*-linux-gnu*|arm*-*-linux-uclibc*|arm*-*-linux-musl*)
+     if test "$use_platform" = "auto"; then
+       if test "x$use_cpu" = "xauto"; then
+         use_cpu=$host_cpu
+@@ -210,12 +210,12 @@ case $host in
+       platform_os="linux"
+     fi
+   ;;
+-  *i686*-linux-gnu*|i*86*-*-linux-uclibc*)
++  *i686*-linux-gnu*|i*86*-*-linux-uclibc*|i*86*-*-linux-musl*)
+     use_cpu=$host_cpu
+     use_toolchain="${use_toolchain:-/usr}"
+     platform_os="linux"
+   ;;
+-  x86_64*-linux-gnu*|x86_64-*-linux-uclibc*)
++  x86_64*-linux-gnu*|x86_64-*-linux-uclibc*|x86_64-*-linux-musl*)
+     use_cpu=$host_cpu
+     use_toolchain="${use_toolchain:-/usr}"
+     platform_cflags="-fPIC -DPIC"
+-- 
+2.10.2
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Remove-FILEWRAP.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Remove-FILEWRAP.patch
new file mode 100644
index 0000000..c2d3259
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Remove-FILEWRAP.patch
@@ -0,0 +1,58 @@
+From f4c5710192256e903b253353fb018ebd68d0b651 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 6 Nov 2016 22:35:16 -0800
+Subject: [PATCH 7/8] Remove FILEWRAP
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ xbmc/utils/posix/PosixInterfaceForCLog.cpp | 6 +-----
+ xbmc/utils/posix/PosixInterfaceForCLog.h   | 4 +---
+ 2 files changed, 2 insertions(+), 8 deletions(-)
+
+diff --git a/xbmc/utils/posix/PosixInterfaceForCLog.cpp b/xbmc/utils/posix/PosixInterfaceForCLog.cpp
+index 6614487..a91d157 100644
+--- a/xbmc/utils/posix/PosixInterfaceForCLog.cpp
++++ b/xbmc/utils/posix/PosixInterfaceForCLog.cpp
+@@ -28,10 +28,6 @@
+ #include "platform/android/activity/XBMCApp.h"
+ #endif // TARGET_ANDROID
+ 
+-struct FILEWRAP : public FILE
+-{};
+-
+-
+ CPosixInterfaceForCLog::CPosixInterfaceForCLog() :
+   m_file(NULL)
+ { }
+@@ -51,7 +47,7 @@ bool CPosixInterfaceForCLog::OpenLogFile(const std::string &logFilename, const s
+   (void)remove(backupOldLogToFilename.c_str()); // if it's failed, try to continue
+   (void)rename(logFilename.c_str(), backupOldLogToFilename.c_str()); // if it's failed, try to continue
+ 
+-  m_file = (FILEWRAP*)fopen(logFilename.c_str(), "wb");
++  m_file = fopen(logFilename.c_str(), "wb");
+   if (!m_file)
+     return false; // error, can't open log file
+ 
+diff --git a/xbmc/utils/posix/PosixInterfaceForCLog.h b/xbmc/utils/posix/PosixInterfaceForCLog.h
+index bb53442..2983e73 100644
+--- a/xbmc/utils/posix/PosixInterfaceForCLog.h
++++ b/xbmc/utils/posix/PosixInterfaceForCLog.h
+@@ -21,8 +21,6 @@
+ 
+ #include <string>
+ 
+-struct FILEWRAP; // forward declaration, wrapper for FILE
+-
+ class CPosixInterfaceForCLog
+ {
+ public:
+@@ -34,5 +32,5 @@ public:
+   void PrintDebugString(const std::string& debugString);
+   static void GetCurrentLocalTime(int& hour, int& minute, int& second);
+ private:
+-  FILEWRAP* m_file;
++  FILE * m_file;
+ };
+-- 
+2.10.2
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch
new file mode 100644
index 0000000..7598c7a
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch
@@ -0,0 +1,496 @@
+From 3a10d9479e7c9a77c478b8b428e4309ff22e8498 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 6 Nov 2016 23:08:27 -0800
+Subject: [PATCH 8/8] Fix file_Emu on musl
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ xbmc/cores/DllLoader/exports/emu_msvcrt.cpp        |  28 ++--
+ xbmc/cores/DllLoader/exports/emu_msvcrt.h          |   2 +-
+ .../DllLoader/exports/util/EmuFileWrapper.cpp      | 172 +++++++++------------
+ xbmc/cores/DllLoader/exports/util/EmuFileWrapper.h |  27 ++--
+ xbmc/cores/DllLoader/exports/wrapper.c             |   4 +-
+ 5 files changed, 99 insertions(+), 134 deletions(-)
+
+diff --git a/xbmc/cores/DllLoader/exports/emu_msvcrt.cpp b/xbmc/cores/DllLoader/exports/emu_msvcrt.cpp
+index ab14942..a39014a 100644
+--- a/xbmc/cores/DllLoader/exports/emu_msvcrt.cpp
++++ b/xbmc/cores/DllLoader/exports/emu_msvcrt.cpp
+@@ -51,6 +51,7 @@
+ #include <fcntl.h>
+ #include <time.h>
+ #include <signal.h>
++#include <paths.h>
+ #ifdef TARGET_POSIX
+ #include "PlatformDefs.h" // for __stat64
+ #include "XFileUtils.h"
+@@ -476,13 +477,10 @@ extern "C"
+     EmuFileObject* o = g_emuFileWrapper.GetFileObjectByDescriptor(fd);
+     if (o)
+     {
+-      if(!o->used)
+-        return NULL;
+-
+       int nmode = convert_fmode(mode);
+       if( (o->mode & nmode) != nmode)
+         CLog::Log(LOGWARNING, "dll_fdopen - mode 0x%x differs from fd mode 0x%x", nmode, o->mode);
+-      return &o->file_emu;
++      return g_emuFileWrapper.GetStreamByFileObject(o);
+     }
+     else if (!IS_STD_DESCRIPTOR(fd))
+     {
+@@ -545,7 +543,7 @@ extern "C"
+         return -1;
+       }
+       object->mode = iMode;
+-      return g_emuFileWrapper.GetDescriptorByStream(&object->file_emu);
++      return g_emuFileWrapper.GetDescriptorByFileObject(object);
+     }
+     delete pFile;
+     return -1;
+@@ -1214,8 +1212,8 @@ extern "C"
+   {
+     FILE* file = NULL;
+ #if defined(TARGET_LINUX) && !defined(TARGET_ANDROID)
+-    if (strcmp(filename, MOUNTED) == 0
+-    ||  strcmp(filename, MNTTAB) == 0)
++    if (strcmp(filename, _PATH_MOUNTED) == 0
++    ||  strcmp(filename, _PATH_MNTTAB) == 0)
+     {
+       CLog::Log(LOGINFO, "%s - something opened the mount file, let's hope it knows what it's doing", __FUNCTION__);
+       return fopen(filename, mode);
+@@ -1622,7 +1620,7 @@ extern "C"
+     int ret;
+ 
+     ret = dll_fgetpos64(stream, &tmpPos);
+-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
++#if !defined(__GLIBC__) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
+     *pos = (fpos_t)tmpPos;
+ #else
+     pos->__pos = (off_t)tmpPos.__pos;
+@@ -1635,8 +1633,9 @@ extern "C"
+     CFile* pFile = g_emuFileWrapper.GetFileXbmcByStream(stream);
+     if (pFile != NULL)
+     {
+-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
+-      *pos = pFile->GetPosition();
++#if !defined(__GLIBC__) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
++      uint64_t *ppos = (uint64_t *) pos;
++      *ppos = pFile->GetPosition();
+ #else
+       pos->__pos = pFile->GetPosition();
+ #endif
+@@ -1657,8 +1656,9 @@ extern "C"
+     int fd = g_emuFileWrapper.GetDescriptorByStream(stream);
+     if (fd >= 0)
+     {
+-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
+-      if (dll_lseeki64(fd, *pos, SEEK_SET) >= 0)
++#if !defined(__GLIBC__) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
++      const uint64_t *ppos = (const uint64_t *) pos;
++      if (dll_lseeki64(fd, *ppos, SEEK_SET) >= 0)
+ #else
+       if (dll_lseeki64(fd, (__off64_t)pos->__pos, SEEK_SET) >= 0)
+ #endif
+@@ -1674,7 +1674,7 @@ extern "C"
+     {
+       // it might be something else than a file, or the file is not emulated
+       // let the operating system handle it
+-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
++#if !defined(__GLIBC__) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
+       return fsetpos(stream, pos);
+ #else
+       return fsetpos64(stream, pos);
+@@ -1690,7 +1690,7 @@ extern "C"
+     if (fd >= 0)
+     {
+       fpos64_t tmpPos;
+-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
++#if !defined(__GLIBC__) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
+       tmpPos= *pos;
+ #else
+       tmpPos.__pos = (off64_t)(pos->__pos);
+diff --git a/xbmc/cores/DllLoader/exports/emu_msvcrt.h b/xbmc/cores/DllLoader/exports/emu_msvcrt.h
+index 3294d9a..c7c483f 100644
+--- a/xbmc/cores/DllLoader/exports/emu_msvcrt.h
++++ b/xbmc/cores/DllLoader/exports/emu_msvcrt.h
+@@ -24,7 +24,7 @@
+ #define _onexit_t void*
+ #endif
+ 
+-#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
++#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
+ typedef off_t __off_t;
+ typedef int64_t off64_t;
+ typedef off64_t __off64_t;
+diff --git a/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.cpp b/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.cpp
+index 8927d41..e9a2ab0 100644
+--- a/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.cpp
++++ b/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.cpp
+@@ -52,16 +52,7 @@ constexpr bool isValidFilePtr(FILE* f)
+ }
+ CEmuFileWrapper::CEmuFileWrapper()
+ {
+-  // since we always use dlls we might just initialize it directly
+-  for (int i = 0; i < MAX_EMULATED_FILES; i++)
+-  {
+-    memset(&m_files[i], 0, sizeof(EmuFileObject));
+-    m_files[i].used = false;
+-#if defined(TARGET_WINDOWS) && (_MSC_VER >= 1900)
+-    m_files[i].file_emu._Placeholder = new kodi_iobuf();
+-#endif
+-    FileDescriptor(m_files[i].file_emu)->_file = -1;
+-  }
++  memset(m_files, 0, sizeof(m_files));
+ }
+ 
+ CEmuFileWrapper::~CEmuFileWrapper()
+@@ -73,29 +64,7 @@ void CEmuFileWrapper::CleanUp()
+ {
+   CSingleLock lock(m_criticalSection);
+   for (int i = 0; i < MAX_EMULATED_FILES; i++)
+-  {
+-    if (m_files[i].used)
+-    {
+-      m_files[i].file_xbmc->Close();
+-      delete m_files[i].file_xbmc;
+-
+-      if (m_files[i].file_lock)
+-      {
+-        delete m_files[i].file_lock;
+-        m_files[i].file_lock = nullptr;
+-      }
+-#if !defined(TARGET_WINDOWS)
+-      //Don't memset on Windows as it overwrites our pointer
+-      memset(&m_files[i], 0, sizeof(EmuFileObject));
+-#endif
+-      m_files[i].used = false;
+-      FileDescriptor(m_files[i].file_emu)->_file = -1;
+-    }
+-#if defined(TARGET_WINDOWS) && (_MSC_VER >= 1900)
+-    delete static_cast<kodi_iobuf*>(m_files[i].file_emu._Placeholder);
+-    m_files[i].file_emu._Placeholder = nullptr;
+-#endif
+-  }
++    UnRegisterFileObject(&m_files[i], true);
+ }
+ 
+ EmuFileObject* CEmuFileWrapper::RegisterFileObject(XFILE::CFile* pFile)
+@@ -106,13 +75,11 @@ EmuFileObject* CEmuFileWrapper::RegisterFileObject(XFILE::CFile* pFile)
+ 
+   for (int i = 0; i < MAX_EMULATED_FILES; i++)
+   {
+-    if (!m_files[i].used)
++    if (!m_files[i].file_xbmc)
+     {
+       // found a free location
+       object = &m_files[i];
+-      object->used = true;
+       object->file_xbmc = pFile;
+-      FileDescriptor(object->file_emu)->_file = (i + FILE_WRAPPER_OFFSET);
+       object->file_lock = new CCriticalSection();
+       break;
+     }
+@@ -121,82 +88,74 @@ EmuFileObject* CEmuFileWrapper::RegisterFileObject(XFILE::CFile* pFile)
+   return object;
+ }
+ 
+-void CEmuFileWrapper::UnRegisterFileObjectByDescriptor(int fd)
++void CEmuFileWrapper::UnRegisterFileObject(EmuFileObject *object, bool free_file)
++
+ {
+-  int i = fd - FILE_WRAPPER_OFFSET;
+-  if (! (i >= 0 && i < MAX_EMULATED_FILES))
+-    return;
++  if (object && object->file_xbmc)
++  {
++    if (object->file_xbmc && free_file)
++    {
++      object->file_xbmc->Close();
++      delete object->file_xbmc;
++    }
++    if (object->file_lock)
++    {
++      delete object->file_lock;
++    }
+ 
+-  if (!m_files[i].used)
+-    return;
++    memset(object, 0, sizeof(*object));
++   }
++}
+ 
++void CEmuFileWrapper::UnRegisterFileObjectByDescriptor(int fd)
++{
+   CSingleLock lock(m_criticalSection);
+-
+-  // we assume the emulated function alreay deleted the CFile object
+-  if (m_files[i].file_lock)
+-  {
+-    delete m_files[i].file_lock;
+-    m_files[i].file_lock = nullptr;
+-  }
+-#if !defined(TARGET_WINDOWS)
+-  //Don't memset on Windows as it overwrites our pointer
+-  memset(&m_files[i], 0, sizeof(EmuFileObject));
+-#endif
+-  m_files[i].used = false;
+-  FileDescriptor(m_files[i].file_emu)->_file = -1;
++  UnRegisterFileObject(GetFileObjectByDescriptor(fd), false);
+ }
+ 
+ void CEmuFileWrapper::UnRegisterFileObjectByStream(FILE* stream)
+ {
+   if (isValidFilePtr(stream))
+   {
+-    return UnRegisterFileObjectByDescriptor(FileDescriptor(*stream)->_file);
++    CSingleLock lock(m_criticalSection);
++    UnRegisterFileObject(GetFileObjectByStream(stream), false);
+   }
+ }
+ 
+ void CEmuFileWrapper::LockFileObjectByDescriptor(int fd)
+ {
+-  int i = fd - FILE_WRAPPER_OFFSET;
+-  if (i >= 0 && i < MAX_EMULATED_FILES)
++  EmuFileObject* object = GetFileObjectByDescriptor(fd);
++  if (object && object->file_xbmc)
+   {
+-    if (m_files[i].used)
+-    {
+-      m_files[i].file_lock->lock();
+-    }
++    object->file_lock->lock();
+   }
+ }
+ 
+ bool CEmuFileWrapper::TryLockFileObjectByDescriptor(int fd)
+ {
+-  int i = fd - FILE_WRAPPER_OFFSET;
+-  if (i >= 0 && i < MAX_EMULATED_FILES)
++  EmuFileObject* object = GetFileObjectByDescriptor(fd);
++  if (object && object->file_xbmc)
+   {
+-    if (m_files[i].used)
+-    {
+-      return m_files[i].file_lock->try_lock();
+-    }
++    return object->file_lock->try_lock();
+   }
+   return false;
+ }
+ 
+ void CEmuFileWrapper::UnlockFileObjectByDescriptor(int fd)
+ {
+-  int i = fd - FILE_WRAPPER_OFFSET;
+-  if (i >= 0 && i < MAX_EMULATED_FILES)
++  EmuFileObject* object = GetFileObjectByDescriptor(fd);
++  if (object && object->file_xbmc)
+   {
+-    if (m_files[i].used)
+-    {
+-      m_files[i].file_lock->unlock();
+-    }
++    object->file_lock->unlock();
+   }
+ }
+ 
+ EmuFileObject* CEmuFileWrapper::GetFileObjectByDescriptor(int fd)
+ {
+-  int i = fd - FILE_WRAPPER_OFFSET;
++  int i = fd - 0x7000000;
+   if (i >= 0 && i < MAX_EMULATED_FILES)
+   {
+-    if (m_files[i].used)
++    if (m_files[i].file_xbmc)
+     {
+       return &m_files[i];
+     }
+@@ -204,20 +163,39 @@ EmuFileObject* CEmuFileWrapper::GetFileObjectByDescriptor(int fd)
+   return nullptr;
+ }
+ 
++int CEmuFileWrapper::GetDescriptorByFileObject(EmuFileObject *object)
++{
++  int i = object - m_files;
++  if (i >= 0 && i < MAX_EMULATED_FILES)
++  {
++    return 0x7000000 + i;
++  }
++
++  return -1;
++}
++
+ EmuFileObject* CEmuFileWrapper::GetFileObjectByStream(FILE* stream)
+ {
+-  if (isValidFilePtr(stream))
++  EmuFileObject *object = (EmuFileObject*) stream;
++  if (object >= &m_files[0] || object < &m_files[MAX_EMULATED_FILES])
+   {
+-    return GetFileObjectByDescriptor(FileDescriptor(*stream)->_file);
++    if (object->file_xbmc)
++    {
++      return object;
++    }
+   }
++  return NULL;
++}
+ 
+-  return nullptr;
++FILE* CEmuFileWrapper::GetStreamByFileObject(EmuFileObject *object)
++{
++  return (FILE*) object;
+ }
+ 
+ XFILE::CFile* CEmuFileWrapper::GetFileXbmcByDescriptor(int fd)
+ {
+   auto object = GetFileObjectByDescriptor(fd);
+-  if (object != nullptr && object->used)
++  if (object != nullptr)
+   {
+     return object->file_xbmc;
+   }
+@@ -228,8 +206,9 @@ XFILE::CFile* CEmuFileWrapper::GetFileXbmcByStream(FILE* stream)
+ {
+   if (isValidFilePtr(stream))
+   {
+-    auto object = GetFileObjectByDescriptor(FileDescriptor(*stream)->_file);
+-    if (object != nullptr && object->used)
++    EmuFileObject* object = GetFileObjectByStream(stream);
++    if (object != NULL)
++
+     {
+       return object->file_xbmc;
+     }
+@@ -239,32 +218,21 @@ XFILE::CFile* CEmuFileWrapper::GetFileXbmcByStream(FILE* stream)
+ 
+ int CEmuFileWrapper::GetDescriptorByStream(FILE* stream)
+ {
+-  if (isValidFilePtr(stream))
+-  {
+-    int i = FileDescriptor(*stream)->_file - FILE_WRAPPER_OFFSET;
+-    if (i >= 0 && i < MAX_EMULATED_FILES)
+-    {
+-      return i + FILE_WRAPPER_OFFSET;
+-    }
+-  }
+-  return -1;
++  return GetDescriptorByFileObject(GetFileObjectByStream(stream));
+ }
+ 
+ FILE* CEmuFileWrapper::GetStreamByDescriptor(int fd)
+ {
+-  auto object = GetFileObjectByDescriptor(fd);
+-  if (object != nullptr && object->used)
+-  {
+-    return &object->file_emu;
+-  }
+-  return nullptr;
++  return GetStreamByFileObject(GetFileObjectByDescriptor(fd));
++}
++
++bool CEmuFileWrapper::DescriptorIsEmulatedFile(int fd)
++{
++  return GetFileObjectByDescriptor(fd) != NULL;
+ }
+ 
+ bool CEmuFileWrapper::StreamIsEmulatedFile(FILE* stream)
+ {
+-  if (isValidFilePtr(stream))
+-  {
+-    return DescriptorIsEmulatedFile(FileDescriptor(*stream)->_file);
+-  }
+-  return false;
++  return GetFileObjectByStream(stream) != NULL;
+ }
++
+diff --git a/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.h b/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.h
+index 786fa85..311a5cf 100644
+--- a/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.h
++++ b/xbmc/cores/DllLoader/exports/util/EmuFileWrapper.h
+@@ -25,14 +25,14 @@
+ #include "system.h"
+ #include "threads/CriticalSection.h"
+ 
+-#if defined(TARGET_POSIX) && !defined(TARGET_DARWIN) && !defined(TARGET_FREEBSD) && !defined(TARGET_ANDROID) && !defined(__UCLIBC__)
+-#define _file _fileno
+-#elif defined(__UCLIBC__)
+-#define _file __filedes
+-#endif
++//#if defined(TARGET_POSIX) && !defined(TARGET_DARWIN) && !defined(TARGET_FREEBSD) && !defined(TARGET_ANDROID) && !defined(__UCLIBC__)
++//#define _file _fileno
++//#elif defined(__UCLIBC__)
++//#define _file __filedes
++//#endif
+ 
+ #define MAX_EMULATED_FILES    50
+-#define FILE_WRAPPER_OFFSET   0x00000200
++//#define FILE_WRAPPER_OFFSET   0x00000200
+ 
+ namespace XFILE
+ {
+@@ -47,12 +47,9 @@ struct kodi_iobuf {
+ 
+ typedef struct stEmuFileObject
+ {
+-  FILE    file_emu;
+   XFILE::CFile*  file_xbmc;
+   CCriticalSection *file_lock;
+   int mode;
+-  //Stick this last to avoid 3-7 bytes of padding
+-  bool    used;
+ } EmuFileObject;
+ 
+ class CEmuFileWrapper
+@@ -67,22 +64,22 @@ public:
+   void CleanUp();
+ 
+   EmuFileObject* RegisterFileObject(XFILE::CFile* pFile);
++  void UnRegisterFileObject(EmuFileObject*, bool free_file);
+   void UnRegisterFileObjectByDescriptor(int fd);
+   void UnRegisterFileObjectByStream(FILE* stream);
+   void LockFileObjectByDescriptor(int fd);
+   bool TryLockFileObjectByDescriptor(int fd);
+   void UnlockFileObjectByDescriptor(int fd);
+   EmuFileObject* GetFileObjectByDescriptor(int fd);
++  int GetDescriptorByFileObject(EmuFileObject*);
+   EmuFileObject* GetFileObjectByStream(FILE* stream);
++  FILE* GetStreamByFileObject(EmuFileObject*);
+   XFILE::CFile* GetFileXbmcByDescriptor(int fd);
+   XFILE::CFile* GetFileXbmcByStream(FILE* stream);
+-  static int GetDescriptorByStream(FILE* stream);
++  int GetDescriptorByStream(FILE* stream);
+   FILE* GetStreamByDescriptor(int fd);
+-  static constexpr bool DescriptorIsEmulatedFile(int fd)
+-  {
+-    return fd >= FILE_WRAPPER_OFFSET && fd < FILE_WRAPPER_OFFSET + MAX_EMULATED_FILES;
+-  }
+-  static bool StreamIsEmulatedFile(FILE* stream);
++  bool DescriptorIsEmulatedFile(int fd);
++  bool StreamIsEmulatedFile(FILE* stream);
+ private:
+   EmuFileObject m_files[MAX_EMULATED_FILES];
+   CCriticalSection m_criticalSection;
+diff --git a/xbmc/cores/DllLoader/exports/wrapper.c b/xbmc/cores/DllLoader/exports/wrapper.c
+index e363662..07825f3 100644
+--- a/xbmc/cores/DllLoader/exports/wrapper.c
++++ b/xbmc/cores/DllLoader/exports/wrapper.c
+@@ -39,13 +39,13 @@
+ #endif
+ #include <dlfcn.h>
+ 
+-#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
++#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
+ typedef off_t     __off_t;
+ typedef int64_t   off64_t;
+ typedef off64_t   __off64_t;
+ typedef fpos_t    fpos64_t;
+ #define stat64    stat
+-#if defined(TARGET_DARWIN) || defined(TARGET_ANDROID)
++#if defined(TARGET_DARWIN) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
+ #define _G_va_list va_list
+ #endif
+ #endif
+-- 
+2.10.2
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
index 05d9975..13be123 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
@@ -71,6 +71,12 @@ SRC_URI = "git://github.com/xbmc/xbmc.git;branch=master \
            file://0003-add-support-to-read-frequency-output-if-using-intel-.patch \
            file://0004-Disable-DVD-support.patch \
            file://0005-Always-compile-libcpluff-as-PIC.patch \
+           file://0006-build-Add-support-for-musl-triplets.patch \
+"
+
+SRC_URI_append_libc-musl = " \
+           file://0007-Remove-FILEWRAP.patch \
+           file://0008-Fix-file_Emu-on-musl.patch \
 "
 
 inherit autotools-brokensep gettext pythonnative
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH V2 18/49] breakpad: Upgrade to latest
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (15 preceding siblings ...)
  2016-11-23  9:21 ` [meta-multimedia][PATCH 17/49] kodi-17: Fix build with musl Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-26  0:12   ` Martin Jansa
  2016-11-23  9:21 ` [meta-filesystems][PATCH 19/49] xfsprogs: Upgrade 3.2.3 -> 4.8.0 Khem Raj
                   ` (30 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Switch to using git
Gets aarch64 support

Define PV and use SRCPV

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../breakpad/{breakpad_svn.bb => breakpad_git.bb}  | 22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)
 rename meta-oe/recipes-devtools/breakpad/{breakpad_svn.bb => breakpad_git.bb} (86%)

diff --git a/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
similarity index 86%
rename from meta-oe/recipes-devtools/breakpad/breakpad_svn.bb
rename to meta-oe/recipes-devtools/breakpad/breakpad_git.bb
index b573ea5..c0e306c 100644
--- a/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb
+++ b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -13,9 +13,25 @@ inherit autotools
 
 BBCLASSEXTEND = "native"
 
-SRCREV = "r1435"
-SRC_URI = "svn://google-breakpad.googlecode.com/svn;module=trunk;protocol=http"
-S = "${WORKDIR}/trunk"
+PV = "1.0+git${SRCPV}"
+
+SRCREV_FORMAT = "breakpad_glog_gmock_gtest_protobuf_lss"
+
+SRCREV_breakpad = "2f6cb866d615d6240a18c7535c994c6bb93b1ba5"
+SRCREV_glog = "d8cb47f77d1c31779f3ff890e1a5748483778d6a"
+SRCREV_gmock = "f7d03d2734759ee12b57d2dbcb695607d89e8e05"
+SRCREV_gtest = "ec44c6c1675c25b9827aacd08c02433cccde7780"
+SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
+SRCREV_lss = "1549d20f6d3e7d66bb4e687c0ab9da42c2bff2ac"
+
+SRC_URI = "git://github.com/google/breakpad;name=breakpad \
+           git://github.com/google/glog.git;destsuffix=git/src/third_party/glog;name=glog \
+           git://github.com/google/googlemock.git;destsuffix=git/src/testing;name=gmock \
+           git://github.com/google/googletest.git;destsuffix=git/src/testing/gtest;name=gtest \
+           git://github.com/google/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
+           git://chromium.googlesource.com/linux-syscall-support;protocol=https;destsuffix=git/src/third_party/lss;name=lss \
+"
+S = "${WORKDIR}/git"
 
 COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-filesystems][PATCH 19/49] xfsprogs: Upgrade 3.2.3 -> 4.8.0
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (16 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH V2 18/49] breakpad: Upgrade to latest Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-25  0:31   ` Martin Jansa
  2016-11-23  9:21 ` [meta-networking][PATCH 20/49] arno-iptables-firewall: Add recipe Khem Raj
                   ` (29 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Change-Id: I0015da261d540f99bfdebba703fef9403eebff7b
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-utils/xfsprogs/xfsprogs_3.2.3.bb       | 55 ----------------------
 .../recipes-utils/xfsprogs/xfsprogs_4.8.0.bb       | 52 ++++++++++++++++++++
 2 files changed, 52 insertions(+), 55 deletions(-)
 delete mode 100644 meta-filesystems/recipes-utils/xfsprogs/xfsprogs_3.2.3.bb
 create mode 100644 meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.8.0.bb

diff --git a/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_3.2.3.bb b/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_3.2.3.bb
deleted file mode 100644
index 460a898..0000000
--- a/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_3.2.3.bb
+++ /dev/null
@@ -1,55 +0,0 @@
-SUMMARY = "XFS Filesystem Utilities"
-HOMEPAGE = "http://oss.sgi.com/projects/xfs"
-SECTION = "base"
-LICENSE = "GPLv2 & LGPLv2.1"
-LICENSE_libhandle = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://doc/COPYING;md5=dbdb5f4329b7e7145de650e9ecd4ac2a"
-DEPENDS = "util-linux"
-
-SRC_URI = "ftp://oss.sgi.com/projects/xfs/cmd_tars/${BP}.tar.gz \
-    file://xfsprogs-generate-crctable-which-is-moved-into-runti.patch \
-    file://remove-install-as-user.patch \
-    file://drop-configure-check-for-aio.patch \
-"
-
-SRC_URI[md5sum] = "9f383e36682709e62b12c125e5d8b895"
-SRC_URI[sha256sum] = "7a5124a880997939551b519610a2e54bd4cd0b0adfd563ce3f4de30827109ac9"
-
-inherit autotools-brokensep
-
-PACKAGES =+ "${PN}-fsck ${PN}-mkfs libhandle"
-
-RDEPENDS_${PN} = "${PN}-fsck ${PN}-mkfs"
-
-FILES_${PN}-fsck = "${base_sbindir}/fsck.xfs"
-FILES_${PN}-mkfs = "${base_sbindir}/mkfs.xfs"
-FILES_libhandle = "${base_libdir}/libhandle${SOLIBS}"
-
-EXTRA_OECONF = "--enable-gettext=no"
-do_configure () {
-    # Prevent Makefile from calling configure without arguments,
-    # when do_configure gets called for a second time.
-    rm -f include/builddefs include/platform_defs.h
-    # Recreate configure script.
-    rm -f configure
-    oe_runmake configure
-    # Configure.
-    export DEBUG="-DNDEBUG"
-    gnu-configize --force
-    oe_runconf
-}
-
-LIBTOOL = "${HOST_SYS}-libtool"
-EXTRA_OEMAKE = "'LIBTOOL=${LIBTOOL}'"
-TARGET_CC_ARCH += "${LDFLAGS}"
-PARALLEL_MAKE = ""
-
-do_install () {
-    export DIST_ROOT=${D}
-    oe_runmake install
-    # needed for xfsdump
-    oe_runmake install-dev
-}
-
-# http://errors.yoctoproject.org/Errors/Details/83236/
-PNBLACKLIST[xfsprogs] ?= "BROKEN: Needs upgrade to 4.5.0 version to be compatible with Kernel uapi changes from 4.5"
diff --git a/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.8.0.bb b/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.8.0.bb
new file mode 100644
index 0000000..049a4be
--- /dev/null
+++ b/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.8.0.bb
@@ -0,0 +1,52 @@
+SUMMARY = "XFS Filesystem Utilities"
+HOMEPAGE = "http://oss.sgi.com/projects/xfs"
+SECTION = "base"
+LICENSE = "GPLv2 & LGPLv2.1"
+LICENSE_libhandle = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://doc/COPYING;md5=dbdb5f4329b7e7145de650e9ecd4ac2a"
+DEPENDS = "util-linux"
+SRC_URI = "https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/${BP}.tar.xz \
+"
+SRC_URI[md5sum] = "4f047bc9a28b48a95c6db0ad5ce4dbcb"
+SRC_URI[sha256sum] = "82ce9cb3a55f4e208e8fe3471ff0aff0602b8300f3e50bdf05cc7e11549686f9"
+
+inherit autotools-brokensep
+
+PACKAGES =+ "${PN}-fsck ${PN}-mkfs ${PN}-repair libhandle"
+
+
+RDEPENDS_${PN} = "${PN}-fsck ${PN}-mkfs ${PN}-repair"
+
+FILES_${PN}-fsck = "${base_sbindir}/fsck.xfs"
+FILES_${PN}-mkfs = "${base_sbindir}/mkfs.xfs"
+FILES_${PN}-repair = "${base_sbindir}/xfs_repair"
+
+FILES_libhandle = "${base_libdir}/libhandle${SOLIBS}"
+
+EXTRA_OECONF = "--enable-gettext=no \
+               INSTALL_USER=root \
+               INSTALL_GROUP=root \
+"
+
+EXTRA_AUTORECONF += "-I ${S}/m4 --exclude=autoheader"
+
+PACKAGECONFIG ??= "readline blkid"
+
+PACKAGECONFIG[readline] = "--enable-readline=yes,--enable-readline=no,readline"
+PACKAGECONFIG[blkid] = "--enable-blkid=yes,--enable-blkid=no,util-linux"
+
+export DEBUG="-DNDEBUG"
+
+EXTRA_OEMAKE = "DIST_ROOT='${D}'"
+
+do_configure_prepend () {
+    # Prevent Makefile from calling configure without arguments,
+    # when do_configure gets called for a second time.
+    rm -f ${B}/include/builddefs ${B}/include/platform_defs.h ${B}/configure
+    # Recreate configure script.
+    oe_runmake configure
+}
+
+do_install_append() {
+        oe_runmake 'DESTDIR=${D}' install-dev
+}
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 20/49] arno-iptables-firewall: Add recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (17 preceding siblings ...)
  2016-11-23  9:21 ` [meta-filesystems][PATCH 19/49] xfsprogs: Upgrade 3.2.3 -> 4.8.0 Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-networking][PATCH 21/49] dibbler: " Khem Raj
                   ` (28 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../arno-iptables-firewall_2.0.1g.bb               | 35 ++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.1g.bb

diff --git a/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.1g.bb b/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.1g.bb
new file mode 100644
index 0000000..6fd0aff
--- /dev/null
+++ b/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.1g.bb
@@ -0,0 +1,35 @@
+SUMMARY = "IPTables based firewall scripts"
+HOMEPAGE = "http://rocky.eld.leidenuniv.nl/joomla/index.php?option=com_content&view=article&id=45&Itemid=63"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://gpl_license.txt;md5=11c7b65c4a4acb9d5175f7e9bf99c403"
+
+SRC_URI = "http://rocky.eld.leidenuniv.nl/arno-iptables-firewall/${BPN}_${PV}.tar.gz \
+          "
+SRC_URI[md5sum] = "77eba7f148bf2840a3e35a6f50c9c353"
+SRC_URI[sha256sum] = "0bafd85ddc235752250eaec0c7fdb21e530912483f6807a97f86158ed2d301f7"
+
+S = "${WORKDIR}/${BPN}_${PV}"
+
+inherit systemd
+
+do_install() {
+	install -d ${D}${sysconfdir} ${D}${sbindir} ${D}${bindir} ${D}${systemd_unitdir}/system ${D}${sysconfdir}/init.d
+	install -d ${D}${datadir}/arno-iptables-firewall ${D}${sysconfdir}/arno-iptables-firewall
+	cp -r ${S}${sysconfdir}/arno-iptables-firewall ${D}${sysconfdir}/
+	install -m 0755 ${S}${sysconfdir}/init.d/arno-iptables-firewall ${D}${bindir}
+	install -m 0755 ${S}/bin/arno-iptables-firewall ${D}${sbindir}
+	install -m 0755 ${S}/bin/arno-fwfilter ${D}${bindir}
+	cp -r ${S}/share/arno-iptables-firewall/* ${D}${datadir}/arno-iptables-firewall
+	cp -r ${S}/etc/arno-iptables-firewall/* ${D}${sysconfdir}/arno-iptables-firewall
+	install -m 0644 ${S}/${systemd_unitdir}/system/arno-iptables-firewall.service ${D}${systemd_unitdir}/system
+	sed -i -e 's%/usr/local/sbin%${bindir}%g' ${D}${systemd_unitdir}/system/arno-iptables-firewall.service
+	sed -i -e 's%/usr/local/sbin%${sbindir}%g' ${D}${bindir}/arno-iptables-firewall
+	sed -i -e 's%/usr/local%${exec_prefix}%g' ${D}${sysconfdir}/arno-iptables-firewall/firewall.conf
+	sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${bindir}/arno-fwfilter
+	sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${datadir}/arno-iptables-firewall/plugins/traffic-accounting-helper
+	sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${datadir}/arno-iptables-firewall/plugins/dyndns-host-open-helper
+}
+
+SYSTEMD_SERVICE_${PN} = "arno-iptables-firewall.service"
+FILES_${PN} += "${systemd_unitdir}/system/arno-iptables-firewall.service"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 21/49] dibbler: Add recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (18 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 20/49] arno-iptables-firewall: Add recipe Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-networking][PATCH 22/49] ez-ipupdate: " Khem Raj
                   ` (27 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

dibbler is a light weight DHCPv6 implementation

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../dibbler/dibbler_fix_getSize_crash.patch        | 72 ++++++++++++++++
 .../dibbler/dibbler/types.patch                    | 96 ++++++++++++++++++++++
 .../recipes-connectivity/dibbler/dibbler_1.0.1.bb  | 37 +++++++++
 3 files changed, 205 insertions(+)
 create mode 100644 meta-networking/recipes-connectivity/dibbler/dibbler/dibbler_fix_getSize_crash.patch
 create mode 100644 meta-networking/recipes-connectivity/dibbler/dibbler/types.patch
 create mode 100644 meta-networking/recipes-connectivity/dibbler/dibbler_1.0.1.bb

diff --git a/meta-networking/recipes-connectivity/dibbler/dibbler/dibbler_fix_getSize_crash.patch b/meta-networking/recipes-connectivity/dibbler/dibbler/dibbler_fix_getSize_crash.patch
new file mode 100644
index 0000000..adb249f
--- /dev/null
+++ b/meta-networking/recipes-connectivity/dibbler/dibbler/dibbler_fix_getSize_crash.patch
@@ -0,0 +1,72 @@
+diff --git a/ClntMessages/ClntMsg.cpp b/ClntMessages/ClntMsg.cpp
+index eeaadd0..0cf5dce 100644
+--- a/ClntMessages/ClntMsg.cpp
++++ b/ClntMessages/ClntMsg.cpp
+@@ -346,7 +346,9 @@ unsigned long TClntMsg::getTimeout()
+ 
+ void TClntMsg::send()
+ {
+-    char* pkt = new char[getSize()];
++    size_t size = getSize();
++    char* pkt = new char[size];
++    memset(pkt, 0, size);
+ 
+     srand((uint32_t)time(NULL));
+     if (!RC)
+@@ -364,7 +366,7 @@ void TClntMsg::send()
+ 
+     RC++;
+ 
+-    this->storeSelf(pkt);
++    storeSelf(pkt);
+ 
+     SPtr<TIfaceIface> ptrIface = ClntIfaceMgr().getIfaceByID(Iface);
+     if (!ptrIface) {
+diff --git a/ClntMessages/ClntMsgRequest.cpp b/ClntMessages/ClntMsgRequest.cpp
+index 4a7b5da..f3e40fd 100644
+--- a/ClntMessages/ClntMsgRequest.cpp
++++ b/ClntMessages/ClntMsgRequest.cpp
+@@ -143,7 +143,10 @@ TClntMsgRequest::TClntMsgRequest(List(TAddrIA) IAs,
+     IsDone=false;
+     SPtr<TOpt> ptr;
+     ptr = new TOptDUID(OPTION_CLIENTID, ClntCfgMgr().getDUID(), this );
+-    Options.push_back( ptr );
++
++    if ( ptr ) { 
++        Options.push_back( ptr );
++    }
+ 
+     if (!srvDUID) {
+ 	Log(Error) << "Unable to send REQUEST: ServerId not specified.\n" << LogEnd;
+@@ -154,7 +157,9 @@ TClntMsgRequest::TClntMsgRequest(List(TAddrIA) IAs,
+     ptr = (Ptr*) new TOptDUID(OPTION_SERVERID, srvDUID,this);
+     // all IAs provided by checkSolicit
+     SPtr<TAddrIA> ClntAddrIA;
+-    Options.push_back( ptr );
++    if ( ptr ) {
++        Options.push_back( ptr );
++    }
+ 	
+     IAs.first();
+     while (ClntAddrIA = IAs.get()) 
+diff --git a/Messages/Msg.cpp b/Messages/Msg.cpp
+index baa6c86..6eef6c7 100644
+--- a/Messages/Msg.cpp
++++ b/Messages/Msg.cpp
+@@ -66,10 +66,15 @@ int TMsg::getSize()
+ {
+     int pktsize=0;
+     TOptList::iterator opt;
++    int optionCount = 0;  
+     for (opt = Options.begin(); opt!=Options.end(); ++opt)
+     {
+-	pktsize += (*opt)->getSize();
++        Log(Info) << "### CPE Debug - Option with index  " << optionCount++ << LogEnd ;
++        Log(Info) << "### CPE Debug - Option with type " << (*opt)->getOptType() << LogEnd ;
++        pktsize += (*opt)->getSize();
+     }
++    Log(Info) << "### CPE Debug - Packet size of option (Add 4) " << pktsize << LogEnd ;
++
+     return pktsize + 4;
+ }
+ 
diff --git a/meta-networking/recipes-connectivity/dibbler/dibbler/types.patch b/meta-networking/recipes-connectivity/dibbler/dibbler/types.patch
new file mode 100644
index 0000000..28f18ef
--- /dev/null
+++ b/meta-networking/recipes-connectivity/dibbler/dibbler/types.patch
@@ -0,0 +1,96 @@
+Apply fixes to build on musl
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+
+Index: dibbler-1.0.1/IfaceMgr/IfaceMgr.cpp
+===================================================================
+--- dibbler-1.0.1.orig/IfaceMgr/IfaceMgr.cpp
++++ dibbler-1.0.1/IfaceMgr/IfaceMgr.cpp
+@@ -16,6 +16,7 @@
+ #include <string>
+ #include <stdlib.h>
+ #include <errno.h>
++#include <sys/select.h>
+ #include "Portable.h"
+ #include "IfaceMgr.h"
+ #include "Iface.h"
+Index: dibbler-1.0.1/IfaceMgr/SocketIPv6.h
+===================================================================
+--- dibbler-1.0.1.orig/IfaceMgr/SocketIPv6.h
++++ dibbler-1.0.1/IfaceMgr/SocketIPv6.h
+@@ -18,6 +18,7 @@ class TIfaceSocket;
+ 
+ #include <iostream>
+ #include <string>
++#include <sys/select.h>
+ 
+ #include "Portable.h"
+ #include "DHCPConst.h"
+Index: dibbler-1.0.1/Port-linux/ethtool-local.h
+===================================================================
+--- dibbler-1.0.1.orig/Port-linux/ethtool-local.h
++++ dibbler-1.0.1/Port-linux/ethtool-local.h
+@@ -22,9 +22,9 @@
+  */
+ 
+ typedef unsigned long long u64;
+-typedef __uint32_t u32;        
+-typedef __uint16_t u16;        
+-typedef __uint8_t u8;          
++typedef uint32_t u32;
++typedef uint16_t u16;
++typedef uint8_t u8;
+ 
+ #include "ethtool-kernel.h"
+ 
+Index: dibbler-1.0.1/Port-linux/interface.c
+===================================================================
+--- dibbler-1.0.1.orig/Port-linux/interface.c
++++ dibbler-1.0.1/Port-linux/interface.c
+@@ -26,6 +26,7 @@
+ #include <sys/socket.h>
+ #include <sys/ioctl.h>
+ #include <linux/if.h>
++#include <linux/sockios.h>
+ #include <syslog.h>
+ #include <string.h>
+ #include <errno.h>
+@@ -35,13 +36,10 @@
+ #include <stdlib.h>
+ #include <assert.h>
+ 
+-#include <net/if.h>
+ 
+ #include "ethtool-local.h"
+ #include "interface.h"
+ #include <stdarg.h>
+-#include <linux/sockios.h>
+-#include <linux/if_ether.h>
+ 
+ void daemon_log(int loglevel, const char *fmt,...)
+ {
+Index: dibbler-1.0.1/Port-linux/lowlevel-linux-link-state.c
+===================================================================
+--- dibbler-1.0.1.orig/Port-linux/lowlevel-linux-link-state.c
++++ dibbler-1.0.1/Port-linux/lowlevel-linux-link-state.c
+@@ -18,7 +18,6 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <unistd.h>
+-#include <bits/sigthread.h>
+ #include "Portable.h"
+ #include "interface.h"
+ 
+Index: dibbler-1.0.1/Port-linux/utils.h
+===================================================================
+--- dibbler-1.0.1.orig/Port-linux/utils.h
++++ dibbler-1.0.1/Port-linux/utils.h
+@@ -4,6 +4,7 @@
+ #include <asm/types.h>
+ //#include <resolv.h>
+ #include <linux/types.h>
++#include <sys/types.h>
+ 
+ #include "libnetlink.h"
+ #include "ll_map.h"
diff --git a/meta-networking/recipes-connectivity/dibbler/dibbler_1.0.1.bb b/meta-networking/recipes-connectivity/dibbler/dibbler_1.0.1.bb
new file mode 100644
index 0000000..a2d46db
--- /dev/null
+++ b/meta-networking/recipes-connectivity/dibbler/dibbler_1.0.1.bb
@@ -0,0 +1,37 @@
+SUMMARY = "Dibbler DHCPv6 client"
+DESCRIPTION = "Dibbler is a portable DHCPv6 implementation. It supports stateful as well as stateless autoconfiguration for IPv6."
+HOMEPAGE = "http://klub.com.pl/dhcpv6"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7236695bb6d4461c105d685a8b61c4e3"
+
+SRC_URI = "http://klub.com.pl/dhcpv6/${BPN}/${P}.tar.gz \
+        file://dibbler_fix_getSize_crash.patch \
+        file://types.patch \
+"
+SRC_URI[md5sum] = "93357bea3ec35b0c1d11242055361409"
+SRC_URI[sha256sum] = "27869877e060c039cbc24a5f6a9dd69006bf67de0ffdf29a645a80aef6e476a1"
+
+PACKAGECONFIG ??= "debug bind-reuse resolvconf dns-update"
+
+PACKAGECONFIG[debug] = "--enable-debug,,,"
+PACKAGECONFIG[efence] = "--enable-efence,,,"
+PACKAGECONFIG[bind-reuse] = "--enable-bind-reuse,,,"
+PACKAGECONFIG[dst-addr-filter] = "--enable-dst-addr-check,,,"
+PACKAGECONFIG[resolvconf] = "--enable-resolvconf,,,"
+PACKAGECONFIG[dns-update] = "--enable-dns-update,,,"
+PACKAGECONFIG[auth] = "--enable-auth,,,"
+PACKAGECONFIG[gtest] = "--enable-gtest-static,,,"
+
+inherit autotools
+
+DEPENDS += "flex-native"
+
+CFLAGS += "-D_GNU_SOURCE"
+
+PACKAGES =+ "${PN}-requestor ${PN}-client ${PN}-relay ${PN}-server"
+
+FILES_${PN}-client = "${sbindir}/${PN}-client"
+FILES_${PN}-relay = "${sbindir}/${PN}-relay"
+FILES_${PN}-requestor = "${sbindir}/${PN}-requestor"
+FILES_${PN}-server = "${sbindir}/${PN}-server"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 22/49] ez-ipupdate: Add recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (19 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 21/49] dibbler: " Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-multimedia][PATCH 23/49] miniupnpd: " Khem Raj
                   ` (26 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

A client for automaticly updating your dynamic hostname parameters

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../ez-ipupdate/ez-ipupdate_3.0.11b7.bb            | 15 ++++++++++
 .../ez-ipupdate/files/Makefile.am.patch            | 14 ++++++++++
 .../ez-ipupdate/files/cache_file.c.patch           | 32 ++++++++++++++++++++++
 .../ez-ipupdate/files/conf_file.c.patch            | 18 ++++++++++++
 4 files changed, 79 insertions(+)
 create mode 100644 meta-networking/recipes-connectivity/ez-ipupdate/ez-ipupdate_3.0.11b7.bb
 create mode 100644 meta-networking/recipes-connectivity/ez-ipupdate/files/Makefile.am.patch
 create mode 100644 meta-networking/recipes-connectivity/ez-ipupdate/files/cache_file.c.patch
 create mode 100644 meta-networking/recipes-connectivity/ez-ipupdate/files/conf_file.c.patch

diff --git a/meta-networking/recipes-connectivity/ez-ipupdate/ez-ipupdate_3.0.11b7.bb b/meta-networking/recipes-connectivity/ez-ipupdate/ez-ipupdate_3.0.11b7.bb
new file mode 100644
index 0000000..cb5375c
--- /dev/null
+++ b/meta-networking/recipes-connectivity/ez-ipupdate/ez-ipupdate_3.0.11b7.bb
@@ -0,0 +1,15 @@
+SUMMARY = "daemon that sends updates when your IP changes"
+HOMEPAGE = "http://sourceforge.net/projects/ez-ipupdate/"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7783169b4be06b54e86730eb01bc3a31"
+
+SRC_URI = "http://sourceforge.net/projects/ez-ipupdate/files/${BPN}/${PV}/${BPN}-${PV}.tar.gz \
+    file://Makefile.am.patch \
+    file://cache_file.c.patch \
+    file://conf_file.c.patch \
+    "
+SRC_URI[md5sum] = "525be4550b4461fdf105aed8e753b020"
+SRC_URI[sha256sum] = "a15ec0dc0b78ec7578360987c68e43a67bc8d3591cbf528a323588830ae22c20"
+
+inherit autotools pkgconfig
diff --git a/meta-networking/recipes-connectivity/ez-ipupdate/files/Makefile.am.patch b/meta-networking/recipes-connectivity/ez-ipupdate/files/Makefile.am.patch
new file mode 100644
index 0000000..d80ed3e
--- /dev/null
+++ b/meta-networking/recipes-connectivity/ez-ipupdate/files/Makefile.am.patch
@@ -0,0 +1,14 @@
+Remove EXTRASRC and EXTRAOBJ from obj list
+
+--- ez-ipupdate-3.0.11b7/Makefile.am.orig	2014-07-02 13:47:50.758034983 -0600
++++ ez-ipupdate-3.0.11b7/Makefile.am	2014-07-02 13:48:38.406034650 -0600
+@@ -1,7 +1,7 @@
+ 
+ bin_PROGRAMS = ez-ipupdate
+-ez_ipupdate_SOURCES = ez-ipupdate.c conf_file.c conf_file.h md5.c md5.h cache_file.c cache_file.h error.h pid_file.c pid_file.h dprintf.h @EXTRASRC@
+-ez_ipupdate_LDADD = @EXTRAOBJ@
++ez_ipupdate_SOURCES = ez-ipupdate.c conf_file.c conf_file.h md5.c md5.h cache_file.c cache_file.h error.h pid_file.c pid_file.h dprintf.h
++ez_ipupdate_LDADD =
+ 
+ EXTRA_DIST = getpass.c ez-ipupdate.lsm example.conf example-pgpow.conf example-dhs.conf example-dyndns.conf example-ods.conf example-tzo.conf example-gnudip.conf example-easydns.conf example-justlinux.conf example-dyns.conf CHANGELOG mkbinary example-heipv6tb.conf
+ 
diff --git a/meta-networking/recipes-connectivity/ez-ipupdate/files/cache_file.c.patch b/meta-networking/recipes-connectivity/ez-ipupdate/files/cache_file.c.patch
new file mode 100644
index 0000000..de5eb3a
--- /dev/null
+++ b/meta-networking/recipes-connectivity/ez-ipupdate/files/cache_file.c.patch
@@ -0,0 +1,32 @@
+Dont assume errno type
+
+--- ez-ipupdate-3.0.11b7/cache_file.c.orig	2014-07-02 14:01:07.126029412 -0600
++++ ez-ipupdate-3.0.11b7/cache_file.c	2014-07-02 14:08:27.422026332 -0600
+@@ -43,11 +43,11 @@
+ #include <cache_file.h>
+ 
+ #if HAVE_STRERROR
+-extern int errno;
++#  include <errno.h>
+ #  define error_string strerror(errno)
+ #elif HAVE_SYS_ERRLIST
+ extern const char *const sys_errlist[];
+-extern int errno;
++#  include <errno.h>
+ #  define error_string (sys_errlist[errno])
+ #else
+ #  define error_string "error message not found"
+@@ -63,11 +63,11 @@
+ #  define dprintf(x)
+ #endif
+ #if HAVE_STRERROR
+-extern int errno;
++#  include <errno.h>
+ #  define error_string strerror(errno)
+ #elif HAVE_SYS_ERRLIST
+ extern const char *const sys_errlist[];
+-extern int errno;
++#  include <errno.h>
+ #  define error_string (sys_errlist[errno])
+ #else
+ #  define error_string "error message not found"
diff --git a/meta-networking/recipes-connectivity/ez-ipupdate/files/conf_file.c.patch b/meta-networking/recipes-connectivity/ez-ipupdate/files/conf_file.c.patch
new file mode 100644
index 0000000..02218a3
--- /dev/null
+++ b/meta-networking/recipes-connectivity/ez-ipupdate/files/conf_file.c.patch
@@ -0,0 +1,18 @@
+Dont assume errno type
+
+--- ez-ipupdate-3.0.11b7/conf_file.c.orig	2014-07-02 14:01:19.174029328 -0600
++++ ez-ipupdate-3.0.11b7/conf_file.c	2014-07-02 14:08:42.982026223 -0600
+@@ -38,11 +38,11 @@
+ #include <conf_file.h>
+ 
+ #if HAVE_STRERROR
+-extern int errno;
++#  include <errno.h>
+ #  define error_string strerror(errno)
+ #elif HAVE_SYS_ERRLIST
+ extern const char *const sys_errlist[];
+-extern int errno;
++#  include <errno.h>
+ #  define error_string (sys_errlist[errno])
+ #else
+ #  define error_string "error message not found"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 23/49] miniupnpd: Add recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (20 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 22/49] ez-ipupdate: " Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-26  0:16   ` Martin Jansa
  2016-11-23  9:21 ` [meta-networking][PATCH 24/49] inetutils: Disable rsh, rcp, rlogin on musl Khem Raj
                   ` (25 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../miniupnpd/miniupnpd_2.0.bb                     | 38 ++++++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb

diff --git a/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb b/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
new file mode 100644
index 0000000..dfa3fed
--- /dev/null
+++ b/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
@@ -0,0 +1,38 @@
+SUMMARY = "Lightweight UPnP IGD daemon"
+DESCRIPTION = "The miniUPnP daemon is an UPnP IGD (internet gateway device) \
+which provide NAT traversal services to any UPnP enabled client on \
+the network."
+
+SECTION = "networking"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=aa71c78c373ccfe0ff207af0cd966d91"
+
+inherit autotools gettext pkgconfig
+
+DEPENDS += "iptables net-tools util-linux"
+
+SRC_URI = "http://miniupnp.tuxfamily.org/files/download.php?file=${P}.tar.gz \
+"
+SRC_URI[md5sum] = "1c07a215dd9b362e75a9efc05e2fb3b4"
+SRC_URI[sha256sum] = "d96aa3a00e0f5490826bba3cb97e68cd27479e5839adac4b9bcb66eae786bfb7"
+
+IPV6 = "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '--ipv6', '', d)}"
+
+do_compile() {
+    cd ${S}
+    CONFIG_OPTIONS="${IPV6} --leasefile" ./genconfig.sh
+    oe_runmake -f Makefile.linux
+}
+
+do_install() {
+    install -d ${D}/${sbindir}
+    install ${S}/miniupnpd ${D}/${sbindir}
+    install -d ${D}/${sysconfdir}/${BPN}
+    install ${S}/netfilter/iptables_init.sh ${D}/${sysconfdir}/${BPN}
+    install ${S}/netfilter/iptables_removeall.sh ${D}/${sysconfdir}/${BPN}
+    install ${S}/netfilter/ip6tables_init.sh ${D}/${sysconfdir}/${BPN}
+    install ${S}/netfilter/ip6tables_removeall.sh ${D}/${sysconfdir}/${BPN}
+    install -m 0644 -b ${S}/miniupnpd.conf ${D}/${sysconfdir}/${BPN}
+    install -d ${D}/${sysconfdir}/init.d
+    install ${S}/linux/miniupnpd.init.d.script ${D}/${sysconfdir}/init.d/miniupnpd
+}
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 24/49] inetutils: Disable rsh, rcp, rlogin on musl
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (21 preceding siblings ...)
  2016-11-23  9:21 ` [meta-multimedia][PATCH 23/49] miniupnpd: " Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-networking][PATCH 25/49] ssmtp: Add recipe Khem Raj
                   ` (24 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

They all need rcmd() API from rpc implementation
and while glibc provides it bundled, musl does not
so we disable these apps

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-connectivity/inetutils/inetutils_1.9.4.bb | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/meta-networking/recipes-connectivity/inetutils/inetutils_1.9.4.bb b/meta-networking/recipes-connectivity/inetutils/inetutils_1.9.4.bb
index 8db6b74..6d841fa 100644
--- a/meta-networking/recipes-connectivity/inetutils/inetutils_1.9.4.bb
+++ b/meta-networking/recipes-connectivity/inetutils/inetutils_1.9.4.bb
@@ -5,6 +5,7 @@ talkd, telnet, telnetd, tftp, tftpd, and uucpd."
 HOMEPAGE = "http://www.gnu.org/software/inetutils"
 SECTION = "net"
 DEPENDS = "ncurses netbase readline"
+
 LICENSE = "GPLv3"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=0c7051aef9219dc7237f206c5c4179a7"
@@ -46,6 +47,8 @@ EXTRA_OECONF = "--with-ncurses-include-dir=${STAGING_INCDIR} \
         --enable-rpath=no \
 "
 
+EXTRA_OECONF_append_libc-musl = " --disable-rsh --disable-rcp --disable-rlogin "
+
 do_configure_prepend () {
     export HELP2MAN='true'
     cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${S}/build-aux/config.rpath
@@ -64,9 +67,15 @@ do_install_append () {
     mv ${D}${libexecdir}/tftpd ${D}${sbindir}/in.tftpd
     mv ${D}${libexecdir}/telnetd ${D}${sbindir}/in.telnetd
     mv ${D}${libexecdir}/rexecd ${D}${sbindir}/in.rexecd
-    mv ${D}${libexecdir}/rlogind ${D}${sbindir}/in.rlogind
-    mv ${D}${libexecdir}/rshd ${D}${sbindir}/in.rshd
-    mv ${D}${libexecdir}/talkd ${D}${sbindir}/in.talkd
+    if [ -e ${D}${libexecdir}/rlogind ]; then
+        mv ${D}${libexecdir}/rlogind ${D}${sbindir}/in.rlogind
+    fi
+    if [ -e ${D}${libexecdir}/rshd ]; then
+        mv ${D}${libexecdir}/rshd ${D}${sbindir}/in.rshd
+    fi
+    if [ -e ${D}${libexecdir}/talkd ]; then
+        mv ${D}${libexecdir}/talkd ${D}${sbindir}/in.talkd
+    fi
     mv ${D}${libexecdir}/uucpd ${D}${sbindir}/in.uucpd
     mv ${D}${libexecdir}/* ${D}${bindir}/
     cp ${WORKDIR}/rexec.xinetd.inetutils  ${D}/${sysconfdir}/xinetd.d/rexec
@@ -76,7 +85,9 @@ do_install_append () {
     cp ${WORKDIR}/tftpd.xinetd.inetutils  ${D}/${sysconfdir}/xinetd.d/tftpd
 
     sed -e 's,@SBINDIR@,${sbindir},g' -i ${D}/${sysconfdir}/xinetd.d/*
-
+    if [ -e ${D}${libdir}/charset.alias ]; then
+        rm -rf ${D}${libdir}/charset.alias
+    fi
     rm -rf ${D}${libexecdir}/
     # remove usr/lib if empty
     rmdir ${D}${libdir} || true
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 25/49] ssmtp: Add recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (22 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 24/49] inetutils: Disable rsh, rcp, rlogin on musl Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 26/49] ne10: Update to latest Khem Raj
                   ` (23 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../ssmtp/ssmtp/build-ouside_srcdir.patch          | 17 +++++
 .../recipes-support/ssmtp/ssmtp/use-DESTDIR.patch  | 74 ++++++++++++++++++++++
 .../recipes-support/ssmtp/ssmtp_2.64.bb            | 31 +++++++++
 3 files changed, 122 insertions(+)
 create mode 100644 meta-networking/recipes-support/ssmtp/ssmtp/build-ouside_srcdir.patch
 create mode 100644 meta-networking/recipes-support/ssmtp/ssmtp/use-DESTDIR.patch
 create mode 100644 meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb

diff --git a/meta-networking/recipes-support/ssmtp/ssmtp/build-ouside_srcdir.patch b/meta-networking/recipes-support/ssmtp/ssmtp/build-ouside_srcdir.patch
new file mode 100644
index 0000000..d53cff2
--- /dev/null
+++ b/meta-networking/recipes-support/ssmtp/ssmtp/build-ouside_srcdir.patch
@@ -0,0 +1,17 @@
+help compile when S != B
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+Index: ssmtp-2.64/Makefile.in
+===================================================================
+--- ssmtp-2.64.orig/Makefile.in
++++ ssmtp-2.64/Makefile.in
+@@ -24,7 +24,7 @@ INSTALLED_REVALIASES_FILE=$(REVALIASES_F
+ # Programs
+ GEN_CONFIG=$(srcdir)/generate_config
+ 
+-SRCS=ssmtp.c arpadate.c base64.c xgethostname.c @SRCS@
++SRCS=$(srcdir)/ssmtp.c $(srcdir)/arpadate.c $(srcdir)/base64.c $(srcdir)/xgethostname.c @SRCS@
+ 
+ OBJS=$(SRCS:.c=.o)
+ 
diff --git a/meta-networking/recipes-support/ssmtp/ssmtp/use-DESTDIR.patch b/meta-networking/recipes-support/ssmtp/ssmtp/use-DESTDIR.patch
new file mode 100644
index 0000000..26d8527
--- /dev/null
+++ b/meta-networking/recipes-support/ssmtp/ssmtp/use-DESTDIR.patch
@@ -0,0 +1,74 @@
+Use DESTDIR during  install/uninstall, this helps
+with cross or staged builds. Additionally pass LDFLAGS
+during linking.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+
+Index: ssmtp-2.64/Makefile.in
+===================================================================
+--- ssmtp-2.64.orig/Makefile.in
++++ ssmtp-2.64/Makefile.in
+@@ -46,40 +46,40 @@ all: ssmtp
+ 
+ .PHONY: install
+ install: ssmtp $(GEN_CONFIG)
+-	$(INSTALL) -d -m 755 $(bindir)
+-	$(INSTALL) -s -m 755 ssmtp $(bindir)/ssmtp
+-	$(INSTALL) -d -m 755 $(mandir)
+-	$(INSTALL) -m 644 $(srcdir)/ssmtp.8 $(mandir)/ssmtp.8
+-	$(INSTALL) -d -m 755 $(SSMTPCONFDIR)
+-	$(INSTALL) -m 644 $(srcdir)/revaliases $(INSTALLED_REVALIASES_FILE)
+-	$(GEN_CONFIG) $(INSTALLED_CONFIGURATION_FILE)
++	$(INSTALL) -d -m 755 $(DESTDIR)$(bindir)
++	$(INSTALL) -m 755 ssmtp $(DESTDIR)$(bindir)/ssmtp
++	$(INSTALL) -d -m 755 $(DESTDIR)$(mandir)
++	$(INSTALL) -m 644 $(srcdir)/ssmtp.8 $(DESTDIR)$(mandir)/ssmtp.8
++	$(INSTALL) -d -m 755 $(DESTDIR)$(SSMTPCONFDIR)
++	$(INSTALL) -m 644 $(srcdir)/revaliases $(DESTDIR)$(INSTALLED_REVALIASES_FILE)
++	$(GEN_CONFIG) $(DESTDIR)$(INSTALLED_CONFIGURATION_FILE)
+ 
+ 
+ .PHONY: install-sendmail
+ install-sendmail: install
+-	$(RM) $(bindir)/sendmail
+-	$(LN_S) ssmtp $(bindir)/sendmail
+-	$(INSTALL) -d -m 755 $(libexecdir)
+-	$(RM) $(libexecdir)/sendmail
+-	$(LN_S) sendmail /lib/sendmail
+-	$(RM) $(mandir)/sendmail.8
+-	$(LN_S) ssmtp.8 $(mandir)/sendmail.8
++	$(RM) $(DESTDIR)$(bindir)/sendmail
++	$(LN_S) ssmtp $(DESTDIR)$(bindir)/sendmail
++	$(INSTALL) -d -m 755 $(DESTDIR)$(libexecdir)
++	$(RM) $(DESTDIR)$(libexecdir)/sendmail
++	$(LN_S) sendmail $(DESTDIR)/lib/sendmail
++	$(RM) $(DESTDIR)$(mandir)/sendmail.8
++	$(LN_S) ssmtp.8 $(DESTDIR)$(mandir)/sendmail.8
+ 
+ .PHONY: uninstall
+ uninstall:
+-	$(RM) $(bindir)/ssmtp
+-	$(RM) $(mandir)/ssmtp.8
+-	$(RM) $(CONFIGURATION_FILE) $(REVALIASES_FILE)
+-	$(RM) -r $(SSMTPCONFDIR)
++	$(RM) $(DESTDIR)$(bindir)/ssmtp
++	$(RM) $(DESTDIR)$(mandir)/ssmtp.8
++	$(RM) $(DESTDIR)$(CONFIGURATION_FILE) $(DESTDIR)$(REVALIASES_FILE)
++	$(RM) -r $(DESTDIR)$(SSMTPCONFDIR)
+ 
+ .PHONY: uninstall-sendmail
+ uninstall-sendmail: uninstall
+-	$(RM)  $(bindir)/sendmail /lib/sendmail
+-	$(RM)  $(mandir)/sendmail.8
++	$(RM)  $(DESTDIR)$(bindir)/sendmail $(DESTDIR)/lib/sendmail
++	$(RM)  $(DESTDIR)$(mandir)/sendmail.8
+ 
+ # Binaries:
+ ssmtp: $(OBJS)
+-	$(CC) -o ssmtp $(OBJS) @LIBS@ $(CFLAGS)
++	$(CC) -o ssmtp $(OBJS) @LIBS@ $(CFLAGS) $(LDFLAGS)
+ 
+ .PHONY: clean
+ clean:
diff --git a/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb b/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
new file mode 100644
index 0000000..9d4864d
--- /dev/null
+++ b/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
@@ -0,0 +1,31 @@
+SUMMARY = "extremely simple MTA to get mail off the system to a mail hub"
+HOMEPAGE = "http://packages.qa.debian.org/s/ssmtp.html"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=0c56db0143f4f80c369ee3af7425af6e"
+
+SRC_URI = "\
+           ${DEBIAN_MIRROR}/main/s/${BPN}/${BPN}_${PV}.orig.tar.bz2 \
+           file://build-ouside_srcdir.patch \
+           file://use-DESTDIR.patch \
+          "
+
+EXTRA_OECONF += "--mandir=${mandir}"
+
+EXTRA_OEMAKE = "GEN_CONFIG='/bin/true'"
+
+SRC_URI[md5sum] = "65b4e0df4934a6cd08c506cabcbe584f"
+SRC_URI[sha256sum] = "22c37dc90c871e8e052b2cab0ad219d010fa938608cd66b21c8f3c759046fa36"
+
+inherit autotools pkgconfig
+
+DEPENDS += "openssl inetutils"
+
+do_install_append () {
+    install -d ${D}${mandir}/
+    mv ${D}${exec_prefix}/man/* ${D}${mandir}/
+    rmdir ${D}${exec_prefix}/man
+    ln -s ssmtp ${D}${sbindir}/sendmail
+    ln -s ssmtp ${D}${sbindir}/newaliases
+    ln -s ssmtp ${D}${sbindir}/mailq
+}
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 26/49] ne10: Update to latest
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (23 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 25/49] ssmtp: Add recipe Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 27/49] libgit2: Update to 0.24.3 Khem Raj
                   ` (22 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

* Patch to build with clang
* license checksum changed due to Copyright year change
https://github.com/kraj/Ne10/commit/fee112eb2278469e7cfe2516dffa2ecfa5ad4c9a

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...01-CMakeLists.txt-Remove-mthumb-interwork.patch | 44 ++++++++++++++++++++++
 meta-oe/recipes-support/ne10/ne10_1.2.1.bb         |  9 +++--
 2 files changed, 50 insertions(+), 3 deletions(-)
 create mode 100644 meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch

diff --git a/meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch b/meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch
new file mode 100644
index 0000000..9f2faaa
--- /dev/null
+++ b/meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch
@@ -0,0 +1,44 @@
+From 8a0d1cbfcc0649b2696c9cf20f877366de259ce3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 12 Nov 2016 18:15:26 +0000
+Subject: [PATCH] CMakeLists.txt: Remove -mthumb-interwork
+
+This option is meaningless with aapcs ABI
+which is the default for Linux and android
+for armv7+ architectures
+
+As an aside it helps in compiling with clang
+where this option is absent
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ CMakeLists.txt | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 784a5a8..68da920 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -117,7 +117,7 @@ if(ANDROID_PLATFORM)
+ 
+     # Adding cflags for armv7. Aarch64 does not need such flags.
+     if(${NE10_TARGET_ARCH} STREQUAL "armv7")
+-        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb-interwork -mthumb -march=armv7-a -mfloat-abi=${FLOAT_ABI} -mfpu=vfp3")
++        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfloat-abi=${FLOAT_ABI} -mfpu=vfp3")
+         if(NE10_ARM_HARD_FLOAT)
+             # "--no-warn-mismatch" is needed for linker to suppress linker error about not all functions use VFP register to pass argument, eg.
+             #   .../arm-linux-androideabi/bin/ld: error: ..../test-float.o
+@@ -138,8 +138,8 @@ if(ANDROID_PLATFORM)
+     ${CMAKE_C_FLAGS}")
+ elseif(GNULINUX_PLATFORM)
+     if("${NE10_TARGET_ARCH}" STREQUAL "armv7")
+-      set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb-interwork -mthumb -march=armv7-a -mfpu=vfp3 -funsafe-math-optimizations")
+-      set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -mthumb-interwork -mthumb -march=armv7-a -mfpu=neon")
++      set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfpu=vfp3 -funsafe-math-optimizations")
++      set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfpu=neon")
+       # Turn on asm optimization for Linux on ARM v7.
+       set(NE10_ASM_OPTIMIZATION on)
+     endif()
+-- 
+1.8.3.1
+
diff --git a/meta-oe/recipes-support/ne10/ne10_1.2.1.bb b/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
index de97982..2fb9d64 100644
--- a/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
+++ b/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
@@ -1,13 +1,16 @@
 DESCRIPTION = "Library containing NEON-optimized implementations for a common set of functions"
 HOMEPAGE = "http://projectne10.github.io/Ne10/"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=463ac0a7d64edc2b787c4206635ca2b1"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e7fe20c9be97be5579e3ab5d92d3a218"
 SECTION = "libs"
 
-SRC_URI = "git://github.com/projectNe10/Ne10.git"
-SRCREV = "a08b29d88e3c94d32b5b8f827e7fcf0bc2b34ac2"
+SRC_URI = "git://github.com/projectNe10/Ne10.git \
+           file://0001-CMakeLists.txt-Remove-mthumb-interwork.patch \
+"
+SRCREV = "18c4c982a595dad069cd8df4932aefb1d257591f"
 
 S = "${WORKDIR}/git"
+PV .= "gitr+${SRCPV}"
 
 inherit cmake
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 27/49] libgit2: Update to 0.24.3
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (24 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 26/49] ne10: Update to latest Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 28/49] openldap: Fix Build error due to missing -fPIC Khem Raj
                   ` (21 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-support/libgit2/{libgit2_0.24.1.bb => libgit2_0.24.3.bb}    | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 rename meta-oe/recipes-support/libgit2/{libgit2_0.24.1.bb => libgit2_0.24.3.bb} (91%)

diff --git a/meta-oe/recipes-support/libgit2/libgit2_0.24.1.bb b/meta-oe/recipes-support/libgit2/libgit2_0.24.3.bb
similarity index 91%
rename from meta-oe/recipes-support/libgit2/libgit2_0.24.1.bb
rename to meta-oe/recipes-support/libgit2/libgit2_0.24.3.bb
index 092a674..8f580f9 100644
--- a/meta-oe/recipes-support/libgit2/libgit2_0.24.1.bb
+++ b/meta-oe/recipes-support/libgit2/libgit2_0.24.3.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=34197a479f637beb9e09e56893f48bc2"
 DEPENDS = "curl openssl zlib libssh2"
 
 SRC_URI = "git://github.com/libgit2/libgit2.git;branch=maint/v0.24"
-SRCREV = "211e117a0590583a720c53172406f34186c543bd"
+SRCREV = "4cf1ec7cff28da8838a2f0a9fb330e312ea3f963"
 
 S = "${WORKDIR}/git"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 28/49] openldap: Fix Build error due to missing -fPIC
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (25 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 27/49] libgit2: Update to 0.24.3 Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-networking][PATCH 29/49] dante: Add recipe for 1.4.1 Khem Raj
                   ` (20 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Fixes errors e.g.

relocation R_AARCH64_ADR_PREL_PG_HI21 against external symbol `stderr@@GLIBC_2.17' can not be us
ed when making a shared object; recompile with -fPIC

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-support/openldap/openldap_2.4.44.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-oe/recipes-support/openldap/openldap_2.4.44.bb b/meta-oe/recipes-support/openldap/openldap_2.4.44.bb
index 4e95a77..05ffc5c 100644
--- a/meta-oe/recipes-support/openldap/openldap_2.4.44.bb
+++ b/meta-oe/recipes-support/openldap/openldap_2.4.44.bb
@@ -148,7 +148,7 @@ PACKAGES += "${PN}-overlay-proxycache"
 # Append URANDOM_DEVICE='/dev/urandom' to CPPFLAGS:
 # This allows tls to obtain random bits from /dev/urandom, by default
 # it was disabled for cross-compiling.
-CPPFLAGS_append = " -D_GNU_SOURCE -DURANDOM_DEVICE=\'/dev/urandom\'"
+CPPFLAGS_append = " -D_GNU_SOURCE -DURANDOM_DEVICE=\'/dev/urandom\' -fPIC"
 
 LDFLAGS += "-pthread"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 29/49] dante: Add recipe for 1.4.1
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (26 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 28/49] openldap: Fix Build error due to missing -fPIC Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-26  0:16   ` Martin Jansa
  2016-11-23  9:21 ` [meta-oe][PATCH 30/49] networkmanager-openvpn: Update 1.0.8->1.2.6 Khem Raj
                   ` (19 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-protocols/dante/dante_1.4.1.bb         | 47 ++++++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 meta-networking/recipes-protocols/dante/dante_1.4.1.bb

diff --git a/meta-networking/recipes-protocols/dante/dante_1.4.1.bb b/meta-networking/recipes-protocols/dante/dante_1.4.1.bb
new file mode 100644
index 0000000..dbb86fb
--- /dev/null
+++ b/meta-networking/recipes-protocols/dante/dante_1.4.1.bb
@@ -0,0 +1,47 @@
+SECTION = "console/utils"
+SUMMARY = "A free SOCKS server"
+DESCRIPTION = "Dante consists of a SOCKS server and a SOCKS client,\
+implementing RFC 1928 and related standards. It is a flexible product\
+that can be used to provide convenient and secure network\
+connectivity. Once installed, Dante can in most cases be made\
+transparent to clients, providing functionality somewhat similar to\
+what could be described as a non-transparent Layer 4 router."
+HOMEPAGE = "http://www.inet.no/dante/"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=221118dda731fe93a85d0ed973467249"
+
+SRC_URI = "https://www.inet.no/dante/files/dante-${PV}.tar.gz \
+          "
+SRC_URI[md5sum] = "68c2ce12119e12cea11a90c7a80efa8f"
+SRC_URI[sha256sum] = "b6d232bd6fefc87d14bf97e447e4fcdeef4b28b16b048d804b50b48f261c4f53"
+
+# without --without-gssapi, config.log will contain reference to /usr/lib
+# as a consequence of GSSAPI path being set to /usr by default.
+# --with-gssapi-path=PATH specify gssapi path
+# --without-gssapi        disable gssapi support
+# --enable-release        build prerelease as full release
+EXTRA_OECONF += "--without-gssapi --sbindir=${bindir}"
+
+DEPENDS += "flex-native bison-native"
+DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
+
+inherit autotools-brokensep
+
+EXTRA_AUTORECONF = "-I ${S}"
+
+PACKAGECONFIG[libwrap] = ",--disable-libwrap,tcp-wrappers,libwrap"
+
+PACKAGECONFIG ??= ""
+
+do_install_append() {
+    install -d ${D}${sysconfdir}
+    cp ${S}/example/sock[sd].conf ${D}${sysconfdir}
+}
+
+PACKAGES =+ "${PN}-sockd ${PN}-libdsocks "
+
+FILES_${PN}-libdsocks = "${libdir}/libdsocks.so"
+FILES_${PN}-sockd = "${bindir}/sockd ${sysconfdir}/sockd.conf"
+
+INSANE_SKIP_${PN}-libdsocks = "dev-elf"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 30/49] networkmanager-openvpn: Update 1.0.8->1.2.6
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (27 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 29/49] dante: Add recipe for 1.4.1 Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes Khem Raj
                   ` (18 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Remove .la files which are new
Package the new .name files

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...anager-openvpn_1.0.8.bb => networkmanager-openvpn_1.2.6.bb} | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)
 rename meta-oe/recipes-connectivity/networkmanager/{networkmanager-openvpn_1.0.8.bb => networkmanager-openvpn_1.2.6.bb} (73%)

diff --git a/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.0.8.bb b/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.6.bb
similarity index 73%
rename from meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.0.8.bb
rename to meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.6.bb
index fe1d601..7ae566e 100644
--- a/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.0.8.bb
+++ b/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.6.bb
@@ -9,20 +9,24 @@ DEPENDS = "dbus dbus-glib networkmanager openvpn intltool-native"
 inherit gnomebase useradd gettext systemd
 
 SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
-
-SRC_URI[md5sum] = "758a9951ad5e20a37c72cc7326c9c750"
-SRC_URI[sha256sum] = "1b979519d72ba4d78e729d4856c5b53fad914ca7ee3ca91209ce489ba78912ac"
+SRC_URI[md5sum] = "47ed9b6c43ca364976a15e84207687df"
+SRC_URI[sha256sum] = "2373e2bb0a8a876cb2997cd8b0e3d6e10012d9bef3705ea3ac21f6394b3f1fb0"
 
 S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
 
 PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome"
 
+do_install_append () {
+    rm -rf ${D}${libdir}/NetworkManager/*.la
+}
+
 # Create user and group nm-openvpn that are needed since version 1.0.6
 USERADD_PACKAGES = "${PN}"
 USERADD_PARAM_${PN} = "--system nm-openvpn"
 
 FILES_${PN} += " \
     ${libdir}/NetworkManager/*.so \
+    ${libdir}/NetworkManager/VPN/nm-openvpn-service.name \
 "
 
 RDEPENDS_${PN} = " \
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (28 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 30/49] networkmanager-openvpn: Update 1.0.8->1.2.6 Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-26  0:17   ` Martin Jansa
  2016-11-23  9:21 ` [meta-oe][PATCH 32/49] md5deep: Fix build with clang Khem Raj
                   ` (17 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Update obexftp to 0.24.2 and openobex to 1.7.2
These packages moved to CMake infra for builds
therefore make adjustments to cross compile it

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../disable-cable-test.patch                       |  0
 .../libusb_crosscompile_check.patch                |  0
 .../separate_builddir.patch                        |  0
 meta-oe/recipes-connectivity/obex/openobex_1.5.bb  | 35 ----------------
 .../recipes-connectivity/obex/openobex_1.7.2.bb    | 37 +++++++++++++++++
 ...ists.txt-Explicitly-link-libbfb-and-libmu.patch | 47 ++++++++++++++++++++++
 .../recipes-connectivity/obexftp/obexftp_0.23.bb   | 16 --------
 .../recipes-connectivity/obexftp/obexftp_0.24.2.bb | 33 +++++++++++++++
 8 files changed, 117 insertions(+), 51 deletions(-)
 rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/disable-cable-test.patch (100%)
 rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/libusb_crosscompile_check.patch (100%)
 rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/separate_builddir.patch (100%)
 delete mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.5.bb
 create mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
 create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
 delete mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
 create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb

diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch b/meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
similarity index 100%
rename from meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
rename to meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch b/meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
similarity index 100%
rename from meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch
rename to meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch b/meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
similarity index 100%
rename from meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
rename to meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb b/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
deleted file mode 100644
index 6ac7905..0000000
--- a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-DESCRIPTION = "The Openobex project is an open source implementation of the \
-Object Exchange (OBEX) protocol."
-HOMEPAGE = "http://openobex.triq.net"
-SECTION = "libs"
-DEPENDS = "virtual/libusb0"
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
-
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
-                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
-"
-
-SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz \
-           file://disable-cable-test.patch \
-           file://libusb_crosscompile_check.patch \
-           file://separate_builddir.patch"
-
-SRC_URI[md5sum] = "0d83dc86445a46a1b9750107ba7ab65c"
-SRC_URI[sha256sum] = "e602047570799a47ecb028420bda8f2cef41310e5a99d084de10aa9422935e65"
-
-inherit autotools binconfig pkgconfig
-
-EXTRA_OECONF = "--enable-apps --enable-syslog"
-
-do_install_append() {
-    install -d ${D}${datadir}/aclocal
-    install -m 0644 ${S}/openobex.m4 ${D}${datadir}/aclocal
-}
-
-PACKAGES += "openobex-apps"
-FILES_${PN} = "${libdir}/lib*.so.*"
-FILES_${PN}-dev += "${bindir}/openobex-config"
-FILES_${PN}-apps = "${bindir}/*"
-DEBIAN_NOAUTONAME_${PN}-apps = "1"
-
diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
new file mode 100644
index 0000000..053c80a
--- /dev/null
+++ b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
@@ -0,0 +1,37 @@
+DESCRIPTION = "The Openobex project is an open source implementation of the \
+Object Exchange (OBEX) protocol."
+HOMEPAGE = "http://openobex.triq.net"
+SECTION = "libs"
+DEPENDS = "virtual/libusb0"
+DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
+
+LICENSE = "GPLv2 & LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
+                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${PV}/${BP}-Source.tar.gz \
+"
+
+SRC_URI[md5sum] = "f6e0b6cb7dcfd731460a7e9a91429a3a"
+SRC_URI[sha256sum] = "158860aaea52f0fce0c8e4b64550daaae06df2689e05834697b7e8c7d73dd4fc"
+
+inherit cmake pkgconfig
+
+S = "${WORKDIR}/${BP}-Source"
+
+EXTRA_OECONF = " -DCMAKE_SKIP_RPATH=ON "
+
+#--enable-apps --enable-syslog
+
+do_install_append () {
+    rmdir ${D}${bindir}
+}
+
+PACKAGES =+ "openobex-apps"
+FILES_${PN}-apps = "${bindir}/*"
+FILES_${PN} += "${libdir}/lib*.so.*"
+FILES_${PN}-dev += "${bindir}/openobex-config ${libdir}/cmake"
+DEBIAN_NOAUTONAME_${PN}-apps = "1"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
new file mode 100644
index 0000000..55e5567
--- /dev/null
+++ b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
@@ -0,0 +1,47 @@
+From b8dc608dad7d9fc3a4c16acd0327d97b81c23b95 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 15 Nov 2016 01:32:31 +0000
+Subject: [PATCH] apps/CMakeLists.txt: Explicitly link libbfb and libmulticobex
+
+Transitive linking is disabled now for multicobex and
+obexftp, This ends up with linking errors for apps, therefore
+they are required to be added to link line explicitly.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ apps/CMakeLists.txt | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
+index b5c84e4..63af134 100644
+--- a/apps/CMakeLists.txt
++++ b/apps/CMakeLists.txt
+@@ -5,14 +5,23 @@ add_definitions( -DVERSION="${obexftp_VERSION}" )
+ add_definitions ( -DHAVE_USB )
+ 
+ add_executable ( obexftp_app obexftp.c )
+-target_link_libraries ( obexftp_app obexftp )
++target_link_libraries ( obexftp_app
++  PRIVATE multicobex
++  PRIVATE bfb
++  obexftp
++)
+ set_target_properties ( obexftp_app PROPERTIES
+   OUTPUT_NAME obexftp
+ )
+ 
+ 
+ add_executable ( obexftpd_app obexftpd.c )
+-target_link_libraries ( obexftpd_app obexftp openobex )
++target_link_libraries ( obexftpd_app
++  PRIVATE multicobex
++  PRIVATE bfb
++  obexftp
++  openobex
++)
+ set_target_properties ( obexftpd_app PROPERTIES
+   OUTPUT_NAME obexftpd
+ )
+-- 
+1.9.1
+
diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
deleted file mode 100644
index b6bdfb7..0000000
--- a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
-LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-DEPENDS += "openobex"
-
-SRC_URI = "http://sourceforge.net/projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2 \
-           file://Remove_some_printf_in_obexftpd.patch "
-
-SRC_URI[md5sum] = "f20762061b68bc921e80be4aebc349eb"
-SRC_URI[sha256sum] = "44a74ff288d38c0f75354d6bc2efe7d6dec10112eaff2e7b10e292b0d2105b36"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF += "--disable-tcl --disable-perl --disable-python --disable-ruby"
-
diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
new file mode 100644
index 0000000..991cd48
--- /dev/null
+++ b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
@@ -0,0 +1,33 @@
+DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
+LICENSE = "GPLv2 & PD & LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LGPL-2.1.txt;md5=4fbd65380cdd255951079008b364516c \
+                    file://GPL-2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+                    file://License.txt;md5=fcbddc3c1debed80dd80da2d3e5f0dc1 \
+                   "
+
+DEPENDS += "openobex obexftp-native"
+SRC_URI = "http://downloads.sourceforge.net/openobex/${BP}-Source.tar.gz \
+           file://0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch \
+"
+SRC_URI[md5sum] = "157a9d1b2ed220203f7084db906de73c"
+SRC_URI[sha256sum] = "d40fb48e0a0eea997b3e582774b29f793919a625d54b87182e31a3f3d1c989a3"
+
+inherit cmake pkgconfig
+
+S = "${WORKDIR}/${BP}-Source"
+
+EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON \
+                  -DENABLE_PERL=NO -DENABLE_PYTHON=NO \
+                  -DENABLE_RUBY=NO -DENABLE_TCL=NO \
+"
+
+do_compile_class-native () {
+    oe_runmake crctable
+}
+
+do_install_class-native () {
+    install -D -m 0755 ${B}/bfb/crctable ${D}${bindir}/crctable
+}
+
+
+BBCLASSEXTEND = "native"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 32/49] md5deep: Fix build with clang
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (29 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 33/49] dialog: Update 1.3-20160424 -> 1.3-20160828 Khem Raj
                   ` (16 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../files/0001-Fix-errors-found-by-clang.patch     | 32 ++++++++++++++++++++++
 meta-oe/recipes-extended/md5deep/md5deep_4.4.bb    |  1 +
 2 files changed, 33 insertions(+)
 create mode 100644 meta-oe/recipes-extended/md5deep/files/0001-Fix-errors-found-by-clang.patch

diff --git a/meta-oe/recipes-extended/md5deep/files/0001-Fix-errors-found-by-clang.patch b/meta-oe/recipes-extended/md5deep/files/0001-Fix-errors-found-by-clang.patch
new file mode 100644
index 0000000..cc7cdc3
--- /dev/null
+++ b/meta-oe/recipes-extended/md5deep/files/0001-Fix-errors-found-by-clang.patch
@@ -0,0 +1,32 @@
+From 6ef69a26126ee4e69a25392fd456b8a66c51dffd Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 15 Nov 2016 02:46:55 +0000
+Subject: [PATCH] Fix errors found by clang
+
+Fixes errors like
+
+../../git/src/hash.cpp:282:19: error: ordered comparison between pointer and zero ('const unsigned char *' and 'int')
+            if(fdht->base>0){
+               ~~~~~~~~~~^~
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/hash.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/hash.cpp b/src/hash.cpp
+index 4216157..52f419b 100644
+--- a/src/hash.cpp
++++ b/src/hash.cpp
+@@ -279,7 +279,7 @@ void file_data_hasher_t::hash()
+ 		MAP_FILE|
+ #endif
+ 		MAP_SHARED,fd,0);
+-	    if(fdht->base>0){		
++	    if(fdht->base != (void *) -1){
+ 		/* mmap is successful, so set the bounds.
+ 		 * if it is not successful, we default to reading the fd
+ 		 */
+-- 
+1.9.1
+
diff --git a/meta-oe/recipes-extended/md5deep/md5deep_4.4.bb b/meta-oe/recipes-extended/md5deep/md5deep_4.4.bb
index 960e00f..bb30abe 100644
--- a/meta-oe/recipes-extended/md5deep/md5deep_4.4.bb
+++ b/meta-oe/recipes-extended/md5deep/md5deep_4.4.bb
@@ -9,6 +9,7 @@ SRCREV = "cd2ed7416685a5e83eb10bb659d6e9bec01244ae"
 
 SRC_URI = "git://github.com/jessek/hashdeep.git \
         file://wrong-variable-expansion.patch \
+        file://0001-Fix-errors-found-by-clang.patch \
         "
 
 S = "${WORKDIR}/git"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 33/49] dialog: Update 1.3-20160424 -> 1.3-20160828
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (30 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 32/49] md5deep: Fix build with clang Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-networking][PATCH 34/49] ipsec-tools: Fix build with clang Khem Raj
                   ` (15 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../dialog/{dialog_1.3-20160424.bb => dialog_1.3-20160828.bb}        | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
 rename meta-oe/recipes-extended/dialog/{dialog_1.3-20160424.bb => dialog_1.3-20160828.bb} (86%)

diff --git a/meta-oe/recipes-extended/dialog/dialog_1.3-20160424.bb b/meta-oe/recipes-extended/dialog/dialog_1.3-20160828.bb
similarity index 86%
rename from meta-oe/recipes-extended/dialog/dialog_1.3-20160424.bb
rename to meta-oe/recipes-extended/dialog/dialog_1.3-20160828.bb
index 2d8fbae..bff3d97 100644
--- a/meta-oe/recipes-extended/dialog/dialog_1.3-20160424.bb
+++ b/meta-oe/recipes-extended/dialog/dialog_1.3-20160828.bb
@@ -8,11 +8,10 @@ DEPENDS = "ncurses"
 LICENSE = "LGPL-2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
 
-SRC_URI[md5sum] = "582d804252205f73df2d892ebdc5212e"
-SRC_URI[sha256sum] = "47f5870876e778aa2902f2e91b4070418d4651b647e1a67a94127cb8aab5b5eb"
-
 SRC_URI = "ftp://invisible-island.net/dialog/dialog-${PV}.tgz \
           "
+SRC_URI[md5sum] = "a39ec183517bc1feaff017d067300b8c"
+SRC_URI[sha256sum] = "453095abaec288bfbc1ca9faced917e17742cff1ea45ec46210071ac153562f9"
 
 # hardcoded here for use in dialog-static recipe
 S = "${WORKDIR}/dialog-${PV}"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 34/49] ipsec-tools: Fix build with clang
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (31 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 33/49] dialog: Update 1.3-20160424 -> 1.3-20160828 Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-networking][PATCH 35/49] crda: " Khem Raj
                   ` (14 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../ipsec-tools/0001-Fix-build-with-clang.patch    | 115 +++++++++++++++++++++
 .../ipsec-tools/ipsec-tools_0.8.2.bb               |   1 +
 2 files changed, 116 insertions(+)
 create mode 100644 meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch

diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch
new file mode 100644
index 0000000..5c09147
--- /dev/null
+++ b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch
@@ -0,0 +1,115 @@
+From 9135ca401186fb14e5e5110bbb04d1ccc480360a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 15 Nov 2016 04:15:44 +0000
+Subject: [PATCH] Fix build with clang
+
+Fixes for following errors found by clang
+
+src/racoon/eaytest.c:316:6: error: comparison of array 'dnstr_w1' not equal to a null pointer is always true
+      [-Werror,-Wtautological-pointer-compare]
+        if (dnstr_w1 != NULL) {
+            ^~~~~~~~    ~~~~
+src/racoon/eaytest.c:326:6: error: comparison of array 'dnstr_w1' not equal to a null pointer is always true
+      [-Werror,-Wtautological-pointer-compare]
+        if (dnstr_w1 != NULL) {
+            ^~~~~~~~    ~~~~
+
+src/racoon/isakmp.c:1134:11: error: promoted type 'int' of K&R function parameter is not compatible with the
+                  parameter type 'u_int8_t' (aka 'unsigned char') declared in a previous prototype [-Werror,-Wknr-promoted-parameter]
+                    u_int8_t etype;
+                             ^
+src/racoon/isakmp.c:184:48: note: previous declaration is here
+        struct sockaddr *, struct sockaddr *, u_int8_t));
+                                                     ^
+            1 error generated.
+
+src/racoon/racoonctl.c:1457:15: error: incompatible pointer types passing 'struct evt_async *' to parameter of type
+        'caddr_t' (aka 'char *') [-Werror,-Wincompatible-pointer-types]
+                            print_cfg(ec, len);
+                                      ^~
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/racoon/eaytest.c   |  4 ++--
+ src/racoon/isakmp.c    | 10 +++++-----
+ src/racoon/racoonctl.c |  7 +++----
+ 3 files changed, 10 insertions(+), 11 deletions(-)
+
+diff --git a/src/racoon/eaytest.c b/src/racoon/eaytest.c
+index 1474bdc..d609e4f 100644
+--- a/src/racoon/eaytest.c
++++ b/src/racoon/eaytest.c
+@@ -313,7 +313,7 @@ certtest(ac, av)
+ 
+ 	printf("exact match: succeed.\n");
+ 
+-	if (dnstr_w1 != NULL) {
++	if (dnstr_w1[0] != '\0') {
+ 		asn1dn = eay_str2asn1dn(dnstr_w1, strlen(dnstr_w1));
+ 		if (asn1dn == NULL || asn1dn->l == asn1dn0.l)
+ 			errx(1, "asn1dn length wrong for wildcard 1\n");
+@@ -323,7 +323,7 @@ certtest(ac, av)
+ 		printf("wildcard 1 match: succeed.\n");
+ 	}
+ 
+-	if (dnstr_w1 != NULL) {
++	if (dnstr_w1[0] != '\0') {
+ 		asn1dn = eay_str2asn1dn(dnstr_w2, strlen(dnstr_w2));
+ 		if (asn1dn == NULL || asn1dn->l == asn1dn0.l)
+ 			errx(1, "asn1dn length wrong for wildcard 2\n");
+diff --git a/src/racoon/isakmp.c b/src/racoon/isakmp.c
+index 2672f7a..da7ebe8 100644
+--- a/src/racoon/isakmp.c
++++ b/src/racoon/isakmp.c
+@@ -567,7 +567,7 @@ isakmp_main(msg, remote, local)
+ 
+ 				/* it must be responder's 1st exchange. */
+ 				if (isakmp_ph1begin_r(msg, remote, local,
+-					isakmp->etype) < 0)
++					(u_int8_t)isakmp->etype) < 0)
+ 					return -1;
+ 				break;
+ 
+@@ -1128,10 +1128,10 @@ isakmp_ph1begin_i(rmconf, remote, local)
+ 
+ /* new negotiation of phase 1 for responder */
+ static int
+-isakmp_ph1begin_r(msg, remote, local, etype)
+-	vchar_t *msg;
+-	struct sockaddr *remote, *local;
+-	u_int8_t etype;
++isakmp_ph1begin_r(vchar_t *msg,
++	struct sockaddr *remote,
++	struct sockaddr *local,
++	u_int8_t etype)
+ {
+ 	struct isakmp *isakmp = (struct isakmp *)msg->v;
+ 	struct ph1handle *iph1;
+diff --git a/src/racoon/racoonctl.c b/src/racoon/racoonctl.c
+index da28ecd..bbf068e 100644
+--- a/src/racoon/racoonctl.c
++++ b/src/racoon/racoonctl.c
+@@ -1299,9 +1299,8 @@ print_evt(evtdump)
+  * Print ISAKMP mode config info (IP and banner)
+  */
+ void
+-print_cfg(buf, len)
+-	caddr_t buf;
+-	int len;
++print_cfg(caddr_t buf,
++	int len)
+ {
+ 	struct evt_async *evtdump = (struct evt_async *)buf;
+ 	struct isakmp_data *attr;
+@@ -1454,7 +1453,7 @@ handle_recv(combuf)
+ 		else if (evt_quit_event == ec->ec_type) {
+ 			switch (ec->ec_type) {
+ 			case EVT_PHASE1_MODE_CFG:
+-				print_cfg(ec, len);
++				print_cfg((caddr_t)ec, len);
+ 				break;
+ 			default:
+ 				print_evt(ec);
+-- 
+1.9.1
+
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb b/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb
index 4466974..a9b5b95 100644
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb
+++ b/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb
@@ -21,6 +21,7 @@ SRC_URI = "ftp://ftp.netbsd.org/pub/NetBSD/misc/ipsec-tools/0.8/ipsec-tools-${PV
            file://racoon.conf \
            file://racoon.service \
            file://fix-CVE-2015-4047.patch \
+           file://0001-Fix-build-with-clang.patch \
           "
 SRC_URI[md5sum] = "d53ec14a0a3ece64e09e5e34b3350b41"
 SRC_URI[sha256sum] = "8eb6b38716e2f3a8a72f1f549c9444c2bc28d52c9536792690564c74fe722f2d"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 35/49] crda: Fix build with clang
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (32 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 34/49] ipsec-tools: Fix build with clang Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 36/49] obex-data-server: Fix build with new openobex version Khem Raj
                   ` (13 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-connectivity/crda/crda/make.patch      | 25 ++++++++++++++++++++++
 .../recipes-connectivity/crda/crda_3.18.bb         |  1 +
 2 files changed, 26 insertions(+)
 create mode 100644 meta-networking/recipes-connectivity/crda/crda/make.patch

diff --git a/meta-networking/recipes-connectivity/crda/crda/make.patch b/meta-networking/recipes-connectivity/crda/crda/make.patch
new file mode 100644
index 0000000..0b73785
--- /dev/null
+++ b/meta-networking/recipes-connectivity/crda/crda/make.patch
@@ -0,0 +1,25 @@
+These headers are not related to any Make rule but they do appear in
+compiling of libreg.so, specifying .h files in compiler cmdline is flagged
+as error by clang
+
+| clang-4.0: error: cannot specify -o when generating multiple output files
+| make: *** [libreg.so] Error 1
+
+This is how we see headers in cmdline
+-O2 -fpic -std=gnu
+99 -Wall -Werror -pedantic -Wall -g -DUSE_GCRYPT -DCONFIG_LIBNL30 `pkg-config --cflags libnl-3.0`  -o libreg.so -shared -Wl,-soname,libreg.so
+regdb.h reglib.h reglib.c keys-gcrypt.c -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -L ./ -lm -lgcrypt
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/Makefile.kk	2016-11-15 04:54:53.338670000 +0000
++++ a/Makefile	2016-11-15 04:55:07.718670000 +0000
+@@ -114,7 +114,7 @@ keys-%.c: utils/key2pub.py $(wildcard $(
+ 	$(NQ) '  Trusted pubkeys:' $(wildcard $(PUBKEY_DIR)/*.pem)
+ 	$(Q)./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) $@
+ 
+-$(LIBREG): regdb.h reglib.h reglib.c
++$(LIBREG): reglib.c
+ 	$(NQ) '  CC  ' $@
+ 	$(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^ $(LDFLAGS) $(LIBREGLDLIBS)
+ 
diff --git a/meta-networking/recipes-connectivity/crda/crda_3.18.bb b/meta-networking/recipes-connectivity/crda/crda_3.18.bb
index 00c358d..4b704fe 100644
--- a/meta-networking/recipes-connectivity/crda/crda_3.18.bb
+++ b/meta-networking/recipes-connectivity/crda/crda_3.18.bb
@@ -11,6 +11,7 @@ SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz \
            file://fix-linking-of-libraries-used-by-reglib.patch \
            file://fix-gcc-6-unused-variables.patch \
            file://0001-Makefile-respect-LDFLAGS-for-libreg.patch \
+           file://make.patch \
 "
 SRC_URI[md5sum] = "0431fef3067bf503dfb464069f06163a"
 SRC_URI[sha256sum] = "43fcb9679f8b75ed87ad10944a506292def13e4afb194afa7aa921b01e8ecdbf"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 36/49] obex-data-server: Fix build with new openobex version
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (33 preceding siblings ...)
  2016-11-23  9:21 ` [meta-networking][PATCH 35/49] crda: " Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 37/49] flashrom: Remove redundant const qualifier Khem Raj
                   ` (12 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Add missing dependency on dbus-glib-native, this is needed for
getting DBUS_BINDING_TOOL

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../obex-data-server-0.4.6-build-fixes-1.patch       | 20 ++++++++++++++++++++
 .../obex/obex-data-server_0.4.6.bb                   |  7 ++++---
 2 files changed, 24 insertions(+), 3 deletions(-)
 create mode 100644 meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch

diff --git a/meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch b/meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch
new file mode 100644
index 0000000..e2c4e9f
--- /dev/null
+++ b/meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch
@@ -0,0 +1,20 @@
+Submitted By:            Armin K. <krejzi at email dot com>
+Date:                    2012-07-06
+Initial Package Version: 0.4.6
+Upstream Status:         Unknown
+Origin:                  Self
+Description:             Some build fixes.
+
+Index: obex-data-server-0.4.6/src/ods-obex.c
+===================================================================
+--- obex-data-server-0.4.6.orig/src/ods-obex.c
++++ obex-data-server-0.4.6/src/ods-obex.c
+@@ -412,7 +412,7 @@ ods_obex_setup_usbtransport (OdsObexCont
+ 		goto err;
+ 	}
+ 
+-	interfaces_num = OBEX_FindInterfaces(obex_context->obex_handle, &obex_intf);
++	interfaces_num = OBEX_EnumerateInterfaces(obex_context->obex_handle);
+ 	if (intf_num >= interfaces_num) {
+ 		g_set_error (error, ODS_ERROR, ODS_ERROR_FAILED, "Invalid interface number");
+ 		goto err;
diff --git a/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb b/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
index c2c284e..e10b89c 100644
--- a/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
+++ b/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
@@ -2,14 +2,15 @@ DESCRIPTION = "obex-data-server is a D-Bus service providing high-level OBEX cli
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 
-DEPENDS = "gtk+ dbus-glib imagemagick openobex"
+DEPENDS = "gtk+ dbus-glib dbus-glib-native imagemagick openobex"
 DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
 
-SRC_URI = "http://tadas.dailyda.com/software/obex-data-server-${PV}.tar.gz"
+SRC_URI = "http://tadas.dailyda.com/software/obex-data-server-${PV}.tar.gz \
+           file://obex-data-server-0.4.6-build-fixes-1.patch \
+"
 SRC_URI[md5sum] = "961ca5db6fe9c97024e133cc6203cc4d"
 SRC_URI[sha256sum] = "b399465ddbd6d0217abedd9411d9d74a820effa0a6a142adc448268d3920094f"
 
 inherit autotools-brokensep pkgconfig
 
 FILES_${PN} += "${datadir}/dbus-1/"
-
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 37/49] flashrom: Remove redundant const qualifier
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (34 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 36/49] obex-data-server: Fix build with new openobex version Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 38/49] fribidi: Fix build with security flags turned on Khem Raj
                   ` (11 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

This is flagged by latest clang

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../0001-ichspi.c-Fix-build-with-clang.patch       | 29 ++++++++++++++++++++++
 .../recipes-extended/flashrom/flashrom_0.9.6.1.bb  |  1 +
 2 files changed, 30 insertions(+)
 create mode 100644 meta-oe/recipes-extended/flashrom/flashrom/0001-ichspi.c-Fix-build-with-clang.patch

diff --git a/meta-oe/recipes-extended/flashrom/flashrom/0001-ichspi.c-Fix-build-with-clang.patch b/meta-oe/recipes-extended/flashrom/flashrom/0001-ichspi.c-Fix-build-with-clang.patch
new file mode 100644
index 0000000..ff16f0b
--- /dev/null
+++ b/meta-oe/recipes-extended/flashrom/flashrom/0001-ichspi.c-Fix-build-with-clang.patch
@@ -0,0 +1,29 @@
+From a2f603c54013cd0b04bb0103dc615644f315d5e8 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 15 Nov 2016 17:39:24 +0000
+Subject: [PATCH] ichspi.c: Fix build with clang
+
+ichspi.c:1130:24: error: duplicate 'const' declaration specifier [-Werror,-Wduplicate-decl-specifier]
+        static const uint32_t const dec_berase[4] = {
+                              ^
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ichspi.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ichspi.c b/ichspi.c
+index 0223ae3..e47aebd 100644
+--- a/ichspi.c
++++ b/ichspi.c
+@@ -1127,7 +1127,7 @@ static void ich_hwseq_set_addr(uint32_t addr)
+ static uint32_t ich_hwseq_get_erase_block_size(unsigned int addr)
+ {
+ 	uint8_t enc_berase;
+-	static const uint32_t const dec_berase[4] = {
++	static const uint32_t dec_berase[4] = {
+ 		256,
+ 		4 * 1024,
+ 		8 * 1024,
+-- 
+1.9.1
+
diff --git a/meta-oe/recipes-extended/flashrom/flashrom_0.9.6.1.bb b/meta-oe/recipes-extended/flashrom/flashrom_0.9.6.1.bb
index d3ec578..0edc688 100644
--- a/meta-oe/recipes-extended/flashrom/flashrom_0.9.6.1.bb
+++ b/meta-oe/recipes-extended/flashrom/flashrom_0.9.6.1.bb
@@ -9,6 +9,7 @@ SRC_URI = "http://download.flashrom.org/releases/flashrom-${PV}.tar.bz2 \
            file://0001-Fix-compilation-on-aarch64.patch \
            file://0002-Disable-Wtautological-pointer-compare-when-using-cla.patch \
            file://0003-remove-duplicate-const-qualifiers.patch \
+           file://0001-ichspi.c-Fix-build-with-clang.patch \
            "
 
 SRC_URI[md5sum] = "407e836c0a2b17ec76583cb6809f65e5"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 38/49] fribidi: Fix build with security flags turned on
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (35 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 37/49] flashrom: Remove redundant const qualifier Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:21 ` [meta-oe][PATCH 39/49] libmicrohttpd: Upgrade to 0.9.52 Khem Raj
                   ` (10 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Clang complains like below
| ../../fribidi-0.19.7/charset/fribidi-char-sets-cap-rtl.c:148:7: error: expected expression
|       DBG ("warning: could not find a mapping for CapRTL to Unicode:");

Therefore quick fix is to remove FORTIFY_SOURCE from cmdline

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb b/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb
index f8e7aa0..e79de66 100644
--- a/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb
+++ b/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb
@@ -10,6 +10,7 @@ DEPENDS = "glib-2.0 libpcre"
 inherit autotools lib_package pkgconfig
 
 CFLAGS_append = "  -DPAGE_SIZE=4096 "
+SECURITY_CFLAGS_remove_toolchain-clang = "-D_FORTIFY_SOURCE=2"
 
 SRC_URI = "http://fribidi.org/download/fribidi-${PV}.tar.bz2"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 39/49] libmicrohttpd: Upgrade to 0.9.52
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (36 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 38/49] fribidi: Fix build with security flags turned on Khem Raj
@ 2016-11-23  9:21 ` Khem Raj
  2016-11-23  9:22 ` [meta-oe][PATCH 40/49] jsoncpp: Add new recipe Khem Raj
                   ` (9 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:21 UTC (permalink / raw)
  To: openembedded-devel

Inherit gettext is needed

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../{libmicrohttpd_0.9.50.bb => libmicrohttpd_0.9.52.bb}            | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
 rename meta-oe/recipes-support/libmicrohttpd/{libmicrohttpd_0.9.50.bb => libmicrohttpd_0.9.52.bb} (81%)

diff --git a/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.50.bb b/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.52.bb
similarity index 81%
rename from meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.50.bb
rename to meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.52.bb
index 421b78e..2a006b5 100644
--- a/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.50.bb
+++ b/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.52.bb
@@ -6,10 +6,10 @@ SECTION = "net"
 DEPENDS = "libgcrypt gnutls file"
 
 SRC_URI = "http://ftp.gnu.org/gnu/libmicrohttpd/${BPN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "4a3f793d59f663a2b0fc62d44668fb66"
-SRC_URI[sha256sum] = "d1b6385068abded29b6470e383287aa7705de05ae3c08ad0bf5747ac4dc6ebd7"
+SRC_URI[md5sum] = "767111e817e2497ff92f943c5653497a"
+SRC_URI[sha256sum] = "54797f6e763d417627f89f60e4ae0a431dab0523f92f83def23ea02d0defafea"
 
-inherit autotools lib_package pkgconfig
+inherit autotools lib_package pkgconfig gettext
 
 EXTRA_OECONF += "--disable-static --with-gnutls=${STAGING_LIBDIR}/../"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 40/49] jsoncpp: Add new recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (37 preceding siblings ...)
  2016-11-23  9:21 ` [meta-oe][PATCH 39/49] libmicrohttpd: Upgrade to 0.9.52 Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-28 10:46   ` Piotr Lewicki
  2016-11-23  9:22 ` [meta-oe][PATCH 41/49] jsonrpc: Add recipe Khem Raj
                   ` (8 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../0001-jsoncpp-rename-features-header-file.patch | 152 +++++++++++++++++++++
 meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb  |  21 +++
 2 files changed, 173 insertions(+)
 create mode 100644 meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
 create mode 100644 meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb

diff --git a/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch b/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
new file mode 100644
index 0000000..f1397ea
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
@@ -0,0 +1,152 @@
+Issue: Build error in TDK DS_stub
+
+In file included from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/i586-rdk-linux/bits/c++config.h:426:0,
+                 from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/string:38,
+                 from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/json/value.h:12,
+                 from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/json/json.h:10,
+                 from ./include/DeviceSettingsAgent.h:15,
+                 from src/DeviceSettingsAgent.cpp:13:
+/home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/i586-rdk-linux/bits/os_defines.h:44:19: error: missing binary operator before token "("
+ #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
+
+The issue was jsoncpp has features.h which was conflicting with the system
+header file features.h.
+
+So renamed the header file  features.h in jsoncpp to json-features.h so
+as to localize the effect of this change within jsoncpp.
+
+ Signed-off-by: Ridish Aravindan <ridish.ra@lnttechservices.com>
+
+Index: jsoncpp-src-0.6.0-rc2/include/json/json-features.h
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ jsoncpp-src-0.6.0-rc2/include/json/json-features.h	2014-08-27 06:41:40.000000000 +0000
+@@ -0,0 +1,49 @@
++// Copyright 2007-2010 Baptiste Lepilleur
++// Distributed under MIT license, or public domain if desired and
++// recognized in your jurisdiction.
++// See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
++
++#ifndef CPPTL_JSON_FEATURES_H_INCLUDED
++# define CPPTL_JSON_FEATURES_H_INCLUDED
++
++#if !defined(JSON_IS_AMALGAMATION)
++# include "forwards.h"
++#endif // if !defined(JSON_IS_AMALGAMATION)
++
++namespace Json {
++
++   /** \brief Configuration passed to reader and writer.
++    * This configuration object can be used to force the Reader or Writer
++    * to behave in a standard conforming way.
++    */
++   class JSON_API Features
++   {
++   public:
++      /** \brief A configuration that allows all features and assumes all strings are UTF-8.
++       * - C & C++ comments are allowed
++       * - Root object can be any JSON value
++       * - Assumes Value strings are encoded in UTF-8
++       */
++      static Features all();
++
++      /** \brief A configuration that is strictly compatible with the JSON specification.
++       * - Comments are forbidden.
++       * - Root object must be either an array or an object value.
++       * - Assumes Value strings are encoded in UTF-8
++       */
++      static Features strictMode();
++
++      /** \brief Initialize the configuration like JsonConfig::allFeatures;
++       */
++      Features();
++
++      /// \c true if comments are allowed. Default: \c true.
++      bool allowComments_;
++
++      /// \c true if root must be either an array or an object value. Default: \c false.
++      bool strictRoot_;
++   };
++
++} // namespace Json
++
++#endif // CPPTL_JSON_FEATURES_H_INCLUDED
+Index: jsoncpp-src-0.6.0-rc2/include/json/json.h
+===================================================================
+--- jsoncpp-src-0.6.0-rc2.orig/include/json/json.h	2011-05-02 21:47:24.000000000 +0000
++++ jsoncpp-src-0.6.0-rc2/include/json/json.h	2014-08-27 06:39:13.000000000 +0000
+@@ -10,6 +10,6 @@
+ # include "value.h"
+ # include "reader.h"
+ # include "writer.h"
+-# include "features.h"
++# include "json-features.h"
+ 
+ #endif // JSON_JSON_H_INCLUDED
+Index: jsoncpp-src-0.6.0-rc2/include/json/reader.h
+===================================================================
+--- jsoncpp-src-0.6.0-rc2.orig/include/json/reader.h	2011-05-02 21:47:24.000000000 +0000
++++ jsoncpp-src-0.6.0-rc2/include/json/reader.h	2014-08-27 06:39:32.000000000 +0000
+@@ -7,7 +7,7 @@
+ # define CPPTL_JSON_READER_H_INCLUDED
+ 
+ #if !defined(JSON_IS_AMALGAMATION)
+-# include "features.h"
++# include "json-features.h"
+ # include "value.h"
+ #endif // if !defined(JSON_IS_AMALGAMATION)
+ # include <deque>
+Index: jsoncpp-src-0.6.0-rc2/include/json/features.h
+===================================================================
+--- jsoncpp-src-0.6.0-rc2.orig/include/json/features.h	2011-05-02 21:46:58.000000000 +0000
++++ /dev/null	1970-01-01 00:00:00.000000000 +0000
+@@ -1,49 +0,0 @@
+-// Copyright 2007-2010 Baptiste Lepilleur
+-// Distributed under MIT license, or public domain if desired and
+-// recognized in your jurisdiction.
+-// See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
+-
+-#ifndef CPPTL_JSON_FEATURES_H_INCLUDED
+-# define CPPTL_JSON_FEATURES_H_INCLUDED
+-
+-#if !defined(JSON_IS_AMALGAMATION)
+-# include "forwards.h"
+-#endif // if !defined(JSON_IS_AMALGAMATION)
+-
+-namespace Json {
+-
+-   /** \brief Configuration passed to reader and writer.
+-    * This configuration object can be used to force the Reader or Writer
+-    * to behave in a standard conforming way.
+-    */
+-   class JSON_API Features
+-   {
+-   public:
+-      /** \brief A configuration that allows all features and assumes all strings are UTF-8.
+-       * - C & C++ comments are allowed
+-       * - Root object can be any JSON value
+-       * - Assumes Value strings are encoded in UTF-8
+-       */
+-      static Features all();
+-
+-      /** \brief A configuration that is strictly compatible with the JSON specification.
+-       * - Comments are forbidden.
+-       * - Root object must be either an array or an object value.
+-       * - Assumes Value strings are encoded in UTF-8
+-       */
+-      static Features strictMode();
+-
+-      /** \brief Initialize the configuration like JsonConfig::allFeatures;
+-       */
+-      Features();
+-
+-      /// \c true if comments are allowed. Default: \c true.
+-      bool allowComments_;
+-
+-      /// \c true if root must be either an array or an object value. Default: \c false.
+-      bool strictRoot_;
+-   };
+-
+-} // namespace Json
+-
+-#endif // CPPTL_JSON_FEATURES_H_INCLUDED
diff --git a/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb b/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
new file mode 100644
index 0000000..17947e3
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
@@ -0,0 +1,21 @@
+SUMMARY = "JSON C++ lib used to read and write json file."
+DESCRIPTION = "Jsoncpp is an implementation of a JSON (http://json.org) reader \
+               and writer in C++. JSON (JavaScript Object Notation) is a \
+               lightweight data-interchange format. It is easy for humans to \
+               read and write. It is easy for machines to parse and generate."
+
+HOMEPAGE = "http://sourceforge.net/projects/jsoncpp/"
+
+SECTION = "libs"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c56ee55c03a55f8105b969d8270632ce"
+
+SRCREV = "d8cd848ede1071a25846cd90b4fddf269d868ff1"
+SRC_URI = "git://github.com/open-source-parsers/jsoncpp \
+"
+
+S = "${WORKDIR}/git"
+inherit cmake
+
+EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 41/49] jsonrpc: Add recipe
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (38 preceding siblings ...)
  2016-11-23  9:22 ` [meta-oe][PATCH 40/49] jsoncpp: Add new recipe Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-23  9:22 ` [meta-oe][PATCH 42/49] libmad: Fix build with clang Khem Raj
                   ` (7 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...ce-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch | 77 ++++++++++++++++++++++
 ...torclient-Typecast-min-arguments-correctl.patch | 33 ++++++++++
 ...torserver-Include-sys-select.h-before-oth.patch | 34 ++++++++++
 meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb  | 30 +++++++++
 4 files changed, 174 insertions(+)
 create mode 100644 meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
 create mode 100644 meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
 create mode 100644 meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
 create mode 100644 meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb

diff --git a/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
new file mode 100644
index 0000000..748e4da
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
@@ -0,0 +1,77 @@
+From ac61124df17ab76527508bbb9a3115d4d6cc1af6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 21 Nov 2016 11:26:26 -0800
+Subject: [PATCH] cmake: replace hardcoded lib/${CMAKE_LIBRARY_PATH} with
+ {CMAKE_INSTALL_LIBDIR}
+
+Fixes
+| CMake Error at src/jsonrpccpp/CMakeLists.txt:207 (install):
+|   install TARGETS given unknown argument "/lib".
+
+and
+
+Wrong install paths during cross compile
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jsonrpccpp/CMakeLists.txt    | 8 ++++----
+ src/stubgenerator/CMakeLists.txt | 6 +++---
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/jsonrpccpp/CMakeLists.txt b/src/jsonrpccpp/CMakeLists.txt
+index e4a1eb5..13f9056 100644
+--- a/src/jsonrpccpp/CMakeLists.txt
++++ b/src/jsonrpccpp/CMakeLists.txt
+@@ -205,15 +205,15 @@ if (WIN32)
+ endif()
+ 
+ install(TARGETS ${ALL_LIBS}
+-	LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
+-	ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
++	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ 	RUNTIME DESTINATION bin
+ )
+ 
+ #set pkg-config
+ get_filename_component(FULL_PATH_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} ABSOLUTE)
+ set(FULL_PATH_INCLUDEDIR "${FULL_PATH_INSTALL_PREFIX}/include")
+-set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/lib/${CMAKE_LIBRARY_PATH}")
++set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
+ 
+ CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-client.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc)
+ CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-server.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc)
+@@ -223,6 +223,6 @@ INSTALL(FILES
+     "${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc"
+     "${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc"
+     "${CMAKE_BINARY_DIR}/libjsonrpccpp-common.pc"
+-    DESTINATION "lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}/pkgconfig")
++    DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
+ 
+ 
+diff --git a/src/stubgenerator/CMakeLists.txt b/src/stubgenerator/CMakeLists.txt
+index f9dbe4c..b57b0fe 100644
+--- a/src/stubgenerator/CMakeLists.txt
++++ b/src/stubgenerator/CMakeLists.txt
+@@ -58,15 +58,15 @@ CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake/libjsonrpccpp-stub.pc.cmake ${CMAKE_BIN
+ 
+ INSTALL(FILES
+     "${CMAKE_BINARY_DIR}/libjsonrpccpp-stub.pc"
+-    DESTINATION "lib/${CMAKE_LIBRARY_PATH}/pkgconfig")
++    DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
+ 
+ install(DIRECTORY ${CMAKE_SOURCE_DIR}/src/stubgenerator/
+         DESTINATION include/jsonrpccpp/stubgen
+         FILES_MATCHING PATTERN "*.h")
+ 
+ install(TARGETS ${ALL_LIBS} jsonrpcstub
+-        LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
+-        ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
++        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+         RUNTIME DESTINATION bin
+ )
+ 
+-- 
+2.10.2
+
diff --git a/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
new file mode 100644
index 0000000..d21e979
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
@@ -0,0 +1,33 @@
+From 9500f12f5d827840634311d6ca972d9551211e4d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 21 Nov 2016 01:00:51 -0800
+Subject: [PATCH] filedescriptorclient: Typecast min() arguments correctly
+
+Fixes
+
+| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
+p/client/connectors/filedescriptorclient.cpp:47:92: note:   deduced conflicting types for parameter 'co
+nst _Tp' ('unsigned int' and 'long unsigned int')
+|      ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jsonrpccpp/client/connectors/filedescriptorclient.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
+index 77aac7e..6325b5c 100644
+--- a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
++++ b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
+@@ -43,7 +43,7 @@ void FileDescriptorClient::SendRPCMessage(const std::string& message,
+   string toSend = message;
+   do
+   {
+-    ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
++    ssize_t byteWritten = write(outputfd, toSend.c_str(), min((long unsigned int)toSend.size(), MAX_WRITE_SIZE));
+     if (byteWritten < 1)
+       throw JsonRpcException(Errors::ERROR_CLIENT_CONNECTOR,
+         "Unknown error occured while writing to the output file descriptor");
+-- 
+2.10.2
+
diff --git a/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
new file mode 100644
index 0000000..3b9068a
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
@@ -0,0 +1,34 @@
+From c7aad10628949e126f50e3264b5bc7eb417347c6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 21 Nov 2016 01:25:10 -0800
+Subject: [PATCH] filedescriptorserver: Include sys/select.h before other
+ headers
+
+Fixes errors e.g.
+| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
+p/server/connectors/filedescriptorserver.h:63:7: error: unknown type name 'fd_set'
+|       fd_set read_fds;
+|       ^
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jsonrpccpp/server/connectors/filedescriptorserver.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
+index 9d74223..8e019ca 100644
+--- a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
++++ b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
+@@ -7,8 +7,8 @@
+  * @license See attached LICENSE.txt
+  ************************************************************************/
+ 
+-#include "filedescriptorserver.h"
+ #include <sys/select.h>
++#include "filedescriptorserver.h"
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-- 
+2.10.2
+
diff --git a/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb b/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb
new file mode 100644
index 0000000..3a43f90
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb
@@ -0,0 +1,30 @@
+SUMMARY = "C++ framework for json-rpc 1.0 and 2.0"
+DESCRIPTION = "JsonRpc-Cpp is an OpenSource implementation of JSON-RPC \
+               protocol in C++. JSON-RPC is a lightweight remote procedure \
+               call protocol similar to XML-RPC."
+HOMEPAGE = "https://github.com/cinemast/libjson-rpc-cpp"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ee72d601854d5d2a065cf642883c489b"
+
+PV = "0.7.0+git${SRCPV}"
+
+SRC_URI = "git://github.com/cinemast/libjson-rpc-cpp \
+           file://0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch \
+           file://0001-filedescriptorclient-Typecast-min-arguments-correctl.patch \
+           file://0001-filedescriptorserver-Include-sys-select.h-before-oth.patch \
+"
+SRCREV = "ccbdb41388bdd929828941652da816bf52a0580e"
+
+SECTION = "libs"
+
+DEPENDS = "curl jsoncpp libmicrohttpd"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+EXTRA_OECMAKE += "-DCOMPILE_TESTS=NO -DCOMPILE_STUBGEN=NO -DCOMPILE_EXAMPLES=NO \
+                  -DBUILD_SHARED_LIBS=YES -DBUILD_STATIC_LIBS=YES \
+                  -DCMAKE_LIBRARY_PATH=${libdir} \
+"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 42/49] libmad: Fix build with clang
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (39 preceding siblings ...)
  2016-11-23  9:22 ` [meta-oe][PATCH 41/49] jsonrpc: Add recipe Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-23  9:22 ` [meta-oe][PATCH 43/49] modemmanager: " Khem Raj
                   ` (6 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...4-Remove-clang-unsupported-compiler-flags.patch | 43 ++++++++++++++++++++++
 .../recipes-multimedia/libmad/libmad_0.15.1b.bb    |  1 +
 2 files changed, 44 insertions(+)
 create mode 100644 meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch

diff --git a/meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch b/meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch
new file mode 100644
index 0000000..5bfce4d
--- /dev/null
+++ b/meta-oe/recipes-multimedia/libmad/libmad/0004-Remove-clang-unsupported-compiler-flags.patch
@@ -0,0 +1,43 @@
+From 3d3fce9b8b927a817b89dd78a60b5cf7d978f64c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
+Date: Tue, 16 Sep 2014 12:28:47 +0300
+Subject: [PATCH 4/4] Remove clang unsupported compiler flags
+
+---
+ configure.ac | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4fcd48b..40302db 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -140,20 +140,20 @@ then
+     case "$optimize" in
+ 	-O|"-O "*)
+ 	    optimize="-O"
+-	    optimize="$optimize -fforce-addr"
++	    : #optimize="$optimize -fforce-addr"
+ 	    : #x optimize="$optimize -finline-functions"
+ 	    : #- optimize="$optimize -fstrength-reduce"
+-	    optimize="$optimize -fthread-jumps"
+-	    optimize="$optimize -fcse-follow-jumps"
+-	    optimize="$optimize -fcse-skip-blocks"
++	    : #optimize="$optimize -fthread-jumps"
++	    : #optimize="$optimize -fcse-follow-jumps"
++	    : #optimize="$optimize -fcse-skip-blocks"
+ 	    : #x optimize="$optimize -frerun-cse-after-loop"
+ 	    : #x optimize="$optimize -frerun-loop-opt"
+ 	    : #x optimize="$optimize -fgcse"
+ 	    optimize="$optimize -fexpensive-optimizations"
+-	    optimize="$optimize -fregmove"
++	    : #optimize="$optimize -fregmove"
+ 	    : #* optimize="$optimize -fdelayed-branch"
+ 	    : #x optimize="$optimize -fschedule-insns"
+-	    optimize="$optimize -fschedule-insns2"
++	    : #optimize="$optimize -fschedule-insns2"
+ 	    : #? optimize="$optimize -ffunction-sections"
+ 	    : #? optimize="$optimize -fcaller-saves"
+ 	    : #> optimize="$optimize -funroll-loops"
+-- 
+2.1.0
+
diff --git a/meta-oe/recipes-multimedia/libmad/libmad_0.15.1b.bb b/meta-oe/recipes-multimedia/libmad/libmad_0.15.1b.bb
index 3a647bf..8d9246a 100644
--- a/meta-oe/recipes-multimedia/libmad/libmad_0.15.1b.bb
+++ b/meta-oe/recipes-multimedia/libmad/libmad_0.15.1b.bb
@@ -17,6 +17,7 @@ SRC_URI = "ftp://ftp.mars.org/pub/mpeg/libmad-${PV}.tar.gz \
     file://obsolete_automake_macros.patch \
     file://automake-foreign.patch \
 "
+SRC_URI_append_toolchain-clang = " file://0004-Remove-clang-unsupported-compiler-flags.patch "
 
 SRC_URI[md5sum] = "1be543bc30c56fb6bea1d7bf6a64e66c"
 SRC_URI[sha256sum] = "bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 43/49] modemmanager: Fix build with clang
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (40 preceding siblings ...)
  2016-11-23  9:22 ` [meta-oe][PATCH 42/49] libmad: Fix build with clang Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-23  9:22 ` [meta-oe][PATCH 44/49] libcec: Add missing dep on ncurses Khem Raj
                   ` (5 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../modemmanager/modemmanager/enum-conversion.patch | 21 +++++++++++++++++++++
 ...{modemmanager_1.6.0.bb => modemmanager_1.6.4.bb} |  8 +++++---
 2 files changed, 26 insertions(+), 3 deletions(-)
 create mode 100644 meta-oe/recipes-connectivity/modemmanager/modemmanager/enum-conversion.patch
 rename meta-oe/recipes-connectivity/modemmanager/{modemmanager_1.6.0.bb => modemmanager_1.6.4.bb} (88%)

diff --git a/meta-oe/recipes-connectivity/modemmanager/modemmanager/enum-conversion.patch b/meta-oe/recipes-connectivity/modemmanager/modemmanager/enum-conversion.patch
new file mode 100644
index 0000000..a3fb0f3
--- /dev/null
+++ b/meta-oe/recipes-connectivity/modemmanager/modemmanager/enum-conversion.patch
@@ -0,0 +1,21 @@
+Fixes errors found bt Clang
+
+| ../../ModemManager-1.6.4/src/mm-bearer-qmi.c:774:50: error: implicit conversion from enumeration type 'MMBearerStatus' to different enumeration type 'MMBearerConnectionStatus' [-Werror,-Wenum-conversion]
+|         MMBearerConnectionStatus bearer_status = mm_base_bearer_get_status (MM_BASE_BEARER (self));
+|                                  ~~~~~~~~~~~~~   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+| 1 error generated.
+
+
+Index: ModemManager-1.6.4/src/mm-bearer-qmi.c
+===================================================================
+--- ModemManager-1.6.4.orig/src/mm-bearer-qmi.c
++++ ModemManager-1.6.4/src/mm-bearer-qmi.c
+@@ -771,7 +771,7 @@ packet_service_status_indication_cb (Qmi
+             &connection_status,
+             NULL,
+             NULL)) {
+-        MMBearerConnectionStatus bearer_status = mm_base_bearer_get_status (MM_BASE_BEARER (self));
++        MMBearerConnectionStatus bearer_status = (MMBearerConnectionStatus)mm_base_bearer_get_status (MM_BASE_BEARER (self));
+ 
+         if (connection_status == QMI_WDS_CONNECTION_STATUS_DISCONNECTED &&
+             bearer_status != MM_BEARER_CONNECTION_STATUS_DISCONNECTED &&
diff --git a/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.0.bb b/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb
similarity index 88%
rename from meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.0.bb
rename to meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb
index e26c227..5e4e220 100644
--- a/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.0.bb
+++ b/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb
@@ -11,9 +11,11 @@ inherit gnomebase gettext systemd vala gobject-introspection bash-completion
 
 DEPENDS = "glib-2.0 libgudev dbus-glib intltool-native"
 
-SRC_URI = "http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz"
-SRC_URI[md5sum] = "d9d93d2961ee35b4cd8a75a6a8631cb4"
-SRC_URI[sha256sum] = "a94f4657a8fa6835e2734fcc6edf20aa8c8d452f62299d7748541021c3eb2445"
+SRC_URI = "http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz \
+           file://enum-conversion.patch \
+"
+SRC_URI[md5sum] = "06488186c7dd53f8104183b86f7a1568"
+SRC_URI[sha256sum] = "cdd5b4cb1e4d7643643a28ccbfc4bb354bfa9cb89a77ea160ebdf7926171c668"
 
 S = "${WORKDIR}/ModemManager-${PV}"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 44/49] libcec: Add missing dep on ncurses
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (41 preceding siblings ...)
  2016-11-23  9:22 ` [meta-oe][PATCH 43/49] modemmanager: " Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-23  9:22 ` [meta-multimedia][PATCH 45/49] kodi-17: Update to latest Khem Raj
                   ` (4 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Consider vc4 options on raspberryPi class of
devices

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-extended/libcec/libcec_git.bb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta-oe/recipes-extended/libcec/libcec_git.bb b/meta-oe/recipes-extended/libcec/libcec_git.bb
index 32ab4b9..0ce7ea1 100644
--- a/meta-oe/recipes-extended/libcec/libcec_git.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_git.bb
@@ -4,9 +4,10 @@ HOMEPAGE = "http://libcec.pulse-eight.com/"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=e61fd86f9c947b430126181da2c6c715"
 
-DEPENDS = "p8platform udev lockdev"
+DEPENDS = "p8platform udev lockdev ncurses"
 
 DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11 libxrandr', '', d)}"
+DEPENDS_append_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', ' userland', d)}"
 
 PV = "3.1.0+gitr${SRCPV}"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 45/49] kodi-17: Update to latest
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (42 preceding siblings ...)
  2016-11-23  9:22 ` [meta-oe][PATCH 44/49] libcec: Add missing dep on ncurses Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-23  9:22 ` [meta-multimedia][PATCH 46/49] tvheadend: Update to 4.0.9 Khem Raj
                   ` (3 subsequent siblings)
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...-musl.patch => 0001-Fix-file_Emu-on-musl.patch} |  4 +-
 ...e-FILEWRAP.patch => 0002-Remove-FILEWRAP.patch} | 28 +++++++-------
 ...e-don-t-try-to-run-stuff-to-find-tinyxml.patch} |  8 ++--
 ...dle-SIGTERM.patch => 0004-handle-SIGTERM.patch} | 22 +++++------
 ...to-read-frequency-output-if-using-intel-.patch} |  6 +--
 ...upport.patch => 0006-Disable-DVD-support.patch} | 10 ++---
 ... => 0007-Always-compile-libcpluff-as-PIC.patch} |  6 +--
 ....cmake-use-CMAKE_FIND_ROOT_PATH-to-fix-cr.patch | 43 ++++++++++++++++++++++
 ...0009-build-Add-support-for-musl-triplets.patch} |  8 ++--
 ...ix-compiler-warning-comparing-pointer-to-.patch | 40 ++++++++++++++++++++
 .../recipes-mediacenter/kodi/kodi-platform_git.bb  |  3 +-
 .../recipes-mediacenter/kodi/kodi_17.bb            | 30 +++++++++------
 12 files changed, 149 insertions(+), 59 deletions(-)
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0008-Fix-file_Emu-on-musl.patch => 0001-Fix-file_Emu-on-musl.patch} (99%)
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0007-Remove-FILEWRAP.patch => 0002-Remove-FILEWRAP.patch} (78%)
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch => 0003-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch} (75%)
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0002-handle-SIGTERM.patch => 0004-handle-SIGTERM.patch} (89%)
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0003-add-support-to-read-frequency-output-if-using-intel-.patch => 0005-add-support-to-read-frequency-output-if-using-intel-.patch} (83%)
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0004-Disable-DVD-support.patch => 0006-Disable-DVD-support.patch} (78%)
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0005-Always-compile-libcpluff-as-PIC.patch => 0007-Always-compile-libcpluff-as-PIC.patch} (86%)
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-kodi-config.cmake-use-CMAKE_FIND_ROOT_PATH-to-fix-cr.patch
 rename meta-multimedia/recipes-mediacenter/kodi/kodi-17/{0006-build-Add-support-for-musl-triplets.patch => 0009-build-Add-support-for-musl-triplets.patch} (97%)
 create mode 100644 meta-multimedia/recipes-mediacenter/kodi/kodi-17/0010-RssReader-Fix-compiler-warning-comparing-pointer-to-.patch

diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-Fix-file_Emu-on-musl.patch
similarity index 99%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-Fix-file_Emu-on-musl.patch
index 7598c7a..20b6377 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-Fix-file_Emu-on-musl.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-Fix-file_Emu-on-musl.patch
@@ -1,7 +1,7 @@
-From 3a10d9479e7c9a77c478b8b428e4309ff22e8498 Mon Sep 17 00:00:00 2001
+From 7ae4fcf290ffb0b76374efafeaee575456ac9023 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Sun, 6 Nov 2016 23:08:27 -0800
-Subject: [PATCH 8/8] Fix file_Emu on musl
+Subject: [PATCH 01/10] Fix file_Emu on musl
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Remove-FILEWRAP.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-Remove-FILEWRAP.patch
similarity index 78%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Remove-FILEWRAP.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-Remove-FILEWRAP.patch
index c2d3259..7f48e93 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Remove-FILEWRAP.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-Remove-FILEWRAP.patch
@@ -1,7 +1,7 @@
-From f4c5710192256e903b253353fb018ebd68d0b651 Mon Sep 17 00:00:00 2001
+From ad1977a358319093b305df6d84be6db676ef1e4a Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Sun, 6 Nov 2016 22:35:16 -0800
-Subject: [PATCH 7/8] Remove FILEWRAP
+Subject: [PATCH 02/10] Remove FILEWRAP
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
@@ -10,10 +10,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  2 files changed, 2 insertions(+), 8 deletions(-)
 
 diff --git a/xbmc/utils/posix/PosixInterfaceForCLog.cpp b/xbmc/utils/posix/PosixInterfaceForCLog.cpp
-index 6614487..a91d157 100644
+index a3d4983..8443024 100644
 --- a/xbmc/utils/posix/PosixInterfaceForCLog.cpp
 +++ b/xbmc/utils/posix/PosixInterfaceForCLog.cpp
-@@ -28,10 +28,6 @@
+@@ -29,10 +29,6 @@
  #include "platform/android/activity/XBMCApp.h"
  #endif // TARGET_ANDROID
  
@@ -24,7 +24,7 @@ index 6614487..a91d157 100644
  CPosixInterfaceForCLog::CPosixInterfaceForCLog() :
    m_file(NULL)
  { }
-@@ -51,7 +47,7 @@ bool CPosixInterfaceForCLog::OpenLogFile(const std::string &logFilename, const s
+@@ -52,7 +48,7 @@ bool CPosixInterfaceForCLog::OpenLogFile(const std::string &logFilename, const s
    (void)remove(backupOldLogToFilename.c_str()); // if it's failed, try to continue
    (void)rename(logFilename.c_str(), backupOldLogToFilename.c_str()); // if it's failed, try to continue
  
@@ -34,24 +34,24 @@ index 6614487..a91d157 100644
      return false; // error, can't open log file
  
 diff --git a/xbmc/utils/posix/PosixInterfaceForCLog.h b/xbmc/utils/posix/PosixInterfaceForCLog.h
-index bb53442..2983e73 100644
+index c1e8ffe..75836b7 100644
 --- a/xbmc/utils/posix/PosixInterfaceForCLog.h
 +++ b/xbmc/utils/posix/PosixInterfaceForCLog.h
-@@ -21,8 +21,6 @@
+@@ -19,8 +19,6 @@
+  *
+  */
  
- #include <string>
- 
--struct FILEWRAP; // forward declaration, wrapper for FILE
+-#include <string>
 -
+ struct FILEWRAP; // forward declaration, wrapper for FILE
+ 
  class CPosixInterfaceForCLog
- {
- public:
 @@ -34,5 +32,5 @@ public:
    void PrintDebugString(const std::string& debugString);
-   static void GetCurrentLocalTime(int& hour, int& minute, int& second);
+   static void GetCurrentLocalTime(int& hour, int& minute, int& second, double& millisecond);
  private:
 -  FILEWRAP* m_file;
-+  FILE * m_file;
++  FILE* m_file;
  };
 -- 
 2.10.2
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
similarity index 75%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
index b3780db..49217a4 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch
@@ -1,14 +1,14 @@
-From 53c7b1667a41b25775d1dc009d8ced61f383da0b Mon Sep 17 00:00:00 2001
+From a91a3ba229dc5903935f7dd98dd03bbb4fe5ac1f Mon Sep 17 00:00:00 2001
 From: Koen Kooi <koen@dominion.thruhere.net>
 Date: Sat, 6 Feb 2016 15:43:01 +0100
-Subject: [PATCH 1/3] configure: don't try to run stuff to find tinyxml
+Subject: [PATCH 03/10] configure: don't try to run stuff to find tinyxml
 
 ---
  configure.ac | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/configure.ac b/configure.ac
-index 5a41fb4..243c7e5 100644
+index 34fe643..3132dc1 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -1043,7 +1043,7 @@ fi
@@ -21,5 +21,5 @@ index 5a41fb4..243c7e5 100644
  #include <stdlib.h>
  #include <tinyxml.h>
 -- 
-2.10.1
+2.10.2
 
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-handle-SIGTERM.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-handle-SIGTERM.patch
similarity index 89%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-handle-SIGTERM.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-handle-SIGTERM.patch
index b2af5de..dc37439 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0002-handle-SIGTERM.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-handle-SIGTERM.patch
@@ -1,7 +1,7 @@
-From 1c1484303a055bfde655ffae3829554aaefc2e07 Mon Sep 17 00:00:00 2001
+From 49046c1685465a5486fe9e1c04b99c585aab6862 Mon Sep 17 00:00:00 2001
 From: Stefan Saraev <stefan@saraev.ca>
 Date: Wed, 2 Nov 2016 11:28:34 -0700
-Subject: [PATCH 2/3] handle SIGTERM
+Subject: [PATCH 04/10] handle SIGTERM
 
 0. CApplication::Stop cant be trusted. (deadlocks crashes and boo)
 
@@ -26,10 +26,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  5 files changed, 30 insertions(+), 5 deletions(-)
 
 diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
-index 4c118e0..58b151a 100644
+index 100a2f2..fda892d 100644
 --- a/xbmc/Application.cpp
 +++ b/xbmc/Application.cpp
-@@ -2428,12 +2428,12 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
+@@ -2426,12 +2426,12 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
    switch (pMsg->dwMessage)
    {
    case TMSG_POWERDOWN:
@@ -44,7 +44,7 @@ index 4c118e0..58b151a 100644
      break;
    
    case TMSG_SHUTDOWN:
-@@ -2454,12 +2454,13 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
+@@ -2452,12 +2452,13 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
  
    case TMSG_RESTART:
    case TMSG_RESET:
@@ -59,7 +59,7 @@ index 4c118e0..58b151a 100644
      Stop(EXITCODE_RESTARTAPP);
  #endif
      break;
-@@ -2883,6 +2884,13 @@ bool CApplication::Cleanup()
+@@ -2881,6 +2882,13 @@ bool CApplication::Cleanup()
    }
  }
  
@@ -73,7 +73,7 @@ index 4c118e0..58b151a 100644
  void CApplication::Stop(int exitCode)
  {
    try
-@@ -2890,7 +2898,7 @@ void CApplication::Stop(int exitCode)
+@@ -2888,7 +2896,7 @@ void CApplication::Stop(int exitCode)
      m_frameMoveGuard.unlock();
  
      CVariant vExitCode(CVariant::VariantTypeObject);
@@ -82,7 +82,7 @@ index 4c118e0..58b151a 100644
      CAnnouncementManager::GetInstance().Announce(System, "xbmc", "OnQuit", vExitCode);
  
      // Abort any active screensaver
-@@ -2924,7 +2932,6 @@ void CApplication::Stop(int exitCode)
+@@ -2922,7 +2930,6 @@ void CApplication::Stop(int exitCode)
  
      m_bStop = true;
      m_AppFocused = false;
@@ -91,10 +91,10 @@ index 4c118e0..58b151a 100644
  
      // cancel any jobs from the jobmanager
 diff --git a/xbmc/Application.h b/xbmc/Application.h
-index 22aca81..9992677 100644
+index a9d9bf5..e536deb 100644
 --- a/xbmc/Application.h
 +++ b/xbmc/Application.h
-@@ -160,6 +160,7 @@ public:
+@@ -159,6 +159,7 @@ public:
    void StopPVRManager();
    void ReinitPVRManager();
    bool IsCurrentThread() const;
@@ -159,5 +159,5 @@ index a8b64e5..3d80032 100644
    XBMC::Context context;
  
 -- 
-2.10.1
+2.10.2
 
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-add-support-to-read-frequency-output-if-using-intel-.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-add-support-to-read-frequency-output-if-using-intel-.patch
similarity index 83%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-add-support-to-read-frequency-output-if-using-intel-.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-add-support-to-read-frequency-output-if-using-intel-.patch
index d638550..ee10c40 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0003-add-support-to-read-frequency-output-if-using-intel-.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-add-support-to-read-frequency-output-if-using-intel-.patch
@@ -1,7 +1,7 @@
-From 4ef1e9dab9193f1a5305d25c8eda97f8f06ea154 Mon Sep 17 00:00:00 2001
+From 4d1368d20f04216aec9551d9845b305f96a21015 Mon Sep 17 00:00:00 2001
 From: Stephan Raue <stephan@openelec.tv>
 Date: Mon, 1 Sep 2014 03:16:37 +0200
-Subject: [PATCH 3/3] add support to read frequency output if using intel's
+Subject: [PATCH 05/10] add support to read frequency output if using intel's
  pstate driver
 
 ---
@@ -22,5 +22,5 @@ index 5e2ebbd..fd04d5a 100644
    {
      m_cpuInfoForFreq = true;
 -- 
-2.10.1
+2.10.2
 
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-Disable-DVD-support.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-Disable-DVD-support.patch
similarity index 78%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-Disable-DVD-support.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-Disable-DVD-support.patch
index 6f5f9a2..08dfac3 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0004-Disable-DVD-support.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-Disable-DVD-support.patch
@@ -1,7 +1,7 @@
-From 191cf3f084b4d34846711034a7fe3078f8243c82 Mon Sep 17 00:00:00 2001
+From 3d3ec391038c6ee73897a7fab753b11b589de1ed Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Wed, 2 Nov 2016 12:39:20 -0700
-Subject: [PATCH 4/4] Disable DVD support
+Subject: [PATCH 06/10] Disable DVD support
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  1 file changed, 1 insertion(+), 3 deletions(-)
 
 diff --git a/Makefile.in b/Makefile.in
-index 58b3a17..b7c3fce 100644
+index 0d70e9b..050c7ca 100644
 --- a/Makefile.in
 +++ b/Makefile.in
 @@ -10,8 +10,7 @@ EC_DIRS= \
@@ -22,7 +22,7 @@ index 58b3a17..b7c3fce 100644
  
  VideoPlayer_ARCHIVES=xbmc/cores/VideoPlayer/VideoPlayer.a \
                     xbmc/cores/VideoPlayer/DVDCodecs/DVDCodecs.a \
-@@ -343,7 +342,6 @@ libaddon: exports
+@@ -347,7 +346,6 @@ libaddon: exports
  	$(MAKE) -C lib/addons/library.xbmc.pvr
  	$(MAKE) -C lib/addons/library.kodi.inputstream
  dvdpcodecs: dllloader
@@ -31,5 +31,5 @@ index 58b3a17..b7c3fce 100644
  dvdpextcodecs:
  
 -- 
-2.10.1
+2.10.2
 
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-Always-compile-libcpluff-as-PIC.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Always-compile-libcpluff-as-PIC.patch
similarity index 86%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-Always-compile-libcpluff-as-PIC.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Always-compile-libcpluff-as-PIC.patch
index f513334..8fd7ece 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0005-Always-compile-libcpluff-as-PIC.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0007-Always-compile-libcpluff-as-PIC.patch
@@ -1,7 +1,7 @@
-From 603e8925a8b1609d483d866346a35fefbc66cfca Mon Sep 17 00:00:00 2001
+From d989cbdb7686c3b95dc749967f89b93e47f955a6 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 3 Nov 2016 13:10:00 -0700
-Subject: [PATCH 5/5] Always compile libcpluff as PIC
+Subject: [PATCH 07/10] Always compile libcpluff as PIC
 
 Fixes errors e.g.
 
@@ -13,7 +13,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/configure.ac b/configure.ac
-index b210b73..52d5f11 100644
+index 3132dc1..ab4eea3 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -2385,7 +2385,7 @@ XB_CONFIG_MODULE([lib/cpluff], [
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-kodi-config.cmake-use-CMAKE_FIND_ROOT_PATH-to-fix-cr.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-kodi-config.cmake-use-CMAKE_FIND_ROOT_PATH-to-fix-cr.patch
new file mode 100644
index 0000000..9390144
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0008-kodi-config.cmake-use-CMAKE_FIND_ROOT_PATH-to-fix-cr.patch
@@ -0,0 +1,43 @@
+From 51cd8d5f084013360b29fe497193288ebde2f4f9 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Wed, 29 Jul 2015 23:13:33 +0200
+Subject: [PATCH 08/10] kodi-config.cmake: use CMAKE_FIND_ROOT_PATH to fix
+ cross-compilation
+
+When cross-compiling, the location at build time of the libraries is
+not the same as the one at run-time. The CMAKE_FIND_ROOT_PATH variable
+is here to handle this difference, so use it in kodi-config.cmake.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ project/cmake/KodiConfig.cmake.in | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/project/cmake/KodiConfig.cmake.in b/project/cmake/KodiConfig.cmake.in
+index c02a680..9d6a566 100644
+--- a/project/cmake/KodiConfig.cmake.in
++++ b/project/cmake/KodiConfig.cmake.in
+@@ -7,10 +7,10 @@ if(NOT @APP_NAME_UC@_PREFIX)
+   set(@APP_NAME_UC@_PREFIX @APP_PREFIX@)
+ endif()
+ if(NOT @APP_NAME_UC@_INCLUDE_DIR)
+-  set(@APP_NAME_UC@_INCLUDE_DIR @APP_INCLUDE_DIR@)
++  set(@APP_NAME_UC@_INCLUDE_DIR ${CMAKE_FIND_ROOT_PATH}/@APP_INCLUDE_DIR@)
+ endif()
+ if(NOT @APP_NAME_UC@_LIB_DIR)
+-  set(@APP_NAME_UC@_LIB_DIR @APP_LIB_DIR@)
++  set(@APP_NAME_UC@_LIB_DIR ${CMAKE_FIND_ROOT_PATH}/@APP_LIB_DIR@)
+ endif()
+ if(NOT @APP_NAME_UC@_DATA_DIR)
+   set(@APP_NAME_UC@_DATA_DIR @APP_DATA_DIR@)
+@@ -19,6 +19,7 @@ if(NOT WIN32)
+   set(CMAKE_CXX_FLAGS "$ENV{CXXFLAGS} @CXX11_SWITCH@")
+ endif()
+ list(APPEND CMAKE_MODULE_PATH @APP_LIB_DIR@ @APP_DATA_DIR@/cmake)
++list(APPEND CMAKE_MODULE_PATH ${CMAKE_FIND_ROOT_PATH}/@APP_LIB_DIR@ ${CMAKE_FIND_ROOT_PATH}/@APP_DATA_DIR@/cmake)
+ 
+ string(REPLACE ";" " " ARCH_DEFINES "@ARCH_DEFINES@")
+ add_definitions(${ARCH_DEFINES} -DBUILD_KODI_ADDON)
+-- 
+2.10.2
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-build-Add-support-for-musl-triplets.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0009-build-Add-support-for-musl-triplets.patch
similarity index 97%
rename from meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-build-Add-support-for-musl-triplets.patch
rename to meta-multimedia/recipes-mediacenter/kodi/kodi-17/0009-build-Add-support-for-musl-triplets.patch
index 71c5c41..f3e739a 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0006-build-Add-support-for-musl-triplets.patch
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0009-build-Add-support-for-musl-triplets.patch
@@ -1,7 +1,7 @@
-From 99769ac5653884e49d1c8c34e65d2e565cd9e314 Mon Sep 17 00:00:00 2001
+From 8b2bad58585af0f829fb06e19c9bd2b6caf30808 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Sun, 6 Nov 2016 11:54:41 -0800
-Subject: [PATCH 6/6] build: Add support for musl triplets
+Subject: [PATCH 09/10] build: Add support for musl triplets
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  3 files changed, 23 insertions(+), 23 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index 52d5f11..a772973 100644
+index ab4eea3..925466a 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -526,7 +526,7 @@ case $host in
@@ -131,7 +131,7 @@ index d28f263..ff5dc20 100644
       ;;
    *-*linux-android*)
 diff --git a/tools/depends/configure.ac b/tools/depends/configure.ac
-index a0bc386..b96d20e 100644
+index f438e5d..409f4d7 100644
 --- a/tools/depends/configure.ac
 +++ b/tools/depends/configure.ac
 @@ -120,13 +120,13 @@ platform_cc=gcc
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0010-RssReader-Fix-compiler-warning-comparing-pointer-to-.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0010-RssReader-Fix-compiler-warning-comparing-pointer-to-.patch
new file mode 100644
index 0000000..e34a5b7
--- /dev/null
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-17/0010-RssReader-Fix-compiler-warning-comparing-pointer-to-.patch
@@ -0,0 +1,40 @@
+From 55233024648b5673dbf223586968e71cc4c70711 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 16 Nov 2016 18:49:36 -0800
+Subject: [PATCH 10/10] RssReader: Fix compiler warning comparing pointer to
+ zero
+
+Clang finds this warning
+RssReader.cpp:272:19: error: ordered comparison between pointer and zero ('TiXmlElement *' and 'int')
+  while (itemNode > 0)
+         ~~~~~~~~ ^ ~
+RssReader.cpp:276:22: error: ordered comparison between pointer and zero ('TiXmlNode *' and 'int')
+    while (childNode > 0)
+           ~~~~~~~~~ ^ ~
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ xbmc/utils/RssReader.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/xbmc/utils/RssReader.cpp b/xbmc/utils/RssReader.cpp
+index 9186f56..2494dc8 100644
+--- a/xbmc/utils/RssReader.cpp
++++ b/xbmc/utils/RssReader.cpp
+@@ -269,11 +269,11 @@ void CRssReader::GetNewsItems(TiXmlElement* channelXmlNode, int iFeed)
+   if (m_tagSet.empty())
+     AddTag("title");
+ 
+-  while (itemNode > 0)
++  while (itemNode != NULL)
+   {
+     TiXmlNode* childNode = itemNode->FirstChild();
+     mTagElements.clear();
+-    while (childNode > 0)
++    while (childNode != NULL)
+     {
+       std::string strName = childNode->ValueStr();
+ 
+-- 
+2.10.2
+
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
index 5077454..802259d 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
@@ -8,9 +8,8 @@ DEPENDS = "libtinyxml kodi"
 
 PV = "16.0.0"
 
-SRCREV = "15edaf78d6307eaa5e1d17028122d8bce9d55aa2"
+SRCREV = "c8188d82678fec6b784597db69a68e74ff4986b5"
 SRC_URI = "git://github.com/xbmc/kodi-platform.git \
-           file://0001-Fix-build-after-platform-rename.patch \
            file://0001-fix-cross-compile-badness.patch \
            file://kodi-platform-02_no-multi-lib.patch \
           "
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
index 13be123..ee8c743 100644
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
+++ b/meta-multimedia/recipes-mediacenter/kodi/kodi_17.bb
@@ -63,20 +63,22 @@ DEPENDS = " \
 
 PROVIDES = "xbmc"
 
-SRCREV = "7f6abd1dd6d1aefcb4303083f34aaa90a8df9fce"
+SRCREV = "59579457e5fa56baae3b3fb2521518ad6fadd14e"
 PV = "17.0+gitr${SRCPV}"
 SRC_URI = "git://github.com/xbmc/xbmc.git;branch=master \
-           file://0001-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch \
-           file://0002-handle-SIGTERM.patch \
-           file://0003-add-support-to-read-frequency-output-if-using-intel-.patch \
-           file://0004-Disable-DVD-support.patch \
-           file://0005-Always-compile-libcpluff-as-PIC.patch \
-           file://0006-build-Add-support-for-musl-triplets.patch \
+           file://0003-configure-don-t-try-to-run-stuff-to-find-tinyxml.patch \
+           file://0004-handle-SIGTERM.patch \
+           file://0005-add-support-to-read-frequency-output-if-using-intel-.patch \
+           file://0006-Disable-DVD-support.patch \
+           file://0007-Always-compile-libcpluff-as-PIC.patch \
+           file://0008-kodi-config.cmake-use-CMAKE_FIND_ROOT_PATH-to-fix-cr.patch \
+           file://0009-build-Add-support-for-musl-triplets.patch \
+           file://0010-RssReader-Fix-compiler-warning-comparing-pointer-to-.patch \
 "
 
 SRC_URI_append_libc-musl = " \
-           file://0007-Remove-FILEWRAP.patch \
-           file://0008-Fix-file_Emu-on-musl.patch \
+           file://0001-Fix-file_Emu-on-musl.patch \
+           file://0002-Remove-FILEWRAP.patch \
 "
 
 inherit autotools-brokensep gettext pythonnative
@@ -103,7 +105,9 @@ PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr li
 PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
 PACKAGECONFIG[lcms] = "--enable-lcms2,--disable-lcms2,lcms"
 
+
 EXTRA_OECONF_append_rpi = " --disable-openmax --enable-player=omxplayer --with-platform=raspberry-pi2"
+EXTRA_OECONF_remove_aarch64 = "--with-platform=raspberry-pi2"
 LDFLAGS_append_rpi = " -lvchostif "
 EXTRA_OECONF = " \
     --disable-debug \
@@ -118,10 +122,12 @@ EXTRA_OECONF = " \
     --enable-texturepacker=no \
 "
 
-FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -fomit-frame-pointer -O4 -ffast-math"
-FULL_OPTIMIZATION_armv7ve = "-fexpensive-optimizations -fomit-frame-pointer -O4 -ffast-math"
+FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations -fomit-frame-pointer -O3 -ffast-math"
+FULL_OPTIMIZATION_armv7ve = "-fexpensive-optimizations -fomit-frame-pointer -O3 -ffast-math"
 BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
 
+EXTRA_OECONF_append = " LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool"
+
 # for python modules
 export HOST_SYS
 export BUILD_SYS
@@ -187,3 +193,5 @@ RRECOMMENDS_${PN}_append_libc-glibc = " glibc-charmap-ibm850 \
 
 RPROVIDES_${PN} += "xbmc"
 
+TOOLCHAIN = "gcc"
+
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 46/49] tvheadend: Update to 4.0.9
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (43 preceding siblings ...)
  2016-11-23  9:22 ` [meta-multimedia][PATCH 45/49] kodi-17: Update to latest Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-26  0:18   ` Martin Jansa
  2016-11-23  9:22 ` [meta-networking][PATCH 47/49] memcached: Update to 1.4.33 Khem Raj
                   ` (2 subsequent siblings)
  47 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../tvheadend/0001-Fix-checks-for-sse2-mmx.patch   | 40 ++++++++++
 ...efile-Ignore-warning-about-wrong-includes.patch | 31 ++++++++
 ...end-specific-LD-CFLAGS-into-a-helper-vari.patch | 92 ----------------------
 .../0001-disable-varargs-warning-on-clang.patch    | 32 ++++++++
 .../0001-dvr-Use-labs-instead-of-abs.patch         | 37 +++++++++
 ...verride-forced-overrdiing-og-CC-STRIP-and.patch | 40 ++++++++++
 .../tvheadend/0002-fix-issues-with-gcc6.patch      | 46 -----------
 .../recipes-dvb/tvheadend/tvheadend_git.bb         | 15 ++--
 8 files changed, 189 insertions(+), 144 deletions(-)
 create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch
 create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch
 delete mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Move-tvheadend-specific-LD-CFLAGS-into-a-helper-vari.patch
 create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch
 create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch
 create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch
 delete mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0002-fix-issues-with-gcc6.patch

diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch
new file mode 100644
index 0000000..3283a5b
--- /dev/null
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch
@@ -0,0 +1,40 @@
+From f0dab6d6fe4b0aae4394eee93be86e9747c6ed5c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 22 Nov 2016 05:07:38 +0000
+Subject: [PATCH] Fix checks for sse2/mmx
+
+Just checking for cmdline options is not enough
+its better to check for builtin defines to be
+sure, clang does not error out on sse2 options on
+arm e.g. and it ends up doing SSE2 stuff for arm
+which is not desired
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/configure b/configure
+index 47d2cf2..4be000c 100755
+--- a/configure
++++ b/configure
+@@ -118,8 +118,14 @@ fi
+ # Valiate compiler
+ check_cc || die 'No C compiler found'
+ check_cc_header execinfo
+-check_cc_option mmx
+-check_cc_option sse2
++check_cc_snippet mmx '#ifndef __MMX__
++error "MMX not supported"
++#endif
++'
++check_cc_snippet sse2 '#ifndef __SSE2__
++error "SSE2 not supported"
++#endif
++'
+ 
+ if check_cc '
+ #if !defined(__clang__)
+-- 
+1.9.1
+
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch
new file mode 100644
index 0000000..248a5e6
--- /dev/null
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch
@@ -0,0 +1,31 @@
+From 7d672305c7ad2f716dfe1c487b525a1a92954d4a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 22 Nov 2016 06:22:36 +0000
+Subject: [PATCH] Makefile: Ignore warning about wrong includes
+
+It happens on musl especially
+usr/include/sys/poll.h:1:2: error: redirecting incorrect #include <sys/poll.h> to <poll.h> [-Werror,-W#warnings]
+| #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
+|  ^
+| In file included from src/avahi.c:48:
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile b/Makefile
+index f41ef1a..cc7b249 100644
+--- a/Makefile
++++ b/Makefile
+@@ -54,6 +54,7 @@ CFLAGS  += -Wno-microsoft -Qunused-arguments -Wno-unused-function
+ CFLAGS  += -Wno-unused-value -Wno-tautological-constant-out-of-range-compare
+ CFLAGS  += -Wno-parentheses-equality -Wno-incompatible-pointer-types
+ CFLAGS  += -Wno-error=varargs
++CFLAGS  += -Wno-error=\#warnings
+ endif
+ 
+ ifeq ($(CONFIG_LIBFFMPEG_STATIC),yes)
+-- 
+1.8.3.1
+
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Move-tvheadend-specific-LD-CFLAGS-into-a-helper-vari.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Move-tvheadend-specific-LD-CFLAGS-into-a-helper-vari.patch
deleted file mode 100644
index 9dfcce0..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Move-tvheadend-specific-LD-CFLAGS-into-a-helper-vari.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From 2ee64b359464b48f751683faa5ded3ee8200fe90 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Fri, 21 Dec 2012 10:15:42 +0100
-Subject: [PATCH] Move tvheadend specific LD/CFLAGS into a helper variable to
- avoid being overwritten
-
-Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
-
-Upstream-Status: Inappropriate [OE specific]
----
- Makefile              |   20 ++++++++++----------
- support/configure.inc |    8 ++++----
- 2 files changed, 14 insertions(+), 14 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 8c6b293..daf5f14 100644
---- a/Makefile
-+++ b/Makefile
-@@ -27,12 +27,12 @@ PROG = ${BUILDDIR}/tvheadend
- # Common compiler flags
- #
- 
--CFLAGS  += -Wall -Werror -Wwrite-strings -Wno-deprecated-declarations
--CFLAGS  += -Wmissing-prototypes -fms-extensions
--CFLAGS  += -g -funsigned-char -O2 
--CFLAGS  += -D_FILE_OFFSET_BITS=64
--CFLAGS  += -I${BUILDDIR} -I${CURDIR}/src -I${CURDIR}
--LDFLAGS += -lrt -ldl -lpthread -lm
-+TVH_CFLAGS  += -Wall -Werror -Wwrite-strings -Wno-deprecated-declarations
-+TVH_CFLAGS  += -Wmissing-prototypes -fms-extensions
-+TVH_CFLAGS  += -g -funsigned-char -O2 
-+TVH_CFLAGS  += -D_FILE_OFFSET_BITS=64
-+TVH_CFLAGS  += -I${BUILDDIR} -I${CURDIR}/src -I${CURDIR}
-+TVH_LDFLAGS += -lrt -ldl -lpthread -lm
- 
- #
- # Other config
-@@ -179,8 +179,8 @@ SRCS-${CONFIG_CWC}  += src/ffdecsa/ffdecsa_interface.c \
- 	src/ffdecsa/ffdecsa_int.c
- SRCS-${CONFIG_MMX}  += src/ffdecsa/ffdecsa_mmx.c
- SRCS-${CONFIG_SSE2} += src/ffdecsa/ffdecsa_sse2.c
--${BUILDDIR}/src/ffdecsa/ffdecsa_mmx.o  : CFLAGS += -mmmx
--${BUILDDIR}/src/ffdecsa/ffdecsa_sse2.o : CFLAGS += -msse2
-+${BUILDDIR}/src/ffdecsa/ffdecsa_mmx.o  : TVH_CFLAGS += -mmmx
-+${BUILDDIR}/src/ffdecsa/ffdecsa_sse2.o : TVH_CFLAGS += -msse2
- endif
- 
- # File bundles
-@@ -217,12 +217,12 @@ all: ${PROG}
- 
- # Binary
- ${PROG}: $(OBJS) $(ALLDEPS)
--	$(CC) -o $@ $(OBJS) $(CFLAGS) $(LDFLAGS)
-+	$(CC) -o $@ $(OBJS) $(TVH_CFLAGS) $(TVH_LDFLAGS) $(CFLAGS) $(LDFLAGS)
- 
- # Object
- ${BUILDDIR}/%.o: %.c
- 	@mkdir -p $(dir $@)
--	$(CC) -MD -MP $(CFLAGS) -c -o $@ $(CURDIR)/$<
-+	$(CC) -MD -MP $(TVH_CFLAGS) $(CFLAGS) -c -o $@ $(CURDIR)/$<
- 
- # Add-on
- ${BUILDDIR}/%.so: ${SRCS_EXTRA}
-diff --git a/support/configure.inc b/support/configure.inc
-index 0130880..332511e 100644
---- a/support/configure.inc
-+++ b/support/configure.inc
-@@ -464,8 +464,8 @@ ifeq (\$(origin CC),default)
- CC        = ${CC}
- endif
- PYTHON   ?= ${PYTHON}
--CFLAGS   += ${CFLAGS}
--LDFLAGS  += ${LDFLAGS}
-+TVH_CFLAGS   += ${CFLAGS}
-+TVH_LDFLAGS  += ${LDFLAGS}
- prefix    = ${prefix}
- bindir    = ${bindir}
- mandir    = ${mandir}
-@@ -482,8 +482,8 @@ EOF
-   # Add package config
-   for pkg in ${PACKAGES[*]}; do
-     cat >>${CONFIG_MK} <<EOF
--LDFLAGS += $(pkg-config --libs $pkg)
--CFLAGS  += $(pkg-config --cflags $pkg)
-+TVH_LDFLAGS += $(pkg-config --libs $pkg)
-+TVH_CFLAGS  += $(pkg-config --cflags $pkg)
- EOF
-   done
- 
--- 
-1.7.7.6
-
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch
new file mode 100644
index 0000000..a4c4c4d
--- /dev/null
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch
@@ -0,0 +1,32 @@
+From 906d95695af95970bf551ea55b6c3e70332c6b97 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 22 Nov 2016 05:22:32 +0000
+Subject: [PATCH] disable varargs warning on clang
+
+The issue is that 'len' is an unsigned char and we violate the promotion rules
+for passing the value to va_start.
+
+passing an object that undergoes defau
+lt argument promotion to 'va_start' has undefined behavior [-Wvarargs]
+|   va_start(ap, len);
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile b/Makefile
+index 8c5e380..f41ef1a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -53,6 +53,7 @@ ifeq ($(COMPILER), clang)
+ CFLAGS  += -Wno-microsoft -Qunused-arguments -Wno-unused-function
+ CFLAGS  += -Wno-unused-value -Wno-tautological-constant-out-of-range-compare
+ CFLAGS  += -Wno-parentheses-equality -Wno-incompatible-pointer-types
++CFLAGS  += -Wno-error=varargs
+ endif
+ 
+ ifeq ($(CONFIG_LIBFFMPEG_STATIC),yes)
+-- 
+1.9.1
+
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch
new file mode 100644
index 0000000..ea34cdb
--- /dev/null
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch
@@ -0,0 +1,37 @@
+From a715671eadcbf989fdaf05f62e71b93ac1749615 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 22 Nov 2016 06:08:31 +0000
+Subject: [PATCH] dvr: Use labs() instead of abs()
+
+Makes clang happy
+
+dvr/dvr_db.c:853:10: error: absolute value function
+'abs' given an argument of type 'long' but has parameter of type 'int' which may cause truncation of value [-Werror,-Wabsolute-value]
+if ((abs(de->de_start - e->start) < 600) && (abs(de->de_stop - e->stop) < 600)) {
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/dvr/dvr_db.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/dvr/dvr_db.c b/src/dvr/dvr_db.c
+index 165caa6..5656569 100644
+--- a/src/dvr/dvr_db.c
++++ b/src/dvr/dvr_db.c
+@@ -414,11 +414,11 @@ dvr_entry_fuzzy_match(dvr_entry_t *de, epg_broadcast_t *e)
+   /* Wrong length (+/-20%) */
+   t1 = de->de_stop - de->de_start;
+   t2  = e->stop - e->start;
+-  if ( abs(t2 - t1) > (t1 / 5) )
++  if ( labs(t2 - t1) > (t1 / 5) )
+     return 0;
+ 
+   /* Outside of window */
+-  if (abs(e->start - de->de_start) > de->de_config->dvr_update_window)
++  if (labs(e->start - de->de_start) > de->de_config->dvr_update_window)
+     return 0;
+   
+   /* Title match (or contains?) */
+-- 
+1.9.1
+
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch
new file mode 100644
index 0000000..484e723
--- /dev/null
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch
@@ -0,0 +1,40 @@
+From c3767e189e90965407937b6178adbbd8cdafe31d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 22 Nov 2016 05:59:10 +0000
+Subject: [PATCH] hdhomerun: Override forced overrdiing og CC/STRIP and CFLAGS
+
+This is required for cross compiling otherwise it ends up
+using build host gcc
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.hdhomerun | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.hdhomerun b/Makefile.hdhomerun
+index 943ffec..8bd14ff 100644
+--- a/Makefile.hdhomerun
++++ b/Makefile.hdhomerun
+@@ -18,8 +18,8 @@
+ 
+ include $(dir $(lastword $(MAKEFILE_LIST))).config.mk
+ 
+-unexport CFLAGS
+-unexport LDFLAGS
++#unexport CFLAGS
++#unexport LDFLAGS
+ 
+ define DOWNLOAD
+ 	@mkdir -p $(LIBHDHRDIR)/build
+@@ -75,6 +75,8 @@ $(LIBHDHRDIR)/$(LIBHDHR)/.tvh_download:
+ 	$(call DOWNLOAD,$(LIBHDHR_URL),$(LIBHDHRDIR)/$(LIBHDHR_TB),$(LIBHDHR_SHA1))
+ 	$(call UNTAR,$(LIBHDHR_TB),z)
+ 	ln -sf libhdhomerun $(LIBHDHRDIR)/$(LIBHDHR)
++	@sed -i -e "s/CC.*:=/CC ?=/" $(LIBHDHRDIR)/$(LIBHDHR)/Makefile
++	@sed -i -e "s/STRIP.*:=/STRIP ?=/" $(LIBHDHRDIR)/$(LIBHDHR)/Makefile
+ 	@touch $@
+ 
+ $(LIBHDHRDIR)/$(LIBHDHR)/.tvh_build: \
+-- 
+1.9.1
+
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0002-fix-issues-with-gcc6.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0002-fix-issues-with-gcc6.patch
deleted file mode 100644
index 55b9249..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0002-fix-issues-with-gcc6.patch
+++ /dev/null
@@ -1,46 +0,0 @@
---- git/src/htsmsg.c.orig	2016-06-17 11:47:53.026921237 -0400
-+++ git/src/htsmsg.c	2016-06-17 11:49:03.086922457 -0400
-@@ -574,13 +574,13 @@
-     case HMF_MAP:
-       printf("MAP) = {\n");
-       htsmsg_print0(&f->hmf_msg, indent + 1);
--      for(i = 0; i < indent; i++) printf("\t"); printf("}\n");
-+      for(i = 0; i < indent; i++) {printf("\t");} printf("}\n");
-       break;
- 
-     case HMF_LIST:
-       printf("LIST) = {\n");
-       htsmsg_print0(&f->hmf_msg, indent + 1);
--      for(i = 0; i < indent; i++) printf("\t"); printf("}\n");
-+      for(i = 0; i < indent; i++) {printf("\t");} printf("}\n");
-       break;
-       
-     case HMF_STR:
---- git/src/dvb/dvb_tables.c.orig	2016-06-17 11:51:09.142924652 -0400
-+++ git/src/dvb/dvb_tables.c	2016-06-17 11:54:33.962928219 -0400
-@@ -935,10 +935,10 @@
-     onid = (ptr[24] << 8) | ptr[25];
-     
-     /* Search all muxes on adapter */
--    LIST_FOREACH(tdmi, &tda->tda_muxes, tdmi_adapter_link)
--      if(tdmi->tdmi_transport_stream_id == tsid && tdmi->tdmi_network_id == onid);
--	break;
--    
-+    LIST_FOREACH(tdmi, &tda->tda_muxes, tdmi_adapter_link) {
-+      if(tdmi->tdmi_transport_stream_id == tsid && tdmi->tdmi_network_id == onid)
-+    	break;
-+    }
-     if(tdmi == NULL)
-       continue;
- 
---- git/src/epggrab/module/eit.c.orig	2016-06-17 11:49:57.726923409 -0400
-+++ git/src/epggrab/module/eit.c	2016-06-17 11:50:14.526923701 -0400
-@@ -214,7 +214,7 @@
-   if (m && m->enabled) cptr = _eit_freesat_conv;
-   else
-     m = epggrab_module_find_by_id("uk_freeview");
--    if (m && m->enabled) cptr = _eit_freesat_conv;
-+  if (m && m->enabled) cptr = _eit_freesat_conv;
- 
-   /* Convert */
-   return dvb_get_string_with_len(dst, dstlen, src, srclen, charset, cptr);
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb b/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
index bd5062c..170536a 100644
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
@@ -4,14 +4,17 @@ HOMEPAGE = "https://www.lonelycoder.com/redmine/projects/tvheadend"
 DEPENDS = "avahi zlib openssl python-native"
 
 LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=9eef91148a9b14ec7f9df333daebc746"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=9cae5acac2e9ee2fc3aec01ac88ce5db"
 
-SRC_URI = "git://github.com/tvheadend/tvheadend.git \
-           file://0001-Move-tvheadend-specific-LD-CFLAGS-into-a-helper-vari.patch \
-           file://0002-fix-issues-with-gcc6.patch \
+SRC_URI = "git://github.com/tvheadend/tvheadend.git;branch=release/4.0 \
+           file://0001-Fix-checks-for-sse2-mmx.patch \
+           file://0001-disable-varargs-warning-on-clang.patch \
+           file://0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch \
+           file://0001-dvr-Use-labs-instead-of-abs.patch \
+           file://0001-Makefile-Ignore-warning-about-wrong-includes.patch \
 "
-SRCREV = "a420c83a0e0d2c31c2c15d0fec6fedc3f5a36dfe"
-PV = "3.3"
+SRCREV = "64fec8120158de585e18be705055259484518d94"
+PV = "4.0.9+git${SRCREV}"
 
 S = "${WORKDIR}/git"
 
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-networking][PATCH 47/49] memcached: Update to 1.4.33
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (44 preceding siblings ...)
  2016-11-23  9:22 ` [meta-multimedia][PATCH 46/49] tvheadend: Update to 4.0.9 Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-23  9:22 ` [meta-multimedia][PATCH 48/49] vlc: Add packageconfig for vdpau Khem Raj
  2016-11-23  9:22 ` [meta-oe][PATCH 49/49] mpv: Add libvdpau to DEPENDS Khem Raj
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-support/memcached/memcached/configure.patch     | 13 -------------
 .../memcached/memcached/redundant_comparison.patch          | 13 +++++++++++++
 .../memcached/{memcached_1.4.17.bb => memcached_1.4.33.bb}  |  7 +++----
 3 files changed, 16 insertions(+), 17 deletions(-)
 delete mode 100644 meta-networking/recipes-support/memcached/memcached/configure.patch
 create mode 100644 meta-networking/recipes-support/memcached/memcached/redundant_comparison.patch
 rename meta-networking/recipes-support/memcached/{memcached_1.4.17.bb => memcached_1.4.33.bb} (90%)

diff --git a/meta-networking/recipes-support/memcached/memcached/configure.patch b/meta-networking/recipes-support/memcached/memcached/configure.patch
deleted file mode 100644
index 7001a0e..0000000
--- a/meta-networking/recipes-support/memcached/memcached/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: memcached-1.4.17/configure.ac
-===================================================================
---- memcached-1.4.17.orig/configure.ac	2013-12-20 21:44:49.000000000 +0000
-+++ memcached-1.4.17/configure.ac	2014-07-18 07:17:00.593499483 +0000
-@@ -4,7 +4,7 @@
- AC_INIT(memcached, VERSION_NUMBER, memcached@googlegroups.com)
- AC_CANONICAL_SYSTEM
- AC_CONFIG_SRCDIR(memcached.c)
--AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
- 
- AC_PROG_CC
diff --git a/meta-networking/recipes-support/memcached/memcached/redundant_comparison.patch b/meta-networking/recipes-support/memcached/memcached/redundant_comparison.patch
new file mode 100644
index 0000000..ed86ffa
--- /dev/null
+++ b/meta-networking/recipes-support/memcached/memcached/redundant_comparison.patch
@@ -0,0 +1,13 @@
+Index: memcached-1.4.33/items.c
+===================================================================
+--- memcached-1.4.33.orig/items.c
++++ memcached-1.4.33/items.c
+@@ -148,7 +148,7 @@ item *do_item_alloc(char *key, const siz
+     uint8_t nsuffix;
+     item *it = NULL;
+     char suffix[40];
+-    if (nbytes < 2 || nkey < 0)
++    if (nbytes < 2)
+         return 0;
+ 
+     size_t ntotal = item_make_header(nkey + 1, flags, nbytes, suffix, &nsuffix);
diff --git a/meta-networking/recipes-support/memcached/memcached_1.4.17.bb b/meta-networking/recipes-support/memcached/memcached_1.4.33.bb
similarity index 90%
rename from meta-networking/recipes-support/memcached/memcached_1.4.17.bb
rename to meta-networking/recipes-support/memcached/memcached_1.4.33.bb
index 293f8d4..25ea7b1 100644
--- a/meta-networking/recipes-support/memcached/memcached_1.4.17.bb
+++ b/meta-networking/recipes-support/memcached/memcached_1.4.33.bb
@@ -20,15 +20,14 @@ RDEPENDS_${PN} += "perl perl-module-posix perl-module-autoloader \
     "
 
 SRC_URI = "http://www.memcached.org/files/${BP}.tar.gz \
-           file://configure.patch \
+           file://redundant_comparison.patch \
            file://memcached-add-hugetlbfs-check.patch"
+SRC_URI[md5sum] = "2d7f6476283cd36e21e521d901d37a8f"
+SRC_URI[sha256sum] = "83726c8d68258c56712373072abb25a449c257398075a39ec0867fd8ba69771d"
 
 # set the same COMPATIBLE_HOST as libhugetlbfs
 COMPATIBLE_HOST = '(i.86|x86_64|powerpc|powerpc64|arm).*-linux'
 
-SRC_URI[md5sum] = "46402dfbd7faadf6182283dbbd18b1a6"
-SRC_URI[sha256sum] = "d9173ef6d99ba798c982ea4566cb4f0e64eb23859fdbf9926a89999d8cdc0458"
-
 python __anonymous () {
     endianness = d.getVar('SITEINFO_ENDIANNESS', True)
     if endianness == 'le':
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-multimedia][PATCH 48/49] vlc: Add packageconfig for vdpau
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (45 preceding siblings ...)
  2016-11-23  9:22 ` [meta-networking][PATCH 47/49] memcached: Update to 1.4.33 Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  2016-11-23  9:22 ` [meta-oe][PATCH 49/49] mpv: Add libvdpau to DEPENDS Khem Raj
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Fix packaging of libvlc_vdpau.so since this plugin
does not have soname version

Fixes

QA Issue: non -dev/-dbg/nativesdk- package contains symlink .so: vlc path '/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/vlc/2.2.2-r0/packages-split/vlc/usr/lib/vlc/libvlc_vdpau.so' [dev-so]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-multimedia/recipes-multimedia/vlc/vlc.inc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc.inc b/meta-multimedia/recipes-multimedia/vlc/vlc.inc
index 0972b61..087baab 100644
--- a/meta-multimedia/recipes-multimedia/vlc/vlc.inc
+++ b/meta-multimedia/recipes-multimedia/vlc/vlc.inc
@@ -37,7 +37,7 @@ EXTRA_OECONF = "\
     ac_cv_path_UIC=${STAGING_BINDIR_NATIVE}/uic4 \
 "
 
-PACKAGECONFIG ?= " live555 dc1394 dv1394 notify fontconfig freetype dvdread png ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 sdl', '', d)}"
+PACKAGECONFIG ?= " live555 dc1394 dv1394 notify fontconfig freetype dvdread png ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 sdl vdpau', '', d)}"
 PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad"
 PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,virtual/libsdl libsdl-image "
 PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52"
@@ -72,6 +72,7 @@ PACKAGECONFIG[dvdread] = "--enable-dvdread,--disable-dvdread, libdvdread libdvdc
 PACKAGECONFIG[vnc] = "--enable-vnc,--disable-vnc, libvncserver"
 PACKAGECONFIG[x11] = "--with-x --enable-xcb,--without-x --disable-xcb,  xcb-util-keysyms libxpm libxinerama"
 PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
+PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
 
 do_configure_prepend() {
     cp ${STAGING_DATADIR}/libtool/config.* ${S}/autotools/ || true
@@ -94,6 +95,7 @@ FILES_${PN} += "\
     ${datadir}/applications \
     ${datadir}/vlc/ \
     ${datadir}/icons \
+    ${lindir}/vlc/vlc/libvlc_vdpau.so \
 "
 
 FILES_${PN}-dbg += "\
@@ -104,3 +106,6 @@ FILES_${PN}-dbg += "\
 FILES_${PN}-staticdev += "\
     ${libdir}/vlc/plugins/*/*.a \
 "
+
+INSANE_SKIP_${PN} = "dev-so"
+
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [meta-oe][PATCH 49/49] mpv: Add libvdpau to DEPENDS
  2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
                   ` (46 preceding siblings ...)
  2016-11-23  9:22 ` [meta-multimedia][PATCH 48/49] vlc: Add packageconfig for vdpau Khem Raj
@ 2016-11-23  9:22 ` Khem Raj
  47 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-23  9:22 UTC (permalink / raw)
  To: openembedded-devel

Fixes
WARNING: mpv-0.15.0-r0 do_package_qa: QA Issue: mpv rdepends on libvdpau, but it isn't a build dependency, missing libvdpau in DEPENDS or PACKAGECONFIG? [build-deps]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb b/meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb
index 292c701..c49811c 100644
--- a/meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb
+++ b/meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "mpv is a fork of mplayer2 and MPlayer. It shares some features wi
 SECTION = "multimedia"
 HOMEPAGE = "http://www.mpv.io/"
 DEPENDS = "zlib ffmpeg jpeg virtual/libx11 xsp libxv \
-           libxscrnsaver libv4l libxinerama \
+           libxscrnsaver libv4l libxinerama libvdpau \
 "
 
 REQUIRED_DISTRO_FEATURES = "x11"
-- 
2.10.2



^ permalink raw reply related	[flat|nested] 73+ messages in thread

* Re: [meta-filesystems][PATCH 19/49] xfsprogs: Upgrade 3.2.3 -> 4.8.0
  2016-11-23  9:21 ` [meta-filesystems][PATCH 19/49] xfsprogs: Upgrade 3.2.3 -> 4.8.0 Khem Raj
@ 2016-11-25  0:31   ` Martin Jansa
  2016-11-25 10:41     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-11-25  0:31 UTC (permalink / raw)
  To: openembedded-devel

Failed to build in bitbake world:

| ../include/xfs/linux.h:20:23: fatal error: uuid/uuid.h: No such file
or directory
|  #include <uuid/uuid.h>
|                        ^
| compilation terminated.
| make[2]: *** [crc32selftest] Error 1


On Wed, Nov 23, 2016 at 10:21 AM, Khem Raj <raj.khem@gmail.com> wrote:

> Change-Id: I0015da261d540f99bfdebba703fef9403eebff7b
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../recipes-utils/xfsprogs/xfsprogs_3.2.3.bb       | 55
> ----------------------
>  .../recipes-utils/xfsprogs/xfsprogs_4.8.0.bb       | 52
> ++++++++++++++++++++
>  2 files changed, 52 insertions(+), 55 deletions(-)
>  delete mode 100644 meta-filesystems/recipes-utils/xfsprogs/
> xfsprogs_3.2.3.bb
>  create mode 100644 meta-filesystems/recipes-utils/xfsprogs/
> xfsprogs_4.8.0.bb
>
> diff --git a/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_3.2.3.bb
> b/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_3.2.3.bb
> deleted file mode 100644
> index 460a898..0000000
> --- a/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_3.2.3.bb
> +++ /dev/null
> @@ -1,55 +0,0 @@
> -SUMMARY = "XFS Filesystem Utilities"
> -HOMEPAGE = "http://oss.sgi.com/projects/xfs"
> -SECTION = "base"
> -LICENSE = "GPLv2 & LGPLv2.1"
> -LICENSE_libhandle = "LGPLv2.1"
> -LIC_FILES_CHKSUM = "file://doc/COPYING;md5=dbdb5f4329b7e7145de650e9ecd4ac
> 2a"
> -DEPENDS = "util-linux"
> -
> -SRC_URI = "ftp://oss.sgi.com/projects/xfs/cmd_tars/${BP}.tar.gz \
> -    file://xfsprogs-generate-crctable-which-is-moved-into-runti.patch \
> -    file://remove-install-as-user.patch \
> -    file://drop-configure-check-for-aio.patch \
> -"
> -
> -SRC_URI[md5sum] = "9f383e36682709e62b12c125e5d8b895"
> -SRC_URI[sha256sum] = "7a5124a880997939551b519610a2e5
> 4bd4cd0b0adfd563ce3f4de30827109ac9"
> -
> -inherit autotools-brokensep
> -
> -PACKAGES =+ "${PN}-fsck ${PN}-mkfs libhandle"
> -
> -RDEPENDS_${PN} = "${PN}-fsck ${PN}-mkfs"
> -
> -FILES_${PN}-fsck = "${base_sbindir}/fsck.xfs"
> -FILES_${PN}-mkfs = "${base_sbindir}/mkfs.xfs"
> -FILES_libhandle = "${base_libdir}/libhandle${SOLIBS}"
> -
> -EXTRA_OECONF = "--enable-gettext=no"
> -do_configure () {
> -    # Prevent Makefile from calling configure without arguments,
> -    # when do_configure gets called for a second time.
> -    rm -f include/builddefs include/platform_defs.h
> -    # Recreate configure script.
> -    rm -f configure
> -    oe_runmake configure
> -    # Configure.
> -    export DEBUG="-DNDEBUG"
> -    gnu-configize --force
> -    oe_runconf
> -}
> -
> -LIBTOOL = "${HOST_SYS}-libtool"
> -EXTRA_OEMAKE = "'LIBTOOL=${LIBTOOL}'"
> -TARGET_CC_ARCH += "${LDFLAGS}"
> -PARALLEL_MAKE = ""
> -
> -do_install () {
> -    export DIST_ROOT=${D}
> -    oe_runmake install
> -    # needed for xfsdump
> -    oe_runmake install-dev
> -}
> -
> -# http://errors.yoctoproject.org/Errors/Details/83236/
> -PNBLACKLIST[xfsprogs] ?= "BROKEN: Needs upgrade to 4.5.0 version to be
> compatible with Kernel uapi changes from 4.5"
> diff --git a/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.8.0.bb
> b/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.8.0.bb
> new file mode 100644
> index 0000000..049a4be
> --- /dev/null
> +++ b/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.8.0.bb
> @@ -0,0 +1,52 @@
> +SUMMARY = "XFS Filesystem Utilities"
> +HOMEPAGE = "http://oss.sgi.com/projects/xfs"
> +SECTION = "base"
> +LICENSE = "GPLv2 & LGPLv2.1"
> +LICENSE_libhandle = "LGPLv2.1"
> +LIC_FILES_CHKSUM = "file://doc/COPYING;md5=dbdb5f4329b7e7145de650e9ecd4ac
> 2a"
> +DEPENDS = "util-linux"
> +SRC_URI = "https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/${
> BP}.tar.xz \
> +"
> +SRC_URI[md5sum] = "4f047bc9a28b48a95c6db0ad5ce4dbcb"
> +SRC_URI[sha256sum] = "82ce9cb3a55f4e208e8fe3471ff0af
> f0602b8300f3e50bdf05cc7e11549686f9"
> +
> +inherit autotools-brokensep
> +
> +PACKAGES =+ "${PN}-fsck ${PN}-mkfs ${PN}-repair libhandle"
> +
> +
> +RDEPENDS_${PN} = "${PN}-fsck ${PN}-mkfs ${PN}-repair"
> +
> +FILES_${PN}-fsck = "${base_sbindir}/fsck.xfs"
> +FILES_${PN}-mkfs = "${base_sbindir}/mkfs.xfs"
> +FILES_${PN}-repair = "${base_sbindir}/xfs_repair"
> +
> +FILES_libhandle = "${base_libdir}/libhandle${SOLIBS}"
> +
> +EXTRA_OECONF = "--enable-gettext=no \
> +               INSTALL_USER=root \
> +               INSTALL_GROUP=root \
> +"
> +
> +EXTRA_AUTORECONF += "-I ${S}/m4 --exclude=autoheader"
> +
> +PACKAGECONFIG ??= "readline blkid"
> +
> +PACKAGECONFIG[readline] = "--enable-readline=yes,--
> enable-readline=no,readline"
> +PACKAGECONFIG[blkid] = "--enable-blkid=yes,--enable-blkid=no,util-linux"
> +
> +export DEBUG="-DNDEBUG"
> +
> +EXTRA_OEMAKE = "DIST_ROOT='${D}'"
> +
> +do_configure_prepend () {
> +    # Prevent Makefile from calling configure without arguments,
> +    # when do_configure gets called for a second time.
> +    rm -f ${B}/include/builddefs ${B}/include/platform_defs.h
> ${B}/configure
> +    # Recreate configure script.
> +    oe_runmake configure
> +}
> +
> +do_install_append() {
> +        oe_runmake 'DESTDIR=${D}' install-dev
> +}
> --
> 2.10.2
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-filesystems][PATCH 19/49] xfsprogs: Upgrade 3.2.3 -> 4.8.0
  2016-11-25  0:31   ` Martin Jansa
@ 2016-11-25 10:41     ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-25 10:41 UTC (permalink / raw)
  To: openembeded-devel

On Thu, Nov 24, 2016 at 4:31 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> Failed to build in bitbake world:
>
> | ../include/xfs/linux.h:20:23: fatal error: uuid/uuid.h: No such file
> or directory
> |  #include <uuid/uuid.h>
> |                        ^
> | compilation terminated.
> | make[2]: *** [crc32selftest] Error 1
>

There were more problems following this one. Fixed them too and sent a V2


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH V2 18/49] breakpad: Upgrade to latest
  2016-11-23  9:21 ` [meta-oe][PATCH V2 18/49] breakpad: Upgrade to latest Khem Raj
@ 2016-11-26  0:12   ` Martin Jansa
  2016-11-26  6:09     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-11-26  0:12 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 2951 bytes --]

On Wed, Nov 23, 2016 at 01:21:38AM -0800, Khem Raj wrote:
> Switch to using git
> Gets aarch64 support
> 
> Define PV and use SRCPV
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../breakpad/{breakpad_svn.bb => breakpad_git.bb}  | 22 +++++++++++++++++++---
>  1 file changed, 19 insertions(+), 3 deletions(-)
>  rename meta-oe/recipes-devtools/breakpad/{breakpad_svn.bb => breakpad_git.bb} (86%)
> 
> diff --git a/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
> similarity index 86%
> rename from meta-oe/recipes-devtools/breakpad/breakpad_svn.bb
> rename to meta-oe/recipes-devtools/breakpad/breakpad_git.bb
> index b573ea5..c0e306c 100644
> --- a/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb
> +++ b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
> @@ -13,9 +13,25 @@ inherit autotools
>  
>  BBCLASSEXTEND = "native"
>  
> -SRCREV = "r1435"
> -SRC_URI = "svn://google-breakpad.googlecode.com/svn;module=trunk;protocol=http"
> -S = "${WORKDIR}/trunk"
> +PV = "1.0+git${SRCPV}"

This is still going backwards:
breakpad-1.0+gitAUTOINC+2f6cb866d6_d8cb47f77d_f7d03d2734_ec44c6c167_cb6dd4ef5f_1549d20f6d:
Package version for package breakpad-dbg went backwards which would
break package feeds from (0:svn-r0.37 to
0:1.0+git0+2f6cb866d6_d8cb47f77d_f7d03d2734_ec44c6c167_cb6dd4ef5f_1549d20f6d-r0.0)
[version-going-backwards]

http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html

> +
> +SRCREV_FORMAT = "breakpad_glog_gmock_gtest_protobuf_lss"
> +
> +SRCREV_breakpad = "2f6cb866d615d6240a18c7535c994c6bb93b1ba5"
> +SRCREV_glog = "d8cb47f77d1c31779f3ff890e1a5748483778d6a"
> +SRCREV_gmock = "f7d03d2734759ee12b57d2dbcb695607d89e8e05"
> +SRCREV_gtest = "ec44c6c1675c25b9827aacd08c02433cccde7780"
> +SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
> +SRCREV_lss = "1549d20f6d3e7d66bb4e687c0ab9da42c2bff2ac"
> +
> +SRC_URI = "git://github.com/google/breakpad;name=breakpad \
> +           git://github.com/google/glog.git;destsuffix=git/src/third_party/glog;name=glog \
> +           git://github.com/google/googlemock.git;destsuffix=git/src/testing;name=gmock \
> +           git://github.com/google/googletest.git;destsuffix=git/src/testing/gtest;name=gtest \
> +           git://github.com/google/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
> +           git://chromium.googlesource.com/linux-syscall-support;protocol=https;destsuffix=git/src/third_party/lss;name=lss \
> +"
> +S = "${WORKDIR}/git"
>  
>  COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*"
>  
> -- 
> 2.10.2
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes
  2016-11-23  9:21 ` [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes Khem Raj
@ 2016-11-26  0:15   ` Martin Jansa
  2016-11-26  7:42     ` Koen Kooi
  2016-11-29  0:57     ` Khem Raj
  0 siblings, 2 replies; 73+ messages in thread
From: Martin Jansa @ 2016-11-26  0:15 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

[-- Attachment #1: Type: text/plain, Size: 1328 bytes --]

On Wed, Nov 23, 2016 at 01:21:28AM -0800, Khem Raj wrote:
> 16.x is the default since its the latest released version
> 
> remove obsoleted xbmc recipes
> rename to recipes-mediacenter
> +S = "${WORKDIR}/git"
> +
> +# breaks compilation
> +ASNEEDED = ""
> +
> +ACCEL ?= ""
> +ACCEL_x86 = "vaapi vdpau"
> +ACCEL_x86-64 = "vaapi vdpau"
> +
> +PACKAGECONFIG ??= "${ACCEL}"
> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)}"
> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', ' opengl', ' openglesv2', d)}"
> +
> +PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,"
> +PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,virtual/egl"
> +PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
> +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
> +PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
> +PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
> +PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"

Did I overlook libva recipe somewhere?

It doesn't even start building for qemux86* because of this libva and
for qemuarm it fails to configure:
http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-networking][PATCH 29/49] dante: Add recipe for 1.4.1
  2016-11-23  9:21 ` [meta-networking][PATCH 29/49] dante: Add recipe for 1.4.1 Khem Raj
@ 2016-11-26  0:16   ` Martin Jansa
  2016-11-26  6:03     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-11-26  0:16 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 2099 bytes --]

On Wed, Nov 23, 2016 at 01:21:49AM -0800, Khem Raj wrote:
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../recipes-protocols/dante/dante_1.4.1.bb         | 47 ++++++++++++++++++++++
>  1 file changed, 47 insertions(+)
>  create mode 100644 meta-networking/recipes-protocols/dante/dante_1.4.1.bb
> 
> diff --git a/meta-networking/recipes-protocols/dante/dante_1.4.1.bb b/meta-networking/recipes-protocols/dante/dante_1.4.1.bb
> new file mode 100644
> index 0000000..dbb86fb
> --- /dev/null
> +++ b/meta-networking/recipes-protocols/dante/dante_1.4.1.bb
> @@ -0,0 +1,47 @@
> +SECTION = "console/utils"
> +SUMMARY = "A free SOCKS server"
> +DESCRIPTION = "Dante consists of a SOCKS server and a SOCKS client,\
> +implementing RFC 1928 and related standards. It is a flexible product\
> +that can be used to provide convenient and secure network\
> +connectivity. Once installed, Dante can in most cases be made\
> +transparent to clients, providing functionality somewhat similar to\
> +what could be described as a non-transparent Layer 4 router."
> +HOMEPAGE = "http://www.inet.no/dante/"
> +
> +LICENSE = "BSD-3-Clause"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=221118dda731fe93a85d0ed973467249"
> +
> +SRC_URI = "https://www.inet.no/dante/files/dante-${PV}.tar.gz \
> +          "
> +SRC_URI[md5sum] = "68c2ce12119e12cea11a90c7a80efa8f"
> +SRC_URI[sha256sum] = "b6d232bd6fefc87d14bf97e447e4fcdeef4b28b16b048d804b50b48f261c4f53"
> +
> +# without --without-gssapi, config.log will contain reference to /usr/lib
> +# as a consequence of GSSAPI path being set to /usr by default.
> +# --with-gssapi-path=PATH specify gssapi path
> +# --without-gssapi        disable gssapi support
> +# --enable-release        build prerelease as full release
> +EXTRA_OECONF += "--without-gssapi --sbindir=${bindir}"
> +
> +DEPENDS += "flex-native bison-native"
> +DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"

Autodetects bunch of dependencies:
http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 23/49] miniupnpd: Add recipe
  2016-11-23  9:21 ` [meta-multimedia][PATCH 23/49] miniupnpd: " Khem Raj
@ 2016-11-26  0:16   ` Martin Jansa
  2016-11-26  6:00     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-11-26  0:16 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 2640 bytes --]

On Wed, Nov 23, 2016 at 01:21:43AM -0800, Khem Raj wrote:
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../miniupnpd/miniupnpd_2.0.bb                     | 38 ++++++++++++++++++++++
>  1 file changed, 38 insertions(+)
>  create mode 100644 meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
> 
> diff --git a/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb b/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
> new file mode 100644
> index 0000000..dfa3fed
> --- /dev/null
> +++ b/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
> @@ -0,0 +1,38 @@
> +SUMMARY = "Lightweight UPnP IGD daemon"
> +DESCRIPTION = "The miniUPnP daemon is an UPnP IGD (internet gateway device) \
> +which provide NAT traversal services to any UPnP enabled client on \
> +the network."
> +
> +SECTION = "networking"
> +LICENSE = "BSD-3-Clause"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=aa71c78c373ccfe0ff207af0cd966d91"
> +
> +inherit autotools gettext pkgconfig
> +
> +DEPENDS += "iptables net-tools util-linux"

Autodetects bunch of dependencies:
http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html

> +
> +SRC_URI = "http://miniupnp.tuxfamily.org/files/download.php?file=${P}.tar.gz \
> +"
> +SRC_URI[md5sum] = "1c07a215dd9b362e75a9efc05e2fb3b4"
> +SRC_URI[sha256sum] = "d96aa3a00e0f5490826bba3cb97e68cd27479e5839adac4b9bcb66eae786bfb7"
> +
> +IPV6 = "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '--ipv6', '', d)}"
> +
> +do_compile() {
> +    cd ${S}
> +    CONFIG_OPTIONS="${IPV6} --leasefile" ./genconfig.sh
> +    oe_runmake -f Makefile.linux
> +}
> +
> +do_install() {
> +    install -d ${D}/${sbindir}
> +    install ${S}/miniupnpd ${D}/${sbindir}
> +    install -d ${D}/${sysconfdir}/${BPN}
> +    install ${S}/netfilter/iptables_init.sh ${D}/${sysconfdir}/${BPN}
> +    install ${S}/netfilter/iptables_removeall.sh ${D}/${sysconfdir}/${BPN}
> +    install ${S}/netfilter/ip6tables_init.sh ${D}/${sysconfdir}/${BPN}
> +    install ${S}/netfilter/ip6tables_removeall.sh ${D}/${sysconfdir}/${BPN}
> +    install -m 0644 -b ${S}/miniupnpd.conf ${D}/${sysconfdir}/${BPN}
> +    install -d ${D}/${sysconfdir}/init.d
> +    install ${S}/linux/miniupnpd.init.d.script ${D}/${sysconfdir}/init.d/miniupnpd
> +}
> -- 
> 2.10.2
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes
  2016-11-23  9:21 ` [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes Khem Raj
@ 2016-11-26  0:17   ` Martin Jansa
  2016-11-26  4:57     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-11-26  0:17 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 10686 bytes --]

On Wed, Nov 23, 2016 at 01:21:51AM -0800, Khem Raj wrote:
> Update obexftp to 0.24.2 and openobex to 1.7.2
> These packages moved to CMake infra for builds
> therefore make adjustments to cross compile it

opexftp autodetect uriparser now:
http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html

> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../disable-cable-test.patch                       |  0
>  .../libusb_crosscompile_check.patch                |  0
>  .../separate_builddir.patch                        |  0
>  meta-oe/recipes-connectivity/obex/openobex_1.5.bb  | 35 ----------------
>  .../recipes-connectivity/obex/openobex_1.7.2.bb    | 37 +++++++++++++++++
>  ...ists.txt-Explicitly-link-libbfb-and-libmu.patch | 47 ++++++++++++++++++++++
>  .../recipes-connectivity/obexftp/obexftp_0.23.bb   | 16 --------
>  .../recipes-connectivity/obexftp/obexftp_0.24.2.bb | 33 +++++++++++++++
>  8 files changed, 117 insertions(+), 51 deletions(-)
>  rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/disable-cable-test.patch (100%)
>  rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/libusb_crosscompile_check.patch (100%)
>  rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/separate_builddir.patch (100%)
>  delete mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>  create mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>  create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>  delete mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>  create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
> 
> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch b/meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
> similarity index 100%
> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
> rename to meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch b/meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
> similarity index 100%
> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch
> rename to meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch b/meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
> similarity index 100%
> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
> rename to meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb b/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
> deleted file mode 100644
> index 6ac7905..0000000
> --- a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
> +++ /dev/null
> @@ -1,35 +0,0 @@
> -DESCRIPTION = "The Openobex project is an open source implementation of the \
> -Object Exchange (OBEX) protocol."
> -HOMEPAGE = "http://openobex.triq.net"
> -SECTION = "libs"
> -DEPENDS = "virtual/libusb0"
> -DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
> -
> -LICENSE = "GPLv2 & LGPLv2.1"
> -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
> -                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
> -"
> -
> -SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz \
> -           file://disable-cable-test.patch \
> -           file://libusb_crosscompile_check.patch \
> -           file://separate_builddir.patch"
> -
> -SRC_URI[md5sum] = "0d83dc86445a46a1b9750107ba7ab65c"
> -SRC_URI[sha256sum] = "e602047570799a47ecb028420bda8f2cef41310e5a99d084de10aa9422935e65"
> -
> -inherit autotools binconfig pkgconfig
> -
> -EXTRA_OECONF = "--enable-apps --enable-syslog"
> -
> -do_install_append() {
> -    install -d ${D}${datadir}/aclocal
> -    install -m 0644 ${S}/openobex.m4 ${D}${datadir}/aclocal
> -}
> -
> -PACKAGES += "openobex-apps"
> -FILES_${PN} = "${libdir}/lib*.so.*"
> -FILES_${PN}-dev += "${bindir}/openobex-config"
> -FILES_${PN}-apps = "${bindir}/*"
> -DEBIAN_NOAUTONAME_${PN}-apps = "1"
> -
> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
> new file mode 100644
> index 0000000..053c80a
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
> @@ -0,0 +1,37 @@
> +DESCRIPTION = "The Openobex project is an open source implementation of the \
> +Object Exchange (OBEX) protocol."
> +HOMEPAGE = "http://openobex.triq.net"
> +SECTION = "libs"
> +DEPENDS = "virtual/libusb0"
> +DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
> +
> +LICENSE = "GPLv2 & LGPLv2.1"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
> +                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
> +"
> +
> +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${PV}/${BP}-Source.tar.gz \
> +"
> +
> +SRC_URI[md5sum] = "f6e0b6cb7dcfd731460a7e9a91429a3a"
> +SRC_URI[sha256sum] = "158860aaea52f0fce0c8e4b64550daaae06df2689e05834697b7e8c7d73dd4fc"
> +
> +inherit cmake pkgconfig
> +
> +S = "${WORKDIR}/${BP}-Source"
> +
> +EXTRA_OECONF = " -DCMAKE_SKIP_RPATH=ON "
> +
> +#--enable-apps --enable-syslog
> +
> +do_install_append () {
> +    rmdir ${D}${bindir}
> +}
> +
> +PACKAGES =+ "openobex-apps"
> +FILES_${PN}-apps = "${bindir}/*"
> +FILES_${PN} += "${libdir}/lib*.so.*"
> +FILES_${PN}-dev += "${bindir}/openobex-config ${libdir}/cmake"
> +DEBIAN_NOAUTONAME_${PN}-apps = "1"
> +
> +BBCLASSEXTEND = "native"
> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
> new file mode 100644
> index 0000000..55e5567
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
> @@ -0,0 +1,47 @@
> +From b8dc608dad7d9fc3a4c16acd0327d97b81c23b95 Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Tue, 15 Nov 2016 01:32:31 +0000
> +Subject: [PATCH] apps/CMakeLists.txt: Explicitly link libbfb and libmulticobex
> +
> +Transitive linking is disabled now for multicobex and
> +obexftp, This ends up with linking errors for apps, therefore
> +they are required to be added to link line explicitly.
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> + apps/CMakeLists.txt | 13 +++++++++++--
> + 1 file changed, 11 insertions(+), 2 deletions(-)
> +
> +diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
> +index b5c84e4..63af134 100644
> +--- a/apps/CMakeLists.txt
> ++++ b/apps/CMakeLists.txt
> +@@ -5,14 +5,23 @@ add_definitions( -DVERSION="${obexftp_VERSION}" )
> + add_definitions ( -DHAVE_USB )
> + 
> + add_executable ( obexftp_app obexftp.c )
> +-target_link_libraries ( obexftp_app obexftp )
> ++target_link_libraries ( obexftp_app
> ++  PRIVATE multicobex
> ++  PRIVATE bfb
> ++  obexftp
> ++)
> + set_target_properties ( obexftp_app PROPERTIES
> +   OUTPUT_NAME obexftp
> + )
> + 
> + 
> + add_executable ( obexftpd_app obexftpd.c )
> +-target_link_libraries ( obexftpd_app obexftp openobex )
> ++target_link_libraries ( obexftpd_app
> ++  PRIVATE multicobex
> ++  PRIVATE bfb
> ++  obexftp
> ++  openobex
> ++)
> + set_target_properties ( obexftpd_app PROPERTIES
> +   OUTPUT_NAME obexftpd
> + )
> +-- 
> +1.9.1
> +
> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
> deleted file mode 100644
> index b6bdfb7..0000000
> --- a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
> +++ /dev/null
> @@ -1,16 +0,0 @@
> -DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
> -LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
> -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
> -
> -DEPENDS += "openobex"
> -
> -SRC_URI = "http://sourceforge.net/projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2 \
> -           file://Remove_some_printf_in_obexftpd.patch "
> -
> -SRC_URI[md5sum] = "f20762061b68bc921e80be4aebc349eb"
> -SRC_URI[sha256sum] = "44a74ff288d38c0f75354d6bc2efe7d6dec10112eaff2e7b10e292b0d2105b36"
> -
> -inherit autotools pkgconfig
> -
> -EXTRA_OECONF += "--disable-tcl --disable-perl --disable-python --disable-ruby"
> -
> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
> new file mode 100644
> index 0000000..991cd48
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
> @@ -0,0 +1,33 @@
> +DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
> +LICENSE = "GPLv2 & PD & LGPLv2.1"
> +LIC_FILES_CHKSUM = "file://LGPL-2.1.txt;md5=4fbd65380cdd255951079008b364516c \
> +                    file://GPL-2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
> +                    file://License.txt;md5=fcbddc3c1debed80dd80da2d3e5f0dc1 \
> +                   "
> +
> +DEPENDS += "openobex obexftp-native"
> +SRC_URI = "http://downloads.sourceforge.net/openobex/${BP}-Source.tar.gz \
> +           file://0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch \
> +"
> +SRC_URI[md5sum] = "157a9d1b2ed220203f7084db906de73c"
> +SRC_URI[sha256sum] = "d40fb48e0a0eea997b3e582774b29f793919a625d54b87182e31a3f3d1c989a3"
> +
> +inherit cmake pkgconfig
> +
> +S = "${WORKDIR}/${BP}-Source"
> +
> +EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON \
> +                  -DENABLE_PERL=NO -DENABLE_PYTHON=NO \
> +                  -DENABLE_RUBY=NO -DENABLE_TCL=NO \
> +"
> +
> +do_compile_class-native () {
> +    oe_runmake crctable
> +}
> +
> +do_install_class-native () {
> +    install -D -m 0755 ${B}/bfb/crctable ${D}${bindir}/crctable
> +}
> +
> +
> +BBCLASSEXTEND = "native"
> -- 
> 2.10.2
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 46/49] tvheadend: Update to 4.0.9
  2016-11-23  9:22 ` [meta-multimedia][PATCH 46/49] tvheadend: Update to 4.0.9 Khem Raj
@ 2016-11-26  0:18   ` Martin Jansa
  2016-11-26  4:56     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-11-26  0:18 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 1858 bytes --]

On Wed, Nov 23, 2016 at 01:22:06AM -0800, Khem Raj wrote:
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../tvheadend/0001-Fix-checks-for-sse2-mmx.patch   | 40 ++++++++++
>  ...efile-Ignore-warning-about-wrong-includes.patch | 31 ++++++++
>  ...end-specific-LD-CFLAGS-into-a-helper-vari.patch | 92 ----------------------
>  .../0001-disable-varargs-warning-on-clang.patch    | 32 ++++++++
>  .../0001-dvr-Use-labs-instead-of-abs.patch         | 37 +++++++++
>  ...verride-forced-overrdiing-og-CC-STRIP-and.patch | 40 ++++++++++
>  .../tvheadend/0002-fix-issues-with-gcc6.patch      | 46 -----------
>  .../recipes-dvb/tvheadend/tvheadend_git.bb         | 15 ++--
>  8 files changed, 189 insertions(+), 144 deletions(-)
>  create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch
>  create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch
>  delete mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Move-tvheadend-specific-LD-CFLAGS-into-a-helper-vari.patch
>  create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch
>  create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch
>  create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch
>  delete mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0002-fix-issues-with-gcc6.patch

tvheadend-4.0.9+git64fec8120158de585e18be705055259484518d94:
/usr/bin/tvheadend contained in package tvheadend requires libucsi.so,
but no providers found in RDEPENDS_tvheadend? [file-rdeps]

http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html


[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 46/49] tvheadend: Update to 4.0.9
  2016-11-26  0:18   ` Martin Jansa
@ 2016-11-26  4:56     ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-26  4:56 UTC (permalink / raw)
  To: openembedded-devel


> On Nov 25, 2016, at 4:18 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> On Wed, Nov 23, 2016 at 01:22:06AM -0800, Khem Raj wrote:
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>> .../tvheadend/0001-Fix-checks-for-sse2-mmx.patch   | 40 ++++++++++
>> ...efile-Ignore-warning-about-wrong-includes.patch | 31 ++++++++
>> ...end-specific-LD-CFLAGS-into-a-helper-vari.patch | 92 ----------------------
>> .../0001-disable-varargs-warning-on-clang.patch    | 32 ++++++++
>> .../0001-dvr-Use-labs-instead-of-abs.patch         | 37 +++++++++
>> ...verride-forced-overrdiing-og-CC-STRIP-and.patch | 40 ++++++++++
>> .../tvheadend/0002-fix-issues-with-gcc6.patch      | 46 -----------
>> .../recipes-dvb/tvheadend/tvheadend_git.bb         | 15 ++--
>> 8 files changed, 189 insertions(+), 144 deletions(-)
>> create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch
>> create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch
>> delete mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Move-tvheadend-specific-LD-CFLAGS-into-a-helper-vari.patch
>> create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch
>> create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch
>> create mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch
>> delete mode 100644 meta-multimedia/recipes-dvb/tvheadend/tvheadend/0002-fix-issues-with-gcc6.patch
> 
> tvheadend-4.0.9+git64fec8120158de585e18be705055259484518d94:
> /usr/bin/tvheadend contained in package tvheadend requires libucsi.so,
> but no providers found in RDEPENDS_tvheadend? [file-rdeps]
> 
> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html <http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html>

will send v2 fixing it.

> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes
  2016-11-26  0:17   ` Martin Jansa
@ 2016-11-26  4:57     ` Khem Raj
  2016-11-26  6:02       ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-26  4:57 UTC (permalink / raw)
  To: openembedded-devel


> On Nov 25, 2016, at 4:17 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> On Wed, Nov 23, 2016 at 01:21:51AM -0800, Khem Raj wrote:
>> Update obexftp to 0.24.2 and openobex to 1.7.2
>> These packages moved to CMake infra for builds
>> therefore make adjustments to cross compile it
> 
> opexftp autodetect uriparser now:
> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html <http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html>

uriparser is not in meta-openembedded layers. So I guess I could packageconfig out it and keep it disabled by default

> 
>> 
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>> .../disable-cable-test.patch                       |  0
>> .../libusb_crosscompile_check.patch                |  0
>> .../separate_builddir.patch                        |  0
>> meta-oe/recipes-connectivity/obex/openobex_1.5.bb  | 35 ----------------
>> .../recipes-connectivity/obex/openobex_1.7.2.bb    | 37 +++++++++++++++++
>> ...ists.txt-Explicitly-link-libbfb-and-libmu.patch | 47 ++++++++++++++++++++++
>> .../recipes-connectivity/obexftp/obexftp_0.23.bb   | 16 --------
>> .../recipes-connectivity/obexftp/obexftp_0.24.2.bb | 33 +++++++++++++++
>> 8 files changed, 117 insertions(+), 51 deletions(-)
>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/disable-cable-test.patch (100%)
>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/libusb_crosscompile_check.patch (100%)
>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/separate_builddir.patch (100%)
>> delete mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>> create mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>> create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>> delete mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>> create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>> 
>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch b/meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
>> similarity index 100%
>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
>> rename to meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch b/meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
>> similarity index 100%
>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch
>> rename to meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch b/meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
>> similarity index 100%
>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
>> rename to meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb b/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>> deleted file mode 100644
>> index 6ac7905..0000000
>> --- a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>> +++ /dev/null
>> @@ -1,35 +0,0 @@
>> -DESCRIPTION = "The Openobex project is an open source implementation of the \
>> -Object Exchange (OBEX) protocol."
>> -HOMEPAGE = "http://openobex.triq.net"
>> -SECTION = "libs"
>> -DEPENDS = "virtual/libusb0"
>> -DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
>> -
>> -LICENSE = "GPLv2 & LGPLv2.1"
>> -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
>> -                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
>> -"
>> -
>> -SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz \
>> -           file://disable-cable-test.patch \
>> -           file://libusb_crosscompile_check.patch \
>> -           file://separate_builddir.patch"
>> -
>> -SRC_URI[md5sum] = "0d83dc86445a46a1b9750107ba7ab65c"
>> -SRC_URI[sha256sum] = "e602047570799a47ecb028420bda8f2cef41310e5a99d084de10aa9422935e65"
>> -
>> -inherit autotools binconfig pkgconfig
>> -
>> -EXTRA_OECONF = "--enable-apps --enable-syslog"
>> -
>> -do_install_append() {
>> -    install -d ${D}${datadir}/aclocal
>> -    install -m 0644 ${S}/openobex.m4 ${D}${datadir}/aclocal
>> -}
>> -
>> -PACKAGES += "openobex-apps"
>> -FILES_${PN} = "${libdir}/lib*.so.*"
>> -FILES_${PN}-dev += "${bindir}/openobex-config"
>> -FILES_${PN}-apps = "${bindir}/*"
>> -DEBIAN_NOAUTONAME_${PN}-apps = "1"
>> -
>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>> new file mode 100644
>> index 0000000..053c80a
>> --- /dev/null
>> +++ b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>> @@ -0,0 +1,37 @@
>> +DESCRIPTION = "The Openobex project is an open source implementation of the \
>> +Object Exchange (OBEX) protocol."
>> +HOMEPAGE = "http://openobex.triq.net"
>> +SECTION = "libs"
>> +DEPENDS = "virtual/libusb0"
>> +DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
>> +
>> +LICENSE = "GPLv2 & LGPLv2.1"
>> +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
>> +                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
>> +"
>> +
>> +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${PV}/${BP}-Source.tar.gz \
>> +"
>> +
>> +SRC_URI[md5sum] = "f6e0b6cb7dcfd731460a7e9a91429a3a"
>> +SRC_URI[sha256sum] = "158860aaea52f0fce0c8e4b64550daaae06df2689e05834697b7e8c7d73dd4fc"
>> +
>> +inherit cmake pkgconfig
>> +
>> +S = "${WORKDIR}/${BP}-Source"
>> +
>> +EXTRA_OECONF = " -DCMAKE_SKIP_RPATH=ON "
>> +
>> +#--enable-apps --enable-syslog
>> +
>> +do_install_append () {
>> +    rmdir ${D}${bindir}
>> +}
>> +
>> +PACKAGES =+ "openobex-apps"
>> +FILES_${PN}-apps = "${bindir}/*"
>> +FILES_${PN} += "${libdir}/lib*.so.*"
>> +FILES_${PN}-dev += "${bindir}/openobex-config ${libdir}/cmake"
>> +DEBIAN_NOAUTONAME_${PN}-apps = "1"
>> +
>> +BBCLASSEXTEND = "native"
>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>> new file mode 100644
>> index 0000000..55e5567
>> --- /dev/null
>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>> @@ -0,0 +1,47 @@
>> +From b8dc608dad7d9fc3a4c16acd0327d97b81c23b95 Mon Sep 17 00:00:00 2001
>> +From: Khem Raj <raj.khem@gmail.com>
>> +Date: Tue, 15 Nov 2016 01:32:31 +0000
>> +Subject: [PATCH] apps/CMakeLists.txt: Explicitly link libbfb and libmulticobex
>> +
>> +Transitive linking is disabled now for multicobex and
>> +obexftp, This ends up with linking errors for apps, therefore
>> +they are required to be added to link line explicitly.
>> +
>> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> +---
>> + apps/CMakeLists.txt | 13 +++++++++++--
>> + 1 file changed, 11 insertions(+), 2 deletions(-)
>> +
>> +diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
>> +index b5c84e4..63af134 100644
>> +--- a/apps/CMakeLists.txt
>> ++++ b/apps/CMakeLists.txt
>> +@@ -5,14 +5,23 @@ add_definitions( -DVERSION="${obexftp_VERSION}" )
>> + add_definitions ( -DHAVE_USB )
>> + 
>> + add_executable ( obexftp_app obexftp.c )
>> +-target_link_libraries ( obexftp_app obexftp )
>> ++target_link_libraries ( obexftp_app
>> ++  PRIVATE multicobex
>> ++  PRIVATE bfb
>> ++  obexftp
>> ++)
>> + set_target_properties ( obexftp_app PROPERTIES
>> +   OUTPUT_NAME obexftp
>> + )
>> + 
>> + 
>> + add_executable ( obexftpd_app obexftpd.c )
>> +-target_link_libraries ( obexftpd_app obexftp openobex )
>> ++target_link_libraries ( obexftpd_app
>> ++  PRIVATE multicobex
>> ++  PRIVATE bfb
>> ++  obexftp
>> ++  openobex
>> ++)
>> + set_target_properties ( obexftpd_app PROPERTIES
>> +   OUTPUT_NAME obexftpd
>> + )
>> +-- 
>> +1.9.1
>> +
>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>> deleted file mode 100644
>> index b6bdfb7..0000000
>> --- a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>> +++ /dev/null
>> @@ -1,16 +0,0 @@
>> -DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
>> -LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
>> -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
>> -
>> -DEPENDS += "openobex"
>> -
>> -SRC_URI = "http://sourceforge.net/projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2 \
>> -           file://Remove_some_printf_in_obexftpd.patch "
>> -
>> -SRC_URI[md5sum] = "f20762061b68bc921e80be4aebc349eb"
>> -SRC_URI[sha256sum] = "44a74ff288d38c0f75354d6bc2efe7d6dec10112eaff2e7b10e292b0d2105b36"
>> -
>> -inherit autotools pkgconfig
>> -
>> -EXTRA_OECONF += "--disable-tcl --disable-perl --disable-python --disable-ruby"
>> -
>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>> new file mode 100644
>> index 0000000..991cd48
>> --- /dev/null
>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>> @@ -0,0 +1,33 @@
>> +DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
>> +LICENSE = "GPLv2 & PD & LGPLv2.1"
>> +LIC_FILES_CHKSUM = "file://LGPL-2.1.txt;md5=4fbd65380cdd255951079008b364516c \
>> +                    file://GPL-2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
>> +                    file://License.txt;md5=fcbddc3c1debed80dd80da2d3e5f0dc1 \
>> +                   "
>> +
>> +DEPENDS += "openobex obexftp-native"
>> +SRC_URI = "http://downloads.sourceforge.net/openobex/${BP}-Source.tar.gz \
>> +           file://0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch \
>> +"
>> +SRC_URI[md5sum] = "157a9d1b2ed220203f7084db906de73c"
>> +SRC_URI[sha256sum] = "d40fb48e0a0eea997b3e582774b29f793919a625d54b87182e31a3f3d1c989a3"
>> +
>> +inherit cmake pkgconfig
>> +
>> +S = "${WORKDIR}/${BP}-Source"
>> +
>> +EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON \
>> +                  -DENABLE_PERL=NO -DENABLE_PYTHON=NO \
>> +                  -DENABLE_RUBY=NO -DENABLE_TCL=NO \
>> +"
>> +
>> +do_compile_class-native () {
>> +    oe_runmake crctable
>> +}
>> +
>> +do_install_class-native () {
>> +    install -D -m 0755 ${B}/bfb/crctable ${D}${bindir}/crctable
>> +}
>> +
>> +
>> +BBCLASSEXTEND = "native"
>> -- 
>> 2.10.2
>> 
>> -- 
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
> 
> -- 
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com <mailto:Martin.Jansa@gmail.com>
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 23/49] miniupnpd: Add recipe
  2016-11-26  0:16   ` Martin Jansa
@ 2016-11-26  6:00     ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-26  6:00 UTC (permalink / raw)
  To: openembedded-devel


> On Nov 25, 2016, at 4:16 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> On Wed, Nov 23, 2016 at 01:21:43AM -0800, Khem Raj wrote:
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>> .../miniupnpd/miniupnpd_2.0.bb                     | 38 ++++++++++++++++++++++
>> 1 file changed, 38 insertions(+)
>> create mode 100644 meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
>> 
>> diff --git a/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb b/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
>> new file mode 100644
>> index 0000000..dfa3fed
>> --- /dev/null
>> +++ b/meta-multimedia/recipes-connectivity/miniupnpd/miniupnpd_2.0.bb
>> @@ -0,0 +1,38 @@
>> +SUMMARY = "Lightweight UPnP IGD daemon"
>> +DESCRIPTION = "The miniUPnP daemon is an UPnP IGD (internet gateway device) \
>> +which provide NAT traversal services to any UPnP enabled client on \
>> +the network."
>> +
>> +SECTION = "networking"
>> +LICENSE = "BSD-3-Clause"
>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=aa71c78c373ccfe0ff207af0cd966d91"
>> +
>> +inherit autotools gettext pkgconfig
>> +
>> +DEPENDS += "iptables net-tools util-linux"
> 
> Autodetects bunch of dependencies:
> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html <http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html>

will send a v2

> 
>> +
>> +SRC_URI = "http://miniupnp.tuxfamily.org/files/download.php?file=${P}.tar.gz \
>> +"
>> +SRC_URI[md5sum] = "1c07a215dd9b362e75a9efc05e2fb3b4"
>> +SRC_URI[sha256sum] = "d96aa3a00e0f5490826bba3cb97e68cd27479e5839adac4b9bcb66eae786bfb7"
>> +
>> +IPV6 = "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '--ipv6', '', d)}"
>> +
>> +do_compile() {
>> +    cd ${S}
>> +    CONFIG_OPTIONS="${IPV6} --leasefile" ./genconfig.sh
>> +    oe_runmake -f Makefile.linux
>> +}
>> +
>> +do_install() {
>> +    install -d ${D}/${sbindir}
>> +    install ${S}/miniupnpd ${D}/${sbindir}
>> +    install -d ${D}/${sysconfdir}/${BPN}
>> +    install ${S}/netfilter/iptables_init.sh ${D}/${sysconfdir}/${BPN}
>> +    install ${S}/netfilter/iptables_removeall.sh ${D}/${sysconfdir}/${BPN}
>> +    install ${S}/netfilter/ip6tables_init.sh ${D}/${sysconfdir}/${BPN}
>> +    install ${S}/netfilter/ip6tables_removeall.sh ${D}/${sysconfdir}/${BPN}
>> +    install -m 0644 -b ${S}/miniupnpd.conf ${D}/${sysconfdir}/${BPN}
>> +    install -d ${D}/${sysconfdir}/init.d
>> +    install ${S}/linux/miniupnpd.init.d.script ${D}/${sysconfdir}/init.d/miniupnpd
>> +}
>> -- 
>> 2.10.2
>> 
>> -- 
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
> 
> -- 
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com <mailto:Martin.Jansa@gmail.com>
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes
  2016-11-26  4:57     ` Khem Raj
@ 2016-11-26  6:02       ` Khem Raj
  2016-11-26  9:08         ` Martin Jansa
  0 siblings, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-26  6:02 UTC (permalink / raw)
  To: openembedded-devel


> On Nov 25, 2016, at 8:57 PM, Khem Raj <raj.khem@gmail.com> wrote:
> 
> 
>> On Nov 25, 2016, at 4:17 PM, Martin Jansa <martin.jansa@gmail.com <mailto:martin.jansa@gmail.com>> wrote:
>> 
>> On Wed, Nov 23, 2016 at 01:21:51AM -0800, Khem Raj wrote:
>>> Update obexftp to 0.24.2 and openobex to 1.7.2
>>> These packages moved to CMake infra for builds
>>> therefore make adjustments to cross compile it
>> 
>> opexftp autodetect uriparser now:
>> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html <http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html>
> 
> uriparser is not in meta-openembedded layers. So I guess I could packageconfig out it and keep it disabled by default

Actually it seems a false alarm. uriparser is detected by tvheadend which I have fixed locally now. I could not find any reference to uriparser in obexftp
can you verify what is it reporting against obexftp ?

> 
>> 
>>> 
>>> Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
>>> ---
>>> .../disable-cable-test.patch                       |  0
>>> .../libusb_crosscompile_check.patch                |  0
>>> .../separate_builddir.patch                        |  0
>>> meta-oe/recipes-connectivity/obex/openobex_1.5.bb  | 35 ----------------
>>> .../recipes-connectivity/obex/openobex_1.7.2.bb    | 37 +++++++++++++++++
>>> ...ists.txt-Explicitly-link-libbfb-and-libmu.patch | 47 ++++++++++++++++++++++
>>> .../recipes-connectivity/obexftp/obexftp_0.23.bb   | 16 --------
>>> .../recipes-connectivity/obexftp/obexftp_0.24.2.bb | 33 +++++++++++++++
>>> 8 files changed, 117 insertions(+), 51 deletions(-)
>>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/disable-cable-test.patch (100%)
>>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/libusb_crosscompile_check.patch (100%)
>>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 => openobex}/separate_builddir.patch (100%)
>>> delete mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>>> create mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>>> create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>>> delete mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>>> create mode 100644 meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>>> 
>>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch b/meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
>>> similarity index 100%
>>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
>>> rename to meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
>>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch b/meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
>>> similarity index 100%
>>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch
>>> rename to meta-oe/recipes-connectivity/obex/openobex/libusb_crosscompile_check.patch
>>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch b/meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
>>> similarity index 100%
>>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
>>> rename to meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
>>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb b/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>>> deleted file mode 100644
>>> index 6ac7905..0000000
>>> --- a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>>> +++ /dev/null
>>> @@ -1,35 +0,0 @@
>>> -DESCRIPTION = "The Openobex project is an open source implementation of the \
>>> -Object Exchange (OBEX) protocol."
>>> -HOMEPAGE = "http://openobex.triq.net <http://openobex.triq.net/>"
>>> -SECTION = "libs"
>>> -DEPENDS = "virtual/libusb0"
>>> -DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
>>> -
>>> -LICENSE = "GPLv2 & LGPLv2.1"
>>> -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a <file://COPYING;md5=eb723b61539feef013de476e68b5c50a> \
>>> -                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 <file:///COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343> \
>>> -"
>>> -
>>> -SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz <http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz> \
>>> -           file://disable-cable-test.patch <file:///disable-cable-test.patch> \
>>> -           file://libusb_crosscompile_check.patch <file:///libusb_crosscompile_check.patch> \
>>> -           file://separate_builddir.patch <file://separate_builddir.patch/>"
>>> -
>>> -SRC_URI[md5sum] = "0d83dc86445a46a1b9750107ba7ab65c"
>>> -SRC_URI[sha256sum] = "e602047570799a47ecb028420bda8f2cef41310e5a99d084de10aa9422935e65"
>>> -
>>> -inherit autotools binconfig pkgconfig
>>> -
>>> -EXTRA_OECONF = "--enable-apps --enable-syslog"
>>> -
>>> -do_install_append() {
>>> -    install -d ${D}${datadir}/aclocal
>>> -    install -m 0644 ${S}/openobex.m4 ${D}${datadir}/aclocal
>>> -}
>>> -
>>> -PACKAGES += "openobex-apps"
>>> -FILES_${PN} = "${libdir}/lib*.so.*"
>>> -FILES_${PN}-dev += "${bindir}/openobex-config"
>>> -FILES_${PN}-apps = "${bindir}/*"
>>> -DEBIAN_NOAUTONAME_${PN}-apps = "1"
>>> -
>>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>>> new file mode 100644
>>> index 0000000..053c80a
>>> --- /dev/null
>>> +++ b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>>> @@ -0,0 +1,37 @@
>>> +DESCRIPTION = "The Openobex project is an open source implementation of the \
>>> +Object Exchange (OBEX) protocol."
>>> +HOMEPAGE = "http://openobex.triq.net <http://openobex.triq.net/>"
>>> +SECTION = "libs"
>>> +DEPENDS = "virtual/libusb0"
>>> +DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
>>> +
>>> +LICENSE = "GPLv2 & LGPLv2.1"
>>> +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a <file://COPYING;md5=eb723b61539feef013de476e68b5c50a> \
>>> +                    file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 <file:///COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343> \
>>> +"
>>> +
>>> +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${PV}/${BP}-Source.tar.gz \
>>> +"
>>> +
>>> +SRC_URI[md5sum] = "f6e0b6cb7dcfd731460a7e9a91429a3a"
>>> +SRC_URI[sha256sum] = "158860aaea52f0fce0c8e4b64550daaae06df2689e05834697b7e8c7d73dd4fc"
>>> +
>>> +inherit cmake pkgconfig
>>> +
>>> +S = "${WORKDIR}/${BP}-Source"
>>> +
>>> +EXTRA_OECONF = " -DCMAKE_SKIP_RPATH=ON "
>>> +
>>> +#--enable-apps --enable-syslog
>>> +
>>> +do_install_append () {
>>> +    rmdir ${D}${bindir}
>>> +}
>>> +
>>> +PACKAGES =+ "openobex-apps"
>>> +FILES_${PN}-apps = "${bindir}/*"
>>> +FILES_${PN} += "${libdir}/lib*.so.*"
>>> +FILES_${PN}-dev += "${bindir}/openobex-config ${libdir}/cmake"
>>> +DEBIAN_NOAUTONAME_${PN}-apps = "1"
>>> +
>>> +BBCLASSEXTEND = "native"
>>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>>> new file mode 100644
>>> index 0000000..55e5567
>>> --- /dev/null
>>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>>> @@ -0,0 +1,47 @@
>>> +From b8dc608dad7d9fc3a4c16acd0327d97b81c23b95 Mon Sep 17 00:00:00 2001
>>> +From: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
>>> +Date: Tue, 15 Nov 2016 01:32:31 +0000
>>> +Subject: [PATCH] apps/CMakeLists.txt: Explicitly link libbfb and libmulticobex
>>> +
>>> +Transitive linking is disabled now for multicobex and
>>> +obexftp, This ends up with linking errors for apps, therefore
>>> +they are required to be added to link line explicitly.
>>> +
>>> +Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
>>> +---
>>> + apps/CMakeLists.txt | 13 +++++++++++--
>>> + 1 file changed, 11 insertions(+), 2 deletions(-)
>>> +
>>> +diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
>>> +index b5c84e4..63af134 100644
>>> +--- a/apps/CMakeLists.txt
>>> ++++ b/apps/CMakeLists.txt
>>> +@@ -5,14 +5,23 @@ add_definitions( -DVERSION="${obexftp_VERSION}" )
>>> + add_definitions ( -DHAVE_USB )
>>> + 
>>> + add_executable ( obexftp_app obexftp.c )
>>> +-target_link_libraries ( obexftp_app obexftp )
>>> ++target_link_libraries ( obexftp_app
>>> ++  PRIVATE multicobex
>>> ++  PRIVATE bfb
>>> ++  obexftp
>>> ++)
>>> + set_target_properties ( obexftp_app PROPERTIES
>>> +   OUTPUT_NAME obexftp
>>> + )
>>> + 
>>> + 
>>> + add_executable ( obexftpd_app obexftpd.c )
>>> +-target_link_libraries ( obexftpd_app obexftp openobex )
>>> ++target_link_libraries ( obexftpd_app
>>> ++  PRIVATE multicobex
>>> ++  PRIVATE bfb
>>> ++  obexftp
>>> ++  openobex
>>> ++)
>>> + set_target_properties ( obexftpd_app PROPERTIES
>>> +   OUTPUT_NAME obexftpd
>>> + )
>>> +-- 
>>> +1.9.1
>>> +
>>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>>> deleted file mode 100644
>>> index b6bdfb7..0000000
>>> --- a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>>> +++ /dev/null
>>> @@ -1,16 +0,0 @@
>>> -DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
>>> -LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
>>> -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 <file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552>"
>>> -
>>> -DEPENDS += "openobex"
>>> -
>>> -SRC_URI = "http://sourceforge.net/projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2 <http://sourceforge.net/projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2> \
>>> -           file://Remove_some_printf_in_obexftpd.patch <file:///Remove_some_printf_in_obexftpd.patch> "
>>> -
>>> -SRC_URI[md5sum] = "f20762061b68bc921e80be4aebc349eb"
>>> -SRC_URI[sha256sum] = "44a74ff288d38c0f75354d6bc2efe7d6dec10112eaff2e7b10e292b0d2105b36"
>>> -
>>> -inherit autotools pkgconfig
>>> -
>>> -EXTRA_OECONF += "--disable-tcl --disable-perl --disable-python --disable-ruby"
>>> -
>>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>>> new file mode 100644
>>> index 0000000..991cd48
>>> --- /dev/null
>>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>>> @@ -0,0 +1,33 @@
>>> +DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
>>> +LICENSE = "GPLv2 & PD & LGPLv2.1"
>>> +LIC_FILES_CHKSUM = "file://LGPL-2.1.txt;md5=4fbd65380cdd255951079008b364516c <file://LGPL-2.1.txt;md5=4fbd65380cdd255951079008b364516c> \
>>> +                    file://GPL-2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 <file:///GPL-2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263> \
>>> +                    file://License.txt;md5=fcbddc3c1debed80dd80da2d3e5f0dc1 <file:///License.txt;md5=fcbddc3c1debed80dd80da2d3e5f0dc1> \
>>> +                   "
>>> +
>>> +DEPENDS += "openobex obexftp-native"
>>> +SRC_URI = "http://downloads.sourceforge.net/openobex/${BP}-Source.tar.gz <http://downloads.sourceforge.net/openobex/${BP}-Source.tar.gz> \
>>> +           file://0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch <file:///0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch> \
>>> +"
>>> +SRC_URI[md5sum] = "157a9d1b2ed220203f7084db906de73c"
>>> +SRC_URI[sha256sum] = "d40fb48e0a0eea997b3e582774b29f793919a625d54b87182e31a3f3d1c989a3"
>>> +
>>> +inherit cmake pkgconfig
>>> +
>>> +S = "${WORKDIR}/${BP}-Source"
>>> +
>>> +EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON \
>>> +                  -DENABLE_PERL=NO -DENABLE_PYTHON=NO \
>>> +                  -DENABLE_RUBY=NO -DENABLE_TCL=NO \
>>> +"
>>> +
>>> +do_compile_class-native () {
>>> +    oe_runmake crctable
>>> +}
>>> +
>>> +do_install_class-native () {
>>> +    install -D -m 0755 ${B}/bfb/crctable ${D}${bindir}/crctable
>>> +}
>>> +
>>> +
>>> +BBCLASSEXTEND = "native"
>>> -- 
>>> 2.10.2
>>> 
>>> -- 
>>> _______________________________________________
>>> Openembedded-devel mailing list
>>> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
>> 
>> -- 
>> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com <mailto:Martin.Jansa@gmail.com>
>> -- 
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>



^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-networking][PATCH 29/49] dante: Add recipe for 1.4.1
  2016-11-26  0:16   ` Martin Jansa
@ 2016-11-26  6:03     ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-26  6:03 UTC (permalink / raw)
  To: openembedded-devel


> On Nov 25, 2016, at 4:16 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> On Wed, Nov 23, 2016 at 01:21:49AM -0800, Khem Raj wrote:
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>> .../recipes-protocols/dante/dante_1.4.1.bb         | 47 ++++++++++++++++++++++
>> 1 file changed, 47 insertions(+)
>> create mode 100644 meta-networking/recipes-protocols/dante/dante_1.4.1.bb
>> 
>> diff --git a/meta-networking/recipes-protocols/dante/dante_1.4.1.bb b/meta-networking/recipes-protocols/dante/dante_1.4.1.bb
>> new file mode 100644
>> index 0000000..dbb86fb
>> --- /dev/null
>> +++ b/meta-networking/recipes-protocols/dante/dante_1.4.1.bb
>> @@ -0,0 +1,47 @@
>> +SECTION = "console/utils"
>> +SUMMARY = "A free SOCKS server"
>> +DESCRIPTION = "Dante consists of a SOCKS server and a SOCKS client,\
>> +implementing RFC 1928 and related standards. It is a flexible product\
>> +that can be used to provide convenient and secure network\
>> +connectivity. Once installed, Dante can in most cases be made\
>> +transparent to clients, providing functionality somewhat similar to\
>> +what could be described as a non-transparent Layer 4 router."
>> +HOMEPAGE = "http://www.inet.no/dante/"
>> +
>> +LICENSE = "BSD-3-Clause"
>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=221118dda731fe93a85d0ed973467249"
>> +
>> +SRC_URI = "https://www.inet.no/dante/files/dante-${PV}.tar.gz \
>> +          "
>> +SRC_URI[md5sum] = "68c2ce12119e12cea11a90c7a80efa8f"
>> +SRC_URI[sha256sum] = "b6d232bd6fefc87d14bf97e447e4fcdeef4b28b16b048d804b50b48f261c4f53"
>> +
>> +# without --without-gssapi, config.log will contain reference to /usr/lib
>> +# as a consequence of GSSAPI path being set to /usr by default.
>> +# --with-gssapi-path=PATH specify gssapi path
>> +# --without-gssapi        disable gssapi support
>> +# --enable-release        build prerelease as full release
>> +EXTRA_OECONF += "--without-gssapi --sbindir=${bindir}"
>> +
>> +DEPENDS += "flex-native bison-native"
>> +DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
> 
> Autodetects bunch of dependencies:
> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html <http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html>

libpam is a hard requirement. So I have added a required distro feature for pam 

> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH V2 18/49] breakpad: Upgrade to latest
  2016-11-26  0:12   ` Martin Jansa
@ 2016-11-26  6:09     ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-26  6:09 UTC (permalink / raw)
  To: openembedded-devel


> On Nov 25, 2016, at 4:12 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> On Wed, Nov 23, 2016 at 01:21:38AM -0800, Khem Raj wrote:
>> Switch to using git
>> Gets aarch64 support
>> 
>> Define PV and use SRCPV
>> 
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>> .../breakpad/{breakpad_svn.bb => breakpad_git.bb}  | 22 +++++++++++++++++++---
>> 1 file changed, 19 insertions(+), 3 deletions(-)
>> rename meta-oe/recipes-devtools/breakpad/{breakpad_svn.bb => breakpad_git.bb} (86%)
>> 
>> diff --git a/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
>> similarity index 86%
>> rename from meta-oe/recipes-devtools/breakpad/breakpad_svn.bb
>> rename to meta-oe/recipes-devtools/breakpad/breakpad_git.bb
>> index b573ea5..c0e306c 100644
>> --- a/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb
>> +++ b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
>> @@ -13,9 +13,25 @@ inherit autotools
>> 
>> BBCLASSEXTEND = "native"
>> 
>> -SRCREV = "r1435"
>> -SRC_URI = "svn://google-breakpad.googlecode.com/svn;module=trunk;protocol=http"
>> -S = "${WORKDIR}/trunk"
>> +PV = "1.0+git${SRCPV}"
> 
> This is still going backwards:
> breakpad-1.0+gitAUTOINC+2f6cb866d6_d8cb47f77d_f7d03d2734_ec44c6c167_cb6dd4ef5f_1549d20f6d:
> Package version for package breakpad-dbg went backwards which would
> break package feeds from (0:svn-r0.37 to
> 0:1.0+git0+2f6cb866d6_d8cb47f77d_f7d03d2734_ec44c6c167_cb6dd4ef5f_1549d20f6d-r0.0)
> [version-going-backwards]


will bump PE and send v3

> 
> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html <http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html>
> 
>> +
>> +SRCREV_FORMAT = "breakpad_glog_gmock_gtest_protobuf_lss"
>> +
>> +SRCREV_breakpad = "2f6cb866d615d6240a18c7535c994c6bb93b1ba5"
>> +SRCREV_glog = "d8cb47f77d1c31779f3ff890e1a5748483778d6a"
>> +SRCREV_gmock = "f7d03d2734759ee12b57d2dbcb695607d89e8e05"
>> +SRCREV_gtest = "ec44c6c1675c25b9827aacd08c02433cccde7780"
>> +SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
>> +SRCREV_lss = "1549d20f6d3e7d66bb4e687c0ab9da42c2bff2ac"
>> +
>> +SRC_URI = "git://github.com/google/breakpad;name=breakpad \
>> +           git://github.com/google/glog.git;destsuffix=git/src/third_party/glog;name=glog \
>> +           git://github.com/google/googlemock.git;destsuffix=git/src/testing;name=gmock \
>> +           git://github.com/google/googletest.git;destsuffix=git/src/testing/gtest;name=gtest \
>> +           git://github.com/google/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
>> +           git://chromium.googlesource.com/linux-syscall-support;protocol=https;destsuffix=git/src/third_party/lss;name=lss \
>> +"
>> +S = "${WORKDIR}/git"
>> 
>> COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*"
>> 
>> -- 
>> 2.10.2
>> 
>> -- 
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
> 
> -- 
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com <mailto:Martin.Jansa@gmail.com>
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@lists.openembedded.org>
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes
  2016-11-26  0:15   ` Martin Jansa
@ 2016-11-26  7:42     ` Koen Kooi
  2016-11-28 17:48       ` Khem Raj
  2016-11-29  0:57     ` Khem Raj
  1 sibling, 1 reply; 73+ messages in thread
From: Koen Kooi @ 2016-11-26  7:42 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-devel


> Op 26 nov. 2016, om 01:15 heeft Martin Jansa <martin.jansa@gmail.com> het volgende geschreven:
> 
> On Wed, Nov 23, 2016 at 01:21:28AM -0800, Khem Raj wrote:
>> 16.x is the default since its the latest released version
>> 
>> remove obsoleted xbmc recipes
>> rename to recipes-mediacenter
>> +S = "${WORKDIR}/git"
>> +
>> +# breaks compilation
>> +ASNEEDED = ""
>> +
>> +ACCEL ?= ""
>> +ACCEL_x86 = "vaapi vdpau"
>> +ACCEL_x86-64 = "vaapi vdpau"
>> +
>> +PACKAGECONFIG ??= "${ACCEL}"
>> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)}"
>> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', ' opengl', ' openglesv2', d)}"
>> +
>> +PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,"
>> +PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,virtual/egl"
>> +PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
>> +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
>> +PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
>> +PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
>> +PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
> 
> Did I overlook libva recipe somewhere?
> 
> It doesn't even start building for qemux86* because of this libva and
> for qemuarm it fails to configure:
> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html

libva is in meta-intel, meta-amd and meta-kodi. I guess we should consider moving it to OE-core or meta-oe.

regards,

Koen



^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes
  2016-11-26  6:02       ` Khem Raj
@ 2016-11-26  9:08         ` Martin Jansa
  2016-11-28 19:38           ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-11-26  9:08 UTC (permalink / raw)
  To: openembedded-devel

Hmm somehow it got mixed in the e-mail, but the report log shows it
correctly:
http://logs.nslu2-linux.org/buildlogs/oe/world/pyro/log.report.20161125_134053.log

obexftp-0.24.2: obexftp rdepends on fuse, but it isn't a build
dependency, missing fuse in DEPENDS or PACKAGECONFIG? [build-deps]


On Sat, Nov 26, 2016 at 7:02 AM, Khem Raj <raj.khem@gmail.com> wrote:

>
> > On Nov 25, 2016, at 8:57 PM, Khem Raj <raj.khem@gmail.com> wrote:
> >
> >
> >> On Nov 25, 2016, at 4:17 PM, Martin Jansa <martin.jansa@gmail.com
> <mailto:martin.jansa@gmail.com>> wrote:
> >>
> >> On Wed, Nov 23, 2016 at 01:21:51AM -0800, Khem Raj wrote:
> >>> Update obexftp to 0.24.2 and openobex to 1.7.2
> >>> These packages moved to CMake infra for builds
> >>> therefore make adjustments to cross compile it
> >>
> >> opexftp autodetect uriparser now:
> >> http://lists.openembedded.org/pipermail/openembedded-devel/
> 2016-November/110050.html <http://lists.openembedded.
> org/pipermail/openembedded-devel/2016-November/110050.html>
> >
> > uriparser is not in meta-openembedded layers. So I guess I could
> packageconfig out it and keep it disabled by default
>
> Actually it seems a false alarm. uriparser is detected by tvheadend which
> I have fixed locally now. I could not find any reference to uriparser in
> obexftp
> can you verify what is it reporting against obexftp ?
>
> >
> >>
> >>>
> >>> Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com
> >>
> >>> ---
> >>> .../disable-cable-test.patch                       |  0
> >>> .../libusb_crosscompile_check.patch                |  0
> >>> .../separate_builddir.patch                        |  0
> >>> meta-oe/recipes-connectivity/obex/openobex_1.5.bb  | 35
> ----------------
> >>> .../recipes-connectivity/obex/openobex_1.7.2.bb    | 37
> +++++++++++++++++
> >>> ...ists.txt-Explicitly-link-libbfb-and-libmu.patch | 47
> ++++++++++++++++++++++
> >>> .../recipes-connectivity/obexftp/obexftp_0.23.bb   | 16 --------
> >>> .../recipes-connectivity/obexftp/obexftp_0.24.2.bb | 33
> +++++++++++++++
> >>> 8 files changed, 117 insertions(+), 51 deletions(-)
> >>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 =>
> openobex}/disable-cable-test.patch (100%)
> >>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 =>
> openobex}/libusb_crosscompile_check.patch (100%)
> >>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 =>
> openobex}/separate_builddir.patch (100%)
> >>> delete mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.5.bb
> >>> create mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
> >>> create mode 100644 meta-oe/recipes-connectivity/
> obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-
> link-libbfb-and-libmu.patch
> >>> delete mode 100644 meta-oe/recipes-connectivity/obexftp/
> obexftp_0.23.bb
> >>> create mode 100644 meta-oe/recipes-connectivity/obexftp/
> obexftp_0.24.2.bb
> >>>
> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
> b/meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
> >>> similarity index 100%
> >>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/disable-
> cable-test.patch
> >>> rename to meta-oe/recipes-connectivity/obex/openobex/disable-cable-
> test.patch
> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.
> 5/libusb_crosscompile_check.patch b/meta-oe/recipes-
> connectivity/obex/openobex/libusb_crosscompile_check.patch
> >>> similarity index 100%
> >>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_
> crosscompile_check.patch
> >>> rename to meta-oe/recipes-connectivity/obex/openobex/libusb_
> crosscompile_check.patch
> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
> b/meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
> >>> similarity index 100%
> >>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/separate_
> builddir.patch
> >>> rename to meta-oe/recipes-connectivity/obex/openobex/separate_
> builddir.patch
> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
> b/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
> >>> deleted file mode 100644
> >>> index 6ac7905..0000000
> >>> --- a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
> >>> +++ /dev/null
> >>> @@ -1,35 +0,0 @@
> >>> -DESCRIPTION = "The Openobex project is an open source implementation
> of the \
> >>> -Object Exchange (OBEX) protocol."
> >>> -HOMEPAGE = "http://openobex.triq.net <http://openobex.triq.net/>"
> >>> -SECTION = "libs"
> >>> -DEPENDS = "virtual/libusb0"
> >>> -DEPENDS += "${@bb.utils.contains('DISTRO_
> FEATURES','bluez5','bluez5','bluez4',d)}"
> >>> -
> >>> -LICENSE = "GPLv2 & LGPLv2.1"
> >>> -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a
> <file://COPYING;md5=eb723b61539feef013de476e68b5c50a> \
> >>> -                    file://COPYING.LIB;md5=
> a6f89e2100d9b6cdffcea4f398e37343 <file:///COPYING.LIB;md5=
> a6f89e2100d9b6cdffcea4f398e37343> \
> >>> -"
> >>> -
> >>> -SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}
> .tar.gz <http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz>
> \
> >>> -           file://disable-cable-test.patch
> <file:///disable-cable-test.patch> \
> >>> -           file://libusb_crosscompile_check.patch
> <file:///libusb_crosscompile_check.patch> \
> >>> -           file://separate_builddir.patch <file://separate_builddir.
> patch/>"
> >>> -
> >>> -SRC_URI[md5sum] = "0d83dc86445a46a1b9750107ba7ab65c"
> >>> -SRC_URI[sha256sum] = "e602047570799a47ecb028420bda8f
> 2cef41310e5a99d084de10aa9422935e65"
> >>> -
> >>> -inherit autotools binconfig pkgconfig
> >>> -
> >>> -EXTRA_OECONF = "--enable-apps --enable-syslog"
> >>> -
> >>> -do_install_append() {
> >>> -    install -d ${D}${datadir}/aclocal
> >>> -    install -m 0644 ${S}/openobex.m4 ${D}${datadir}/aclocal
> >>> -}
> >>> -
> >>> -PACKAGES += "openobex-apps"
> >>> -FILES_${PN} = "${libdir}/lib*.so.*"
> >>> -FILES_${PN}-dev += "${bindir}/openobex-config"
> >>> -FILES_${PN}-apps = "${bindir}/*"
> >>> -DEBIAN_NOAUTONAME_${PN}-apps = "1"
> >>> -
> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
> b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
> >>> new file mode 100644
> >>> index 0000000..053c80a
> >>> --- /dev/null
> >>> +++ b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
> >>> @@ -0,0 +1,37 @@
> >>> +DESCRIPTION = "The Openobex project is an open source implementation
> of the \
> >>> +Object Exchange (OBEX) protocol."
> >>> +HOMEPAGE = "http://openobex.triq.net <http://openobex.triq.net/>"
> >>> +SECTION = "libs"
> >>> +DEPENDS = "virtual/libusb0"
> >>> +DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_
> FEATURES','bluez5','bluez5','bluez4',d)}"
> >>> +
> >>> +LICENSE = "GPLv2 & LGPLv2.1"
> >>> +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a
> <file://COPYING;md5=eb723b61539feef013de476e68b5c50a> \
> >>> +                    file://COPYING.LIB;md5=
> a6f89e2100d9b6cdffcea4f398e37343 <file:///COPYING.LIB;md5=
> a6f89e2100d9b6cdffcea4f398e37343> \
> >>> +"
> >>> +
> >>> +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/
> ${BPN}/${PV}/${BP}-Source.tar.gz \
> >>> +"
> >>> +
> >>> +SRC_URI[md5sum] = "f6e0b6cb7dcfd731460a7e9a91429a3a"
> >>> +SRC_URI[sha256sum] = "158860aaea52f0fce0c8e4b64550da
> aae06df2689e05834697b7e8c7d73dd4fc"
> >>> +
> >>> +inherit cmake pkgconfig
> >>> +
> >>> +S = "${WORKDIR}/${BP}-Source"
> >>> +
> >>> +EXTRA_OECONF = " -DCMAKE_SKIP_RPATH=ON "
> >>> +
> >>> +#--enable-apps --enable-syslog
> >>> +
> >>> +do_install_append () {
> >>> +    rmdir ${D}${bindir}
> >>> +}
> >>> +
> >>> +PACKAGES =+ "openobex-apps"
> >>> +FILES_${PN}-apps = "${bindir}/*"
> >>> +FILES_${PN} += "${libdir}/lib*.so.*"
> >>> +FILES_${PN}-dev += "${bindir}/openobex-config ${libdir}/cmake"
> >>> +DEBIAN_NOAUTONAME_${PN}-apps = "1"
> >>> +
> >>> +BBCLASSEXTEND = "native"
> >>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp/
> 0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
> b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-
> Explicitly-link-libbfb-and-libmu.patch
> >>> new file mode 100644
> >>> index 0000000..55e5567
> >>> --- /dev/null
> >>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp/
> 0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
> >>> @@ -0,0 +1,47 @@
> >>> +From b8dc608dad7d9fc3a4c16acd0327d97b81c23b95 Mon Sep 17 00:00:00
> 2001
> >>> +From: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
> >>> +Date: Tue, 15 Nov 2016 01:32:31 +0000
> >>> +Subject: [PATCH] apps/CMakeLists.txt: Explicitly link libbfb and
> libmulticobex
> >>> +
> >>> +Transitive linking is disabled now for multicobex and
> >>> +obexftp, This ends up with linking errors for apps, therefore
> >>> +they are required to be added to link line explicitly.
> >>> +
> >>> +Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:
> raj.khem@gmail.com>>
> >>> +---
> >>> + apps/CMakeLists.txt | 13 +++++++++++--
> >>> + 1 file changed, 11 insertions(+), 2 deletions(-)
> >>> +
> >>> +diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
> >>> +index b5c84e4..63af134 100644
> >>> +--- a/apps/CMakeLists.txt
> >>> ++++ b/apps/CMakeLists.txt
> >>> +@@ -5,14 +5,23 @@ add_definitions( -DVERSION="${obexftp_VERSION}" )
> >>> + add_definitions ( -DHAVE_USB )
> >>> +
> >>> + add_executable ( obexftp_app obexftp.c )
> >>> +-target_link_libraries ( obexftp_app obexftp )
> >>> ++target_link_libraries ( obexftp_app
> >>> ++  PRIVATE multicobex
> >>> ++  PRIVATE bfb
> >>> ++  obexftp
> >>> ++)
> >>> + set_target_properties ( obexftp_app PROPERTIES
> >>> +   OUTPUT_NAME obexftp
> >>> + )
> >>> +
> >>> +
> >>> + add_executable ( obexftpd_app obexftpd.c )
> >>> +-target_link_libraries ( obexftpd_app obexftp openobex )
> >>> ++target_link_libraries ( obexftpd_app
> >>> ++  PRIVATE multicobex
> >>> ++  PRIVATE bfb
> >>> ++  obexftp
> >>> ++  openobex
> >>> ++)
> >>> + set_target_properties ( obexftpd_app PROPERTIES
> >>> +   OUTPUT_NAME obexftpd
> >>> + )
> >>> +--
> >>> +1.9.1
> >>> +
> >>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
> b/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
> >>> deleted file mode 100644
> >>> index b6bdfb7..0000000
> >>> --- a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
> >>> +++ /dev/null
> >>> @@ -1,16 +0,0 @@
> >>> -DESCRIPTION = "A tool for transfer files to/from any OBEX enabled
> device"
> >>> -LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
> >>> -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552
> <file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552>"
> >>> -
> >>> -DEPENDS += "openobex"
> >>> -
> >>> -SRC_URI = "http://sourceforge.net/projects/openobex/files/
> obexftp/${PV}/obexftp-${PV}.tar.bz2 <http://sourceforge.net/
> projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2> \
> >>> -           file://Remove_some_printf_in_obexftpd.patch
> <file:///Remove_some_printf_in_obexftpd.patch> "
> >>> -
> >>> -SRC_URI[md5sum] = "f20762061b68bc921e80be4aebc349eb"
> >>> -SRC_URI[sha256sum] = "44a74ff288d38c0f75354d6bc2efe7
> d6dec10112eaff2e7b10e292b0d2105b36"
> >>> -
> >>> -inherit autotools pkgconfig
> >>> -
> >>> -EXTRA_OECONF += "--disable-tcl --disable-perl --disable-python
> --disable-ruby"
> >>> -
> >>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
> b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
> >>> new file mode 100644
> >>> index 0000000..991cd48
> >>> --- /dev/null
> >>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
> >>> @@ -0,0 +1,33 @@
> >>> +DESCRIPTION = "A tool for transfer files to/from any OBEX enabled
> device"
> >>> +LICENSE = "GPLv2 & PD & LGPLv2.1"
> >>> +LIC_FILES_CHKSUM = "file://LGPL-2.1.txt;md5=
> 4fbd65380cdd255951079008b364516c <file://LGPL-2.1.txt;md5=
> 4fbd65380cdd255951079008b364516c> \
> >>> +                    file://GPL-2.txt;md5=
> b234ee4d69f5fce4486a80fdaf4a4263 <file:///GPL-2.txt;md5=
> b234ee4d69f5fce4486a80fdaf4a4263> \
> >>> +                    file://License.txt;md5=
> fcbddc3c1debed80dd80da2d3e5f0dc1 <file:///License.txt;md5=
> fcbddc3c1debed80dd80da2d3e5f0dc1> \
> >>> +                   "
> >>> +
> >>> +DEPENDS += "openobex obexftp-native"
> >>> +SRC_URI = "http://downloads.sourceforge.
> net/openobex/${BP}-Source.tar.gz <http://downloads.sourceforge.
> net/openobex/${BP}-Source.tar.gz> \
> >>> +           file://0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
> <file:///0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch>
> \
> >>> +"
> >>> +SRC_URI[md5sum] = "157a9d1b2ed220203f7084db906de73c"
> >>> +SRC_URI[sha256sum] = "d40fb48e0a0eea997b3e582774b29f
> 793919a625d54b87182e31a3f3d1c989a3"
> >>> +
> >>> +inherit cmake pkgconfig
> >>> +
> >>> +S = "${WORKDIR}/${BP}-Source"
> >>> +
> >>> +EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON \
> >>> +                  -DENABLE_PERL=NO -DENABLE_PYTHON=NO \
> >>> +                  -DENABLE_RUBY=NO -DENABLE_TCL=NO \
> >>> +"
> >>> +
> >>> +do_compile_class-native () {
> >>> +    oe_runmake crctable
> >>> +}
> >>> +
> >>> +do_install_class-native () {
> >>> +    install -D -m 0755 ${B}/bfb/crctable ${D}${bindir}/crctable
> >>> +}
> >>> +
> >>> +
> >>> +BBCLASSEXTEND = "native"
> >>> --
> >>> 2.10.2
> >>>
> >>> --
> >>> _______________________________________________
> >>> Openembedded-devel mailing list
> >>> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@
> lists.openembedded.org>
> >>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
> >>
> >> --
> >> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com <mailto:
> Martin.Jansa@gmail.com>
> >> --
> >> _______________________________________________
> >> Openembedded-devel mailing list
> >> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@
> lists.openembedded.org>
> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 40/49] jsoncpp: Add new recipe
  2016-11-23  9:22 ` [meta-oe][PATCH 40/49] jsoncpp: Add new recipe Khem Raj
@ 2016-11-28 10:46   ` Piotr Lewicki
  2016-11-28 21:10     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Piotr Lewicki @ 2016-11-28 10:46 UTC (permalink / raw)
  To: openembedded-devel

Hi Raj,

Did you forget to add the patch to the "SRC_URI"?


BR,

Piotr


On 23.11.2016 10:22, Khem Raj wrote:
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>   .../0001-jsoncpp-rename-features-header-file.patch | 152 +++++++++++++++++++++
>   meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb  |  21 +++
>   2 files changed, 173 insertions(+)
>   create mode 100644 meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
>   create mode 100644 meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
>
> diff --git a/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch b/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
> new file mode 100644
> index 0000000..f1397ea
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
> @@ -0,0 +1,152 @@
> +Issue: Build error in TDK DS_stub
> +
> +In file included from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/i586-rdk-linux/bits/c++config.h:426:0,
> +                 from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/string:38,
> +                 from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/json/value.h:12,
> +                 from /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/json/json.h:10,
> +                 from ./include/DeviceSettingsAgent.h:15,
> +                 from src/DeviceSettingsAgent.cpp:13:
> +/home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/i586-rdk-linux/bits/os_defines.h:44:19: error: missing binary operator before token "("
> + #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
> +
> +The issue was jsoncpp has features.h which was conflicting with the system
> +header file features.h.
> +
> +So renamed the header file  features.h in jsoncpp to json-features.h so
> +as to localize the effect of this change within jsoncpp.
> +
> + Signed-off-by: Ridish Aravindan <ridish.ra@lnttechservices.com>
> +
> +Index: jsoncpp-src-0.6.0-rc2/include/json/json-features.h
> +===================================================================
> +--- /dev/null	1970-01-01 00:00:00.000000000 +0000
> ++++ jsoncpp-src-0.6.0-rc2/include/json/json-features.h	2014-08-27 06:41:40.000000000 +0000
> +@@ -0,0 +1,49 @@
> ++// Copyright 2007-2010 Baptiste Lepilleur
> ++// Distributed under MIT license, or public domain if desired and
> ++// recognized in your jurisdiction.
> ++// See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
> ++
> ++#ifndef CPPTL_JSON_FEATURES_H_INCLUDED
> ++# define CPPTL_JSON_FEATURES_H_INCLUDED
> ++
> ++#if !defined(JSON_IS_AMALGAMATION)
> ++# include "forwards.h"
> ++#endif // if !defined(JSON_IS_AMALGAMATION)
> ++
> ++namespace Json {
> ++
> ++   /** \brief Configuration passed to reader and writer.
> ++    * This configuration object can be used to force the Reader or Writer
> ++    * to behave in a standard conforming way.
> ++    */
> ++   class JSON_API Features
> ++   {
> ++   public:
> ++      /** \brief A configuration that allows all features and assumes all strings are UTF-8.
> ++       * - C & C++ comments are allowed
> ++       * - Root object can be any JSON value
> ++       * - Assumes Value strings are encoded in UTF-8
> ++       */
> ++      static Features all();
> ++
> ++      /** \brief A configuration that is strictly compatible with the JSON specification.
> ++       * - Comments are forbidden.
> ++       * - Root object must be either an array or an object value.
> ++       * - Assumes Value strings are encoded in UTF-8
> ++       */
> ++      static Features strictMode();
> ++
> ++      /** \brief Initialize the configuration like JsonConfig::allFeatures;
> ++       */
> ++      Features();
> ++
> ++      /// \c true if comments are allowed. Default: \c true.
> ++      bool allowComments_;
> ++
> ++      /// \c true if root must be either an array or an object value. Default: \c false.
> ++      bool strictRoot_;
> ++   };
> ++
> ++} // namespace Json
> ++
> ++#endif // CPPTL_JSON_FEATURES_H_INCLUDED
> +Index: jsoncpp-src-0.6.0-rc2/include/json/json.h
> +===================================================================
> +--- jsoncpp-src-0.6.0-rc2.orig/include/json/json.h	2011-05-02 21:47:24.000000000 +0000
> ++++ jsoncpp-src-0.6.0-rc2/include/json/json.h	2014-08-27 06:39:13.000000000 +0000
> +@@ -10,6 +10,6 @@
> + # include "value.h"
> + # include "reader.h"
> + # include "writer.h"
> +-# include "features.h"
> ++# include "json-features.h"
> +
> + #endif // JSON_JSON_H_INCLUDED
> +Index: jsoncpp-src-0.6.0-rc2/include/json/reader.h
> +===================================================================
> +--- jsoncpp-src-0.6.0-rc2.orig/include/json/reader.h	2011-05-02 21:47:24.000000000 +0000
> ++++ jsoncpp-src-0.6.0-rc2/include/json/reader.h	2014-08-27 06:39:32.000000000 +0000
> +@@ -7,7 +7,7 @@
> + # define CPPTL_JSON_READER_H_INCLUDED
> +
> + #if !defined(JSON_IS_AMALGAMATION)
> +-# include "features.h"
> ++# include "json-features.h"
> + # include "value.h"
> + #endif // if !defined(JSON_IS_AMALGAMATION)
> + # include <deque>
> +Index: jsoncpp-src-0.6.0-rc2/include/json/features.h
> +===================================================================
> +--- jsoncpp-src-0.6.0-rc2.orig/include/json/features.h	2011-05-02 21:46:58.000000000 +0000
> ++++ /dev/null	1970-01-01 00:00:00.000000000 +0000
> +@@ -1,49 +0,0 @@
> +-// Copyright 2007-2010 Baptiste Lepilleur
> +-// Distributed under MIT license, or public domain if desired and
> +-// recognized in your jurisdiction.
> +-// See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
> +-
> +-#ifndef CPPTL_JSON_FEATURES_H_INCLUDED
> +-# define CPPTL_JSON_FEATURES_H_INCLUDED
> +-
> +-#if !defined(JSON_IS_AMALGAMATION)
> +-# include "forwards.h"
> +-#endif // if !defined(JSON_IS_AMALGAMATION)
> +-
> +-namespace Json {
> +-
> +-   /** \brief Configuration passed to reader and writer.
> +-    * This configuration object can be used to force the Reader or Writer
> +-    * to behave in a standard conforming way.
> +-    */
> +-   class JSON_API Features
> +-   {
> +-   public:
> +-      /** \brief A configuration that allows all features and assumes all strings are UTF-8.
> +-       * - C & C++ comments are allowed
> +-       * - Root object can be any JSON value
> +-       * - Assumes Value strings are encoded in UTF-8
> +-       */
> +-      static Features all();
> +-
> +-      /** \brief A configuration that is strictly compatible with the JSON specification.
> +-       * - Comments are forbidden.
> +-       * - Root object must be either an array or an object value.
> +-       * - Assumes Value strings are encoded in UTF-8
> +-       */
> +-      static Features strictMode();
> +-
> +-      /** \brief Initialize the configuration like JsonConfig::allFeatures;
> +-       */
> +-      Features();
> +-
> +-      /// \c true if comments are allowed. Default: \c true.
> +-      bool allowComments_;
> +-
> +-      /// \c true if root must be either an array or an object value. Default: \c false.
> +-      bool strictRoot_;
> +-   };
> +-
> +-} // namespace Json
> +-
> +-#endif // CPPTL_JSON_FEATURES_H_INCLUDED
> diff --git a/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb b/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
> new file mode 100644
> index 0000000..17947e3
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
> @@ -0,0 +1,21 @@
> +SUMMARY = "JSON C++ lib used to read and write json file."
> +DESCRIPTION = "Jsoncpp is an implementation of a JSON (http://json.org) reader \
> +               and writer in C++. JSON (JavaScript Object Notation) is a \
> +               lightweight data-interchange format. It is easy for humans to \
> +               read and write. It is easy for machines to parse and generate."
> +
> +HOMEPAGE = "http://sourceforge.net/projects/jsoncpp/"
> +
> +SECTION = "libs"
> +
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=c56ee55c03a55f8105b969d8270632ce"
> +
> +SRCREV = "d8cd848ede1071a25846cd90b4fddf269d868ff1"
> +SRC_URI = "git://github.com/open-source-parsers/jsoncpp \
> +"
> +
> +S = "${WORKDIR}/git"
> +inherit cmake
> +
> +EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"



^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes
  2016-11-26  7:42     ` Koen Kooi
@ 2016-11-28 17:48       ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-28 17:48 UTC (permalink / raw)
  To: openembeded-devel

On Fri, Nov 25, 2016 at 11:42 PM, Koen Kooi <koen@dominion.thruhere.net> wrote:
>
>> Op 26 nov. 2016, om 01:15 heeft Martin Jansa <martin.jansa@gmail.com> het volgende geschreven:
>>
>> On Wed, Nov 23, 2016 at 01:21:28AM -0800, Khem Raj wrote:
>>> 16.x is the default since its the latest released version
>>>
>>> remove obsoleted xbmc recipes
>>> rename to recipes-mediacenter
>>> +S = "${WORKDIR}/git"
>>> +
>>> +# breaks compilation
>>> +ASNEEDED = ""
>>> +
>>> +ACCEL ?= ""
>>> +ACCEL_x86 = "vaapi vdpau"
>>> +ACCEL_x86-64 = "vaapi vdpau"
>>> +
>>> +PACKAGECONFIG ??= "${ACCEL}"
>>> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)}"
>>> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', ' opengl', ' openglesv2', d)}"
>>> +
>>> +PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,"
>>> +PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,virtual/egl"
>>> +PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
>>> +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
>>> +PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
>>> +PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
>>> +PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
>>
>> Did I overlook libva recipe somewhere?
>>
>> It doesn't even start building for qemux86* because of this libva and
>> for qemuarm it fails to configure:
>> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html
>
> libva is in meta-intel, meta-amd and meta-kodi. I guess we should consider moving it to OE-core or meta-oe.

I think meta-oe is a good destination for this.

>
> regards,
>
> Koen
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes
  2016-11-26  9:08         ` Martin Jansa
@ 2016-11-28 19:38           ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-28 19:38 UTC (permalink / raw)
  To: openembeded-devel

On Sat, Nov 26, 2016 at 1:08 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> Hmm somehow it got mixed in the e-mail, but the report log shows it
> correctly:
> http://logs.nslu2-linux.org/buildlogs/oe/world/pyro/log.report.20161125_134053.log
>
> obexftp-0.24.2: obexftp rdepends on fuse, but it isn't a build
> dependency, missing fuse in DEPENDS or PACKAGECONFIG? [build-deps]
>

That looks more reasonable. I dont have meta-filesystems in my project
that explains why I dont see this dangling dep issue. I will send a v2

>
> On Sat, Nov 26, 2016 at 7:02 AM, Khem Raj <raj.khem@gmail.com> wrote:
>
>>
>> > On Nov 25, 2016, at 8:57 PM, Khem Raj <raj.khem@gmail.com> wrote:
>> >
>> >
>> >> On Nov 25, 2016, at 4:17 PM, Martin Jansa <martin.jansa@gmail.com
>> <mailto:martin.jansa@gmail.com>> wrote:
>> >>
>> >> On Wed, Nov 23, 2016 at 01:21:51AM -0800, Khem Raj wrote:
>> >>> Update obexftp to 0.24.2 and openobex to 1.7.2
>> >>> These packages moved to CMake infra for builds
>> >>> therefore make adjustments to cross compile it
>> >>
>> >> opexftp autodetect uriparser now:
>> >> http://lists.openembedded.org/pipermail/openembedded-devel/
>> 2016-November/110050.html <http://lists.openembedded.
>> org/pipermail/openembedded-devel/2016-November/110050.html>
>> >
>> > uriparser is not in meta-openembedded layers. So I guess I could
>> packageconfig out it and keep it disabled by default
>>
>> Actually it seems a false alarm. uriparser is detected by tvheadend which
>> I have fixed locally now. I could not find any reference to uriparser in
>> obexftp
>> can you verify what is it reporting against obexftp ?
>>
>> >
>> >>
>> >>>
>> >>> Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com
>> >>
>> >>> ---
>> >>> .../disable-cable-test.patch                       |  0
>> >>> .../libusb_crosscompile_check.patch                |  0
>> >>> .../separate_builddir.patch                        |  0
>> >>> meta-oe/recipes-connectivity/obex/openobex_1.5.bb  | 35
>> ----------------
>> >>> .../recipes-connectivity/obex/openobex_1.7.2.bb    | 37
>> +++++++++++++++++
>> >>> ...ists.txt-Explicitly-link-libbfb-and-libmu.patch | 47
>> ++++++++++++++++++++++
>> >>> .../recipes-connectivity/obexftp/obexftp_0.23.bb   | 16 --------
>> >>> .../recipes-connectivity/obexftp/obexftp_0.24.2.bb | 33
>> +++++++++++++++
>> >>> 8 files changed, 117 insertions(+), 51 deletions(-)
>> >>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 =>
>> openobex}/disable-cable-test.patch (100%)
>> >>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 =>
>> openobex}/libusb_crosscompile_check.patch (100%)
>> >>> rename meta-oe/recipes-connectivity/obex/{openobex-1.5 =>
>> openobex}/separate_builddir.patch (100%)
>> >>> delete mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>> >>> create mode 100644 meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>> >>> create mode 100644 meta-oe/recipes-connectivity/
>> obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-
>> link-libbfb-and-libmu.patch
>> >>> delete mode 100644 meta-oe/recipes-connectivity/obexftp/
>> obexftp_0.23.bb
>> >>> create mode 100644 meta-oe/recipes-connectivity/obexftp/
>> obexftp_0.24.2.bb
>> >>>
>> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
>> b/meta-oe/recipes-connectivity/obex/openobex/disable-cable-test.patch
>> >>> similarity index 100%
>> >>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/disable-
>> cable-test.patch
>> >>> rename to meta-oe/recipes-connectivity/obex/openobex/disable-cable-
>> test.patch
>> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.
>> 5/libusb_crosscompile_check.patch b/meta-oe/recipes-
>> connectivity/obex/openobex/libusb_crosscompile_check.patch
>> >>> similarity index 100%
>> >>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_
>> crosscompile_check.patch
>> >>> rename to meta-oe/recipes-connectivity/obex/openobex/libusb_
>> crosscompile_check.patch
>> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
>> b/meta-oe/recipes-connectivity/obex/openobex/separate_builddir.patch
>> >>> similarity index 100%
>> >>> rename from meta-oe/recipes-connectivity/obex/openobex-1.5/separate_
>> builddir.patch
>> >>> rename to meta-oe/recipes-connectivity/obex/openobex/separate_
>> builddir.patch
>> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>> b/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>> >>> deleted file mode 100644
>> >>> index 6ac7905..0000000
>> >>> --- a/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
>> >>> +++ /dev/null
>> >>> @@ -1,35 +0,0 @@
>> >>> -DESCRIPTION = "The Openobex project is an open source implementation
>> of the \
>> >>> -Object Exchange (OBEX) protocol."
>> >>> -HOMEPAGE = "http://openobex.triq.net <http://openobex.triq.net/>"
>> >>> -SECTION = "libs"
>> >>> -DEPENDS = "virtual/libusb0"
>> >>> -DEPENDS += "${@bb.utils.contains('DISTRO_
>> FEATURES','bluez5','bluez5','bluez4',d)}"
>> >>> -
>> >>> -LICENSE = "GPLv2 & LGPLv2.1"
>> >>> -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a
>> <file://COPYING;md5=eb723b61539feef013de476e68b5c50a> \
>> >>> -                    file://COPYING.LIB;md5=
>> a6f89e2100d9b6cdffcea4f398e37343 <file:///COPYING.LIB;md5=
>> a6f89e2100d9b6cdffcea4f398e37343> \
>> >>> -"
>> >>> -
>> >>> -SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}
>> .tar.gz <http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz>
>> \
>> >>> -           file://disable-cable-test.patch
>> <file:///disable-cable-test.patch> \
>> >>> -           file://libusb_crosscompile_check.patch
>> <file:///libusb_crosscompile_check.patch> \
>> >>> -           file://separate_builddir.patch <file://separate_builddir.
>> patch/>"
>> >>> -
>> >>> -SRC_URI[md5sum] = "0d83dc86445a46a1b9750107ba7ab65c"
>> >>> -SRC_URI[sha256sum] = "e602047570799a47ecb028420bda8f
>> 2cef41310e5a99d084de10aa9422935e65"
>> >>> -
>> >>> -inherit autotools binconfig pkgconfig
>> >>> -
>> >>> -EXTRA_OECONF = "--enable-apps --enable-syslog"
>> >>> -
>> >>> -do_install_append() {
>> >>> -    install -d ${D}${datadir}/aclocal
>> >>> -    install -m 0644 ${S}/openobex.m4 ${D}${datadir}/aclocal
>> >>> -}
>> >>> -
>> >>> -PACKAGES += "openobex-apps"
>> >>> -FILES_${PN} = "${libdir}/lib*.so.*"
>> >>> -FILES_${PN}-dev += "${bindir}/openobex-config"
>> >>> -FILES_${PN}-apps = "${bindir}/*"
>> >>> -DEBIAN_NOAUTONAME_${PN}-apps = "1"
>> >>> -
>> >>> diff --git a/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>> b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>> >>> new file mode 100644
>> >>> index 0000000..053c80a
>> >>> --- /dev/null
>> >>> +++ b/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
>> >>> @@ -0,0 +1,37 @@
>> >>> +DESCRIPTION = "The Openobex project is an open source implementation
>> of the \
>> >>> +Object Exchange (OBEX) protocol."
>> >>> +HOMEPAGE = "http://openobex.triq.net <http://openobex.triq.net/>"
>> >>> +SECTION = "libs"
>> >>> +DEPENDS = "virtual/libusb0"
>> >>> +DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_
>> FEATURES','bluez5','bluez5','bluez4',d)}"
>> >>> +
>> >>> +LICENSE = "GPLv2 & LGPLv2.1"
>> >>> +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a
>> <file://COPYING;md5=eb723b61539feef013de476e68b5c50a> \
>> >>> +                    file://COPYING.LIB;md5=
>> a6f89e2100d9b6cdffcea4f398e37343 <file:///COPYING.LIB;md5=
>> a6f89e2100d9b6cdffcea4f398e37343> \
>> >>> +"
>> >>> +
>> >>> +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/
>> ${BPN}/${PV}/${BP}-Source.tar.gz \
>> >>> +"
>> >>> +
>> >>> +SRC_URI[md5sum] = "f6e0b6cb7dcfd731460a7e9a91429a3a"
>> >>> +SRC_URI[sha256sum] = "158860aaea52f0fce0c8e4b64550da
>> aae06df2689e05834697b7e8c7d73dd4fc"
>> >>> +
>> >>> +inherit cmake pkgconfig
>> >>> +
>> >>> +S = "${WORKDIR}/${BP}-Source"
>> >>> +
>> >>> +EXTRA_OECONF = " -DCMAKE_SKIP_RPATH=ON "
>> >>> +
>> >>> +#--enable-apps --enable-syslog
>> >>> +
>> >>> +do_install_append () {
>> >>> +    rmdir ${D}${bindir}
>> >>> +}
>> >>> +
>> >>> +PACKAGES =+ "openobex-apps"
>> >>> +FILES_${PN}-apps = "${bindir}/*"
>> >>> +FILES_${PN} += "${libdir}/lib*.so.*"
>> >>> +FILES_${PN}-dev += "${bindir}/openobex-config ${libdir}/cmake"
>> >>> +DEBIAN_NOAUTONAME_${PN}-apps = "1"
>> >>> +
>> >>> +BBCLASSEXTEND = "native"
>> >>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp/
>> 0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>> b/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-
>> Explicitly-link-libbfb-and-libmu.patch
>> >>> new file mode 100644
>> >>> index 0000000..55e5567
>> >>> --- /dev/null
>> >>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp/
>> 0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>> >>> @@ -0,0 +1,47 @@
>> >>> +From b8dc608dad7d9fc3a4c16acd0327d97b81c23b95 Mon Sep 17 00:00:00
>> 2001
>> >>> +From: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
>> >>> +Date: Tue, 15 Nov 2016 01:32:31 +0000
>> >>> +Subject: [PATCH] apps/CMakeLists.txt: Explicitly link libbfb and
>> libmulticobex
>> >>> +
>> >>> +Transitive linking is disabled now for multicobex and
>> >>> +obexftp, This ends up with linking errors for apps, therefore
>> >>> +they are required to be added to link line explicitly.
>> >>> +
>> >>> +Signed-off-by: Khem Raj <raj.khem@gmail.com <mailto:
>> raj.khem@gmail.com>>
>> >>> +---
>> >>> + apps/CMakeLists.txt | 13 +++++++++++--
>> >>> + 1 file changed, 11 insertions(+), 2 deletions(-)
>> >>> +
>> >>> +diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
>> >>> +index b5c84e4..63af134 100644
>> >>> +--- a/apps/CMakeLists.txt
>> >>> ++++ b/apps/CMakeLists.txt
>> >>> +@@ -5,14 +5,23 @@ add_definitions( -DVERSION="${obexftp_VERSION}" )
>> >>> + add_definitions ( -DHAVE_USB )
>> >>> +
>> >>> + add_executable ( obexftp_app obexftp.c )
>> >>> +-target_link_libraries ( obexftp_app obexftp )
>> >>> ++target_link_libraries ( obexftp_app
>> >>> ++  PRIVATE multicobex
>> >>> ++  PRIVATE bfb
>> >>> ++  obexftp
>> >>> ++)
>> >>> + set_target_properties ( obexftp_app PROPERTIES
>> >>> +   OUTPUT_NAME obexftp
>> >>> + )
>> >>> +
>> >>> +
>> >>> + add_executable ( obexftpd_app obexftpd.c )
>> >>> +-target_link_libraries ( obexftpd_app obexftp openobex )
>> >>> ++target_link_libraries ( obexftpd_app
>> >>> ++  PRIVATE multicobex
>> >>> ++  PRIVATE bfb
>> >>> ++  obexftp
>> >>> ++  openobex
>> >>> ++)
>> >>> + set_target_properties ( obexftpd_app PROPERTIES
>> >>> +   OUTPUT_NAME obexftpd
>> >>> + )
>> >>> +--
>> >>> +1.9.1
>> >>> +
>> >>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>> b/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>> >>> deleted file mode 100644
>> >>> index b6bdfb7..0000000
>> >>> --- a/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
>> >>> +++ /dev/null
>> >>> @@ -1,16 +0,0 @@
>> >>> -DESCRIPTION = "A tool for transfer files to/from any OBEX enabled
>> device"
>> >>> -LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
>> >>> -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552
>> <file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552>"
>> >>> -
>> >>> -DEPENDS += "openobex"
>> >>> -
>> >>> -SRC_URI = "http://sourceforge.net/projects/openobex/files/
>> obexftp/${PV}/obexftp-${PV}.tar.bz2 <http://sourceforge.net/
>> projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2> \
>> >>> -           file://Remove_some_printf_in_obexftpd.patch
>> <file:///Remove_some_printf_in_obexftpd.patch> "
>> >>> -
>> >>> -SRC_URI[md5sum] = "f20762061b68bc921e80be4aebc349eb"
>> >>> -SRC_URI[sha256sum] = "44a74ff288d38c0f75354d6bc2efe7
>> d6dec10112eaff2e7b10e292b0d2105b36"
>> >>> -
>> >>> -inherit autotools pkgconfig
>> >>> -
>> >>> -EXTRA_OECONF += "--disable-tcl --disable-perl --disable-python
>> --disable-ruby"
>> >>> -
>> >>> diff --git a/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>> b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>> >>> new file mode 100644
>> >>> index 0000000..991cd48
>> >>> --- /dev/null
>> >>> +++ b/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
>> >>> @@ -0,0 +1,33 @@
>> >>> +DESCRIPTION = "A tool for transfer files to/from any OBEX enabled
>> device"
>> >>> +LICENSE = "GPLv2 & PD & LGPLv2.1"
>> >>> +LIC_FILES_CHKSUM = "file://LGPL-2.1.txt;md5=
>> 4fbd65380cdd255951079008b364516c <file://LGPL-2.1.txt;md5=
>> 4fbd65380cdd255951079008b364516c> \
>> >>> +                    file://GPL-2.txt;md5=
>> b234ee4d69f5fce4486a80fdaf4a4263 <file:///GPL-2.txt;md5=
>> b234ee4d69f5fce4486a80fdaf4a4263> \
>> >>> +                    file://License.txt;md5=
>> fcbddc3c1debed80dd80da2d3e5f0dc1 <file:///License.txt;md5=
>> fcbddc3c1debed80dd80da2d3e5f0dc1> \
>> >>> +                   "
>> >>> +
>> >>> +DEPENDS += "openobex obexftp-native"
>> >>> +SRC_URI = "http://downloads.sourceforge.
>> net/openobex/${BP}-Source.tar.gz <http://downloads.sourceforge.
>> net/openobex/${BP}-Source.tar.gz> \
>> >>> +           file://0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
>> <file:///0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch>
>> \
>> >>> +"
>> >>> +SRC_URI[md5sum] = "157a9d1b2ed220203f7084db906de73c"
>> >>> +SRC_URI[sha256sum] = "d40fb48e0a0eea997b3e582774b29f
>> 793919a625d54b87182e31a3f3d1c989a3"
>> >>> +
>> >>> +inherit cmake pkgconfig
>> >>> +
>> >>> +S = "${WORKDIR}/${BP}-Source"
>> >>> +
>> >>> +EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON \
>> >>> +                  -DENABLE_PERL=NO -DENABLE_PYTHON=NO \
>> >>> +                  -DENABLE_RUBY=NO -DENABLE_TCL=NO \
>> >>> +"
>> >>> +
>> >>> +do_compile_class-native () {
>> >>> +    oe_runmake crctable
>> >>> +}
>> >>> +
>> >>> +do_install_class-native () {
>> >>> +    install -D -m 0755 ${B}/bfb/crctable ${D}${bindir}/crctable
>> >>> +}
>> >>> +
>> >>> +
>> >>> +BBCLASSEXTEND = "native"
>> >>> --
>> >>> 2.10.2
>> >>>
>> >>> --
>> >>> _______________________________________________
>> >>> Openembedded-devel mailing list
>> >>> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@
>> lists.openembedded.org>
>> >>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
>> >>
>> >> --
>> >> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com <mailto:
>> Martin.Jansa@gmail.com>
>> >> --
>> >> _______________________________________________
>> >> Openembedded-devel mailing list
>> >> Openembedded-devel@lists.openembedded.org <mailto:Openembedded-devel@
>> lists.openembedded.org>
>> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel <
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel>
>>
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 40/49] jsoncpp: Add new recipe
  2016-11-28 10:46   ` Piotr Lewicki
@ 2016-11-28 21:10     ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-11-28 21:10 UTC (permalink / raw)
  To: openembeded-devel

On Mon, Nov 28, 2016 at 2:46 AM, Piotr Lewicki <piotr.lewicki@elfin.de> wrote:
> Hi Raj,
>
> Did you forget to add the patch to the "SRC_URI"?
>

this patch is not required thus effectively deadcode I will send a v2.
Thanks for notifying.

>
> BR,
>
> Piotr
>
>
>
> On 23.11.2016 10:22, Khem Raj wrote:
>>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>>   .../0001-jsoncpp-rename-features-header-file.patch | 152
>> +++++++++++++++++++++
>>   meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb  |  21 +++
>>   2 files changed, 173 insertions(+)
>>   create mode 100644
>> meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
>>   create mode 100644 meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
>>
>> diff --git
>> a/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
>> b/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
>> new file mode 100644
>> index 0000000..f1397ea
>> --- /dev/null
>> +++
>> b/meta-oe/recipes-devtools/jsoncpp/jsoncpp/0001-jsoncpp-rename-features-header-file.patch
>> @@ -0,0 +1,152 @@
>> +Issue: Build error in TDK DS_stub
>> +
>> +In file included from
>> /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/i586-rdk-linux/bits/c++config.h:426:0,
>> +                 from
>> /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/string:38,
>> +                 from
>> /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/json/value.h:12,
>> +                 from
>> /home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/json/json.h:10,
>> +                 from ./include/DeviceSettingsAgent.h:15,
>> +                 from src/DeviceSettingsAgent.cpp:13:
>>
>> +/home/ubuntu/work/daisy-rdk/build-qemux86hyb/tmp/sysroots/qemux86hyb/usr/include/c++/i586-rdk-linux/bits/os_defines.h:44:19:
>> error: missing binary operator before token "("
>> + #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
>> +
>> +The issue was jsoncpp has features.h which was conflicting with the
>> system
>> +header file features.h.
>> +
>> +So renamed the header file  features.h in jsoncpp to json-features.h so
>> +as to localize the effect of this change within jsoncpp.
>> +
>> + Signed-off-by: Ridish Aravindan <ridish.ra@lnttechservices.com>
>> +
>> +Index: jsoncpp-src-0.6.0-rc2/include/json/json-features.h
>> +===================================================================
>> +--- /dev/null  1970-01-01 00:00:00.000000000 +0000
>> ++++ jsoncpp-src-0.6.0-rc2/include/json/json-features.h 2014-08-27
>> 06:41:40.000000000 +0000
>> +@@ -0,0 +1,49 @@
>> ++// Copyright 2007-2010 Baptiste Lepilleur
>> ++// Distributed under MIT license, or public domain if desired and
>> ++// recognized in your jurisdiction.
>> ++// See file LICENSE for detail or copy at
>> http://jsoncpp.sourceforge.net/LICENSE
>> ++
>> ++#ifndef CPPTL_JSON_FEATURES_H_INCLUDED
>> ++# define CPPTL_JSON_FEATURES_H_INCLUDED
>> ++
>> ++#if !defined(JSON_IS_AMALGAMATION)
>> ++# include "forwards.h"
>> ++#endif // if !defined(JSON_IS_AMALGAMATION)
>> ++
>> ++namespace Json {
>> ++
>> ++   /** \brief Configuration passed to reader and writer.
>> ++    * This configuration object can be used to force the Reader or
>> Writer
>> ++    * to behave in a standard conforming way.
>> ++    */
>> ++   class JSON_API Features
>> ++   {
>> ++   public:
>> ++      /** \brief A configuration that allows all features and assumes
>> all strings are UTF-8.
>> ++       * - C & C++ comments are allowed
>> ++       * - Root object can be any JSON value
>> ++       * - Assumes Value strings are encoded in UTF-8
>> ++       */
>> ++      static Features all();
>> ++
>> ++      /** \brief A configuration that is strictly compatible with the
>> JSON specification.
>> ++       * - Comments are forbidden.
>> ++       * - Root object must be either an array or an object value.
>> ++       * - Assumes Value strings are encoded in UTF-8
>> ++       */
>> ++      static Features strictMode();
>> ++
>> ++      /** \brief Initialize the configuration like
>> JsonConfig::allFeatures;
>> ++       */
>> ++      Features();
>> ++
>> ++      /// \c true if comments are allowed. Default: \c true.
>> ++      bool allowComments_;
>> ++
>> ++      /// \c true if root must be either an array or an object value.
>> Default: \c false.
>> ++      bool strictRoot_;
>> ++   };
>> ++
>> ++} // namespace Json
>> ++
>> ++#endif // CPPTL_JSON_FEATURES_H_INCLUDED
>> +Index: jsoncpp-src-0.6.0-rc2/include/json/json.h
>> +===================================================================
>> +--- jsoncpp-src-0.6.0-rc2.orig/include/json/json.h     2011-05-02
>> 21:47:24.000000000 +0000
>> ++++ jsoncpp-src-0.6.0-rc2/include/json/json.h  2014-08-27
>> 06:39:13.000000000 +0000
>> +@@ -10,6 +10,6 @@
>> + # include "value.h"
>> + # include "reader.h"
>> + # include "writer.h"
>> +-# include "features.h"
>> ++# include "json-features.h"
>> +
>> + #endif // JSON_JSON_H_INCLUDED
>> +Index: jsoncpp-src-0.6.0-rc2/include/json/reader.h
>> +===================================================================
>> +--- jsoncpp-src-0.6.0-rc2.orig/include/json/reader.h   2011-05-02
>> 21:47:24.000000000 +0000
>> ++++ jsoncpp-src-0.6.0-rc2/include/json/reader.h        2014-08-27
>> 06:39:32.000000000 +0000
>> +@@ -7,7 +7,7 @@
>> + # define CPPTL_JSON_READER_H_INCLUDED
>> +
>> + #if !defined(JSON_IS_AMALGAMATION)
>> +-# include "features.h"
>> ++# include "json-features.h"
>> + # include "value.h"
>> + #endif // if !defined(JSON_IS_AMALGAMATION)
>> + # include <deque>
>> +Index: jsoncpp-src-0.6.0-rc2/include/json/features.h
>> +===================================================================
>> +--- jsoncpp-src-0.6.0-rc2.orig/include/json/features.h 2011-05-02
>> 21:46:58.000000000 +0000
>> ++++ /dev/null  1970-01-01 00:00:00.000000000 +0000
>> +@@ -1,49 +0,0 @@
>> +-// Copyright 2007-2010 Baptiste Lepilleur
>> +-// Distributed under MIT license, or public domain if desired and
>> +-// recognized in your jurisdiction.
>> +-// See file LICENSE for detail or copy at
>> http://jsoncpp.sourceforge.net/LICENSE
>> +-
>> +-#ifndef CPPTL_JSON_FEATURES_H_INCLUDED
>> +-# define CPPTL_JSON_FEATURES_H_INCLUDED
>> +-
>> +-#if !defined(JSON_IS_AMALGAMATION)
>> +-# include "forwards.h"
>> +-#endif // if !defined(JSON_IS_AMALGAMATION)
>> +-
>> +-namespace Json {
>> +-
>> +-   /** \brief Configuration passed to reader and writer.
>> +-    * This configuration object can be used to force the Reader or
>> Writer
>> +-    * to behave in a standard conforming way.
>> +-    */
>> +-   class JSON_API Features
>> +-   {
>> +-   public:
>> +-      /** \brief A configuration that allows all features and assumes
>> all strings are UTF-8.
>> +-       * - C & C++ comments are allowed
>> +-       * - Root object can be any JSON value
>> +-       * - Assumes Value strings are encoded in UTF-8
>> +-       */
>> +-      static Features all();
>> +-
>> +-      /** \brief A configuration that is strictly compatible with the
>> JSON specification.
>> +-       * - Comments are forbidden.
>> +-       * - Root object must be either an array or an object value.
>> +-       * - Assumes Value strings are encoded in UTF-8
>> +-       */
>> +-      static Features strictMode();
>> +-
>> +-      /** \brief Initialize the configuration like
>> JsonConfig::allFeatures;
>> +-       */
>> +-      Features();
>> +-
>> +-      /// \c true if comments are allowed. Default: \c true.
>> +-      bool allowComments_;
>> +-
>> +-      /// \c true if root must be either an array or an object value.
>> Default: \c false.
>> +-      bool strictRoot_;
>> +-   };
>> +-
>> +-} // namespace Json
>> +-
>> +-#endif // CPPTL_JSON_FEATURES_H_INCLUDED
>> diff --git a/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
>> b/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
>> new file mode 100644
>> index 0000000..17947e3
>> --- /dev/null
>> +++ b/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.7.7.bb
>> @@ -0,0 +1,21 @@
>> +SUMMARY = "JSON C++ lib used to read and write json file."
>> +DESCRIPTION = "Jsoncpp is an implementation of a JSON (http://json.org)
>> reader \
>> +               and writer in C++. JSON (JavaScript Object Notation) is a
>> \
>> +               lightweight data-interchange format. It is easy for humans
>> to \
>> +               read and write. It is easy for machines to parse and
>> generate."
>> +
>> +HOMEPAGE = "http://sourceforge.net/projects/jsoncpp/"
>> +
>> +SECTION = "libs"
>> +
>> +LICENSE = "MIT"
>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=c56ee55c03a55f8105b969d8270632ce"
>> +
>> +SRCREV = "d8cd848ede1071a25846cd90b4fddf269d868ff1"
>> +SRC_URI = "git://github.com/open-source-parsers/jsoncpp \
>> +"
>> +
>> +S = "${WORKDIR}/git"
>> +inherit cmake
>> +
>> +EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"
>
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes
  2016-11-26  0:15   ` Martin Jansa
  2016-11-26  7:42     ` Koen Kooi
@ 2016-11-29  0:57     ` Khem Raj
  2016-12-15  9:53       ` Martin Jansa
  1 sibling, 1 reply; 73+ messages in thread
From: Khem Raj @ 2016-11-29  0:57 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi


> On Nov 25, 2016, at 4:15 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> On Wed, Nov 23, 2016 at 01:21:28AM -0800, Khem Raj wrote:
>> 16.x is the default since its the latest released version
>> 
>> remove obsoleted xbmc recipes
>> rename to recipes-mediacenter
>> +S = "${WORKDIR}/git"
>> +
>> +# breaks compilation
>> +ASNEEDED = ""
>> +
>> +ACCEL ?= ""
>> +ACCEL_x86 = "vaapi vdpau"
>> +ACCEL_x86-64 = "vaapi vdpau"
>> +
>> +PACKAGECONFIG ??= "${ACCEL}"
>> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)}"
>> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', ' opengl', ' openglesv2', d)}"
>> +
>> +PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,"
>> +PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,virtual/egl"
>> +PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
>> +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
>> +PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
>> +PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
>> +PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
> 
> Did I overlook libva recipe somewhere?
> 
> It doesn't even start building for qemux86* because of this libva and
> for qemuarm it fails to configure:
> http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html

Sent a patch for libva which should help with x86 issue. For arm issue, I see that error is due to java installation on build machine. I have sent another patch for kodi-17
to fix build for qemuarm but thats not needed for kodi-16 which is default.

| /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/bin/swig -w401 -c++ -o xbmc/interfaces/python/generated/AddonModuleXbmc.xml -xml -I./xbmc -xmllang python xbmc/interfaces/swig/AddonModuleXbmc.i
| # Work around potential groovy bug reported at: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733234
| /usr/bin/java -cp "./tools/codegenerator/groovy/groovy-all-2.4.4.jar:./tools/codegenerator/groovy/commons-lang-2.6.jar:./tools/codegenerator:xbmc/interfaces/python" \
|           org.codehaus.groovy.tools.FileSystemCompiler -d ./tools/codegenerator ./tools/codegenerator/Helper.groovy  ./tools/codegenerator/SwigTypeParser.groovy xbmc/interfaces/python/MethodType.groovy xbmc/interfaces/python/PythonTools.groovy
| Error occurred during initialization of VM
| Could not reserve enough space for object heap
| Error: Could not create the Java Virtual Machine.
| Error: A fatal exception has occurred. Program will exit.
| codegenerator.mk:44: recipe for target 'xbmc/interfaces/python/generated/AddonModuleXbmc.cpp' failed
| make: *** [xbmc/interfaces/python/generated/AddonModuleXbmc.cpp] Error 1




> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes
  2016-11-29  0:57     ` Khem Raj
@ 2016-12-15  9:53       ` Martin Jansa
  0 siblings, 0 replies; 73+ messages in thread
From: Martin Jansa @ 2016-12-15  9:53 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

[-- Attachment #1: Type: text/plain, Size: 4034 bytes --]

On Mon, Nov 28, 2016 at 04:57:31PM -0800, Khem Raj wrote:
> 
> > On Nov 25, 2016, at 4:15 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> > 
> > On Wed, Nov 23, 2016 at 01:21:28AM -0800, Khem Raj wrote:
> >> 16.x is the default since its the latest released version
> >> 
> >> remove obsoleted xbmc recipes
> >> rename to recipes-mediacenter
> >> +S = "${WORKDIR}/git"
> >> +
> >> +# breaks compilation
> >> +ASNEEDED = ""
> >> +
> >> +ACCEL ?= ""
> >> +ACCEL_x86 = "vaapi vdpau"
> >> +ACCEL_x86-64 = "vaapi vdpau"
> >> +
> >> +PACKAGECONFIG ??= "${ACCEL}"
> >> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)}"
> >> +PACKAGECONFIG_append += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', ' opengl', ' openglesv2', d)}"
> >> +
> >> +PACKAGECONFIG[opengl] = "--enable-gl,--enable-gles,"
> >> +PACKAGECONFIG[openglesv2] = "--enable-gles,--enable-gl,virtual/egl"
> >> +PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
> >> +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
> >> +PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
> >> +PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,libxinerama libxmu libxrandr libxtst"
> >> +PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
> > 
> > Did I overlook libva recipe somewhere?
> > 
> > It doesn't even start building for qemux86* because of this libva and
> > for qemuarm it fails to configure:
> > http://lists.openembedded.org/pipermail/openembedded-devel/2016-November/110050.html
> 
> Sent a patch for libva which should help with x86 issue. For arm issue, I see that error is due to java installation on build machine. I have sent another patch for kodi-17
> to fix build for qemuarm but thats not needed for kodi-16 which is default.

kodi-16 is still default, but fails because of this java issue :/

There is also another issue with kodi-17 detected in qemux86* builds:

ERROR: Following files are installed in sysroot, but not tracked by sstate:
qemux86-64/usr/include/guid.h
qemux86-64/usr/lib/libcrossguid.a
INFO: Output written in: /home/jenkins/oe/world/shr-core/tmp-glibc/sysroot.cruft.1481664087

I believe both these files are installed by kodi, this looks suspicious:
    make -C tools/depends/target/crossguid PREFIX=${STAGING_DIR_HOST}${prefix}

> 
> | /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/bin/swig -w401 -c++ -o xbmc/interfaces/python/generated/AddonModuleXbmc.xml -xml -I./xbmc -xmllang python xbmc/interfaces/swig/AddonModuleXbmc.i
> | # Work around potential groovy bug reported at: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733234
> | /usr/bin/java -cp "./tools/codegenerator/groovy/groovy-all-2.4.4.jar:./tools/codegenerator/groovy/commons-lang-2.6.jar:./tools/codegenerator:xbmc/interfaces/python" \
> |           org.codehaus.groovy.tools.FileSystemCompiler -d ./tools/codegenerator ./tools/codegenerator/Helper.groovy  ./tools/codegenerator/SwigTypeParser.groovy xbmc/interfaces/python/MethodType.groovy xbmc/interfaces/python/PythonTools.groovy
> | Error occurred during initialization of VM
> | Could not reserve enough space for object heap
> | Error: Could not create the Java Virtual Machine.
> | Error: A fatal exception has occurred. Program will exit.
> | codegenerator.mk:44: recipe for target 'xbmc/interfaces/python/generated/AddonModuleXbmc.cpp' failed
> | make: *** [xbmc/interfaces/python/generated/AddonModuleXbmc.cpp] Error 1
> 
> 
> 
> 
> > -- 
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 10/49] libvdpau: Add recipe
  2016-11-23  9:21 ` [meta-oe][PATCH 10/49] libvdpau: Add recipe Khem Raj
@ 2016-12-17 23:53   ` Martin Jansa
  2016-12-19 21:10     ` Khem Raj
  0 siblings, 1 reply; 73+ messages in thread
From: Martin Jansa @ 2016-12-17 23:53 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

directfb seems to autodetect this as well:

directfb-1.7.7: directfb rdepends on libvdpau, but it isn't a build
dependency, missing libvdpau in DEPENDS or PACKAGECONFIG? [build-deps]
directfb-1.7.7: directfb rdepends on libx11, but it isn't a build
dependency, missing libx11 in DEPENDS or PACKAGECONFIG? [build-deps]
directfb-1.7.7: directfb rdepends on libxau, but it isn't a build
dependency, missing libxau in DEPENDS or PACKAGECONFIG? [build-deps]
directfb-1.7.7: directfb rdepends on libxcb, but it isn't a build
dependency, missing libxcb in DEPENDS or PACKAGECONFIG? [build-deps]
directfb-1.7.7: directfb rdepends on libxdmcp, but it isn't a build
dependency, missing libxdmcp in DEPENDS or PACKAGECONFIG? [build-deps]
directfb-1.7.7: directfb rdepends on libxext, but it isn't a build
dependency, missing libxext in DEPENDS or PACKAGECONFIG? [build-deps]


On Wed, Nov 23, 2016 at 10:21 AM, Khem Raj <raj.khem@gmail.com> wrote:

> From: Koen Kooi <koen@dominion.thruhere.net>
>
> Needed for x86 machines
>
> Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta-oe/recipes-graphics/vdpau/libvdpau_git.bb | 23
> +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>  create mode 100644 meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
>
> diff --git a/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
> b/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
> new file mode 100644
> index 0000000..31f4df4
> --- /dev/null
> +++ b/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
> @@ -0,0 +1,23 @@
> +SUMMARY = "Video Decode and Presentation API for UNIX"
> +
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=83af8811a28727a13f04132cc33b7f58"
> +
> +DEPENDS = "virtual/libx11 libxext dri2proto"
> +
> +PV = "1.1.1+git${SRCPV}"
> +
> +SRCREV = "a21bf7aa438f5dd40d0a300a3167aa3d6f26dccc"
> +SRC_URI = "git://anongit.freedesktop.org/vdpau/libvdpau"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit autotools pkgconfig
> +
> +do_install_append() {
> +    rm -f ${D}${libdir}/*/*.la
> +}
> +
> +FILES_${PN}-dbg += "${libdir}/vdpau/.debug"
> +FILES_${PN}-dev += "${libdir}/vdpau/lib*${SOLIBSDEV}"
> +FILES_${PN} += "${libdir}/vdpau/lib*${SOLIBS}"
> --
> 2.10.2
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 73+ messages in thread

* Re: [meta-oe][PATCH 10/49] libvdpau: Add recipe
  2016-12-17 23:53   ` Martin Jansa
@ 2016-12-19 21:10     ` Khem Raj
  0 siblings, 0 replies; 73+ messages in thread
From: Khem Raj @ 2016-12-19 21:10 UTC (permalink / raw)
  To: openembeded-devel; +Cc: Koen Kooi

On Sat, Dec 17, 2016 at 3:53 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> directfb seems to autodetect this as well:
>
> directfb-1.7.7: directfb rdepends on libvdpau, but it isn't a build
> dependency, missing libvdpau in DEPENDS or PACKAGECONFIG? [build-deps]
> directfb-1.7.7: directfb rdepends on libx11, but it isn't a build
> dependency, missing libx11 in DEPENDS or PACKAGECONFIG? [build-deps]
> directfb-1.7.7: directfb rdepends on libxau, but it isn't a build
> dependency, missing libxau in DEPENDS or PACKAGECONFIG? [build-deps]
> directfb-1.7.7: directfb rdepends on libxcb, but it isn't a build
> dependency, missing libxcb in DEPENDS or PACKAGECONFIG? [build-deps]
> directfb-1.7.7: directfb rdepends on libxdmcp, but it isn't a build
> dependency, missing libxdmcp in DEPENDS or PACKAGECONFIG? [build-deps]
> directfb-1.7.7: directfb rdepends on libxext, but it isn't a build
> dependency, missing libxext in DEPENDS or PACKAGECONFIG? [build-deps]
>

sent a patch for this


^ permalink raw reply	[flat|nested] 73+ messages in thread

end of thread, other threads:[~2016-12-19 21:11 UTC | newest]

Thread overview: 73+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-23  9:21 [meta-oe][PATCH 01/49] libqmi: Fix build with clang Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 02/49] meta_oe_security_flags: Disable PIE for s3c64xx-gpio/s3c24xx-gpio/cpufrequtils Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 03/49] boinc: Add recipe for boinc-client Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 04/49] libplist: Remove rpaths surgically Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 05/49] meta_oe_security_flags.inc: Add libcec, libmodplug, libcdio Khem Raj
2016-11-23  9:21 ` [meta-multimedia][PATCH 06/49] dcadec, libsquish: Add new recipes Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 07/49] libcec: Update to 3.1.0+ Khem Raj
2016-11-23  9:21 ` [meta-multimedia][PATCH 08/49] kodi: Add krypton/17.x Jarvis/16.x recipes Khem Raj
2016-11-26  0:15   ` Martin Jansa
2016-11-26  7:42     ` Koen Kooi
2016-11-28 17:48       ` Khem Raj
2016-11-29  0:57     ` Khem Raj
2016-12-15  9:53       ` Martin Jansa
2016-11-23  9:21 ` [meta-oe][PATCH 09/49] fwts: Update to 16.09 release Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 10/49] libvdpau: Add recipe Khem Raj
2016-12-17 23:53   ` Martin Jansa
2016-12-19 21:10     ` Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 11/49] krb5: Add -fPIC to compile flags Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 12/49] Disable PIE for libvdpau Khem Raj
2016-11-23  9:21 ` [meta-multimedia][PATCH 13/49] kodi: Fix build with pic on x86_64 Khem Raj
2016-11-23  9:21 ` [meta-multimedia][PATCH 14/49] kodi-17: Add packageconfig for lcms support Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 15/49] samba: Fix build with musl Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 16/49] lockdev: Pretend GNU libc on musl Khem Raj
2016-11-23  9:21 ` [meta-multimedia][PATCH 17/49] kodi-17: Fix build with musl Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH V2 18/49] breakpad: Upgrade to latest Khem Raj
2016-11-26  0:12   ` Martin Jansa
2016-11-26  6:09     ` Khem Raj
2016-11-23  9:21 ` [meta-filesystems][PATCH 19/49] xfsprogs: Upgrade 3.2.3 -> 4.8.0 Khem Raj
2016-11-25  0:31   ` Martin Jansa
2016-11-25 10:41     ` Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 20/49] arno-iptables-firewall: Add recipe Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 21/49] dibbler: " Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 22/49] ez-ipupdate: " Khem Raj
2016-11-23  9:21 ` [meta-multimedia][PATCH 23/49] miniupnpd: " Khem Raj
2016-11-26  0:16   ` Martin Jansa
2016-11-26  6:00     ` Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 24/49] inetutils: Disable rsh, rcp, rlogin on musl Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 25/49] ssmtp: Add recipe Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 26/49] ne10: Update to latest Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 27/49] libgit2: Update to 0.24.3 Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 28/49] openldap: Fix Build error due to missing -fPIC Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 29/49] dante: Add recipe for 1.4.1 Khem Raj
2016-11-26  0:16   ` Martin Jansa
2016-11-26  6:03     ` Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 30/49] networkmanager-openvpn: Update 1.0.8->1.2.6 Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 31/49] openobex,obexftp: Update recipes Khem Raj
2016-11-26  0:17   ` Martin Jansa
2016-11-26  4:57     ` Khem Raj
2016-11-26  6:02       ` Khem Raj
2016-11-26  9:08         ` Martin Jansa
2016-11-28 19:38           ` Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 32/49] md5deep: Fix build with clang Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 33/49] dialog: Update 1.3-20160424 -> 1.3-20160828 Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 34/49] ipsec-tools: Fix build with clang Khem Raj
2016-11-23  9:21 ` [meta-networking][PATCH 35/49] crda: " Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 36/49] obex-data-server: Fix build with new openobex version Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 37/49] flashrom: Remove redundant const qualifier Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 38/49] fribidi: Fix build with security flags turned on Khem Raj
2016-11-23  9:21 ` [meta-oe][PATCH 39/49] libmicrohttpd: Upgrade to 0.9.52 Khem Raj
2016-11-23  9:22 ` [meta-oe][PATCH 40/49] jsoncpp: Add new recipe Khem Raj
2016-11-28 10:46   ` Piotr Lewicki
2016-11-28 21:10     ` Khem Raj
2016-11-23  9:22 ` [meta-oe][PATCH 41/49] jsonrpc: Add recipe Khem Raj
2016-11-23  9:22 ` [meta-oe][PATCH 42/49] libmad: Fix build with clang Khem Raj
2016-11-23  9:22 ` [meta-oe][PATCH 43/49] modemmanager: " Khem Raj
2016-11-23  9:22 ` [meta-oe][PATCH 44/49] libcec: Add missing dep on ncurses Khem Raj
2016-11-23  9:22 ` [meta-multimedia][PATCH 45/49] kodi-17: Update to latest Khem Raj
2016-11-23  9:22 ` [meta-multimedia][PATCH 46/49] tvheadend: Update to 4.0.9 Khem Raj
2016-11-26  0:18   ` Martin Jansa
2016-11-26  4:56     ` Khem Raj
2016-11-23  9:22 ` [meta-networking][PATCH 47/49] memcached: Update to 1.4.33 Khem Raj
2016-11-23  9:22 ` [meta-multimedia][PATCH 48/49] vlc: Add packageconfig for vdpau Khem Raj
2016-11-23  9:22 ` [meta-oe][PATCH 49/49] mpv: Add libvdpau to DEPENDS Khem Raj

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox