summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools/jsonrpc
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2016-11-21 12:11:40 -0800
committerMartin Jansa <Martin.Jansa@gmail.com>2016-11-26 01:07:21 +0100
commitfcc7a4d97c401cc3fb8464a4e5850b232d864190 (patch)
tree3d3c289c37cf47bfa1dde29acc15321f94e5d513 /meta-oe/recipes-devtools/jsonrpc
parent34baf3328fea094184c58e566f49ab32ad2f0470 (diff)
downloadmeta-openembedded-fcc7a4d97c401cc3fb8464a4e5850b232d864190.tar.gz
jsonrpc: Add recipe
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-devtools/jsonrpc')
-rw-r--r--meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch77
-rw-r--r--meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch33
-rw-r--r--meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch34
-rw-r--r--meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb30
4 files changed, 174 insertions, 0 deletions
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 000000000..748e4da1a
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
@@ -0,0 +1,77 @@
1From ac61124df17ab76527508bbb9a3115d4d6cc1af6 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 21 Nov 2016 11:26:26 -0800
4Subject: [PATCH] cmake: replace hardcoded lib/${CMAKE_LIBRARY_PATH} with
5 {CMAKE_INSTALL_LIBDIR}
6
7Fixes
8| CMake Error at src/jsonrpccpp/CMakeLists.txt:207 (install):
9| install TARGETS given unknown argument "/lib".
10
11and
12
13Wrong install paths during cross compile
14
15Signed-off-by: Khem Raj <raj.khem@gmail.com>
16---
17 src/jsonrpccpp/CMakeLists.txt | 8 ++++----
18 src/stubgenerator/CMakeLists.txt | 6 +++---
19 2 files changed, 7 insertions(+), 7 deletions(-)
20
21diff --git a/src/jsonrpccpp/CMakeLists.txt b/src/jsonrpccpp/CMakeLists.txt
22index e4a1eb5..13f9056 100644
23--- a/src/jsonrpccpp/CMakeLists.txt
24+++ b/src/jsonrpccpp/CMakeLists.txt
25@@ -205,15 +205,15 @@ if (WIN32)
26 endif()
27
28 install(TARGETS ${ALL_LIBS}
29- LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
30- ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
31+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
32+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
33 RUNTIME DESTINATION bin
34 )
35
36 #set pkg-config
37 get_filename_component(FULL_PATH_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} ABSOLUTE)
38 set(FULL_PATH_INCLUDEDIR "${FULL_PATH_INSTALL_PREFIX}/include")
39-set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/lib/${CMAKE_LIBRARY_PATH}")
40+set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
41
42 CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-client.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc)
43 CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-server.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc)
44@@ -223,6 +223,6 @@ INSTALL(FILES
45 "${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc"
46 "${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc"
47 "${CMAKE_BINARY_DIR}/libjsonrpccpp-common.pc"
48- DESTINATION "lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}/pkgconfig")
49+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
50
51
52diff --git a/src/stubgenerator/CMakeLists.txt b/src/stubgenerator/CMakeLists.txt
53index f9dbe4c..b57b0fe 100644
54--- a/src/stubgenerator/CMakeLists.txt
55+++ b/src/stubgenerator/CMakeLists.txt
56@@ -58,15 +58,15 @@ CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake/libjsonrpccpp-stub.pc.cmake ${CMAKE_BIN
57
58 INSTALL(FILES
59 "${CMAKE_BINARY_DIR}/libjsonrpccpp-stub.pc"
60- DESTINATION "lib/${CMAKE_LIBRARY_PATH}/pkgconfig")
61+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
62
63 install(DIRECTORY ${CMAKE_SOURCE_DIR}/src/stubgenerator/
64 DESTINATION include/jsonrpccpp/stubgen
65 FILES_MATCHING PATTERN "*.h")
66
67 install(TARGETS ${ALL_LIBS} jsonrpcstub
68- LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
69- ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
70+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
71+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
72 RUNTIME DESTINATION bin
73 )
74
75--
762.10.2
77
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 000000000..d21e97950
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
@@ -0,0 +1,33 @@
1From 9500f12f5d827840634311d6ca972d9551211e4d Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 21 Nov 2016 01:00:51 -0800
4Subject: [PATCH] filedescriptorclient: Typecast min() arguments correctly
5
6Fixes
7
8| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
9p/client/connectors/filedescriptorclient.cpp:47:92: note: deduced conflicting types for parameter 'co
10nst _Tp' ('unsigned int' and 'long unsigned int')
11| ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
12
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14---
15 src/jsonrpccpp/client/connectors/filedescriptorclient.cpp | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
19index 77aac7e..6325b5c 100644
20--- a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
21+++ b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
22@@ -43,7 +43,7 @@ void FileDescriptorClient::SendRPCMessage(const std::string& message,
23 string toSend = message;
24 do
25 {
26- ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
27+ ssize_t byteWritten = write(outputfd, toSend.c_str(), min((long unsigned int)toSend.size(), MAX_WRITE_SIZE));
28 if (byteWritten < 1)
29 throw JsonRpcException(Errors::ERROR_CLIENT_CONNECTOR,
30 "Unknown error occured while writing to the output file descriptor");
31--
322.10.2
33
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 000000000..3b9068a7d
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
@@ -0,0 +1,34 @@
1From c7aad10628949e126f50e3264b5bc7eb417347c6 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 21 Nov 2016 01:25:10 -0800
4Subject: [PATCH] filedescriptorserver: Include sys/select.h before other
5 headers
6
7Fixes errors e.g.
8| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
9p/server/connectors/filedescriptorserver.h:63:7: error: unknown type name 'fd_set'
10| fd_set read_fds;
11| ^
12
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14---
15 src/jsonrpccpp/server/connectors/filedescriptorserver.cpp | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
19index 9d74223..8e019ca 100644
20--- a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
21+++ b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
22@@ -7,8 +7,8 @@
23 * @license See attached LICENSE.txt
24 ************************************************************************/
25
26-#include "filedescriptorserver.h"
27 #include <sys/select.h>
28+#include "filedescriptorserver.h"
29 #include <sys/types.h>
30 #include <sys/stat.h>
31 #include <unistd.h>
32--
332.10.2
34
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 000000000..3a43f90ff
--- /dev/null
+++ b/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb
@@ -0,0 +1,30 @@
1SUMMARY = "C++ framework for json-rpc 1.0 and 2.0"
2DESCRIPTION = "JsonRpc-Cpp is an OpenSource implementation of JSON-RPC \
3 protocol in C++. JSON-RPC is a lightweight remote procedure \
4 call protocol similar to XML-RPC."
5HOMEPAGE = "https://github.com/cinemast/libjson-rpc-cpp"
6
7LICENSE = "MIT"
8LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ee72d601854d5d2a065cf642883c489b"
9
10PV = "0.7.0+git${SRCPV}"
11
12SRC_URI = "git://github.com/cinemast/libjson-rpc-cpp \
13 file://0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch \
14 file://0001-filedescriptorclient-Typecast-min-arguments-correctl.patch \
15 file://0001-filedescriptorserver-Include-sys-select.h-before-oth.patch \
16"
17SRCREV = "ccbdb41388bdd929828941652da816bf52a0580e"
18
19SECTION = "libs"
20
21DEPENDS = "curl jsoncpp libmicrohttpd"
22
23S = "${WORKDIR}/git"
24
25inherit cmake
26
27EXTRA_OECMAKE += "-DCOMPILE_TESTS=NO -DCOMPILE_STUBGEN=NO -DCOMPILE_EXAMPLES=NO \
28 -DBUILD_SHARED_LIBS=YES -DBUILD_STATIC_LIBS=YES \
29 -DCMAKE_LIBRARY_PATH=${libdir} \
30"