uClibc-ng in non-NPTL configurations doesn't implement
pthread_setname_np(). Unfortunately grpc assumes that as soon as
__GLIBC__ is defined, pthread_setname_np() is available. It is
particularly sad, because grpc build system uses CMake, so it is
trivial to do such a check.
This commit adds a patch that does just this: check for the
availability of pthread_setname_np(), and use it only if
available. The patch has been submitted upstream.
Fixes:
http://autobuild.buildroot.org/results/47991306abbcd80fb8e6baad0bd7490fa74f696c/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
grpc uses atomic or sync built-ins from the compiler, so we need to
add the appropriate dependency. In addition, on some architectures,
linking with libatomic is needed to use the atomic builtins.
Fixes:
http://autobuild.buildroot.org/results/2f208fbfe4e9da94be5b9c030dbd278cb8ba053c/
Signed-off-by: Ryan Barnett <ryan.barnett@rockwellcollins.com>
Reviewed-by: Robert Rose <robertroyrose@gmail.com>
[Thomas:
- add the dependency on sync or atomic builtins in Config.in
- use -DCMAKE_EXE_LINKER_FLAGS instead of
-DCMAKE_C_STANDARD_LIBRARIES, to be consistent with what we do in
some other cmake-based packages
- tweak commit log]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Robert Rose <robertroyrose@gmail.com>
[Thomas:
- add missing Config.in dependencies inherited from
BR2_PACKAGE_PROTOBUF, as well as the corresponding Config.in
comment
- replace spaces by tabs in grpc.mk indentation
- remove superfluous GRPC_SOURCE variable
- improved patch description.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>