diff options
author | Rahul Bedarkar <rahul.bedarkar@imgtec.com> | 2016-10-22 00:41:13 +0530 |
---|---|---|
committer | Peter Korsgaard <peter@korsgaard.com> | 2016-10-22 14:56:57 +0200 |
commit | cd6448d501c770e48607c27ffe402409a84c555c (patch) | |
tree | 05ddf75a4e7a5a6cd91d1dab871b4f26e63a29ea /package/libfastjson/0001-m4-fix-detection-of-atomics.patch | |
parent | 4da424cfbe040c88f65773e0a1db58a6f396522d (diff) | |
download | buildroot-cd6448d501c770e48607c27ffe402409a84c555c.tar.gz buildroot-cd6448d501c770e48607c27ffe402409a84c555c.zip |
libfastjson: bump version to 0.99.4
Drop upstream patch and rename remaining one.
Also fixes:
http://autobuild.buildroot.net/results/bfe/bfe8ebe3966324b16ca572bfba0a1a8ddc275db9
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'package/libfastjson/0001-m4-fix-detection-of-atomics.patch')
-rw-r--r-- | package/libfastjson/0001-m4-fix-detection-of-atomics.patch | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/package/libfastjson/0001-m4-fix-detection-of-atomics.patch b/package/libfastjson/0001-m4-fix-detection-of-atomics.patch new file mode 100644 index 0000000000..1fdbf1923f --- /dev/null +++ b/package/libfastjson/0001-m4-fix-detection-of-atomics.patch @@ -0,0 +1,86 @@ +From df087711cf7be55268a55e7820f4d928cb34c078 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" <yann.morin.1998@free.fr> +Date: Sat, 9 Jul 2016 20:44:36 +0200 +Subject: [PATCH] m4: fix detection of atomics + +In cross-compilation, it is impossible to run code at configure time to +detect the target specifics. + +As such, AC_TRY_RUN fails miserably to detect reliably that atomic +intrisics are present in a toolchain, and decides they are not just +because this is cross-compilation. + +Instead of AC_TRY_RUN, use AC_LINK_IFELSE that does not need to actually +run code, since all we're interested in is whether the intrisics are +present (or not). Fix both the 32- and 64-bit variants, even if the +latter is not used currently. + +Fixes build failures detected by the Buildroot autobuilders, like: + http://autobuild.buildroot.org/results/23a/23ac0e742ed3a70ae4d038f8c9eadc23e708f671/build-end.log + http://autobuild.buildroot.org/results/192/1923d0b570adba494f83747a9610ea6ec35f5223/build-end.log + +and many other cases, espcially on architectures where such intrisics are +present, but where the toolchain does not have threads (and anyway, it +is much more efficient to use the intrisics rather than use mutexes). + +Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> +--- +Patch sent upstream: + https://github.com/rsyslog/libfastjson/pull/109 + +--- + m4/atomic_operations.m4 | 6 ++---- + m4/atomic_operations_64bit.m4 | 6 ++---- + 2 files changed, 4 insertions(+), 8 deletions(-) + +diff --git a/m4/atomic_operations.m4 b/m4/atomic_operations.m4 +index ad0ee60..7d2bca6 100644 +--- a/m4/atomic_operations.m4 ++++ b/m4/atomic_operations.m4 +@@ -9,9 +9,7 @@ + # + AC_DEFUN([RS_ATOMIC_OPERATIONS], + [AC_CACHE_CHECK([whether the compiler provides atomic builtins], [ap_cv_atomic_builtins], +-[AC_TRY_RUN([ +-int main() +-{ ++[AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[ + unsigned long val = 1010, tmp, *mem = &val; + + if (__sync_fetch_and_add(&val, 1010) != 1010 || val != 2020) +@@ -44,7 +42,7 @@ int main() + return 1; + + return 0; +-}], [ap_cv_atomic_builtins=yes], [ap_cv_atomic_builtins=no], [ap_cv_atomic_builtins=no])]) ++]])], [ap_cv_atomic_builtins=yes], [ap_cv_atomic_builtins=no])]) + + if test "$ap_cv_atomic_builtins" = "yes"; then + AC_DEFINE(HAVE_ATOMIC_BUILTINS, 1, [Define if compiler provides atomic builtins]) +diff --git a/m4/atomic_operations_64bit.m4 b/m4/atomic_operations_64bit.m4 +index 9fbef0a..d01a977 100644 +--- a/m4/atomic_operations_64bit.m4 ++++ b/m4/atomic_operations_64bit.m4 +@@ -9,9 +9,7 @@ + # + AC_DEFUN([RS_ATOMIC_OPERATIONS_64BIT], + [AC_CACHE_CHECK([whether the compiler provides atomic builtins for 64 bit data types], [ap_cv_atomic_builtins_64], +-[AC_TRY_RUN([ +-int main() +-{ ++[AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[ + unsigned long long val = 1010, tmp, *mem = &val; + + if (__sync_fetch_and_add(&val, 1010) != 1010 || val != 2020) +@@ -44,7 +42,7 @@ int main() + return 1; + + return 0; +-}], [ap_cv_atomic_builtins_64=yes], [ap_cv_atomic_builtins_64=no], [ap_cv_atomic_builtins_64=no])]) ++]])], [ap_cv_atomic_builtins_64=yes], [ap_cv_atomic_builtins_64=no])]) + + if test "$ap_cv_atomic_builtins_64" = "yes"; then + AC_DEFINE(HAVE_ATOMIC_BUILTINS64, 1, [Define if compiler provides 64 bit atomic builtins]) +-- +2.7.4 + |