package/upmpdcli: add patch to fix jsoncpp detection
Although jsoncpp is present, the build system of upmpdcli does not detect it. The default installation path for the header files of jsoncpp is {prefix}/json, but some systems (Debian) prefers to install the headers in {prefix}/jsoncpp/json. The build system only checks for the header files in {prefix}/jsoncpp/json, so jsoncpp is not found. This patch from upstream handles both cases now when checking for the jsoncpp library. The patch is squashed of two commits from upstream: 1/ aba96db0cfe8a2e5c825f4448c0ad184e21b50e1 2/ ce144f19a8c2e8c1e0ec3fe53699e874e5eb43fe Fixes: http://autobuild.buildroot.net/results/5bc6c558fccea0e1e1936894ce372f2b7b8ecac2 http://autobuild.buildroot.net/results/9c2d3892f17c240c44f7255d821d66acbed361f0 http://autobuild.buildroot.net/results/4d22729535ca4e6acbb48a25145611bb49c10149 http://autobuild.buildroot.net/results/fda321774c3eb225f966dd9f83def5329b703a03 http://autobuild.buildroot.net/results/f5eb306b0032e830f7f72ce80e318aa11774a5d1 .. and many more! Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
bf51bff138
commit
af4d2b27d6
90
package/upmpdcli/0001-fix-jsoncpp-detection.patch
Normal file
90
package/upmpdcli/0001-fix-jsoncpp-detection.patch
Normal file
@ -0,0 +1,90 @@
|
||||
From 25762953c019ca0c5a047a5fa28f1fe6c78c731a Mon Sep 17 00:00:00 2001
|
||||
From: Jean-Francois Dockes <jf@dockes.org>
|
||||
Date: Sun, 11 Sep 2016 13:43:28 +0200
|
||||
Subject: [PATCH] fix jsoncpp detection
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The default installation path for the header files is {prefix}/json, but some
|
||||
system prefers to install the headers in {prefix}/jsoncpp/json.
|
||||
|
||||
This patch from upstream handles both cases now when checking for the jsoncpp
|
||||
library.
|
||||
|
||||
The patch is squashed of two commits from upstream:
|
||||
1/ aba96db0cfe8a2e5c825f4448c0ad184e21b50e1
|
||||
2/ ce144f19a8c2e8c1e0ec3fe53699e874e5eb43fe
|
||||
|
||||
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
|
||||
---
|
||||
configure.ac | 8 +++++++-
|
||||
src/config.h.in | 6 ++++++
|
||||
src/mediaserver/cdplugins/plgwithslave.cxx | 5 +++++
|
||||
3 files changed, 18 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f191ad7..108dcce 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -43,9 +43,15 @@ SCCTL_LIBS=$LIBS
|
||||
AC_CHECK_LIB([microhttpd], [MHD_queue_response], [], [])
|
||||
|
||||
AC_LANG_PUSH([C++])
|
||||
+
|
||||
+AC_CHECK_HEADERS(json/json.h jsoncpp/json/json.h)
|
||||
LIBS="$LIBS -ljsoncpp"
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM(
|
||||
- [#include <jsoncpp/json/json.h>], [Json::Features dummy])],
|
||||
+ [[#ifdef HAVE_JSONCPP_JSON_JSON_H
|
||||
+ #include <jsoncpp/json/json.h>
|
||||
+ #else
|
||||
+ #include <json/json.h>
|
||||
+ #endif]], [Json::Features dummy])],
|
||||
[HAVE_JSONCPP=1],
|
||||
[AC_MSG_ERROR([libjsoncpp not found.])])
|
||||
AC_LANG_POP
|
||||
diff --git a/src/config.h.in b/src/config.h.in
|
||||
index 1350308..0a33e15 100644
|
||||
--- a/src/config.h.in
|
||||
+++ b/src/config.h.in
|
||||
@@ -3,6 +3,12 @@
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#undef HAVE_INTTYPES_H
|
||||
|
||||
+/* Define to 1 if you have the <jsoncpp/json/json.h> header file. */
|
||||
+#undef HAVE_JSONCPP_JSON_JSON_H
|
||||
+
|
||||
+/* Define to 1 if you have the <json/json.h> header file. */
|
||||
+#undef HAVE_JSON_JSON_H
|
||||
+
|
||||
/* Define to 1 if you have the `microhttpd' library (-lmicrohttpd). */
|
||||
#undef HAVE_LIBMICROHTTPD
|
||||
|
||||
diff --git a/src/mediaserver/cdplugins/plgwithslave.cxx b/src/mediaserver/cdplugins/plgwithslave.cxx
|
||||
index 04f0544..545805c 100644
|
||||
--- a/src/mediaserver/cdplugins/plgwithslave.cxx
|
||||
+++ b/src/mediaserver/cdplugins/plgwithslave.cxx
|
||||
@@ -14,6 +14,7 @@
|
||||
* Free Software Foundation, Inc.,
|
||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
+#include "config.h"
|
||||
|
||||
#include "plgwithslave.hxx"
|
||||
|
||||
@@ -25,7 +26,11 @@
|
||||
#include <string.h>
|
||||
#include <upnp/upnp.h>
|
||||
#include <microhttpd.h>
|
||||
+#ifdef HAVE_JSONCPP_JSON_JSON_H
|
||||
#include <jsoncpp/json/json.h>
|
||||
+#else
|
||||
+#include <json/json.h>
|
||||
+#endif
|
||||
|
||||
#include "cmdtalk.h"
|
||||
#include "pathut.h"
|
||||
--
|
||||
2.9.3
|
||||
|
@ -9,6 +9,9 @@ UPMPDCLI_SITE = http://www.lesbonscomptes.com/upmpdcli/downloads
|
||||
UPMPDCLI_LICENSE = GPLv2+
|
||||
UPMPDCLI_LICENSE_FILES = COPYING
|
||||
UPMPDCLI_DEPENDENCIES = libmpdclient libupnpp libmicrohttpd jsoncpp
|
||||
# touching configure.ac in
|
||||
# 0001-fix-jsoncpp-detection.patch
|
||||
UPMPDCLI_AUTORECONF = YES
|
||||
|
||||
ifeq ($(BR2_STATIC_LIBS),y)
|
||||
# Upmpdcli forgets to take the dependencies of libupnpp into
|
||||
|
Loading…
Reference in New Issue
Block a user