kumquat-buildroot/package/json-c/Config.in
Thomas Petazzoni 8ea392b84e json-c: needs __sync_val_compare_and_swap_4
While json-c itself builds fine on platforms that don't provide the
__sync atomic built-ins, it does use them. json-c doesn't fail to
build because only a library is built, so such function calls are left
unresolved. But as soon as it gets used in another package linked in a
program, linking will fail due to the missing
__sync_val_compare_and_swap_4() function.

To fix this, we make json-c depend on BR2_TOOLCHAIN_HAS_SYNC_4, and
propagate to the reverse dependencies:

 - json-c
   - fastd
   - pulseaudio
     - efl
     - espeak
     - gst-plugins-good
     - gst1-plugins-good
     - mpd
   - rsyslog
   - ubus

Note that pulseaudio already had a BR2_ARCH_HAS_ATOMICS dependency,
which we are keeping for the moment, and will clean-up in a subsequent
commit.

This commit will also fix packages that could optionally use json-c,
and therefore fixes build failures like:

  http://autobuild.buildroot.org/results/4fe/4feaa9089ee9a183c5086b791bea35c0156945af/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2016-02-06 11:16:00 +01:00

14 lines
438 B
Plaintext

config BR2_PACKAGE_JSON_C
bool "json-c"
# uses __sync_val_compare_and_swap_4
depends on BR2_TOOLCHAIN_HAS_SYNC_4
help
JSON-C - A JSON implementation in C
JSON-C implements a reference counting object model that
allows you to easily construct JSON objects in C, output
them as JSON formatted strings and parse JSON formatted
strings back into the C representation of JSON objects.
https://github.com/json-c/json-c/