blob: fbdf06d692beef488f91ee936bb597df6961504f [file] [log] [blame]
Patrick Williamsac13d5f2023-11-24 18:59:46 -06001From c321f19ff1cd1251c19d20b17a2d86c4237ce506 Mon Sep 17 00:00:00 2001
Patrick Williams03907ee2022-05-01 06:28:52 -05002From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 19 Apr 2022 16:07:19 -0700
4Subject: [PATCH] cmake: Link with libatomic on rv32/rv64
5
6Fixes
7riscv64-yoe-linux-musl/12.0.1/ld: libgrpc.so.23.0.0: undefined reference to `__atomic_exchange_1'
8| collect2: error: ld returned 1 exit status
9
10Upstream-Status: Pending
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
Patrick Williamsac13d5f2023-11-24 18:59:46 -060012
Patrick Williams03907ee2022-05-01 06:28:52 -050013---
14 CMakeLists.txt | 3 +++
15 1 file changed, 3 insertions(+)
16
17diff --git a/CMakeLists.txt b/CMakeLists.txt
Patrick Williamsac13d5f2023-11-24 18:59:46 -060018index b272816685..e1fe1102c4 100644
Patrick Williams03907ee2022-05-01 06:28:52 -050019--- a/CMakeLists.txt
20+++ b/CMakeLists.txt
Patrick Williamsac13d5f2023-11-24 18:59:46 -060021@@ -303,6 +303,9 @@ if(UNIX AND NOT HAIKU)
Patrick Williams03907ee2022-05-01 06:28:52 -050022 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX)
23 set(_gRPC_ALLTARGETS_LIBRARIES ${_gRPC_ALLTARGETS_LIBRARIES} rt)
24 endif()
25+ if(CMAKE_SYSTEM_PROCESSOR STREQUAL "riscv64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "riscv32")
26+ set(_gRPC_ALLTARGETS_LIBRARIES ${_gRPC_ALLTARGETS_LIBRARIES} atomic)
27+ endif()
28 endif()
29
Patrick Williamsac13d5f2023-11-24 18:59:46 -060030 include(CheckCXXSourceCompiles)