Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
share /
cmake-3.22 /
Modules /
[ HOME SHELL ]
Name
Size
Permission
Action
AndroidTestUtilities
[ DIR ]
drwxr-xr-x
CMakeAddFortranSubdirectory
[ DIR ]
drwxr-xr-x
CheckIPOSupported
[ DIR ]
drwxr-xr-x
Compiler
[ DIR ]
drwxr-xr-x
CompilerId
[ DIR ]
drwxr-xr-x
FetchContent
[ DIR ]
drwxr-xr-x
FindCUDA
[ DIR ]
drwxr-xr-x
FindMPI
[ DIR ]
drwxr-xr-x
FindPython
[ DIR ]
drwxr-xr-x
FortranCInterface
[ DIR ]
drwxr-xr-x
IntelVSImplicitPath
[ DIR ]
drwxr-xr-x
Internal
[ DIR ]
drwxr-xr-x
Platform
[ DIR ]
drwxr-xr-x
UseJava
[ DIR ]
drwxr-xr-x
UseSWIG
[ DIR ]
drwxr-xr-x
AddFileDependencies.cmake
955
B
-rw-r--r--
AndroidTestUtilities.cmake
6.22
KB
-rw-r--r--
BasicConfigVersion-AnyNewerVer...
2.01
KB
-rw-r--r--
BasicConfigVersion-ExactVersio...
3.38
KB
-rw-r--r--
BasicConfigVersion-SameMajorVe...
2.91
KB
-rw-r--r--
BasicConfigVersion-SameMinorVe...
3.8
KB
-rw-r--r--
BundleUtilities.cmake
40.91
KB
-rw-r--r--
CMake.cmake
307
B
-rw-r--r--
CMakeASM-ATTInformation.cmake
566
B
-rw-r--r--
CMakeASMCompiler.cmake.in
942
B
-rw-r--r--
CMakeASMInformation.cmake
3.93
KB
-rw-r--r--
CMakeASM_MASMInformation.cmake
918
B
-rw-r--r--
CMakeASM_NASMInformation.cmake
1.96
KB
-rw-r--r--
CMakeAddFortranSubdirectory.cm...
7.13
KB
-rw-r--r--
CMakeAddNewLanguage.txt
1.49
KB
-rw-r--r--
CMakeBackwardCompatibilityC.cm...
2.54
KB
-rw-r--r--
CMakeBackwardCompatibilityCXX....
1.77
KB
-rw-r--r--
CMakeBorlandFindMake.cmake
271
B
-rw-r--r--
CMakeBuildSettings.cmake.in
681
B
-rw-r--r--
CMakeCCompiler.cmake.in
2.96
KB
-rw-r--r--
CMakeCCompilerABI.c
511
B
-rw-r--r--
CMakeCCompilerId.c.in
2.85
KB
-rw-r--r--
CMakeCInformation.cmake
6.74
KB
-rw-r--r--
CMakeCSharpCompiler.cmake.in
477
B
-rw-r--r--
CMakeCSharpCompilerId.cs.in
1.59
KB
-rw-r--r--
CMakeCSharpInformation.cmake
2.94
KB
-rw-r--r--
CMakeCUDACompiler.cmake.in
3.27
KB
-rw-r--r--
CMakeCUDACompilerABI.cu
394
B
-rw-r--r--
CMakeCUDACompilerId.cu.in
1.7
KB
-rw-r--r--
CMakeCUDAInformation.cmake
8.78
KB
-rw-r--r--
CMakeCXXCompiler.cmake.in
3.52
KB
-rw-r--r--
CMakeCXXCompilerABI.cpp
388
B
-rw-r--r--
CMakeCXXCompilerId.cpp.in
2.82
KB
-rw-r--r--
CMakeCXXInformation.cmake
9.96
KB
-rw-r--r--
CMakeCheckCompilerFlagCommonPa...
2.1
KB
-rw-r--r--
CMakeCommonLanguageInclude.cma...
1.12
KB
-rw-r--r--
CMakeCompilerABI.h
1.54
KB
-rw-r--r--
CMakeCompilerIdDetection.cmake
4.72
KB
-rw-r--r--
CMakeConfigurableFile.in
34
B
-rw-r--r--
CMakeDependentOption.cmake
3.04
KB
-rw-r--r--
CMakeDetermineASM-ATTCompiler....
394
B
-rw-r--r--
CMakeDetermineASMCompiler.cmak...
11.34
KB
-rw-r--r--
CMakeDetermineASM_MASMCompiler...
586
B
-rw-r--r--
CMakeDetermineASM_NASMCompiler...
937
B
-rw-r--r--
CMakeDetermineCCompiler.cmake
8.38
KB
-rw-r--r--
CMakeDetermineCSharpCompiler.c...
1.63
KB
-rw-r--r--
CMakeDetermineCUDACompiler.cma...
29.12
KB
-rw-r--r--
CMakeDetermineCXXCompiler.cmak...
8.5
KB
-rw-r--r--
CMakeDetermineCompileFeatures....
9.08
KB
-rw-r--r--
CMakeDetermineCompiler.cmake
6.77
KB
-rw-r--r--
CMakeDetermineCompilerABI.cmak...
8.27
KB
-rw-r--r--
CMakeDetermineCompilerId.cmake
47.83
KB
-rw-r--r--
CMakeDetermineFortranCompiler....
12.07
KB
-rw-r--r--
CMakeDetermineHIPCompiler.cmak...
6.81
KB
-rw-r--r--
CMakeDetermineISPCCompiler.cma...
2.97
KB
-rw-r--r--
CMakeDetermineJavaCompiler.cma...
3.67
KB
-rw-r--r--
CMakeDetermineOBJCCompiler.cma...
7.28
KB
-rw-r--r--
CMakeDetermineOBJCXXCompiler.c...
7.65
KB
-rw-r--r--
CMakeDetermineRCCompiler.cmake
2.05
KB
-rw-r--r--
CMakeDetermineSwiftCompiler.cm...
2.93
KB
-rw-r--r--
CMakeDetermineSystem.cmake
8.44
KB
-rw-r--r--
CMakeDetermineVSServicePack.cm...
5.89
KB
-rw-r--r--
CMakeExpandImportedTargets.cma...
5.95
KB
-rw-r--r--
CMakeExportBuildSettings.cmake
1.21
KB
-rw-r--r--
CMakeExtraGeneratorDetermineCo...
5.12
KB
-rw-r--r--
CMakeFindBinUtils.cmake
9.86
KB
-rw-r--r--
CMakeFindCodeBlocks.cmake
1.72
KB
-rw-r--r--
CMakeFindDependencyMacro.cmake
2.11
KB
-rw-r--r--
CMakeFindEclipseCDT4.cmake
4.84
KB
-rw-r--r--
CMakeFindFrameworks.cmake
1.54
KB
-rw-r--r--
CMakeFindJavaCommon.cmake
1
KB
-rw-r--r--
CMakeFindKate.cmake
1.02
KB
-rw-r--r--
CMakeFindPackageMode.cmake
6.1
KB
-rw-r--r--
CMakeFindSublimeText2.cmake
1.01
KB
-rw-r--r--
CMakeFindWMake.cmake
272
B
-rw-r--r--
CMakeFindXCode.cmake
250
B
-rw-r--r--
CMakeForceCompiler.cmake
4.11
KB
-rw-r--r--
CMakeFortranCompiler.cmake.in
2.67
KB
-rw-r--r--
CMakeFortranCompilerABI.F
1.09
KB
-rw-r--r--
CMakeFortranCompilerABI.F90
1.08
KB
-rw-r--r--
CMakeFortranCompilerId.F.in
9.88
KB
-rw-r--r--
CMakeFortranInformation.cmake
8.82
KB
-rw-r--r--
CMakeGenericSystem.cmake
6.64
KB
-rw-r--r--
CMakeGraphVizOptions.cmake
3.73
KB
-rw-r--r--
CMakeHIPCompiler.cmake.in
2.57
KB
-rw-r--r--
CMakeHIPCompilerABI.hip
293
B
-rw-r--r--
CMakeHIPCompilerId.hip.in
1.6
KB
-rw-r--r--
CMakeHIPInformation.cmake
5.51
KB
-rw-r--r--
CMakeIOSInstallCombined.cmake
10.2
KB
-rw-r--r--
CMakeISPCCompiler.cmake.in
1.15
KB
-rw-r--r--
CMakeISPCCompilerABI.ispc
545
B
-rw-r--r--
CMakeISPCCompilerId.ispc.in
2.09
KB
-rw-r--r--
CMakeISPCInformation.cmake
2.35
KB
-rw-r--r--
CMakeImportBuildSettings.cmake
535
B
-rw-r--r--
CMakeInitializeConfigs.cmake
1.54
KB
-rw-r--r--
CMakeJOMFindMake.cmake
270
B
-rw-r--r--
CMakeJavaCompiler.cmake.in
538
B
-rw-r--r--
CMakeJavaInformation.cmake
1.74
KB
-rw-r--r--
CMakeLanguageInformation.cmake
1.23
KB
-rw-r--r--
CMakeMSYSFindMake.cmake
489
B
-rw-r--r--
CMakeMinGWFindMake.cmake
437
B
-rw-r--r--
CMakeNMakeFindMake.cmake
272
B
-rw-r--r--
CMakeNinjaFindMake.cmake
315
B
-rw-r--r--
CMakeOBJCCompiler.cmake.in
3.16
KB
-rw-r--r--
CMakeOBJCCompilerABI.m
556
B
-rw-r--r--
CMakeOBJCCompilerId.m.in
2.06
KB
-rw-r--r--
CMakeOBJCInformation.cmake
7.1
KB
-rw-r--r--
CMakeOBJCXXCompiler.cmake.in
3.64
KB
-rw-r--r--
CMakeOBJCXXCompilerABI.mm
557
B
-rw-r--r--
CMakeOBJCXXCompilerId.mm.in
2.03
KB
-rw-r--r--
CMakeOBJCXXInformation.cmake
10.43
KB
-rw-r--r--
CMakePackageConfigHelpers.cmak...
13.97
KB
-rw-r--r--
CMakeParseArguments.cmake
581
B
-rw-r--r--
CMakeParseImplicitIncludeInfo....
9.54
KB
-rw-r--r--
CMakeParseImplicitLinkInfo.cma...
11.26
KB
-rw-r--r--
CMakeParseLibraryArchitecture....
1.69
KB
-rw-r--r--
CMakePlatformId.h.in
7.95
KB
-rw-r--r--
CMakePrintHelpers.cmake
4.17
KB
-rw-r--r--
CMakePrintSystemInformation.cm...
2.14
KB
-rw-r--r--
CMakePushCheckState.cmake
3.85
KB
-rw-r--r--
CMakeRCCompiler.cmake.in
270
B
-rw-r--r--
CMakeRCInformation.cmake
1.94
KB
-rw-r--r--
CMakeSwiftCompiler.cmake.in
635
B
-rw-r--r--
CMakeSwiftInformation.cmake
5.21
KB
-rw-r--r--
CMakeSystem.cmake.in
563
B
-rw-r--r--
CMakeSystemSpecificInformation...
2.34
KB
-rw-r--r--
CMakeSystemSpecificInitialize....
1
KB
-rw-r--r--
CMakeTestASM-ATTCompiler.cmake
527
B
-rw-r--r--
CMakeTestASMCompiler.cmake
865
B
-rw-r--r--
CMakeTestASM_MASMCompiler.cmak...
556
B
-rw-r--r--
CMakeTestASM_NASMCompiler.cmak...
529
B
-rw-r--r--
CMakeTestCCompiler.cmake
3.9
KB
-rw-r--r--
CMakeTestCSharpCompiler.cmake
2.79
KB
-rw-r--r--
CMakeTestCUDACompiler.cmake
4.24
KB
-rw-r--r--
CMakeTestCXXCompiler.cmake
3.8
KB
-rw-r--r--
CMakeTestCompilerCommon.cmake
1.3
KB
-rw-r--r--
CMakeTestFortranCompiler.cmake
4.68
KB
-rw-r--r--
CMakeTestGNU.c
268
B
-rw-r--r--
CMakeTestHIPCompiler.cmake
3.96
KB
-rw-r--r--
CMakeTestISPCCompiler.cmake
1.42
KB
-rw-r--r--
CMakeTestJavaCompiler.cmake
484
B
-rw-r--r--
CMakeTestOBJCCompiler.cmake
4.02
KB
-rw-r--r--
CMakeTestOBJCXXCompiler.cmake
4.05
KB
-rw-r--r--
CMakeTestRCCompiler.cmake
573
B
-rw-r--r--
CMakeTestSwiftCompiler.cmake
2.94
KB
-rw-r--r--
CMakeUnixFindMake.cmake
575
B
-rw-r--r--
CMakeVerifyManifest.cmake
3.88
KB
-rw-r--r--
CPack.cmake
35.12
KB
-rw-r--r--
CPackComponent.cmake
20.26
KB
-rw-r--r--
CPackIFW.cmake
25.82
KB
-rw-r--r--
CPackIFWConfigureFile.cmake
2.21
KB
-rw-r--r--
CSharpUtilities.cmake
10.73
KB
-rw-r--r--
CTest.cmake
9
KB
-rw-r--r--
CTestCoverageCollectGCOV.cmake
11.98
KB
-rw-r--r--
CTestScriptMode.cmake
662
B
-rw-r--r--
CTestTargets.cmake
3.09
KB
-rw-r--r--
CTestUseLaunchers.cmake
2.92
KB
-rw-r--r--
CheckCCompilerFlag.cmake
1.5
KB
-rw-r--r--
CheckCSourceCompiles.cmake
3.24
KB
-rw-r--r--
CheckCSourceRuns.cmake
3.19
KB
-rw-r--r--
CheckCXXCompilerFlag.cmake
1.53
KB
-rw-r--r--
CheckCXXSourceCompiles.cmake
3.26
KB
-rw-r--r--
CheckCXXSourceRuns.cmake
3.21
KB
-rw-r--r--
CheckCXXSymbolExists.cmake
3.08
KB
-rw-r--r--
CheckCompilerFlag.cmake
1.51
KB
-rw-r--r--
CheckForPthreads.c
273
B
-rw-r--r--
CheckFortranCompilerFlag.cmake
1.59
KB
-rw-r--r--
CheckFortranFunctionExists.cma...
3.11
KB
-rw-r--r--
CheckFortranSourceCompiles.cma...
4.15
KB
-rw-r--r--
CheckFortranSourceRuns.cmake
3.96
KB
-rw-r--r--
CheckFunctionExists.c
433
B
-rw-r--r--
CheckFunctionExists.cmake
4.41
KB
-rw-r--r--
CheckIPOSupported.cmake
6.68
KB
-rw-r--r--
CheckIncludeFile.c.in
130
B
-rw-r--r--
CheckIncludeFile.cmake
4.85
KB
-rw-r--r--
CheckIncludeFile.cxx.in
65
B
-rw-r--r--
CheckIncludeFileCXX.cmake
4.88
KB
-rw-r--r--
CheckIncludeFiles.cmake
6.43
KB
-rw-r--r--
CheckLanguage.cmake
4.31
KB
-rw-r--r--
CheckLibraryExists.cmake
3.59
KB
-rw-r--r--
CheckLibraryExists.lists.in
298
B
-rw-r--r--
CheckLinkerFlag.cmake
3.2
KB
-rw-r--r--
CheckOBJCCompilerFlag.cmake
1.56
KB
-rw-r--r--
CheckOBJCSourceCompiles.cmake
3.25
KB
-rw-r--r--
CheckOBJCSourceRuns.cmake
3.21
KB
-rw-r--r--
CheckOBJCXXCompilerFlag.cmake
1.58
KB
-rw-r--r--
CheckOBJCXXSourceCompiles.cmak...
3.28
KB
-rw-r--r--
CheckOBJCXXSourceRuns.cmake
3.23
KB
-rw-r--r--
CheckPIESupported.cmake
4.53
KB
-rw-r--r--
CheckPrototypeDefinition.c.in
514
B
-rw-r--r--
CheckPrototypeDefinition.cmake
4.46
KB
-rw-r--r--
CheckSizeOf.cmake
348
B
-rw-r--r--
CheckSourceCompiles.cmake
3.49
KB
-rw-r--r--
CheckSourceRuns.cmake
3.37
KB
-rw-r--r--
CheckStructHasMember.cmake
2.49
KB
-rw-r--r--
CheckSymbolExists.cmake
6.62
KB
-rw-r--r--
CheckTypeSize.c.in
1.21
KB
-rw-r--r--
CheckTypeSize.cmake
10.04
KB
-rw-r--r--
CheckTypeSizeMap.cmake.in
31
B
-rw-r--r--
CheckVariableExists.c
382
B
-rw-r--r--
CheckVariableExists.cmake
2.9
KB
-rw-r--r--
Dart.cmake
3.74
KB
-rw-r--r--
DartConfiguration.tcl.in
3.16
KB
-rw-r--r--
DeployQt4.cmake
12.63
KB
-rw-r--r--
Documentation.cmake
2.24
KB
-rw-r--r--
DummyCXXFile.cxx
27
B
-rw-r--r--
ExternalData.cmake
44.33
KB
-rw-r--r--
ExternalData_config.cmake.in
355
B
-rw-r--r--
ExternalProject-download.cmake...
4.07
KB
-rw-r--r--
ExternalProject-gitupdate.cmak...
9.65
KB
-rw-r--r--
ExternalProject-verify.cmake.i...
904
B
-rw-r--r--
ExternalProject.cmake
136.1
KB
-rw-r--r--
FLTKCompatibility.cmake
170
B
-rw-r--r--
FeatureSummary.cmake
27.97
KB
-rw-r--r--
FetchContent.cmake
52.08
KB
-rw-r--r--
FindALSA.cmake
2.18
KB
-rw-r--r--
FindASPELL.cmake
1.02
KB
-rw-r--r--
FindAVIFile.cmake
1.35
KB
-rw-r--r--
FindArmadillo.cmake
4.98
KB
-rw-r--r--
FindBISON.cmake
10.75
KB
-rw-r--r--
FindBLAS.cmake
35.92
KB
-rw-r--r--
FindBZip2.cmake
3.5
KB
-rw-r--r--
FindBacktrace.cmake
3.44
KB
-rw-r--r--
FindBoost.cmake
112.93
KB
-rw-r--r--
FindBullet.cmake
2.75
KB
-rw-r--r--
FindCABLE.cmake
2.54
KB
-rw-r--r--
FindCUDA.cmake
85.67
KB
-rw-r--r--
FindCUDAToolkit.cmake
33.19
KB
-rw-r--r--
FindCURL.cmake
7.2
KB
-rw-r--r--
FindCVS.cmake
1.94
KB
-rw-r--r--
FindCoin3D.cmake
2.25
KB
-rw-r--r--
FindCups.cmake
3.37
KB
-rw-r--r--
FindCurses.cmake
9.2
KB
-rw-r--r--
FindCxxTest.cmake
7.57
KB
-rw-r--r--
FindCygwin.cmake
870
B
-rw-r--r--
FindDCMTK.cmake
10.25
KB
-rw-r--r--
FindDart.cmake
949
B
-rw-r--r--
FindDevIL.cmake
3.78
KB
-rw-r--r--
FindDoxygen.cmake
41.4
KB
-rw-r--r--
FindEXPAT.cmake
2.67
KB
-rw-r--r--
FindEnvModules.cmake
9.73
KB
-rw-r--r--
FindFLEX.cmake
8.46
KB
-rw-r--r--
FindFLTK.cmake
10.8
KB
-rw-r--r--
FindFLTK2.cmake
7.5
KB
-rw-r--r--
FindFontconfig.cmake
2.89
KB
-rw-r--r--
FindFreetype.cmake
5.97
KB
-rw-r--r--
FindGCCXML.cmake
672
B
-rw-r--r--
FindGDAL.cmake
6.46
KB
-rw-r--r--
FindGIF.cmake
3.79
KB
-rw-r--r--
FindGLEW.cmake
10.77
KB
-rw-r--r--
FindGLU.cmake
554
B
-rw-r--r--
FindGLUT.cmake
6.81
KB
-rw-r--r--
FindGSL.cmake
8.86
KB
-rw-r--r--
FindGTK.cmake
3.79
KB
-rw-r--r--
FindGTK2.cmake
36.88
KB
-rw-r--r--
FindGTest.cmake
11.76
KB
-rw-r--r--
FindGettext.cmake
7.81
KB
-rw-r--r--
FindGit.cmake
4.09
KB
-rw-r--r--
FindGnuTLS.cmake
2.44
KB
-rw-r--r--
FindGnuplot.cmake
1.65
KB
-rw-r--r--
FindHDF5.cmake
46.84
KB
-rw-r--r--
FindHSPELL.cmake
1.64
KB
-rw-r--r--
FindHTMLHelp.cmake
1.43
KB
-rw-r--r--
FindHg.cmake
3
KB
-rw-r--r--
FindICU.cmake
15.73
KB
-rw-r--r--
FindIce.cmake
23.82
KB
-rw-r--r--
FindIconv.cmake
5.79
KB
-rw-r--r--
FindIcotool.cmake
1.3
KB
-rw-r--r--
FindImageMagick.cmake
11.56
KB
-rw-r--r--
FindIntl.cmake
5.38
KB
-rw-r--r--
FindJNI.cmake
13.5
KB
-rw-r--r--
FindJPEG.cmake
4.21
KB
-rw-r--r--
FindJasper.cmake
2.96
KB
-rw-r--r--
FindJava.cmake
12.64
KB
-rw-r--r--
FindKDE3.cmake
9.91
KB
-rw-r--r--
FindKDE4.cmake
3.12
KB
-rw-r--r--
FindLAPACK.cmake
21.25
KB
-rw-r--r--
FindLATEX.cmake
6.5
KB
-rw-r--r--
FindLTTngUST.cmake
3.6
KB
-rw-r--r--
FindLibArchive.cmake
2.87
KB
-rw-r--r--
FindLibLZMA.cmake
5.24
KB
-rw-r--r--
FindLibXml2.cmake
4.12
KB
-rw-r--r--
FindLibXslt.cmake
4.75
KB
-rw-r--r--
FindLibinput.cmake
2.13
KB
-rw-r--r--
FindLua.cmake
8.25
KB
-rw-r--r--
FindLua50.cmake
2.34
KB
-rw-r--r--
FindLua51.cmake
2.23
KB
-rw-r--r--
FindMFC.cmake
2.43
KB
-rw-r--r--
FindMPEG.cmake
1.21
KB
-rw-r--r--
FindMPEG2.cmake
1.39
KB
-rw-r--r--
FindMPI.cmake
91.84
KB
-rw-r--r--
FindMatlab.cmake
66.5
KB
-rw-r--r--
FindMotif.cmake
917
B
-rw-r--r--
FindMsys.cmake
894
B
-rw-r--r--
FindODBC.cmake
7.01
KB
-rw-r--r--
FindOpenACC.cmake
9.92
KB
-rw-r--r--
FindOpenAL.cmake
3.21
KB
-rw-r--r--
FindOpenCL.cmake
4.86
KB
-rw-r--r--
FindOpenGL.cmake
20.19
KB
-rw-r--r--
FindOpenMP.cmake
25.53
KB
-rw-r--r--
FindOpenSSL.cmake
23.12
KB
-rw-r--r--
FindOpenSceneGraph.cmake
7.23
KB
-rw-r--r--
FindOpenThreads.cmake
3.41
KB
-rw-r--r--
FindPHP4.cmake
2.11
KB
-rw-r--r--
FindPNG.cmake
5.74
KB
-rw-r--r--
FindPackageHandleStandardArgs....
22.41
KB
-rw-r--r--
FindPackageMessage.cmake
1.67
KB
-rw-r--r--
FindPatch.cmake
1.77
KB
-rw-r--r--
FindPerl.cmake
2.93
KB
-rw-r--r--
FindPerlLibs.cmake
5.15
KB
-rw-r--r--
FindPhysFS.cmake
1.12
KB
-rw-r--r--
FindPike.cmake
922
B
-rw-r--r--
FindPkgConfig.cmake
35.63
KB
-rw-r--r--
FindPostgreSQL.cmake
12.23
KB
-rw-r--r--
FindProducer.cmake
2.24
KB
-rw-r--r--
FindProtobuf.cmake
23.4
KB
-rw-r--r--
FindPython.cmake
19.65
KB
-rw-r--r--
FindPython2.cmake
14.14
KB
-rw-r--r--
FindPython3.cmake
16.21
KB
-rw-r--r--
FindPythonInterp.cmake
7.15
KB
-rw-r--r--
FindPythonLibs.cmake
15.85
KB
-rw-r--r--
FindQt.cmake
6.31
KB
-rw-r--r--
FindQt3.cmake
9.46
KB
-rw-r--r--
FindQt4.cmake
52.5
KB
-rw-r--r--
FindQuickTime.cmake
1011
B
-rw-r--r--
FindRTI.cmake
3.22
KB
-rw-r--r--
FindRuby.cmake
18.04
KB
-rw-r--r--
FindSDL.cmake
7.92
KB
-rw-r--r--
FindSDL_image.cmake
3.81
KB
-rw-r--r--
FindSDL_mixer.cmake
3.81
KB
-rw-r--r--
FindSDL_net.cmake
3.63
KB
-rw-r--r--
FindSDL_sound.cmake
12.33
KB
-rw-r--r--
FindSDL_ttf.cmake
3.63
KB
-rw-r--r--
FindSQLite3.cmake
2
KB
-rw-r--r--
FindSWIG.cmake
5.41
KB
-rw-r--r--
FindSelfPackers.cmake
1.59
KB
-rw-r--r--
FindSquish.cmake
9.26
KB
-rw-r--r--
FindSubversion.cmake
6.24
KB
-rw-r--r--
FindTCL.cmake
8.05
KB
-rw-r--r--
FindTIFF.cmake
6.54
KB
-rw-r--r--
FindTclStub.cmake
4.46
KB
-rw-r--r--
FindTclsh.cmake
3.6
KB
-rw-r--r--
FindThreads.cmake
8.22
KB
-rw-r--r--
FindUnixCommands.cmake
1.5
KB
-rw-r--r--
FindVulkan.cmake
4.53
KB
-rw-r--r--
FindWget.cmake
968
B
-rw-r--r--
FindWish.cmake
2.72
KB
-rw-r--r--
FindX11.cmake
34.81
KB
-rw-r--r--
FindXCTest.cmake
7.19
KB
-rw-r--r--
FindXMLRPC.cmake
3.98
KB
-rw-r--r--
FindXalanC.cmake
5.85
KB
-rw-r--r--
FindXercesC.cmake
5.53
KB
-rw-r--r--
FindZLIB.cmake
4.94
KB
-rw-r--r--
Findosg.cmake
1.88
KB
-rw-r--r--
FindosgAnimation.cmake
1.87
KB
-rw-r--r--
FindosgDB.cmake
1.77
KB
-rw-r--r--
FindosgFX.cmake
1.76
KB
-rw-r--r--
FindosgGA.cmake
1.77
KB
-rw-r--r--
FindosgIntrospection.cmake
1.96
KB
-rw-r--r--
FindosgManipulator.cmake
1.93
KB
-rw-r--r--
FindosgParticle.cmake
1.86
KB
-rw-r--r--
FindosgPresentation.cmake
2.02
KB
-rw-r--r--
FindosgProducer.cmake
1.87
KB
-rw-r--r--
FindosgQt.cmake
1.82
KB
-rw-r--r--
FindosgShadow.cmake
1.83
KB
-rw-r--r--
FindosgSim.cmake
1.77
KB
-rw-r--r--
FindosgTerrain.cmake
1.84
KB
-rw-r--r--
FindosgText.cmake
1.77
KB
-rw-r--r--
FindosgUtil.cmake
1.78
KB
-rw-r--r--
FindosgViewer.cmake
1.82
KB
-rw-r--r--
FindosgVolume.cmake
1.82
KB
-rw-r--r--
FindosgWidget.cmake
1.87
KB
-rw-r--r--
Findosg_functions.cmake
2.08
KB
-rw-r--r--
FindwxWidgets.cmake
42.99
KB
-rw-r--r--
FindwxWindows.cmake
23.82
KB
-rw-r--r--
FortranCInterface.cmake
14.18
KB
-rw-r--r--
GNUInstallDirs.cmake
16.67
KB
-rw-r--r--
GenerateExportHeader.cmake
15.23
KB
-rw-r--r--
GetPrerequisites.cmake
33.28
KB
-rw-r--r--
GoogleTest.cmake
23.34
KB
-rw-r--r--
GoogleTestAddTests.cmake
5.95
KB
-rw-r--r--
ITKCompatibility.cmake
224
B
-rw-r--r--
InstallRequiredSystemLibraries...
30.45
KB
-rw-r--r--
KDE3Macros.cmake
12.39
KB
-rw-r--r--
MacOSXBundleInfo.plist.in
1.19
KB
-rw-r--r--
MacOSXFrameworkInfo.plist.in
886
B
-rw-r--r--
MacroAddFileDependencies.cmake
848
B
-rw-r--r--
MatlabTestsRedirect.cmake
3.39
KB
-rw-r--r--
ProcessorCount.cmake
8.54
KB
-rw-r--r--
Qt4ConfigDependentSettings.cma...
7.61
KB
-rw-r--r--
Qt4Macros.cmake
18.79
KB
-rw-r--r--
RepositoryInfo.txt.in
56
B
-rw-r--r--
SelectLibraryConfigurations.cm...
3.21
KB
-rw-r--r--
Squish4RunTestCase.bat
648
B
-rw-r--r--
Squish4RunTestCase.sh
631
B
-rwxr-xr-x
SquishRunTestCase.bat
219
B
-rw-r--r--
SquishRunTestCase.sh
272
B
-rwxr-xr-x
SquishTestScript.cmake
3.41
KB
-rw-r--r--
SystemInformation.cmake
3.12
KB
-rw-r--r--
SystemInformation.in
4.59
KB
-rw-r--r--
TestBigEndian.cmake
5.27
KB
-rw-r--r--
TestCXXAcceptsFlag.cmake
1.43
KB
-rw-r--r--
TestEndianess.c.in
871
B
-rw-r--r--
TestForANSIForScope.cmake
1.45
KB
-rw-r--r--
TestForANSIStreamHeaders.cmake
1.04
KB
-rw-r--r--
TestForANSIStreamHeaders.cxx
61
B
-rw-r--r--
TestForAnsiForScope.cxx
96
B
-rw-r--r--
TestForSSTREAM.cmake
1.4
KB
-rw-r--r--
TestForSSTREAM.cxx
150
B
-rw-r--r--
TestForSTDNamespace.cmake
1.37
KB
-rw-r--r--
TestForSTDNamespace.cxx
76
B
-rw-r--r--
UseEcos.cmake
9.7
KB
-rw-r--r--
UseJava.cmake
61.87
KB
-rw-r--r--
UsePkgConfig.cmake
2.65
KB
-rw-r--r--
UseQt4.cmake
3.62
KB
-rw-r--r--
UseSWIG.cmake
40.72
KB
-rw-r--r--
Use_wxWindows.cmake
2.1
KB
-rw-r--r--
UsewxWidgets.cmake
3.03
KB
-rw-r--r--
VTKCompatibility.cmake
1.78
KB
-rw-r--r--
WriteBasicConfigVersionFile.cm...
1.65
KB
-rw-r--r--
WriteCompilerDetectionHeader.c...
30.97
KB
-rw-r--r--
ecos_clean.cmake
492
B
-rw-r--r--
exportheader.cmake.in
1.08
KB
-rw-r--r--
kde3init_dummy.cpp.in
227
B
-rw-r--r--
kde3uic.cmake
723
B
-rw-r--r--
readme.txt
233
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : CMakeDetermineCUDACompiler.cmake
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying # file Copyright.txt or https://cmake.org/licensing for details. include(${CMAKE_ROOT}/Modules/CMakeDetermineCompiler.cmake) include(${CMAKE_ROOT}/Modules/CMakeParseImplicitLinkInfo.cmake) if( NOT ( ("${CMAKE_GENERATOR}" MATCHES "Make") OR ("${CMAKE_GENERATOR}" MATCHES "Ninja") OR ("${CMAKE_GENERATOR}" MATCHES "Visual Studio (1|[9][0-9])") ) ) message(FATAL_ERROR "CUDA language not currently supported by \"${CMAKE_GENERATOR}\" generator") endif() if(${CMAKE_GENERATOR} MATCHES "Visual Studio") if(DEFINED ENV{CUDAHOSTCXX} OR DEFINED CMAKE_CUDA_HOST_COMPILER) message(WARNING "Visual Studio does not support specifying CUDAHOSTCXX or CMAKE_CUDA_HOST_COMPILER. Using the C++ compiler provided by Visual Studio.") endif() else() if(NOT CMAKE_CUDA_COMPILER) set(CMAKE_CUDA_COMPILER_INIT NOTFOUND) # prefer the environment variable CUDACXX if(NOT $ENV{CUDACXX} STREQUAL "") get_filename_component(CMAKE_CUDA_COMPILER_INIT $ENV{CUDACXX} PROGRAM PROGRAM_ARGS CMAKE_CUDA_FLAGS_ENV_INIT) if(CMAKE_CUDA_FLAGS_ENV_INIT) set(CMAKE_CUDA_COMPILER_ARG1 "${CMAKE_CUDA_FLAGS_ENV_INIT}" CACHE STRING "Arguments to CXX compiler") endif() if(NOT EXISTS ${CMAKE_CUDA_COMPILER_INIT}) message(FATAL_ERROR "Could not find compiler set in environment variable CUDACXX:\n$ENV{CUDACXX}.\n${CMAKE_CUDA_COMPILER_INIT}") endif() endif() # finally list compilers to try if(NOT CMAKE_CUDA_COMPILER_INIT) set(CMAKE_CUDA_COMPILER_LIST nvcc) endif() set(_CMAKE_CUDA_COMPILER_PATHS "$ENV{CUDA_PATH}/bin") _cmake_find_compiler(CUDA) unset(_CMAKE_CUDA_COMPILER_PATHS) else() _cmake_find_compiler_path(CUDA) endif() mark_as_advanced(CMAKE_CUDA_COMPILER) #Allow the user to specify a host compiler except for Visual Studio if(NOT $ENV{CUDAHOSTCXX} STREQUAL "") get_filename_component(CMAKE_CUDA_HOST_COMPILER $ENV{CUDAHOSTCXX} PROGRAM) if(NOT EXISTS ${CMAKE_CUDA_HOST_COMPILER}) message(FATAL_ERROR "Could not find compiler set in environment variable CUDAHOSTCXX:\n$ENV{CUDAHOSTCXX}.\n${CMAKE_CUDA_HOST_COMPILER}") endif() endif() endif() if(NOT "$ENV{CUDAARCHS}" STREQUAL "") set(CMAKE_CUDA_ARCHITECTURES "$ENV{CUDAARCHS}" CACHE STRING "CUDA architectures") endif() # Build a small source file to identify the compiler. if(NOT CMAKE_CUDA_COMPILER_ID_RUN) set(CMAKE_CUDA_COMPILER_ID_RUN 1) include(${CMAKE_ROOT}/Modules/CMakeDetermineCompilerId.cmake) if(${CMAKE_GENERATOR} MATCHES "Visual Studio") # We will not know CMAKE_CUDA_COMPILER until the main compiler id step # below extracts it, but we do know that the compiler id will be NVIDIA. set(CMAKE_CUDA_COMPILER_ID "NVIDIA") else() # We determine the vendor to help with find the toolkit and use the right flags for detection right away. # The main compiler identification is still needed below to extract other information. list(APPEND CMAKE_CUDA_COMPILER_ID_VENDORS NVIDIA Clang) set(CMAKE_CUDA_COMPILER_ID_VENDOR_REGEX_NVIDIA "nvcc: NVIDIA \\(R\\) Cuda compiler driver") set(CMAKE_CUDA_COMPILER_ID_VENDOR_REGEX_Clang "(clang version)") CMAKE_DETERMINE_COMPILER_ID_VENDOR(CUDA "--version") if(CMAKE_CUDA_COMPILER_ID STREQUAL "Clang" AND WIN32) message(FATAL_ERROR "Clang with CUDA is not yet supported on Windows. See CMake issue #20776.") endif() # Find the CUDA toolkit. We store the CMAKE_CUDA_COMPILER_TOOLKIT_ROOT and CMAKE_CUDA_COMPILER_LIBRARY_ROOT # in CMakeCUDACompiler.cmake, so FindCUDAToolkit can avoid searching on future runs and the toolkit stays the same. # This is very similar to FindCUDAToolkit, but somewhat simplified since we can issue fatal errors # if we fail to find things we need and we don't need to account for searching the libraries. # For NVCC we can easily deduce the SDK binary directory from the compiler path. if(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA") set(_CUDA_NVCC_EXECUTABLE "${CMAKE_CUDA_COMPILER}") else() # Search using CUDAToolkit_ROOT and then CUDA_PATH for equivalence with FindCUDAToolkit. # In FindCUDAToolkit CUDAToolkit_ROOT is searched automatically due to being in a find_package(). # First we search candidate non-default paths to give them priority. find_program(_CUDA_NVCC_EXECUTABLE NAMES nvcc nvcc.exe PATHS ${CUDAToolkit_ROOT} ENV CUDAToolkit_ROOT ENV CUDA_PATH PATH_SUFFIXES bin NO_DEFAULT_PATH ) # If we didn't find NVCC, then try the default paths. find_program(_CUDA_NVCC_EXECUTABLE NAMES nvcc nvcc.exe PATH_SUFFIXES bin ) # If the user specified CUDAToolkit_ROOT but nvcc could not be found, this is an error. if(NOT _CUDA_NVCC_EXECUTABLE AND (DEFINED CUDAToolkit_ROOT OR DEFINED ENV{CUDAToolkit_ROOT})) set(fail_base "Could not find nvcc executable in path specified by") if(DEFINED CUDAToolkit_ROOT) message(FATAL_ERROR "${fail_base} CUDAToolkit_ROOT=${CUDAToolkit_ROOT}") elseif(DEFINED ENV{CUDAToolkit_ROOT}) message(FATAL_ERROR "${fail_base} environment variable CUDAToolkit_ROOT=$ENV{CUDAToolkit_ROOT}") endif() endif() # CUDAToolkit_ROOT cmake/env variable not specified, try platform defaults. # # - Linux: /usr/local/cuda-X.Y # - macOS: /Developer/NVIDIA/CUDA-X.Y # - Windows: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y # # We will also search the default symlink location /usr/local/cuda first since # if CUDAToolkit_ROOT is not specified, it is assumed that the symlinked # directory is the desired location. if(NOT _CUDA_NVCC_EXECUTABLE) if(UNIX) if(NOT APPLE) set(platform_base "/usr/local/cuda-") else() set(platform_base "/Developer/NVIDIA/CUDA-") endif() else() set(platform_base "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v") endif() # Build out a descending list of possible cuda installations, e.g. file(GLOB possible_paths "${platform_base}*") # Iterate the glob results and create a descending list. set(versions) foreach(p ${possible_paths}) # Extract version number from end of string string(REGEX MATCH "[0-9][0-9]?\\.[0-9]$" p_version ${p}) if(IS_DIRECTORY ${p} AND p_version) list(APPEND versions ${p_version}) endif() endforeach() # Sort numerically in descending order, so we try the newest versions first. list(SORT versions COMPARE NATURAL ORDER DESCENDING) # With a descending list of versions, populate possible paths to search. set(search_paths) foreach(v ${versions}) list(APPEND search_paths "${platform_base}${v}") endforeach() # Force the global default /usr/local/cuda to the front on Unix. if(UNIX) list(INSERT search_paths 0 "/usr/local/cuda") endif() # Now search for nvcc again using the platform default search paths. find_program(_CUDA_NVCC_EXECUTABLE NAMES nvcc nvcc.exe PATHS ${search_paths} PATH_SUFFIXES bin ) # We are done with these variables now, cleanup. unset(platform_base) unset(possible_paths) unset(versions) unset(search_paths) if(NOT _CUDA_NVCC_EXECUTABLE) message(FATAL_ERROR "Failed to find nvcc.\nCompiler ${CMAKE_CUDA_COMPILER_ID} requires the CUDA toolkit. Please set the CUDAToolkit_ROOT variable.") endif() endif() endif() # Given that NVCC can be provided by multiple different sources (NVIDIA HPC SDK, CUDA Toolkit, distro) # each of which has a different layout, we need to extract the CUDA toolkit root from the compiler # itself, allowing us to support numerous different scattered toolkit layouts execute_process(COMMAND ${_CUDA_NVCC_EXECUTABLE} "-v" "__cmake_determine_cuda" OUTPUT_VARIABLE _CUDA_NVCC_OUT ERROR_VARIABLE _CUDA_NVCC_OUT) if(_CUDA_NVCC_OUT MATCHES "\\#\\$ TOP=([^\r\n]*)") get_filename_component(CMAKE_CUDA_COMPILER_TOOLKIT_ROOT "${CMAKE_MATCH_1}" ABSOLUTE) else() get_filename_component(CMAKE_CUDA_COMPILER_TOOLKIT_ROOT "${_CUDA_NVCC_EXECUTABLE}" DIRECTORY) get_filename_component(CMAKE_CUDA_COMPILER_TOOLKIT_ROOT "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}" DIRECTORY) endif() if(_CUDA_NVCC_OUT MATCHES "\\#\\$ NVVMIR_LIBRARY_DIR=([^\r\n]*)") get_filename_component(_CUDA_NVVMIR_LIBRARY_DIR "${CMAKE_MATCH_1}" ABSOLUTE) #We require the path to end in `/nvvm/libdevice' if(_CUDA_NVVMIR_LIBRARY_DIR MATCHES "nvvm/libdevice$") get_filename_component(_CUDA_NVVMIR_LIBRARY_DIR "${_CUDA_NVVMIR_LIBRARY_DIR}/../.." ABSOLUTE) set(CMAKE_CUDA_COMPILER_LIBRARY_ROOT_FROM_NVVMIR_LIBRARY_DIR "${_CUDA_NVVMIR_LIBRARY_DIR}") endif() unset(_CUDA_NVVMIR_LIBRARY_DIR) unset(_cuda_nvvmir_dir_name) endif() unset(_CUDA_NVCC_OUT) set(CMAKE_CUDA_DEVICE_LINKER "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}/bin/nvlink${CMAKE_EXECUTABLE_SUFFIX}") set(CMAKE_CUDA_FATBINARY "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}/bin/fatbinary${CMAKE_EXECUTABLE_SUFFIX}") # In a non-scattered installation the following are equivalent to CMAKE_CUDA_COMPILER_TOOLKIT_ROOT. # We first check for a non-scattered installation to prefer it over a scattered installation. # CMAKE_CUDA_COMPILER_LIBRARY_ROOT contains the device library. if(DEFINED CMAKE_CUDA_COMPILER_LIBRARY_ROOT_FROM_NVVMIR_LIBRARY_DIR) set(CMAKE_CUDA_COMPILER_LIBRARY_ROOT "${CMAKE_CUDA_COMPILER_LIBRARY_ROOT_FROM_NVVMIR_LIBRARY_DIR}") elseif(EXISTS "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}/nvvm/libdevice") set(CMAKE_CUDA_COMPILER_LIBRARY_ROOT "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}") elseif(CMAKE_SYSROOT_LINK AND EXISTS "${CMAKE_SYSROOT_LINK}/usr/lib/cuda/nvvm/libdevice") set(CMAKE_CUDA_COMPILER_LIBRARY_ROOT "${CMAKE_SYSROOT_LINK}/usr/lib/cuda") elseif(EXISTS "${CMAKE_SYSROOT}/usr/lib/cuda/nvvm/libdevice") set(CMAKE_CUDA_COMPILER_LIBRARY_ROOT "${CMAKE_SYSROOT}/usr/lib/cuda") else() message(FATAL_ERROR "Couldn't find CUDA library root.") endif() unset(CMAKE_CUDA_COMPILER_LIBRARY_ROOT_FROM_NVVMIR_LIBRARY_DIR) # CMAKE_CUDA_COMPILER_TOOLKIT_LIBRARY_ROOT contains the linking stubs necessary for device linking and other low-level library files. if(CMAKE_SYSROOT_LINK AND EXISTS "${CMAKE_SYSROOT_LINK}/usr/lib/nvidia-cuda-toolkit/bin/crt/link.stub") set(CMAKE_CUDA_COMPILER_TOOLKIT_LIBRARY_ROOT "${CMAKE_SYSROOT_LINK}/usr/lib/nvidia-cuda-toolkit") elseif(EXISTS "${CMAKE_SYSROOT}/usr/lib/nvidia-cuda-toolkit/bin/crt/link.stub") set(CMAKE_CUDA_COMPILER_TOOLKIT_LIBRARY_ROOT "${CMAKE_SYSROOT}/usr/lib/nvidia-cuda-toolkit") else() set(CMAKE_CUDA_COMPILER_TOOLKIT_LIBRARY_ROOT "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}") endif() endif() set(CMAKE_CUDA_COMPILER_ID_FLAGS_ALWAYS "-v") if(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA") set(nvcc_test_flags "--keep --keep-dir tmp") if(CMAKE_CUDA_HOST_COMPILER) string(APPEND nvcc_test_flags " -ccbin=\"${CMAKE_CUDA_HOST_COMPILER}\"") # If the user has specified a host compiler we should fail instead of trying without. # Succeeding detection without may result in confusing errors later on, see #21076. set(CMAKE_CUDA_COMPILER_ID_REQUIRE_SUCCESS ON) endif() elseif(CMAKE_CUDA_COMPILER_ID STREQUAL "Clang") set(clang_test_flags "--cuda-path=\"${CMAKE_CUDA_COMPILER_LIBRARY_ROOT}\"") if(CMAKE_CROSSCOMPILING) # Need to pass the host target and include directories if we're crosscompiling. string(APPEND clang_test_flags " --sysroot=\"${CMAKE_SYSROOT}\" --target=${CMAKE_CUDA_COMPILER_TARGET}") endif() endif() # Append user-specified architectures. if(CMAKE_CUDA_ARCHITECTURES) foreach(arch ${CMAKE_CUDA_ARCHITECTURES}) # Strip specifiers as PTX vs binary doesn't matter. string(REGEX MATCH "[0-9]+" arch_name "${arch}") string(APPEND clang_test_flags " --cuda-gpu-arch=sm_${arch_name}") string(APPEND nvcc_test_flags " -gencode=arch=compute_${arch_name},code=sm_${arch_name}") list(APPEND tested_architectures "${arch_name}") endforeach() # If the user has specified architectures we'll want to fail during compiler detection if they don't work. set(CMAKE_CUDA_COMPILER_ID_REQUIRE_SUCCESS ON) endif() if(CMAKE_CUDA_COMPILER_ID STREQUAL "Clang") if(NOT CMAKE_CUDA_ARCHITECTURES) # Clang doesn't automatically select an architecture supported by the SDK. # Try in reverse order of deprecation with the most recent at front (i.e. the most likely to work for new setups). foreach(arch "20" "30" "52") list(APPEND CMAKE_CUDA_COMPILER_ID_TEST_FLAGS_FIRST "${clang_test_flags} --cuda-gpu-arch=sm_${arch}") endforeach() endif() # If the user specified CMAKE_CUDA_ARCHITECTURES this will include all the architecture flags. # Otherwise this won't include any architecture flags and we'll fallback to Clang's defaults. list(APPEND CMAKE_CUDA_COMPILER_ID_TEST_FLAGS_FIRST "${clang_test_flags}") elseif(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA") list(APPEND CMAKE_CUDA_COMPILER_ID_TEST_FLAGS_FIRST "${nvcc_test_flags}") endif() # We perform compiler identification for a second time to extract implicit linking info and host compiler for NVCC. # We also use it to verify that CMAKE_CUDA_ARCHITECTURES and additionally on Clang that CUDA toolkit path works. # The latter could be done during compiler testing in the future to avoid doing this for Clang. # We need to unset the compiler ID otherwise CMAKE_DETERMINE_COMPILER_ID() doesn't work. set(CMAKE_CUDA_COMPILER_ID) set(CMAKE_CUDA_PLATFORM_ID) file(READ ${CMAKE_ROOT}/Modules/CMakePlatformId.h.in CMAKE_CUDA_COMPILER_ID_PLATFORM_CONTENT) CMAKE_DETERMINE_COMPILER_ID(CUDA CUDAFLAGS CMakeCUDACompilerId.cu) if(${CMAKE_GENERATOR} MATCHES "Visual Studio") # Now that we have the path to nvcc, we can compute the toolkit root. get_filename_component(CMAKE_CUDA_COMPILER_TOOLKIT_ROOT "${CMAKE_CUDA_COMPILER}" DIRECTORY) get_filename_component(CMAKE_CUDA_COMPILER_TOOLKIT_ROOT "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}" DIRECTORY) set(CMAKE_CUDA_COMPILER_LIBRARY_ROOT "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}") endif() _cmake_find_compiler_sysroot(CUDA) endif() set(_CMAKE_PROCESSING_LANGUAGE "CUDA") include(CMakeFindBinUtils) include(Compiler/${CMAKE_CUDA_COMPILER_ID}-FindBinUtils OPTIONAL) unset(_CMAKE_PROCESSING_LANGUAGE) if(MSVC_CUDA_ARCHITECTURE_ID) set(SET_MSVC_CUDA_ARCHITECTURE_ID "set(MSVC_CUDA_ARCHITECTURE_ID ${MSVC_CUDA_ARCHITECTURE_ID})") endif() if(${CMAKE_GENERATOR} MATCHES "Visual Studio") set(CMAKE_CUDA_HOST_LINK_LAUNCHER "${CMAKE_LINKER}") set(CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES "") set(CMAKE_CUDA_HOST_IMPLICIT_LINK_DIRECTORIES "") set(CMAKE_CUDA_HOST_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") # We do not currently detect CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES but we # do need to detect CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT from the compiler by # looking at which cudart library exists in the implicit link libraries passed # to the host linker. if(CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT MATCHES "link\\.exe [^\n]*cudart_static\\.lib") set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "STATIC") elseif(CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT MATCHES "link\\.exe [^\n]*cudart\\.lib") set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "SHARED") else() set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "NONE") endif() set(_SET_CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT \"${CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT}\")") elseif(CMAKE_CUDA_COMPILER_ID STREQUAL "Clang") if(NOT CMAKE_CUDA_ARCHITECTURES) # Find the architecture that we successfully compiled using and set it as the default. string(REGEX MATCH "-target-cpu sm_([0-9]+)" dont_care "${CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT}") set(detected_architecture "${CMAKE_MATCH_1}") else() string(REGEX MATCHALL "-target-cpu sm_([0-9]+)" target_cpus "${CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT}") foreach(cpu ${target_cpus}) string(REGEX MATCH "-target-cpu sm_([0-9]+)" dont_care "${cpu}") list(APPEND architectures "${CMAKE_MATCH_1}") endforeach() endif() # Find target directory when crosscompiling. if(CMAKE_CROSSCOMPILING) if(CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7-a") # Support for NVPACK set(_CUDA_TARGET_NAME "armv7-linux-androideabi") elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "arm") set(_CUDA_TARGET_NAME "armv7-linux-gnueabihf") elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64") if(ANDROID_ARCH_NAME STREQUAL "arm64") set(_CUDA_TARGET_NAME "aarch64-linux-androideabi") else() set(_CUDA_TARGET_NAME "aarch64-linux") endif() elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64") set(_CUDA_TARGET_NAME "x86_64-linux") endif() if(EXISTS "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}/targets/${_CUDA_TARGET_NAME}") set(_CUDA_TARGET_DIR "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}/targets/${_CUDA_TARGET_NAME}") endif() endif() # If not already set we can simply use the toolkit root or it's a scattered installation. if(NOT _CUDA_TARGET_DIR) set(_CUDA_TARGET_DIR "${CMAKE_CUDA_COMPILER_TOOLKIT_ROOT}") endif() # We can't use find_library() yet at this point, so try a few guesses. if(EXISTS "${_CUDA_TARGET_DIR}/lib64") set(_CUDA_LIBRARY_DIR "${_CUDA_TARGET_DIR}/lib64") elseif(EXISTS "${_CUDA_TARGET_DIR}/lib/x64") set(_CUDA_LIBRARY_DIR "${_CUDA_TARGET_DIR}/lib/x64") elseif(EXISTS "${_CUDA_TARGET_DIR}/lib") set(_CUDA_LIBRARY_DIR "${_CUDA_TARGET_DIR}/lib") else() message(FATAL_ERROR "Unable to find _CUDA_LIBRARY_DIR based on _CUDA_TARGET_DIR=${_CUDA_TARGET_DIR}") endif() # _CUDA_TARGET_DIR always points to the directory containing the include directory. # On a scattered installation /usr, on a non-scattered something like /usr/local/cuda or /usr/local/cuda-10.2/targets/aarch64-linux. if(EXISTS "${_CUDA_TARGET_DIR}/include/cuda_runtime.h") set(_CUDA_INCLUDE_DIR "${_CUDA_TARGET_DIR}/include") else() message(FATAL_ERROR "Unable to find cuda_runtime.h in \"${_CUDA_TARGET_DIR}/include\" for _CUDA_INCLUDE_DIR.") endif() # Clang does not add any CUDA SDK libraries or directories when invoking the host linker. # Add the CUDA toolkit library directory ourselves so that linking works. # The CUDA runtime libraries are handled elsewhere by CMAKE_CUDA_RUNTIME_LIBRARY. set(CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES "${_CUDA_INCLUDE_DIR}") set(CMAKE_CUDA_HOST_IMPLICIT_LINK_DIRECTORIES "${_CUDA_LIBRARY_DIR}") set(CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES "") set(CMAKE_CUDA_HOST_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") elseif(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA") set(_nvcc_log "") string(REPLACE "\r" "" _nvcc_output_orig "${CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT}") if(_nvcc_output_orig MATCHES "#\\\$ +PATH= *([^\n]*)\n") set(_nvcc_path "${CMAKE_MATCH_1}") string(APPEND _nvcc_log " found 'PATH=' string: [${_nvcc_path}]\n") string(REPLACE ":" ";" _nvcc_path "${_nvcc_path}") else() set(_nvcc_path "") string(REPLACE "\n" "\n " _nvcc_output_log "\n${_nvcc_output_orig}") string(APPEND _nvcc_log " no 'PATH=' string found in nvcc output:${_nvcc_output_log}\n") endif() if(_nvcc_output_orig MATCHES "#\\\$ +LIBRARIES= *([^\n]*)\n") set(_nvcc_libraries "${CMAKE_MATCH_1}") string(APPEND _nvcc_log " found 'LIBRARIES=' string: [${_nvcc_libraries}]\n") else() set(_nvcc_libraries "") string(REPLACE "\n" "\n " _nvcc_output_log "\n${_nvcc_output_orig}") string(APPEND _nvcc_log " no 'LIBRARIES=' string found in nvcc output:${_nvcc_output_log}\n") endif() set(_nvcc_link_line "") if(_nvcc_libraries) # Remove variable assignments. string(REGEX REPLACE "#\\\$ *[^= ]+=[^\n]*\n" "" _nvcc_output "${_nvcc_output_orig}") # Encode [] characters that break list expansion. string(REPLACE "[" "{==={" _nvcc_output "${_nvcc_output}") string(REPLACE "]" "}===}" _nvcc_output "${_nvcc_output}") # Split lines. string(REGEX REPLACE "\n+(#\\\$ )?" ";" _nvcc_output "${_nvcc_output}") foreach(line IN LISTS _nvcc_output) set(_nvcc_output_line "${line}") string(REPLACE "{==={" "[" _nvcc_output_line "${_nvcc_output_line}") string(REPLACE "}===}" "]" _nvcc_output_line "${_nvcc_output_line}") string(APPEND _nvcc_log " considering line: [${_nvcc_output_line}]\n") if("${_nvcc_output_line}" MATCHES "^ *nvlink") string(APPEND _nvcc_log " ignoring nvlink line\n") elseif(_nvcc_libraries) if("${_nvcc_output_line}" MATCHES "(@\"?((tmp/)?a\\.exe\\.res)\"?)") set(_nvcc_link_res_arg "${CMAKE_MATCH_1}") set(_nvcc_link_res_file "${CMAKE_MATCH_2}") set(_nvcc_link_res "${CMAKE_PLATFORM_INFO_DIR}/CompilerIdCUDA/${_nvcc_link_res_file}") if(EXISTS "${_nvcc_link_res}") file(READ "${_nvcc_link_res}" _nvcc_link_res_content) string(REPLACE "${_nvcc_link_res_arg}" "${_nvcc_link_res_content}" _nvcc_output_line "${_nvcc_output_line}") endif() endif() string(FIND "${_nvcc_output_line}" "${_nvcc_libraries}" _nvcc_libraries_pos) if(NOT _nvcc_libraries_pos EQUAL -1) set(_nvcc_link_line "${_nvcc_output_line}") string(APPEND _nvcc_log " extracted link line: [${_nvcc_link_line}]\n") endif() endif() endforeach() endif() if(_nvcc_link_line) if("x${CMAKE_CUDA_SIMULATE_ID}" STREQUAL "xMSVC") set(CMAKE_CUDA_HOST_LINK_LAUNCHER "${CMAKE_LINKER}") else() #extract the compiler that is being used for linking separate_arguments(_nvcc_link_line_args UNIX_COMMAND "${_nvcc_link_line}") list(GET _nvcc_link_line_args 0 _nvcc_host_link_launcher) if(IS_ABSOLUTE "${_nvcc_host_link_launcher}") string(APPEND _nvcc_log " extracted link launcher absolute path: [${_nvcc_host_link_launcher}]\n") set(CMAKE_CUDA_HOST_LINK_LAUNCHER "${_nvcc_host_link_launcher}") else() string(APPEND _nvcc_log " extracted link launcher name: [${_nvcc_host_link_launcher}]\n") find_program(_nvcc_find_host_link_launcher NAMES ${_nvcc_host_link_launcher} PATHS ${_nvcc_path} NO_DEFAULT_PATH) find_program(_nvcc_find_host_link_launcher NAMES ${_nvcc_host_link_launcher}) if(_nvcc_find_host_link_launcher) string(APPEND _nvcc_log " found link launcher absolute path: [${_nvcc_find_host_link_launcher}]\n") set(CMAKE_CUDA_HOST_LINK_LAUNCHER "${_nvcc_find_host_link_launcher}") else() string(APPEND _nvcc_log " could not find link launcher absolute path\n") set(CMAKE_CUDA_HOST_LINK_LAUNCHER "${_nvcc_host_link_launcher}") endif() unset(_nvcc_find_host_link_launcher CACHE) endif() endif() #prefix the line with cuda-fake-ld so that implicit link info believes it is #a link line set(_nvcc_link_line "cuda-fake-ld ${_nvcc_link_line}") CMAKE_PARSE_IMPLICIT_LINK_INFO("${_nvcc_link_line}" CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES CMAKE_CUDA_HOST_IMPLICIT_LINK_DIRECTORIES CMAKE_CUDA_HOST_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES log "${CMAKE_CUDA_IMPLICIT_OBJECT_REGEX}") # Detect CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT from the compiler by looking at which # cudart library exists in the implicit link libraries passed to the host linker. # This is required when a project sets the cuda runtime library as part of the # initial flags. if(";${CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES};" MATCHES [[;cudart_static(\.lib)?;]]) set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "STATIC") elseif(";${CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES};" MATCHES [[;cudart(\.lib)?;]]) set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "SHARED") else() set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "NONE") endif() set(_SET_CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT "set(CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT \"${CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT}\")") file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log "Parsed CUDA nvcc implicit link information from above output:\n${_nvcc_log}\n${log}\n\n") else() file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log "Failed to parse CUDA nvcc implicit link information:\n${_nvcc_log}\n\n") message(FATAL_ERROR "Failed to extract nvcc implicit link line.") endif() endif() # CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES is detected above as the list of # libraries that the CUDA compiler implicitly passes to the host linker. # CMake invokes the host linker directly and so needs to pass these libraries. # We filter out those that should not be passed unconditionally both here # and from CMAKE_CUDA_IMPLICIT_LINK_LIBRARIES in CMakeTestCUDACompiler. set(CMAKE_CUDA_IMPLICIT_LINK_LIBRARIES_EXCLUDE # The CUDA runtime libraries are controlled by CMAKE_CUDA_RUNTIME_LIBRARY. cudart cudart.lib cudart_static cudart_static.lib cudadevrt cudadevrt.lib # Dependencies of the CUDA static runtime library on Linux hosts. rt pthread dl ) list(REMOVE_ITEM CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES ${CMAKE_CUDA_IMPLICIT_LINK_LIBRARIES_EXCLUDE}) if(CMAKE_CUDA_COMPILER_SYSROOT) string(CONCAT _SET_CMAKE_CUDA_COMPILER_SYSROOT "set(CMAKE_CUDA_COMPILER_SYSROOT \"${CMAKE_CUDA_COMPILER_SYSROOT}\")\n" "set(CMAKE_COMPILER_SYSROOT \"${CMAKE_CUDA_COMPILER_SYSROOT}\")") else() set(_SET_CMAKE_CUDA_COMPILER_SYSROOT "") endif() # Determine CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES if(CMAKE_CUDA_COMPILER_ID STREQUAL "NVIDIA") set(CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES) string(REPLACE "\r" "" _nvcc_output_orig "${CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT}") if(_nvcc_output_orig MATCHES "#\\\$ +INCLUDES= *([^\n]*)\n") set(_nvcc_includes "${CMAKE_MATCH_1}") string(APPEND _nvcc_log " found 'INCLUDES=' string: [${_nvcc_includes}]\n") else() set(_nvcc_includes "") string(REPLACE "\n" "\n " _nvcc_output_log "\n${_nvcc_output_orig}") string(APPEND _nvcc_log " no 'INCLUDES=' string found in nvcc output:${_nvcc_output_log}\n") endif() if(_nvcc_includes) # across all operating system each include directory is prefixed with -I separate_arguments(_nvcc_output NATIVE_COMMAND "${_nvcc_includes}") foreach(line IN LISTS _nvcc_output) string(REGEX REPLACE "^-I" "" line "${line}") get_filename_component(line "${line}" ABSOLUTE) list(APPEND CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES "${line}") endforeach() file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log "Parsed CUDA nvcc include information from above output:\n${_nvcc_log}\n${log}\n\n") else() file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log "Failed to detect CUDA nvcc include information:\n${_nvcc_log}\n\n") endif() # Parse default CUDA architecture. cmake_policy(GET CMP0104 _CUDA_CMP0104) if(NOT CMAKE_CUDA_ARCHITECTURES AND _CUDA_CMP0104 STREQUAL "NEW") string(REGEX MATCH "arch[ =]compute_([0-9]+)" dont_care "${CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT}") set(detected_architecture "${CMAKE_MATCH_1}") elseif(CMAKE_CUDA_ARCHITECTURES) string(REGEX MATCHALL "-arch compute_([0-9]+)" target_cpus "${CMAKE_CUDA_COMPILER_PRODUCED_OUTPUT}") foreach(cpu ${target_cpus}) string(REGEX MATCH "-arch compute_([0-9]+)" dont_care "${cpu}") list(APPEND architectures "${CMAKE_MATCH_1}") endforeach() endif() endif() # If the user didn't set the architectures, then set them to a default. # If the user did, then make sure those architectures worked. if(DEFINED detected_architecture AND "${CMAKE_CUDA_ARCHITECTURES}" STREQUAL "") set(CMAKE_CUDA_ARCHITECTURES "${detected_architecture}" CACHE STRING "CUDA architectures") if(NOT CMAKE_CUDA_ARCHITECTURES) message(FATAL_ERROR "Failed to find a working CUDA architecture.") endif() elseif(architectures) # Sort since order mustn't matter. list(SORT architectures) list(SORT tested_architectures) # We don't distinguish real/virtual architectures during testing. # For "70-real;70-virtual" we detect "70" as working and tested_architectures is "70;70". # Thus we need to remove duplicates before checking if they're equal. list(REMOVE_DUPLICATES tested_architectures) if(NOT "${architectures}" STREQUAL "${tested_architectures}") message(FATAL_ERROR "The CMAKE_CUDA_ARCHITECTURES:\n" " ${CMAKE_CUDA_ARCHITECTURES}\n" "do not all work with this compiler. Try:\n" " ${architectures}\n" "instead.") endif() endif() # configure all variables set in this file configure_file(${CMAKE_ROOT}/Modules/CMakeCUDACompiler.cmake.in ${CMAKE_PLATFORM_INFO_DIR}/CMakeCUDACompiler.cmake @ONLY ) # Don't leak variables unnecessarily to user code. unset(_CUDA_INCLUDE_DIR CACHE) unset(_CUDA_NVCC_EXECUTABLE CACHE) unset(_CUDA_LIBRARY_DIR) unset(_CUDA_TARGET_DIR) unset(_CUDA_TARGET_NAME) set(CMAKE_CUDA_COMPILER_ENV_VAR "CUDACXX") set(CMAKE_CUDA_HOST_COMPILER_ENV_VAR "CUDAHOSTCXX")
Close