Commit graph

11 commits

Author SHA1 Message Date
Baruch Siach caddfa6237 Revert "gnutls: drop wchar dependency"
This reverts commit 694cdb9273.

Just like commit 68c3f5257d (Revert "gnutls: make it non-wchar
friendly") before. It turns out that gnulib expects some other library
to provide a wctomb() implementation. So when the C library does not
provide one it is left as undefined symbol in libgnutls.so.

Add a comment to reduce the chance of repeating the same mistake again.

Fixes:
http://autobuild.buildroot.net/results/86f/86f08276fcb0cc557ab3cc5f57229b2c0c6ac2d7/
http://autobuild.buildroot.net/results/7c4/7c4bcb839f0ad5bc0496b4115ff391a3b312581a/
http://autobuild.buildroot.net/results/1c3/1c353f542c49bbe5520266c0ebb6a58589032453/

Reported-by: Matt Weber <matthew.weber@rockwellcollins.com>
Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-06-30 18:41:41 +02:00
Baruch Siach 694cdb9273 gnutls: drop wchar dependency
Commit 19448f40a0 (gnutls: use included unistring unless libunistring is
selected) made libunistring an optional dependency.  So now gnutls no longer
depend on wchar.

Drop wchar dependency of libmicrohttpd and libsoup, which are gnutls
reverse dependencies that do not depend themselves on wchar.

Update the comments in libsoup and taskd; the wchar dependency is now
not due to gnutls.

Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-22 11:43:33 +02:00
Bernd Kuhls 30ed9de2fd 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] 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>
2017-05-29 22:52:34 +02:00
Rahul Bedarkar 5c5077e117 package: update comments for reverse dependencies of util-linux
Commit 006a328ad6 ("util-linux: fix build with ncurses") removed
dependency on BR2_USE_WCHAR, but failed to update the reverse
dependencies of util-linux.

This commit updates comments in Config.in for BR2_USE_WCHAR for reverse
dependencies of util-linux which directly uses wchar now or when it is
pulled from other dependencies.

eudev doesn't use wchar directly, but needs C99 compiler. Autotools
generate code with wchar_t for checking C99 compiler.

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-01-28 21:03:04 +13:00
Thomas Petazzoni 83e207d7bc taskd: fix static linking issue with libuuid/libintl
libuuid depends on libintl in specific scenarios, but since taskd wasn't
using pkg-config to detect libuuid, this dependency on libintl was not
taken into account. This commit adds a patch to taskd that uses
pkg-config to detect libuuid.

Fixes:

  http://autobuild.buildroot.net/results/cb5ea871812651025722d42508d4f37702088800/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-11-25 23:45:00 +01:00
Arnout Vandecappelle 8528db817d taskd: add patch for correct gnutls libraries in static build
The CMakeLists.txt was using the wrong variables names to add to
includes and libs, so the additional libraries for static build
weren't added to the link command.

Patch sent upstream to taskwarrior-dev@googlegroups.com but it doesn't
seem to be very active.

Fixes:
http://autobuild.buildroot.net/results/d01e947fa807336ffcfd0fad27397af8e7442833

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-11-21 21:18:32 +01:00
Jörg Krause 54aa927a42 taskd: add patch to fix musl build issue
taskd checks for `get_current_dir_name` but forgets to add a `cmakedefine`
in cmake.h.in, so `HAVE_GET_CURRENT_DIR_NAME` is always undefined.

CMake detects correctly that the musl C library defines `get_current_dir_name`.
However, as `HAVE_GET_CURRENT_DIR_NAME` is not set, the block of code evaluated
cannot be compiled as musl does not define `PATH_MAX`.

Reported upstream:
https://bug.tasktools.org/browse/TD-120

Fixes:
http://autobuild.buildroot.net/results/121/121aa15235e06c80d65428626da5a2da9d11c9ba/

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-05-07 09:17:00 +02:00
Arnout Vandecappelle 9b931ab7aa taskd: include only one license file
COPYING and LICENSE are identical, so no point including them both.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-14 23:43:53 +01:00
Arnout Vandecappelle 1031bf6a36 taskd: remove redundant _SOURCE definition
.tar.gz is the default.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-14 23:43:48 +01:00
Arnout Vandecappelle ea9d0c9397 taskd: needs C++
It's all C++ code... C++11 even, but it turns out to compile fine even
with gcc-4.5 (Arago toolchain).

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-14 23:43:44 +01:00
Ben Boeckel bd3cbf3e56 taskd: new package
Taskwarrior is a task management suite of tools. Taskd is the
synchronization server for it.

Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
[Thomas:
 - use 'depends on' for BR2_USE_MMU, and add a comment indicating that
   the dependency is due to the use of fork()
 - use 'depends on' for BR2_USE_WCHAR, and add a comment indicating
   that the dependency is due to gnutls and util-linux.
 - add a hash file.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-10 23:29:58 +01:00