CMake/Modules
Brad King 56d4619984 Remove non-language implicit link dependencies
Some compilers use implicit link options of the form

  -lcrt*.o
  -lgcc*
  -lSystem      (on Mac)
  -lSystemStubs (on Mac)

that provide system-wide symbols not specific to any language.
These need not be listed explicitly for mixed-language linking.

We teach CMake to remove the above items from the implicit library list
of each language.  This change makes it possible to mix GNU compiler
versions in some cases.
2009-11-05 12:17:08 -05:00
..
Compiler Add support for the g95 Fortran compiler 2009-10-23 08:25:43 -04:00
FindCUDA Fix Xcode build. 2009-10-06 22:52:52 -04:00
FortranCInterface FortranCInterface: Mangling for Intel on Windows 2009-10-05 16:30:58 -04:00
Platform Fix flags for Intel Fortran on Windows 2009-10-29 10:06:10 -04:00
AddFileDependencies.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
BundleUtilities.cmake Fix issue #9412 - remove RPATH from files copied by BundleUtilities.cmake on Linux. Thanks to Clinton Stimpson for the patch. 2009-09-28 17:43:52 -04:00
CMake.cmake Add missing copyright notice to CMake.cmake module 2009-10-01 14:05:33 -04:00
CMakeASM-ATTInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeASMCompiler.cmake.in
CMakeASMInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeASM_MASMInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeAddNewLanguage.txt
CMakeBackwardCompatibilityC.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeBackwardCompatibilityCXX.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeBorlandFindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeBuildSettings.cmake.in Drop old CMake "build settings" export/import 2009-09-08 15:55:41 -04:00
CMakeCCompiler.cmake.in Fix check for -isysroot on OS X 2009-09-19 10:14:31 -04:00
CMakeCCompilerABI.c ENH: Improve robustness of compiler INFO strings 2008-08-07 09:09:45 -04:00
CMakeCCompilerId.c.in Teach compiler id about VisualAge -> XL rebranding 2009-08-07 10:13:07 -04:00
CMakeCInformation.cmake Use work-around from bug 4772 for C++ and Fortran 2009-10-06 11:06:38 -04:00
CMakeCXXCompiler.cmake.in Fix check for -isysroot on OS X 2009-09-19 10:14:31 -04:00
CMakeCXXCompilerABI.cpp ENH: Improve robustness of compiler INFO strings 2008-08-07 09:09:45 -04:00
CMakeCXXCompilerId.cpp.in Teach compiler id about VisualAge -> XL rebranding 2009-08-07 10:13:07 -04:00
CMakeCXXInformation.cmake Use work-around from bug 4772 for C++ and Fortran 2009-10-06 11:06:38 -04:00
CMakeCommonLanguageInclude.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeCompilerABI.h ENH: Remove sparcv9 architecture subdir added earlier. The new implicit link directory policy takes care of the problem. 2008-01-23 17:53:18 -05:00
CMakeConfigurableFile.in
CMakeDependentOption.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineASM-ATTCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineASMCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineASM_MASMCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineCCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineCXXCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineCompilerABI.cmake Log implicit link information parsing actions 2009-10-06 15:16:12 -04:00
CMakeDetermineCompilerId.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineFortranCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineJavaCompiler.cmake ENH: FIX 0009777. This should sync FindJava and CMakeDetermineJavaCompiler.cmake now 2009-10-30 11:55:57 -04:00
CMakeDetermineRCCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeDetermineSystem.cmake Support GNU/kFreeBSD 2009-10-05 10:26:50 -04:00
CMakeDetermineVSServicePack.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeExportBuildSettings.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFindBinUtils.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFindCodeBlocks.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFindEclipseCDT4.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFindFrameworks.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFindKDevelop3.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFindWMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFindXCode.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeForceCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeFortranCompiler.cmake.in Pass Fortran90 test result to try-compile 2009-07-30 13:46:51 -04:00
CMakeFortranCompilerABI.F ENH: Create Fortran ABI detection framework 2009-07-13 11:24:01 -04:00
CMakeFortranCompilerId.F.in Add support for the g95 Fortran compiler 2009-10-23 08:25:43 -04:00
CMakeFortranInformation.cmake Use work-around from bug 4772 for C++ and Fortran 2009-10-06 11:06:38 -04:00
CMakeGenericSystem.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeImportBuildSettings.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeJavaCompiler.cmake.in
CMakeJavaInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeMSYSFindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeMinGWFindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeNMakeFindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeParseImplicitLinkInfo.cmake Remove non-language implicit link dependencies 2009-11-05 12:17:08 -05:00
CMakePlatformId.h.in ENH: add initial support for HAIKU OS from bug# 7425 2008-09-15 17:53:28 -04:00
CMakePrintSystemInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeRCCompiler.cmake.in
CMakeRCInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeSystem.cmake.in
CMakeSystemSpecificInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestASM-ATTCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestASMCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestASM_MASMCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestCCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestCXXCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestForFreeVC.cxx
CMakeTestFortranCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestGNU.c
CMakeTestJavaCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeTestNMakeCLVersion.c
CMakeTestRCCompiler.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeUnixFindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVS6BackwardCompatibility.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVS6FindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVS7BackwardCompatibility.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVS7FindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVS8FindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVS9FindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVS10FindMake.cmake Better fix for finding the MSBuild that matches the VS 10 install. 2009-10-20 17:24:23 -04:00
CMakeVS71FindMake.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CMakeVerifyManifest.cmake clean up to work with manifest files better. 2009-10-28 10:29:24 -04:00
CPack.DS_Store.in
CPack.Description.plist.in
CPack.Info.plist.in ENH: One more patch from Doug Gregor including PackageMaker functionality for componentized-for-the-end-user and download-some-bit-on-demand installers. 2008-07-09 13:38:56 -04:00
CPack.OSXScriptLauncher.in BUG: Fix issue #7833: Add file extension handling to CPack generated installers for OSXX11 applications. Also modify the X11 test to build such an installer on Mac builds that test CPack and have X11 available. Thanks to Wes Turner for the patch. 2009-01-21 11:54:30 -05:00
CPack.OSXScriptLauncher.rsrc.in BUG: Fix issue #7833: Add file extension handling to CPack generated installers for OSXX11 applications. Also modify the X11 test to build such an installer on Mac builds that test CPack and have X11 available. Thanks to Wes Turner for the patch. 2009-01-21 11:54:30 -05:00
CPack.OSXX11.Info.plist.in BUG: Fix issue #7833: Add file extension handling to CPack generated installers for OSXX11 applications. Also modify the X11 test to build such an installer on Mac builds that test CPack and have X11 available. Thanks to Wes Turner for the patch. 2009-01-21 11:54:30 -05:00
CPack.OSXX11.main.scpt.in BUG: Fix issue #7833: Add file extension handling to CPack generated installers for OSXX11 applications. Also modify the X11 test to build such an installer on Mac builds that test CPack and have X11 available. Thanks to Wes Turner for the patch. 2009-01-21 11:54:30 -05:00
CPack.RuntimeScript.in CPack: Fix bash-isms in launch script 2009-10-05 13:14:30 -04:00
CPack.STGZ_Header.sh.in
CPack.VolumeIcon.icns.in
CPack.background.png.in ENH: add file back bug use cmake image 2009-03-04 12:30:23 -05:00
CPack.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CPack.distribution.dist.in BUG: Workaround PackageMaker 3.0 issue for new CPack components feature. Thanks again to Doug Gregor for the patch. 2008-06-18 07:08:33 -04:00
CPackDeb.cmake FIX: BUG: 0009124. Fix documentation 2009-10-30 12:06:53 -04:00
CPackRPM.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CPackZIP.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CTest.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CTestScriptMode.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CTestTargets.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckCCompilerFlag.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckCSourceCompiles.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckCSourceRuns.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckCXXCompilerFlag.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckCXXSourceCompiles.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckCXXSourceRuns.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckForPthreads.c ENH: add initial support for HAIKU OS from bug# 7425 2008-09-15 17:53:28 -04:00
CheckFortranFunctionExists.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckFunctionExists.c
CheckFunctionExists.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckIncludeFile.c.in
CheckIncludeFile.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckIncludeFile.cxx.in
CheckIncludeFileCXX.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckIncludeFiles.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckLibraryExists.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckLibraryExists.lists.in
CheckSizeOf.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckStructHasMember.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckSymbolExists.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckTypeSize.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
CheckTypeSizeC.c.in ENH: Improve robustness of compiler INFO strings 2008-08-07 09:09:45 -04:00
CheckVariableExists.c
CheckVariableExists.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
Dart.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
DartConfiguration.tcl.in CTest-side support for compiler name and compiler version information. Requires CDash update to show on CDash. 2009-10-12 11:06:49 -04:00
Documentation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
DummyCXXFile.cxx
ExternalProject.cmake Eliminate ExternalProject's use of CMAKE_CFG_INTDIR subdir for Makefile generators. It was causing problems with parallel make -j invocations. Keep it for multi-configuration build systems so that Debug and Release stamp files remain separate. 2009-09-30 16:22:36 -04:00
FLTKCompatibility.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
FeatureSummary.cmake make it more robust wrt. #9621 2009-10-14 18:13:49 -04:00
FindALSA.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindASPELL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindAVIFile.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindBISON.cmake Fix module docs to be manpage (groff) friendly 2009-10-05 10:28:05 -04:00
FindBLAS.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindBZip2.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindBoost.cmake fix for bug# 9751, add check for MSVC10 2009-10-21 21:34:24 -04:00
FindBullet.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCABLE.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCUDA.cmake Fix -fPIC from being used on executable object files. 2009-11-04 01:15:31 -05:00
FindCURL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCVS.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCoin3D.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCups.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCurses.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCxxTest.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindCygwin.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindDCMTK.cmake ENH: Make those variables advanced. 2009-11-02 09:15:04 -05:00
FindDart.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindDevIL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindDoxygen.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindEXPAT.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindFLEX.cmake Fix module docs to be manpage (groff) friendly 2009-10-05 10:28:05 -04:00
FindFLTK.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindFLTK2.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindFreetype.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGCCXML.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGDAL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGIF.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGLU.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGLUT.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGTK.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGTK2.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGTest.cmake Some bugfixes, also added public function for closer integration btwn GoogleTest & CTest, contributed by Dan Blezek. 2009-10-01 01:12:40 -04:00
FindGettext.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindGnuTLS.cmake Resolve #9685: Fix include dir to be correct path 2009-10-08 22:50:13 -04:00
FindGnuplot.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindHDF5.cmake Fixed bug in FindHDF5 caused by hdf5.h existing without H5pubconf.h. 2009-10-29 17:18:41 -04:00
FindHSPELL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindHTMLHelp.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindITK.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindImageMagick.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindJNI.cmake BUG: 0009817 cmake does not search in solaris subdirectory for JAVA_INCLUDE_PATH2. Thanks to Gaetan Lehmann for patch 2009-11-02 04:03:06 -05:00
FindJPEG.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindJasper.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindJava.cmake Add more documentation to module 2009-11-04 09:49:58 -05:00
FindKDE3.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindKDE4.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindLAPACK.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindLATEX.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindLibXml2.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindLibXslt.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindLua50.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindLua51.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindMFC.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindMPEG.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindMPEG2.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindMPI.cmake COMP: need to add quotes when using get_filename_component otherwise it will try to process NOT FOUND rather than an empty string when MPIEXEC is not found. 2009-10-27 13:10:01 -04:00
FindMatlab.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindMotif.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindOpenAL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindOpenGL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindOpenMP.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindOpenSSL.cmake FIX: BUG: 0008971 FindOpenSSL improvement. Teaches cmake to find openssl on win32. openssl comes with the crypto libs which are the important part of the openssl project. 2009-10-30 11:35:15 -04:00
FindOpenSceneGraph.cmake Fixes version detection using osg/Version on Mac OSX when OSG is installed as a framework 2009-10-20 07:55:48 -04:00
FindOpenThreads.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPHP4.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPNG.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPackageHandleStandardArgs.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPackageMessage.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPerl.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPerlLibs.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPhysFS.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPike.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPkgConfig.cmake Remove old license from FindPkgConfig.cmake module 2009-10-05 09:13:29 -04:00
FindProducer.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindProtobuf.cmake Fix module docs to be manpage (groff) friendly 2009-10-05 10:28:05 -04:00
FindPythonInterp.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindPythonLibs.cmake Fixed bug 8319, search for the Python shared library in the standard locations. 2009-10-19 10:39:29 -04:00
FindQt.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindQt3.cmake FindQt3: Prefer (moc|uic)-qt3 names over (moc|uic) 2009-10-05 10:25:36 -04:00
FindQt4.cmake Check for openssl-linked option with Qt 4.4+ before making ssl a dependency. 2009-10-07 18:51:39 -04:00
FindQuickTime.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindRTI.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindRuby.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSDL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSDL_image.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSDL_mixer.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSDL_net.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSDL_sound.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSDL_ttf.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSWIG.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSelfPackers.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindSquish.cmake fix whitespace, so documentation is formatted properly 2009-10-19 12:58:40 -04:00
FindSubversion.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindTCL.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindTIFF.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindTclStub.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindTclsh.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindThreads.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindUnixCommands.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindVTK.cmake Modernize FindVTK module 2009-10-07 14:48:22 -04:00
FindWget.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindWish.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindX11.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindXMLRPC.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindZLIB.cmake STYLE: respect convention (while being backward compat) 2009-10-30 12:17:25 -04:00
Findosg.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgAnimation.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgDB.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgFX.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgGA.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgIntrospection.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgManipulator.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgParticle.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgProducer.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgShadow.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgSim.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgTerrain.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgText.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgUtil.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgViewer.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgVolume.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindosgWidget.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
Findosg_functions.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindwxWidgets.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FindwxWindows.cmake Convert CMake find-modules to BSD License 2009-09-28 11:45:50 -04:00
FortranCInterface.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
GetPrerequisites.cmake Fix issue #9395 - only return true for .exe files on Windows from the is_file_executable function. Makes behavior of this function conceptually consistent with Mac and Linux behavior. Thanks to Clinton Stimpson for the patch. 2009-09-28 17:35:40 -04:00
ITKCompatibility.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
InstallRequiredSystemLibraries.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
KDE3Macros.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
MacOSXBundleInfo.plist.in ENH: Allow users to specify a custom Info.plist template 2008-05-17 12:53:56 -04:00
MacOSXFrameworkInfo.plist.in ENH: Create Info.plist files in OS X Frameworks 2008-09-02 12:06:32 -04:00
MacroAddFileDependencies.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
NSIS.InstallOptions.ini.in
NSIS.template.in Allow for /D to change install directory on the command line. 2009-10-26 17:14:56 -04:00
RepositoryInfo.txt.in ENH: First draft of add_external_project functionality. Tweaks, dashboard fixing, more tests and documentation certain to follow as it gets used by others... 2008-12-04 13:27:48 -05:00
SelectLibraryConfigurations.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
SquishRunTestCase.bat ENH: adding functionality for finding Squish, adding Squish tests from CMake, and running Squish tests from ctest 2008-12-08 17:39:30 -05:00
SquishRunTestCase.sh ENH: adding functionality for finding Squish, adding Squish tests from CMake, and running Squish tests from ctest 2008-12-08 17:39:30 -05:00
SquishTestScript.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
SystemInformation.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
SystemInformation.in
TestBigEndian.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
TestCXXAcceptsFlag.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
TestEndianess.c.in ENH: Improve robustness of compiler INFO strings 2008-08-07 09:09:45 -04:00
TestForANSIForScope.cmake Fix the documentation to say what it really does. Bug #9638 2009-10-02 08:44:51 -04:00
TestForANSIStreamHeaders.cmake Fix the documentation to say what it really does. Bug #9638 2009-10-02 08:44:51 -04:00
TestForANSIStreamHeaders.cxx
TestForAnsiForScope.cxx
TestForSSTREAM.cmake Fix the documentation to say what it really does. Bug #9638 2009-10-02 08:44:51 -04:00
TestForSSTREAM.cxx
TestForSTDNamespace.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
TestForSTDNamespace.cxx
UseEcos.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
UsePkgConfig.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
UseQt4.cmake QtHelp depends on QtNetwork 2009-10-01 16:12:39 -04:00
UseSWIG.cmake FIX: BUG: 0002199 Adding documentation for swig_generated_file_fullname 2009-10-30 11:13:00 -04:00
UseVTK40.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
UseVTKBuildSettings40.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
UseVTKConfig40.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
Use_wxWindows.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
UsewxWidgets.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
VTKCompatibility.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
ecos_clean.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
kde3init_dummy.cpp.in
kde3uic.cmake Convert CMake non-find modules to BSD License 2009-09-28 11:46:51 -04:00
readme.txt STYLE: minor documentation + typo 2009-11-02 11:50:33 -05:00

readme.txt

For more information about how to contribute modules to CMake, see this page:
http://www.itk.org/Wiki/CMake:Module_Maintainers

Note to authors of FindXXX.cmake files

We would like all FindXXX.cmake files to produce consistent variable names.

Please use the following consistent variable names for general use.

XXX_INCLUDE_DIRS        The final set of include directories listed in one variable for use by client code.  This should not be a cache entry.
XXX_LIBRARIES          	The libraries to link against to use XXX. These should include full paths.  This should not be a cache entry.
XXX_DEFINITIONS        	Definitions to use when compiling code that uses XXX. This really shouldn't include options such as (-DHAS_JPEG)that a client source-code file uses to decide whether to #include <jpeg.h>
XXX_EXECUTABLE         	Where to find the XXX tool.
XXX_YYY_EXECUTABLE     	Where to find the YYY tool that comes with XXX.
XXX_LIBRARY_DIRS        Optionally, the final set of library directories listed in one variable for use by client code.  This should not be a cache entry.
XXX_ROOT_DIR           	Where to find the base directory of XXX.
XXX_VERSION_YY		Expect Version YY if true. Make sure at most one of these is ever true.
XXX_WRAP_YY		If False, do not try to use the relevent CMake wrapping command.
XXX_YY_FOUND           	If False, optional YY part of XXX sytem is not available.
XXX_FOUND              	Set to false, or undefined, if we haven't found, or don't want to use XXX.
XXX_RUNTIME_LIBRARY_DIRS Optionally, the runtime library search path for use when running an executable linked to shared libraries.
                         The list should be used by user code to create the PATH on windows or LD_LIBRARY_PATH on unix.
                         This should not be a cache entry.
XXX_VERSION_STRING      A human-readable string containing the version of the package found, if any.
XXX_VERSION_MAJOR       The major version of the package found, if any.
XXX_VERSION_MINOR       The minor version of the package found, if any.
XXX_VERSION_PATCH       The patch version of the package found, if any.

You do not have to provide all of the above variables. You should provide XXX_FOUND under most circumstances. If XXX is a library, then  XXX_LIBRARIES, should also be defined, and XXX_INCLUDE_DIRS should usually be defined (I guess libm.a might be an exception)

The following names should not usually be used in CMakeLists.txt files, but they may be usefully modified in users' CMake Caches to control stuff.

XXX_LIBRARY		Name of XXX Library. A User may set this and XXX_INCLUDE_DIR to ignore to force non-use of XXX.
XXX_YY_LIBRARY		Name of YY library that is part of the XXX system. It may or may not be required to use XXX.
XXX_INCLUDE_DIR        	Where to find xxx.h, etc.  (XXX_INCLUDE_PATH was considered bad because a path includes an actual filename.)
XXX_YY_INCLUDE_DIR      Where to find xxx_yy.h, etc.

For tidiness's sake, try to keep as many options as possible out of the cache, leaving at least one option which can be used to disable use of the module, or locate a not-found library (e.g. XXX_ROOT_DIR). For the same reason, mark most cache options as advanced.

If you need other commands to do special things then it should still begin with XXX_. This gives a sort of namespace effect and keeps things tidy for the user. You should put comments describing all the exported settings, plus descriptions of any the users can use to control stuff.

You really should also provide backwards compatibility any old settings that were actually in use. Make sure you comment them as deprecated, so that no-one starts using them.

To correctly document a module, create a comment block at the top with # comments.  There are three types of comments that can be in the block:

1. The brief description of the module, this is done by:
# - a small description

2. A paragraph of text.  This is done with all text that has a single
space between the # and the text.  To create a new paragraph, just
put a # with no text on the line.

3. A verbatim line.  This is done with two spaces between the # and the text.

For example:

# - This is a cool module
# This module does really cool stuff.
# It can do even more than you think.
# 
# It even needs to paragraphs to tell you about it.
# And it defines the following variables:
#  VAR_COOL - this is great isn't it?
#  VAR_REALLY_COOL - cool right?
#

To have a .cmake file in this directory NOT show up in the
modules documentation, you should start the file with a blank
line.

A FindXXX.cmake module will typically be loaded by the command

  FIND_PACKAGE(XXX [major[.minor[.patch[.tweak]]]] [EXACT]
               [QUIET] [[REQUIRED|COMPONENTS] [components...]])

If any version numbers are given to the command it will set the
following variables before loading the module:

  XXX_FIND_VERSION       = full requested version string
  XXX_FIND_VERSION_MAJOR = major version if requested, else 0
  XXX_FIND_VERSION_MINOR = minor version if requested, else 0
  XXX_FIND_VERSION_PATCH = patch version if requested, else 0
  XXX_FIND_VERSION_TWEAK = tweak version if requested, else 0
  XXX_FIND_VERSION_COUNT = number of version components, 0 to 4
  XXX_FIND_VERSION_EXACT = true if EXACT option was given

If the find module supports versioning it should locate a version of
the package that is compatible with the version requested.  If a
compatible version of the package cannot be found the module should
not report success.  The version of the package found should be stored
in "XXX_VERSION..." version variables documented by the module.

If the QUIET option is given to the command it will set the variable
XXX_FIND_QUIETLY to true before loading the FindXXX.cmake module.  If
this variable is set the module should not complain about not being
able to find the package.  If the
REQUIRED option is given to the command it will set the variable
XXX_FIND_REQUIRED to true before loading the FindXXX.cmake module.  If
this variable is set the module should issue a FATAL_ERROR if the
package cannot be found.  For each package-specific component, say
YYY, listed after the REQUIRED option a variable XXX_FIND_REQUIRED_YYY
to true.  The set of components listed after either the REQUIRED
option or the COMPONENTS option will be specified in a
XXX_FIND_COMPONENTS variable.  This can be used by the FindXXX.cmake
module to determine which sub-components of the package must be found.
If neither the QUIET nor REQUIRED options are given then the
FindXXX.cmake module should look for the package and complain without
error if the module is not found.

To get this behaviour you can use the FIND_PACKAGE_HANDLE_STANDARD_ARGS() 
macro, as an example see FindJPEG.cmake.

For internal implementation, it's a generally accepted convention that variables starting with
underscore are for temporary use only. (variable starting with an underscore
are not intended as a reserved prefix).