All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [git commit] package/upmpdcli: add patch to fix jsoncpp detection
@ 2016-09-17 11:35 Thomas Petazzoni
  0 siblings, 0 replies; only message in thread
From: Thomas Petazzoni @ 2016-09-17 11:35 UTC (permalink / raw
  To: buildroot

commit: https://git.buildroot.net/buildroot/commit/?id=af4d2b27d61d2ef232da3371772d1b2f99d3d40d
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

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>
---
 package/upmpdcli/0001-fix-jsoncpp-detection.patch | 90 +++++++++++++++++++++++
 package/upmpdcli/upmpdcli.mk                      |  3 +
 2 files changed, 93 insertions(+)

diff --git a/package/upmpdcli/0001-fix-jsoncpp-detection.patch b/package/upmpdcli/0001-fix-jsoncpp-detection.patch
new file mode 100644
index 0000000..69a9a0e
--- /dev/null
+++ b/package/upmpdcli/0001-fix-jsoncpp-detection.patch
@@ -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
+
diff --git a/package/upmpdcli/upmpdcli.mk b/package/upmpdcli/upmpdcli.mk
index 85b78fe..b70f413 100644
--- a/package/upmpdcli/upmpdcli.mk
+++ b/package/upmpdcli/upmpdcli.mk
@@ -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

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2016-09-17 11:35 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-17 11:35 [Buildroot] [git commit] package/upmpdcli: add patch to fix jsoncpp detection Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.