blob: 594503ae2a4026b3e162b97e18d7c435442f1642 [file] [log] [blame]
Patrick Williams705982a2024-01-12 09:51:57 -06001From 54e8dca9b39b8c8a6532576a0286e548f97607fa 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 Williams705982a2024-01-12 09:51:57 -060018index 06e6453b5c..476d7f1576 100644
Patrick Williams03907ee2022-05-01 06:28:52 -050019--- a/CMakeLists.txt
20+++ b/CMakeLists.txt
Patrick Williams705982a2024-01-12 09:51:57 -060021@@ -306,6 +306,9 @@ if(UNIX AND NOT HAIKU)
22 set(_gRPC_ALLTARGETS_LIBRARIES ${_gRPC_ALLTARGETS_LIBRARIES} rt)
23 endif()
Patrick Williams03907ee2022-05-01 06:28:52 -050024 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)