8ea392b84e
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>
31 lines
872 B
Plaintext
31 lines
872 B
Plaintext
comment "ubus needs a toolchain w/ dynamic library"
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
|
depends on BR2_STATIC_LIBS
|
|
|
|
config BR2_PACKAGE_UBUS
|
|
bool "ubus"
|
|
select BR2_PACKAGE_LIBUBOX
|
|
select BR2_PACKAGE_JSON_C
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c
|
|
depends on !BR2_STATIC_LIBS # libubox
|
|
help
|
|
IPC/RPC bus that allows communication between processes.
|
|
|
|
It consists of few parts including a daemon (ubusd), a library
|
|
(libubus) and a command line interface (ubus). Although created
|
|
for the OpenWRT project, it can be used as a general IPC/RPC
|
|
mechanism in other projects.
|
|
|
|
* Select BR2_PACKAGE_LUA_5_1 if you want to have Lua support.
|
|
|
|
https://wiki.openwrt.org/doc/techref/ubus
|
|
|
|
if BR2_PACKAGE_UBUS
|
|
|
|
config BR2_PACKAGE_UBUS_EXAMPLES
|
|
bool "build and install ubus examples"
|
|
help
|
|
Build and install client and server ubus examples.
|
|
|
|
endif
|