1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
From: Alberto Garcia <berto@igalia.com>
Subject: Some architectures need to add -latomic explicitly
Index: webkitgtk/Source/cmake/OptionsCommon.cmake
===================================================================
--- webkitgtk.orig/Source/cmake/OptionsCommon.cmake
+++ webkitgtk/Source/cmake/OptionsCommon.cmake
@@ -69,3 +69,10 @@ endif ()
# files must be used to deal with very long linker command lines.
# See https://bugs.webkit.org/show_bug.cgi?id=129771
set(CMAKE_NINJA_FORCE_RESPONSE_FILE 1)
+
+try_compile(ATOMIC_BUILD_SUCCEEDED ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/atomic.cpp)
+if (NOT ATOMIC_BUILD_SUCCEEDED)
+ message(STATUS "Adding -latomic to the linker flags")
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--push-state,--no-as-needed,-latomic,--pop-state")
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--push-state,--no-as-needed,-latomic,--pop-state")
+endif()
Index: webkitgtk/atomic.cpp
===================================================================
--- /dev/null
+++ webkitgtk/atomic.cpp
@@ -0,0 +1,7 @@
+#include <atomic>
+
+int main() {
+ std::atomic<int64_t> i(0);
+ i++;
+ return 0;
+}
|