Skip to content
Snippets Groups Projects
Forked from CMake / CMake
21407 commits behind, 1 commit ahead of the upstream repository.
Dimitri John Ledkov's avatar
Dimitri John Ledkov authored
RISCV64 port on Linux requires -latomic to be linked, as some
funcationality required by C/C++ may not be available in hardware,
requiring a runtime implementation.

Although, some compilers try to add -latomic, it may or may not work
under CMake and --as-needed linking.

This is similar to how some Android toolchain files specify -latomic
as well.

Tested on Ubuntu, with this patch fixes failure to build from source
of rocksdb, mariadb-10.3, opendht and probably other projects on
RISCV64 without modifying their CMake configuration.

Fixes: #20895
e3558330
History
Name Last commit Last update
..
AndroidTestUtilities
CMakeAddFortranSubdirectory
CheckIPOSupported
Compiler
CompilerId
FetchContent
FindCUDA
FindMPI
FindPython
FortranCInterface
IntelVSImplicitPath
Internal
Platform
UseJava
UseSWIG
AddFileDependencies.cmake
AndroidTestUtilities.cmake
BasicConfigVersion-AnyNewerVersion.cmake.in
BasicConfigVersion-ExactVersion.cmake.in
BasicConfigVersion-SameMajorVersion.cmake.in
BasicConfigVersion-SameMinorVersion.cmake.in
BundleUtilities.cmake
CMake.cmake
CMakeASM-ATTInformation.cmake
CMakeASMCompiler.cmake.in
CMakeASMInformation.cmake
CMakeASM_MASMInformation.cmake
CMakeASM_NASMInformation.cmake
CMakeAddFortranSubdirectory.cmake
CMakeAddNewLanguage.txt
CMakeBackwardCompatibilityC.cmake
CMakeBackwardCompatibilityCXX.cmake
CMakeBorlandFindMake.cmake
CMakeBuildSettings.cmake.in
CMakeCCompiler.cmake.in
CMakeCCompilerABI.c
CMakeCCompilerId.c.in
CMakeCInformation.cmake
CMakeCSharpCompiler.cmake.in
CMakeCSharpCompilerId.cs.in
CMakeCSharpInformation.cmake
CMakeCUDACompiler.cmake.in
CMakeCUDACompilerABI.cu
CMakeCUDACompilerId.cu.in
CMakeCUDAInformation.cmake
CMakeCXXCompiler.cmake.in
CMakeCXXCompilerABI.cpp
CMakeCXXCompilerId.cpp.in
CMakeCXXInformation.cmake
CMakeCheckCompilerFlagCommonPatterns.cmake
CMakeCommonLanguageInclude.cmake
CMakeCompilerABI.h
CMakeCompilerIdDetection.cmake
CMakeConfigurableFile.in
CMakeDependentOption.cmake
CMakeDetermineASM-ATTCompiler.cmake
CMakeDetermineASMCompiler.cmake
CMakeDetermineASM_MASMCompiler.cmake
CMakeDetermineASM_NASMCompiler.cmake
CMakeDetermineCCompiler.cmake
CMakeDetermineCSharpCompiler.cmake
CMakeDetermineCUDACompiler.cmake
CMakeDetermineCXXCompiler.cmake
CMakeDetermineCompileFeatures.cmake
CMakeDetermineCompiler.cmake
CMakeDetermineCompilerABI.cmake
CMakeDetermineCompilerId.cmake
CMakeDetermineFortranCompiler.cmake
CMakeDetermineJavaCompiler.cmake
CMakeDetermineOBJCCompiler.cmake
CMakeDetermineOBJCXXCompiler.cmake
CMakeDetermineRCCompiler.cmake
CMakeDetermineSwiftCompiler.cmake
CMakeDetermineSystem.cmake
CMakeDetermineVSServicePack.cmake
CMakeExpandImportedTargets.cmake
CMakeExportBuildSettings.cmake
CMakeExtraGeneratorDetermineCompilerMacrosAndIncludeDirs.cmake
CMakeFindBinUtils.cmake
CMakeFindCodeBlocks.cmake
CMakeFindDependencyMacro.cmake
CMakeFindEclipseCDT4.cmake
CMakeFindFrameworks.cmake
CMakeFindJavaCommon.cmake
CMakeFindKate.cmake
CMakeFindPackageMode.cmake
CMakeFindSublimeText2.cmake
CMakeFindWMake.cmake
CMakeFindXCode.cmake
CMakeForceCompiler.cmake
CMakeFortranCompiler.cmake.in
CMakeFortranCompilerABI.F
CMakeFortranCompilerId.F.in
CMakeFortranInformation.cmake
CMakeGenericSystem.cmake
CMakeGraphVizOptions.cmake
CMakeIOSInstallCombined.cmake
CMakeImportBuildSettings.cmake
CMakeInitializeConfigs.cmake
CMakeJOMFindMake.cmake
CMakeJavaCompiler.cmake.in
CMakeJavaInformation.cmake
CMakeLanguageInformation.cmake
CMakeMSYSFindMake.cmake
CMakeMinGWFindMake.cmake
CMakeNMakeFindMake.cmake
CMakeNinjaFindMake.cmake
CMakeOBJCCompiler.cmake.in
CMakeOBJCCompilerABI.m
CMakeOBJCCompilerId.m.in
CMakeOBJCInformation.cmake
CMakeOBJCXXCompiler.cmake.in
CMakeOBJCXXCompilerABI.mm
CMakeOBJCXXCompilerId.mm.in
CMakeOBJCXXInformation.cmake
CMakePackageConfigHelpers.cmake
CMakeParseArguments.cmake
CMakeParseImplicitIncludeInfo.cmake
CMakeParseImplicitLinkInfo.cmake
CMakePlatformId.h.in
CMakePrintHelpers.cmake
CMakePrintSystemInformation.cmake
CMakePushCheckState.cmake
CMakeRCCompiler.cmake.in
CMakeRCInformation.cmake
CMakeSwiftCompiler.cmake.in
CMakeSwiftInformation.cmake
CMakeSystem.cmake.in
CMakeSystemSpecificInformation.cmake
CMakeSystemSpecificInitialize.cmake
CMakeTestASM-ATTCompiler.cmake
CMakeTestASMCompiler.cmake
CMakeTestASM_MASMCompiler.cmake
CMakeTestASM_NASMCompiler.cmake
CMakeTestCCompiler.cmake
CMakeTestCSharpCompiler.cmake
CMakeTestCUDACompiler.cmake
CMakeTestCXXCompiler.cmake
CMakeTestCompilerCommon.cmake
CMakeTestFortranCompiler.cmake
CMakeTestGNU.c
CMakeTestJavaCompiler.cmake
CMakeTestOBJCCompiler.cmake
CMakeTestOBJCXXCompiler.cmake
CMakeTestRCCompiler.cmake
CMakeTestSwiftCompiler.cmake
CMakeUnixFindMake.cmake
CMakeVerifyManifest.cmake
CPack.cmake
CPackComponent.cmake
CPackIFW.cmake
CPackIFWConfigureFile.cmake
CSharpUtilities.cmake
CTest.cmake
CTestCoverageCollectGCOV.cmake
CTestScriptMode.cmake
CTestTargets.cmake
CTestUseLaunchers.cmake
CheckCCompilerFlag.cmake
CheckCSourceCompiles.cmake
CheckCSourceRuns.cmake
CheckCXXCompilerFlag.cmake
CheckCXXSourceCompiles.cmake
CheckCXXSourceRuns.cmake
CheckCXXSymbolExists.cmake
CheckForPthreads.c
CheckFortranCompilerFlag.cmake
CheckFortranFunctionExists.cmake
CheckFortranSourceCompiles.cmake
CheckFortranSourceRuns.cmake
CheckFunctionExists.c
CheckFunctionExists.cmake
CheckIPOSupported.cmake
CheckIncludeFile.c.in
CheckIncludeFile.cmake
CheckIncludeFile.cxx.in
CheckIncludeFileCXX.cmake
CheckIncludeFiles.cmake
CheckLanguage.cmake
CheckLibraryExists.cmake
CheckLibraryExists.lists.in
CheckLinkerFlag.cmake
CheckOBJCCompilerFlag.cmake
CheckOBJCSourceCompiles.cmake
CheckOBJCSourceRuns.cmake
CheckOBJCXXCompilerFlag.cmake
CheckOBJCXXSourceCompiles.cmake
CheckOBJCXXSourceRuns.cmake
CheckPIESupported.cmake
CheckPrototypeDefinition.c.in
CheckPrototypeDefinition.cmake
CheckSizeOf.cmake
CheckStructHasMember.cmake
CheckSymbolExists.cmake
CheckTypeSize.c.in
CheckTypeSize.cmake
CheckTypeSizeMap.cmake.in
CheckVariableExists.c
CheckVariableExists.cmake
Dart.cmake