Update buidlroot to version 2016.08.1

This commit is contained in:
2016-11-16 22:07:29 +01:00
parent 807ab03547
commit a1061efbc2
3636 changed files with 59539 additions and 25783 deletions

View File

@@ -0,0 +1,34 @@
From b08fe001e3d3f3564ef298e62342f07080807f7a Mon Sep 17 00:00:00 2001
From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Date: Wed, 28 Oct 2015 15:45:10 +0000
Subject: [PATCH] Let the shared and the static library have the same name
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The will be differentiated by the extension (.so or .a).
Fetched from:
https://github.com/vriera/yajl/commit/6d09f11b8fd358cab0e31b965327e64a599f9ce9
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
---
src/CMakeLists.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 99cf9e9..1a900d3 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -36,6 +36,7 @@ SET (shareDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/share/pkgconfig)
SET(LIBRARY_OUTPUT_PATH ${libDir})
ADD_LIBRARY(yajl_s STATIC ${SRCS} ${HDRS} ${PUB_HDRS})
+SET_TARGET_PROPERTIES(yajl_s PROPERTIES OUTPUT_NAME yajl)
ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS})
--
2.8.0

View File

@@ -1,24 +0,0 @@
[PATCH] fix json_reformat linking on uClibc
json_reformat calls yajl_gen_* functions, which internally use isnan() /
isinf(). On Glibc, these are provided by libc, but on uClibc you need to
link with -lm (like the spec says), so ensure we do so.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
reformatter/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: yajl-2.0.2/reformatter/CMakeLists.txt
===================================================================
--- yajl-2.0.2.orig/reformatter/CMakeLists.txt
+++ yajl-2.0.2/reformatter/CMakeLists.txt
@@ -26,7 +26,7 @@
ADD_EXECUTABLE(json_reformat ${SRCS})
-TARGET_LINK_LIBRARIES(json_reformat yajl_s)
+TARGET_LINK_LIBRARIES(json_reformat yajl_s m)
# copy the binary into the output directory
GET_TARGET_PROPERTY(binPath json_reformat LOCATION)

View File

@@ -1,8 +1,10 @@
From bb4fb7ff71fd6cadd9c1bf8716845a91e5998c0c Mon Sep 17 00:00:00 2001
From: Samuel Martin <s.martin49@gmail.com>
Date: Sun, 31 Aug 2014 00:39:11 +0200
Subject: [PATCH 2/2] cmake: disable shared library build when
BUILD_SHARED_LIBS is off
From b3cddf92adacfe5ca40574afb3e323cc7cdebc5c Mon Sep 17 00:00:00 2001
From: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Date: Tue, 2 Feb 2016 15:46:09 +0100
Subject: [PATCH] cmake: Add shared library conditonnal build
When BUILD_SHARED_LIBS is off, you don't want to build the shared
library.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
@@ -10,7 +12,7 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
1 file changed, 4 insertions(+)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index e36b736..6a24424 100644
index 99cf9e9..9e9c77d 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -37,6 +37,7 @@ SET(LIBRARY_OUTPUT_PATH ${libDir})
@@ -29,16 +31,19 @@ index e36b736..6a24424 100644
#### build up an sdk as a post build step
@@ -78,7 +80,9 @@ INCLUDE_DIRECTORIES(${incDir}/..)
IF(NOT WIN32)
# at build time you may specify the cmake variable LIB_SUFFIX to handle
# 64-bit systems which use 'lib64'
+ IF(BUILD_SHARED_LIBS)
INSTALL(TARGETS yajl LIBRARY DESTINATION lib${LIB_SUFFIX})
+ ENDIF(BUILD_SHARED_LIBS)
INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX})
INSTALL(FILES ${PUB_HDRS} DESTINATION include/yajl)
INSTALL(FILES ${incDir}/yajl_version.h DESTINATION include/yajl)
@@ -77,10 +79,12 @@ INCLUDE_DIRECTORIES(${incDir}/..)
# at build time you may specify the cmake variable LIB_SUFFIX to handle
# 64-bit systems which use 'lib64'
+IF(BUILD_SHARED_LIBS)
INSTALL(TARGETS yajl
RUNTIME DESTINATION lib${LIB_SUFFIX}
LIBRARY DESTINATION lib${LIB_SUFFIX}
ARCHIVE DESTINATION lib${LIB_SUFFIX})
+ENDIF(BUILD_SHARED_LIBS)
INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX})
INSTALL(FILES ${PUB_HDRS} DESTINATION include/yajl)
INSTALL(FILES ${incDir}/yajl_version.h DESTINATION include/yajl)
--
2.1.0
2.7.0

View File

@@ -0,0 +1,127 @@
From 425b25993ef58d07aa18c5d4938876a90e22c47a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
Date: Sat, 9 Apr 2016 23:24:27 +0200
Subject: [PATCH] Link with shared libyajl in a shared build
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Building yajl in a static context fails in a parallel build:
[ 21%] Linking C executable gen-extra-close
[ 26%] Building C object src/CMakeFiles/yajl_s.dir/yajl_buf.c.o
/home/test/autobuild/instance-3/output/host/opt/ext-toolchain/bfin-uclinux/bfin-uclinux/bin/ld.real: cannot find -lyajl
Fix this issue by linking against the shared libyail in a shared build. Apply
this fix also to all other build targets who are linking against the library.
Upstream status: Pending
https://github.com/lloyd/yajl/pull/187
[Update: align with commit 302563539dacb284576a443401cdfd061eb2e1e8 and remove
linking with libm from test/api/CMakeLists.txt]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
---
example/CMakeLists.txt | 7 ++++++-
perf/CMakeLists.txt | 6 +++++-
reformatter/CMakeLists.txt | 6 +++++-
test/api/CMakeLists.txt | 6 +++++-
test/parsing/CMakeLists.txt | 6 +++++-
verify/CMakeLists.txt | 6 +++++-
6 files changed, 31 insertions(+), 6 deletions(-)
diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt
index 0a7f622..8cfcef8 100644
--- a/example/CMakeLists.txt
+++ b/example/CMakeLists.txt
@@ -20,4 +20,9 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(parse_config ${SRCS})
-TARGET_LINK_LIBRARIES(parse_config yajl_s)
+IF(BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(parse_config yajl)
+ELSE()
+ TARGET_LINK_LIBRARIES(parse_config yajl_s)
+ENDIF()
+
diff --git a/perf/CMakeLists.txt b/perf/CMakeLists.txt
index b438d7a..40ba363 100644
--- a/perf/CMakeLists.txt
+++ b/perf/CMakeLists.txt
@@ -20,4 +20,8 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(perftest ${SRCS})
-TARGET_LINK_LIBRARIES(perftest yajl_s)
+IF(BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(perftest yajl)
+ELSE()
+ TARGET_LINK_LIBRARIES(perftest yajl_s)
+ENDIF()
diff --git a/reformatter/CMakeLists.txt b/reformatter/CMakeLists.txt
index 52a9bee..7629094 100644
--- a/reformatter/CMakeLists.txt
+++ b/reformatter/CMakeLists.txt
@@ -26,7 +26,11 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(json_reformat ${SRCS})
-TARGET_LINK_LIBRARIES(json_reformat yajl_s)
+IF(BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(json_reformat yajl)
+ELSE()
+ TARGET_LINK_LIBRARIES(json_reformat yajl_s)
+ENDIF()
# In some environments, we must explicitly link libm (like qnx,
# thanks @shahbag)
diff --git a/test/api/CMakeLists.txt b/test/api/CMakeLists.txt
index cd65a54..0c9debf 100644
--- a/test/api/CMakeLists.txt
+++ b/test/api/CMakeLists.txt
@@ -21,5 +21,9 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../../${YAJL_DIST_NAME}/lib)
FOREACH (test ${TESTS})
GET_FILENAME_COMPONENT(testProg ${test} NAME_WE)
ADD_EXECUTABLE(${testProg} ${test})
- TARGET_LINK_LIBRARIES(${testProg} yajl)
+ IF(BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(${testProg} yajl)
+ ELSE()
+ TARGET_LINK_LIBRARIES(${testProg} yajl_s)
+ ENDIF()
ENDFOREACH()
diff --git a/test/parsing/CMakeLists.txt b/test/parsing/CMakeLists.txt
index c22a388..285f048 100644
--- a/test/parsing/CMakeLists.txt
+++ b/test/parsing/CMakeLists.txt
@@ -20,4 +20,8 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(yajl_test ${SRCS})
-TARGET_LINK_LIBRARIES(yajl_test yajl_s)
+IF(BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(yajl_test yajl)
+ELSE()
+ TARGET_LINK_LIBRARIES(yajl_test yajl_s)
+ENDIF()
diff --git a/verify/CMakeLists.txt b/verify/CMakeLists.txt
index 967fca1..06cb2dc 100644
--- a/verify/CMakeLists.txt
+++ b/verify/CMakeLists.txt
@@ -26,7 +26,11 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(json_verify ${SRCS})
-TARGET_LINK_LIBRARIES(json_verify yajl_s)
+IF(BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(json_verify yajl)
+ELSE()
+ TARGET_LINK_LIBRARIES(json_verify yajl_s)
+ENDIF()
# copy in the binary
GET_TARGET_PROPERTY(binPath json_verify LOCATION)
--
2.8.0

View File

@@ -0,0 +1,64 @@
From b47f6a50925efb8c8707b1faed5561a4b66ffdb1 Mon Sep 17 00:00:00 2001
From: Samuel Martin <s.martin49@gmail.com>
Date: Sun, 24 Apr 2016 18:45:27 +0200
Subject: [PATCH] Link libyajl{,_s} with libm when isnan is not brought by the
libc
Check whether isnan is provided by the libc library, otherwise make sure
yajl libraries are link against libm.
Note that setting libm as PUBLIC link libraries enable the transitivity
[1, 2]; therefore it will be automatically passed to target linking
against libyajl{,_s}.
This patch also makes sure the link libraries will appear in the yajl.pc
file.
[1] https://cmake.org/cmake/help/v3.5/command/target_link_libraries.html
[2] https://cmake.org/cmake/help/v3.5/manual/cmake-buildsystem.7.html#target-usage-requirements
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
src/CMakeLists.txt | 10 ++++++++++
src/yajl.pc.cmake | 2 +-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b487bfd..a88698f 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -35,11 +35,21 @@ SET (shareDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/share/pkgconfig)
# set the output path for libraries
SET(LIBRARY_OUTPUT_PATH ${libDir})
+SET(yajl_lib_link)
+INCLUDE(CheckLibraryExists)
+CHECK_LIBRARY_EXISTS(c isnan "" HAVE_LIBC_ISNAN)
+
+IF(NOT HAVE_LIBC_ISNAN)
+ LIST(APPEND yajl_lib_link "-lm")
+ENDIF(NOT HAVE_LIBC_ISNAN)
+
ADD_LIBRARY(yajl_s STATIC ${SRCS} ${HDRS} ${PUB_HDRS})
SET_TARGET_PROPERTIES(yajl_s PROPERTIES OUTPUT_NAME yajl)
+TARGET_LINK_LIBRARIES(yajl_s PUBLIC ${yajl_lib_link})
IF(BUILD_SHARED_LIBS)
ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS})
+TARGET_LINK_LIBRARIES(yajl PUBLIC ${yajl_lib_link})
#### setup shared library version number
SET_TARGET_PROPERTIES(yajl PROPERTIES
diff --git a/src/yajl.pc.cmake b/src/yajl.pc.cmake
index 6eaca14..4681dd4 100644
--- a/src/yajl.pc.cmake
+++ b/src/yajl.pc.cmake
@@ -6,4 +6,4 @@ Name: Yet Another JSON Library
Description: A Portable JSON parsing and serialization library in ANSI C
Version: ${YAJL_MAJOR}.${YAJL_MINOR}.${YAJL_MICRO}
Cflags: -I${dollar}{includedir}
-Libs: -L${dollar}{libdir} -lyajl
+Libs: -L${dollar}{libdir} -lyajl ${yajl_lib_link}
--
2.8.0

View File

@@ -1,3 +1,2 @@
# Locally calculated
sha256 0e78f516dc53ecce7dc073f9a9bb0343186b58ef29dcd1dad74e5e853b216dd5 yajl-2.0.4.tar.gz
sha256 0f075b5f9a38bc02077370d4d57d12e615cfaaf7f634e3f2fc746b6582854e53 6d09f11b8fd358cab0e31b965327e64a599f9ce9.patch
sha256 3fb73364a5a30efe615046d07e6db9d09fd2b41c763c5f7d3bfb121cd5c5ac5a yajl-2.1.0.tar.gz

View File

@@ -4,11 +4,10 @@
#
################################################################################
YAJL_VERSION = 2.0.4
YAJL_VERSION = 2.1.0
YAJL_SITE = $(call github,lloyd,yajl,$(YAJL_VERSION))
YAJL_INSTALL_STAGING = YES
YAJL_LICENSE = ISC
YAJL_LICENSE_FILES = COPYING
YAJL_PATCH = https://github.com/vriera/yajl/commit/6d09f11b8fd358cab0e31b965327e64a599f9ce9.patch
$(eval $(cmake-package))