diff options
| author | Bernd Kuhls <bernd.kuhls@t-online.de> | 2017-05-25 18:34:43 +0200 |
|---|---|---|
| committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2017-05-29 22:52:34 +0200 |
| commit | 30ed9de2fd8a572ffce26f7a9c8187335c567668 (patch) | |
| tree | 543c9a5bc7022f43bc72d7db30e7e2e9dea0b346 /package/webkitgtk | |
| parent | 557f8d649d9a959e810a3c92774020a434d567a8 (diff) | |
| download | buildroot-30ed9de2fd8a572ffce26f7a9c8187335c567668.tar.gz buildroot-30ed9de2fd8a572ffce26f7a9c8187335c567668.zip | |
package/gnutls: disable for static build
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] https://gitlab.com/gnutls/gnutls/commit/6b748886799f88ddee9721dba4fc4d52854832ae
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>
Diffstat (limited to 'package/webkitgtk')
| -rw-r--r-- | package/webkitgtk/Config.in | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in index 25f6fad49c..0e53d06379 100644 --- a/package/webkitgtk/Config.in +++ b/package/webkitgtk/Config.in @@ -49,11 +49,15 @@ if BR2_PACKAGE_WEBKITGTK config BR2_PACKAGE_WEBKITGTK_HTTPS bool "HTTPS support" + depends on !BR2_STATIC_LIBS # gnutls -> libsoup select BR2_PACKAGE_CA_CERTIFICATES # runtime select BR2_PACKAGE_LIBSOUP_SSL help Enable HTTPS protocol support. +comment "webkitgtk https support needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_WEBKITGTK_MULTIMEDIA bool "multimedia support" select BR2_PACKAGE_GSTREAMER1 |

