30ed9de2fd
The gnutils code uses __attribute__((constructor)) and
__attribute__((destructor)) to call constructor/desctructor when a
shared library is loaded.
Constructor/desctructor are not used when a static library is used
(except when if -Wl,--whole-archive -lgnutls -Wno-whole-archive is
used, not tested).
Even if gnutls initialization (_gnutls_global_init()) may be
called manually, the gnutls maintainer said it's not supported [1].
"Note that static linking applications with gnutls is not something
supported. gnutls relies on library constructors and destructors
which are not loaded when linking statically."
Now the gnutls script warns about static linking [2].
So disable gnutls statically by adding "depends on !BR2_STATIC_LIBS"
at Kconfig level and --disable-static in GNUTLS_CONF_OPTS.
Fixes:
[taskd] http://autobuild.buildroot.net/results/c2d/c2dd5c1c9dc87d2943c15e58ee56e67d7375368c
[ffmpeg] http://autobuild.buildroot.net/results/892/8926d319d6d1cd1ee72239ad7d9ca869d2355628
[sngrep] http://autobuild.buildroot.net/results/f7f/f7fb42d3742f6f01000a0d181e0c785640284405
[1] https://gitlab.com/gnutls/gnutls/issues/203
[2] 6b74888679
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Romain: merge our two patches together
add some option comment
disable static libgnutls.a
add sngrep autobuilder reference]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: do not disable libgnutls.a]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
79 lines
2.3 KiB
Plaintext
79 lines
2.3 KiB
Plaintext
config BR2_PACKAGE_CONNMAN
|
|
bool "connman"
|
|
depends on BR2_USE_WCHAR # libglib2
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2
|
|
depends on BR2_USE_MMU # dbus, libglib2
|
|
depends on !BR2_STATIC_LIBS # needs dlopen()
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
|
depends on !BR2_TOOLCHAIN_USES_MUSL # missing res_ninit()
|
|
select BR2_PACKAGE_DBUS
|
|
select BR2_PACKAGE_LIBGLIB2
|
|
select BR2_PACKAGE_IPTABLES
|
|
help
|
|
The Connection Manager (ConnMan) project provides a daemon
|
|
for managing internet connections within embedded devices
|
|
running the Linux operating system.
|
|
|
|
For more information, see https://01.org/connman
|
|
|
|
if BR2_PACKAGE_CONNMAN
|
|
|
|
config BR2_PACKAGE_CONNMAN_ETHERNET
|
|
bool "enable Ethernet support"
|
|
default y
|
|
|
|
config BR2_PACKAGE_CONNMAN_WIFI
|
|
bool "enable WiFi support"
|
|
select BR2_PACKAGE_WPA_SUPPLICANT # runtime
|
|
select BR2_PACKAGE_WPA_SUPPLICANT_DBUS_NEW # runtime
|
|
help
|
|
Enable WiFi support (scan and static/dhcp interface
|
|
setup). ConnMan detects the start of wpa_supplicant
|
|
automatically.
|
|
|
|
config BR2_PACKAGE_CONNMAN_WISPR
|
|
bool "enable WISPr support"
|
|
depends on !BR2_STATIC_LIBS # gnutls
|
|
select BR2_PACKAGE_GNUTLS
|
|
help
|
|
Enable support for Wireless Internet Service Provider
|
|
roaming (WISPr). A RADIUS server is used to authenticate the
|
|
subscriber's credentials.
|
|
|
|
comment "connman WISPr needs a toolchain w/ dynamic library"
|
|
depends on BR2_STATIC_LIBS
|
|
|
|
config BR2_PACKAGE_CONNMAN_BLUETOOTH
|
|
bool "enable Bluetooth support"
|
|
help
|
|
Enable Bluetooth support. The start of bluetoothd is
|
|
automatically detected and only a runtime dependency.
|
|
|
|
config BR2_PACKAGE_CONNMAN_LOOPBACK
|
|
bool "enable loopback support"
|
|
|
|
config BR2_PACKAGE_CONNMAN_NEARD
|
|
bool "enable neard support"
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # neard
|
|
select BR2_PACKAGE_NEARD
|
|
|
|
config BR2_PACKAGE_CONNMAN_OFONO
|
|
bool "enable ofono support"
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # ofono
|
|
select BR2_PACKAGE_OFONO
|
|
|
|
config BR2_PACKAGE_CONNMAN_DEBUG
|
|
bool "enable compiling with debugging information"
|
|
|
|
config BR2_PACKAGE_CONNMAN_CLIENT
|
|
bool "enable command line client"
|
|
select BR2_PACKAGE_READLINE
|
|
|
|
endif # BR2_PACKAGE_CONNMAN
|
|
|
|
comment "connman needs a glibc or uClibc toolchain w/ wchar, threads, resolver, dynamic library"
|
|
depends on BR2_USE_MMU
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
|
depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
|
|
|| BR2_TOOLCHAIN_USES_MUSL
|