diff --git a/cmake/modules/CheckCompiler.cmake b/cmake/modules/CheckCompiler.cmake
index b5a5ce24b087c368bcc2b2ebe59f3419fb63fba7..4b61a0635d561c2613dcfc13b131a4837a4d180f 100644
--- a/cmake/modules/CheckCompiler.cmake
+++ b/cmake/modules/CheckCompiler.cmake
@@ -228,6 +228,44 @@ if (CMAKE_SYSTEM_NAME MATCHES Darwin)
       set(CMAKE_C_FLAGS_PROFILE          "-g3 -fno-inline -ftest-coverage -fprofile-arcs")
 
 
+      # Suppress warnings about duplicate libraries in the call of the
+      # linker
+      # Need to check the XCode/CommandLineTools version since the
+      # warning is only available since XCode 15
+      execute_process(COMMAND xcode-select -p
+                      OUTPUT_VARIABLE XCODE_PATH
+                     )
+      string(FIND ${XCODE_PATH} "CommandLineTools" CLT_IS_AVAILABLE)
+      if(${CLT_IS_AVAILABLE} GREATER_EQUAL 0) # CommandLineTools are installed
+        execute_process(COMMAND pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
+                        COMMAND grep version
+                        OUTPUT_VARIABLE CLT_VERSION_INFO
+                       )
+        string(REGEX MATCH ".*[ ]([0-9]+)\\.([0-9]+)\\.([0-9]+).*" _version_matches "${CLT_VERSION_INFO}")
+        set(CLT_VERSION ${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.${CMAKE_MATCH_3})
+        if (${CLT_VERSION} VERSION_GREATER 15.0.0)
+          set(_suppress_linker_warnings TRUE)
+          message(STATUS "Found CLT ${CLT_VERSION} > 15.0.0. Suppress linker warnings on macosx")
+        endif()
+
+      else()
+        execute_process(COMMAND /usr/bin/xcodebuild -version
+                      OUTPUT_VARIABLE XCODE_VERSION_INFO
+                     )
+        string(REGEX MATCH "Xcode[ ]([0-9]+)\\.([0-9]+).*" _version_matches "${XCODE_VERSION_INFO}")
+        set(XCODE_VERSION ${CMAKE_MATCH_1}.${CMAKE_MATCH_2})
+        if (${XCODE_VERSION} VERSION_GREATER 15.0.0)
+          set(_suppress_linker_warnings TRUE)
+          message(STATUS "Found XCode ${XCODE_VERSION} > 15.0.0. Suppress linker warnings on macosx")
+        endif()
+      endif()
+
+
+      if(_suppress_linker_warnings)
+        set(CMAKE_EXE_LINKER_FLAGS "-Wl,-no_warn_duplicate_libraries")
+        set(CMAKE_SHARED_LINKER_FLAGS "-Wl,-no_warn_duplicate_libraries")
+      endif()
+
    else (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
         Message("CXX Compiler: ${CMAKE_CXX_COMPILER}")
         Message("CXX Compiler ABI: ${CMAKE_CXX_COMPILER_ABI}")