CMake/Modules
Alexander Neundorf 61d3444f93 ENH: merge CMake-CrossCompileBasic to HEAD
-add a RESULT_VARIABLE to INCLUDE()
-add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
-have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
-use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
run the executables if they have a different suffix because they are
probably crosscompiled, but nevertheless it should be able to find them
-make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
-support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
-move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
-add support for stripping during install in cmake_install.cmake
-split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
-remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
-create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
-add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
list of directories which will be prepended to all search directories, right
now as a cmake variable, turning it into a global cmake property may need
some more work
-remove cmTestTestHandler::TryExecutable(), it's unused
-split cmFileCommand::HandleInstall() into slightly smaller functions

Alex
2007-05-17 13:20:44 -04:00
..
Platform ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
AddFileDependencies.cmake BUG: don't include MacroLibrary.cmake, but add a cmake module which implements ADD_FILE_DEPENDENCIES() 2006-03-20 12:29:56 -05:00
CMake.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeAddNewLanguage.txt ENH: clean up EnableLanguage try to fix problem where try compile runs cmake 2005-09-15 12:17:38 -04:00
CMakeBackwardCompatibilityC.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeBackwardCompatibilityCXX.cmake ENH: add support for watcom wmake and wcl386 2006-01-17 10:21:45 -05:00
CMakeBorlandFindMake.cmake determine CMAKE_MAKE_PROGRAM in EnableLanguage 2002-12-03 16:19:16 -05:00
CMakeBuildSettings.cmake.in ENH: Adding CMAKE_EXPORT_BUILD_SETTINGS and CMAKE_IMPORT_BUILD_SETTINGS macro. 2002-12-05 09:46:30 -05:00
CMakeCCompiler.cmake.in ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeCCompilerId.c ENH: fix up compiler id to be more robust 2007-05-17 10:07:51 -04:00
CMakeCInformation.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeCXXCompiler.cmake.in ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeCXXCompilerId.cpp ENH: fix up compiler id to be more robust 2007-05-17 10:07:51 -04:00
CMakeCXXInformation.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeCommonLanguageInclude.cmake BUG: fix for 3550 again 2006-07-26 13:19:34 -04:00
CMakeConfigurableFile.in ENH: Make modules use configure instead of file write 2006-02-23 09:58:07 -05:00
CMakeDependentOption.cmake ENH: Adding CMAKE_DEPENDENT_OPTION macro. 2006-10-19 14:48:12 -04:00
CMakeDetermineCCompiler.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeDetermineCXXCompiler.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeDetermineCompilerId.cmake ENH: fix up compiler id to be more robust 2007-05-17 10:07:51 -04:00
CMakeDetermineFortranCompiler.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeDetermineJavaCompiler.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CMakeDetermineRCCompiler.cmake BUG: Need to search for rc by default, not c++ compilers. 2006-08-31 10:46:02 -04:00
CMakeDetermineSystem.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeExportBuildSettings.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
CMakeFindBinUtils.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeFindFrameworks.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeFindWMake.cmake ENH: add support for watcom wmake and wcl386 2006-01-17 10:21:45 -05:00
CMakeFindXCode.cmake ENH: add trycompile code for xcode 2005-02-01 13:12:19 -05:00
CMakeFortranCompiler.cmake.in ENH: Merging CompilerId updates from branch CMake-Modules-CompilerId to the main tree. Changes between CMake-Modules-CompilerId-mp1 and CMake-Modules-CompilerId-mp2 are included. 2007-05-03 08:24:32 -04:00
CMakeFortranCompilerId.F90 ENH: Merging CompilerId updates from branch CMake-Modules-CompilerId to the main tree. Changes between CMake-Modules-CompilerId-mp1 and CMake-Modules-CompilerId-mp2 are included. 2007-05-03 08:24:32 -04:00
CMakeFortranInformation.cmake ENH: Merging CompilerId updates from branch CMake-Modules-CompilerId to the main tree. Changes between CMake-Modules-CompilerId-mp1 and CMake-Modules-CompilerId-mp2 are included. 2007-05-03 08:24:32 -04:00
CMakeGenericSystem.cmake ENH: Allow user project code to distinguish between an install prefix set on the command line and one set by CMake as a default. This is useful for changing the default prefix while still allowing the user to override it. 2006-10-16 13:58:17 -04:00
CMakeImportBuildSettings.cmake ENH: fix for case difference with nmake 2006-07-24 16:58:05 -04:00
CMakeJavaCompiler.cmake.in ENH: make sure flags set in CC or CXX environment variables stay with the compiler 2005-07-20 15:44:55 -04:00
CMakeJavaInformation.cmake ENH: fix java and add OBJECT_DIR support 2006-04-17 14:01:22 -04:00
CMakeLists.txt ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeMSYSFindMake.cmake ENH: better algorithm for looking for make and gcc on msys and mingw 2006-02-15 21:26:47 -05:00
CMakeMinGWFindMake.cmake ENH: better algorithm for looking for make and gcc on msys and mingw 2006-02-15 21:26:47 -05:00
CMakeNMakeFindMake.cmake determine CMAKE_MAKE_PROGRAM in EnableLanguage 2002-12-03 16:19:16 -05:00
CMakePlatformId.h ENH: Merging CompilerId implementation from branch CMake-Modules-CompilerId to the main tree. Changes between CMake-Modules-CompilerId-bp and CMake-Modules-CompilerId-mp1 are included. 2007-04-28 09:35:01 -04:00
CMakePrintSystemInformation.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeRCCompiler.cmake.in ENH: make sure flags set in CC or CXX environment variables stay with the compiler 2005-07-20 15:44:55 -04:00
CMakeRCInformation.cmake ENH: fix spelling errors 2006-02-27 12:14:10 -05:00
CMakeSystem.cmake.in ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeSystemSpecificInformation.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeTestCCompiler.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CMakeTestCXXCompiler.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CMakeTestForFreeVC.cxx ENH better test for free VC tools 2004-09-03 15:19:58 -04:00
CMakeTestFortranCompiler.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CMakeTestGNU.c BUG: fix problem where cmake thinks the intel compiler is gnu 2004-05-18 14:33:12 -04:00
CMakeTestJavaCompiler.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeTestNMakeCLVersion.c added test for whether pdbtype should be used for nmake 2003-08-05 09:55:20 -04:00
CMakeTestRCCompiler.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeUnixFindMake.cmake BUG: fix for 4188 look for smake as well as gmake and make 2007-02-20 15:14:04 -05:00
CMakeVCManifest.cmake ENH: Adding flags to force generation of manifest files when building with VC 8. 2006-08-15 15:33:20 -04:00
CMakeVCManifestExe.cmake BUG: use different commands for shared libraries and exe for manifest stuff fix for bug#4039 2006-11-11 14:04:29 -05:00
CMakeVS6BackwardCompatibility.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeVS6FindMake.cmake ENH: add correct flags for msvc generators 2006-04-10 13:46:37 -04:00
CMakeVS7BackwardCompatibility.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
CMakeVS7FindMake.cmake ENH: add correct flags for msvc generators 2006-04-10 13:46:37 -04:00
CMakeVS8FindMake.cmake ENH: add correct flags for msvc generators 2006-04-10 13:46:37 -04:00
CMakeVS71FindMake.cmake ENH: add correct flags for msvc generators 2006-04-10 13:46:37 -04:00
COPYING-CMAKE-SCRIPTS ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
CPack.DS_Store.in ENH: More work on the packaging. Add Applicaitons, add icons, etc 2007-02-13 14:13:51 -05:00
CPack.Description.plist.in ENH: More CPack stuff and fix zlib compression 2006-01-04 15:14:09 -05:00
CPack.Info.plist.in ENH: Add verbose flag to package maker and add CFBundleIdentifier string 2006-03-03 10:52:26 -05:00
CPack.OSXScriptLauncher.in ENH: First pass at CPack generator for OSX X11 applications. This are applications that require X11 to work. This is not really installed but a bundle packager 2007-01-10 15:30:26 -05:00
CPack.OSXX11.Info.plist.in ENH: First pass at CPack generator for OSX X11 applications. This are applications that require X11 to work. This is not really installed but a bundle packager 2007-01-10 15:30:26 -05:00
CPack.RuntimeScript.in ENH: Change permission for getdisplay.sh to make the runtimescript work 2007-01-10 18:33:03 -05:00
CPack.STGZ_Header.sh.in STYLE: Defautl answer for the license is no 2007-03-06 09:16:46 -05:00
CPack.VolumeIcon.icns.in ENH: More work on the packaging. Add Applicaitons, add icons, etc 2007-02-13 14:13:51 -05:00
CPack.background.png.in ENH: More work on the packaging. Add Applicaitons, add icons, etc 2007-02-13 14:13:51 -05:00
CPack.cmake ENH: More work on the packaging. Add Applicaitons, add icons, etc 2007-02-13 14:13:51 -05:00
CTest.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CTestTargets.cmake ENH: On Visual Studio and Xcode handle config type 2006-10-12 13:15:03 -04:00
CheckCCompilerFlag.cmake ENH: two macros to check whether the C/CXX compiler supports a given flag: 2006-09-18 17:55:22 -04:00
CheckCSourceCompiles.cmake BUG: Revert "Fix kwstyleSource/CTest/cmCTestBuildHandler.cxx" 2007-04-04 15:59:22 -04:00
CheckCSourceRuns.cmake BUG: Revert "Fix kwstyleSource/CTest/cmCTestBuildHandler.cxx" 2007-04-04 15:59:22 -04:00
CheckCXXCompilerFlag.cmake ENH: two macros to check whether the C/CXX compiler supports a given flag: 2006-09-18 17:55:22 -04:00
CheckCXXSourceCompiles.cmake STYLE: fix #3519 (incorrect comment) 2006-08-27 11:19:25 -04:00
CheckCXXSourceRuns.cmake ENH: fixs for check compile stuff from Oswald B. 2006-08-21 10:10:28 -04:00
CheckForPthreads.c ENH: merge in changes for beos support 2006-12-04 17:26:41 -05:00
CheckFunctionExists.c ENH: fix tests for non-ansi c on hp and remove warnings for ansi c 2004-04-15 08:22:19 -04:00
CheckFunctionExists.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CheckIncludeFile.c.in BUG: Fix signature of main to work on both strict ANSI and non-ANSI C compilers. 2006-05-18 10:28:12 -04:00
CheckIncludeFile.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CheckIncludeFile.cxx.in Complete rework of makefile generators expect trouble 2002-11-08 15:46:08 -05:00
CheckIncludeFileCXX.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CheckIncludeFiles.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CheckLibraryExists.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CheckLibraryExists.lists.in Initial attempt to check if library exists 2002-09-24 16:36:56 -04:00
CheckSizeOf.cmake ENH: Renamed Modules/CheckSizeOf to Modules/CheckTypeSize for consistency with the macro name that is defined by the module. 2002-12-30 11:02:31 -05:00
CheckSymbolExists.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CheckTypeSize.c.in ENH: fix checktypesize 2006-01-13 09:57:15 -05:00
CheckTypeSize.cmake ENH: merge CMake-CrossCompileBasic to HEAD 2007-05-17 13:20:44 -04:00
CheckVariableExists.c BUG#502: Do not let optimizing compilers think the symbol exists. Require the symbol by making the return value depend on it to force linking. 2004-04-26 10:19:44 -04:00
CheckVariableExists.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
Dart.cmake STYLE: Added basic usage documentation. 2007-05-15 10:23:40 -04:00
DartConfiguration.tcl.in ENH: Reorganize and add subversion support 2005-02-16 13:30:17 -05:00
Documentation.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
DummyCXXFile.cxx add checks for ansi flags and not hard code them 2002-11-21 12:52:54 -05:00
FindASPELL.cmake ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
FindAVIFile.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindBZip2.cmake ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
FindBoost.cmake ENH: Adding FindBoost.cmake module from Andrew Maclean. This addresses bug#3447. 2006-07-21 12:04:05 -04:00
FindCABLE.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindCURL.cmake ENH: Find module for CURL library. 2006-10-19 12:55:44 -04:00
FindCups.cmake ENH: add a module to find Cups (#3081), taken from KDE svn 2006-11-30 16:23:23 -05:00
FindCurses.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindCygwin.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindDCMTK.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindDart.cmake ENH: use program files env for searching 2006-02-28 10:27:30 -05:00
FindDoxygen.cmake ENH: fix for backwards compatibility 2006-12-04 19:37:29 -05:00
FindEXPAT.cmake ENH: Find module for EXPAT library. 2006-10-19 12:57:28 -04:00
FindFLTK.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindGCCXML.cmake ENH: use program files env for searching 2006-02-28 10:27:30 -05:00
FindGLU.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindGLUT.cmake BUG: fix for bug#3646 GLUT not Glut for framework name 2006-10-03 16:18:32 -04:00
FindGTK.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindGettext.cmake BUG: fix typo reported by Duncan Mac Vicar 2007-02-25 19:22:59 -05:00
FindGnuplot.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindHSPELL.cmake ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
FindHTMLHelp.cmake ENH: use program files env for searching 2006-02-28 10:27:30 -05:00
FindITK.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindImageMagick.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindJNI.cmake BUG: fix for bug 4605 2007-04-04 13:43:12 -04:00
FindJPEG.cmake ENH: honor REQUIRED flag 2006-05-11 18:32:40 -04:00
FindJasper.cmake ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
FindJava.cmake ENH: More locations for Java 2006-10-12 13:12:37 -04:00
FindKDE.cmake ENH: add real-world-tested and used KDE3 support, and obsolete FindKDE.cmake, which wasn't used by anybody that I heard of 2006-03-09 14:10:59 -05:00
FindKDE3.cmake BUG: remove KDE3_ENABLE_FINAL (#4140): it doesn't work currently and I 2007-02-20 16:02:51 -05:00
FindKDE4.cmake STYLE: fix docs for FindKDE4.cmake 2007-02-20 16:05:42 -05:00
FindLATEX.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindLibXml2.cmake STYLE: don't put the copyright notice twice in the file 2007-02-20 16:00:39 -05:00
FindLibXslt.cmake ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
FindMFC.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindMPEG.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindMPEG2.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindMPI.cmake STYLE: use the newer FIND_XXX syntax, which should find MPI in even more 2007-04-30 17:03:53 -04:00
FindMatlab.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindMotif.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindOpenAL.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindOpenGL.cmake ENH: On apple do not look for X11 2006-07-05 16:21:24 -04:00
FindOpenSSL.cmake ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
FindPHP4.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindPNG.cmake STYLE: remove empty line, so the documentation for the module is complete 2007-02-10 09:52:00 -05:00
FindPerl.cmake BUG: honor the REQUIRED flag for Perl, please backport to 2.4 branch so that 2006-10-24 17:56:59 -04:00
FindPerlLibs.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindPhysFS.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindPike.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindPkgConfig.cmake ENH: better backwards compatibility, and deprecate PKGCONFIG 2006-12-09 15:02:19 -05:00
FindPythonInterp.cmake ENH: apply patch from Dirk Mueller to support Python 2.5 2006-09-27 13:30:18 -04:00
FindPythonLibs.cmake ENH: apply patch from Dirk Mueller to support Python 2.5 2006-09-27 13:30:18 -04:00
FindQt.cmake ENH: change to fatal error 2006-01-25 12:16:49 -05:00
FindQt3.cmake ENH: make sure findqt3 finds qt3 and not qt4 2006-11-22 13:30:59 -05:00
FindQt4.cmake BUG: Fix bug introduced by revision 1.67. The qmake query mode prints information to stderr on some platforms. The OUTPUT_VARIABLE and ERROR_VARIABLE must be the same variable to get all the output. 2007-03-01 16:44:32 -05:00
FindRuby.cmake BUG: fix 4164, also search for libruby1.8.so, I guess it should be synced 2006-12-07 17:37:56 -05:00
FindSDL.cmake BUG: fix for 3765 2006-10-03 13:48:54 -04:00
FindSDL_image.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindSDL_mixer.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindSDL_net.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindSDL_sound.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
FindSDL_ttf.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindSWIG.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindSelfPackers.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindSubversion.cmake ENH: Adding FindSubversion module from Tristan Carel. This addresses bug#3987. 2006-10-30 15:30:59 -05:00
FindTCL.cmake BUG: fix for bug# 3313 same advanced for tcl win and unix 2006-10-04 13:05:16 -04:00
FindTIFF.cmake ENH: Removing platform-specific name hacks now that FIND_LIBRARY handles it. 2006-02-09 15:08:16 -05:00
FindTclsh.cmake BUG: fix for bug #3846 more advanced stuff 2006-10-13 11:25:07 -04:00
FindThreads.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
FindUnixCommands.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindVTK.cmake ENH: Add ability to find VTK 5 without user help. 2006-05-23 10:40:40 -04:00
FindWget.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindWish.cmake BUG: fix for bug #3846 more advanced stuff 2006-10-13 11:25:07 -04:00
FindX11.cmake ENH: fix find x11 on the mac 2006-04-17 15:55:24 -04:00
FindXMLRPC.cmake BUG: fix for bug 4123, find xmlrpc in standard locations 2006-12-04 11:44:47 -05:00
FindZLIB.cmake BUG: don't append to ZLIB_NAMES 2006-06-09 15:49:27 -04:00
FindwxWidgets.cmake ENH: Patch from Jan for bug#3453. Cleans up find script and enables -isystem feature for use script. 2006-10-19 10:07:41 -04:00
FindwxWindows.cmake ENH: Applying patch from bug#3443 to implement FindwxWidgets.cmake properly. It also updates the UseWX test and WXDialog sources to use the new find script. 2006-07-21 15:43:19 -04:00
ITKCompatibility.cmake ENH: added to handle case in ITK 2.8 and earlier 2006-11-16 15:28:16 -05:00
InstallRequiredSystemLibraries.cmake BUG: fix for bug 4420 add language dll's to mfc install 2007-02-20 09:54:20 -05:00
KDE3Macros.cmake BUG: remove KDE3_ENABLE_FINAL (#4140): it doesn't work currently and I 2007-02-20 16:02:51 -05:00
MacOSXBundleInfo.plist.in ENH: Improve Mac OSX bundle support 2004-04-08 17:13:42 -04:00
MacOSXFrameworkInfo.plist.in ENH: initial support for creation of frameworks on Mac 2007-05-08 10:32:54 -04:00
MacroAddFileDependencies.cmake ENH: Updates from KDE 2006-06-16 14:45:47 -04:00
NSIS.InstallOptions.ini.in ENH: use radio buttons to choose PATH options 2006-05-10 12:15:00 -04:00
NSIS.template.in BUG: Compression must be set before any output is created. 2006-10-13 15:04:18 -04:00
SystemInformation.cmake ENH: limit the output of system information to no more than 50K per file 2007-03-02 10:57:20 -05:00
SystemInformation.in ENH: improvements 2007-02-27 09:43:34 -05:00
TestBigEndian.c ENH: fix tests for non-ansi c on hp and remove warnings for ansi c 2004-04-15 08:22:19 -04:00
TestBigEndian.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
TestCXXAcceptsFlag.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
TestForANSIForScope.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
TestForANSIStreamHeaders.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
TestForANSIStreamHeaders.cxx new try compile module 2002-09-12 11:14:50 -04:00
TestForAnsiForScope.cxx ERR: Removed warning for unused variable. 2003-05-16 16:33:11 -04:00
TestForSSTREAM.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
TestForSSTREAM.cxx ENH: add support for watcom wmake and wcl386 2006-01-17 10:21:45 -05:00
TestForSTDNamespace.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
TestForSTDNamespace.cxx Complete rework of makefile generators expect trouble 2002-11-08 15:46:08 -05:00
UseEcos.cmake ENH: now also the "ecosclean" target works with MS nmake 2007-02-07 14:50:45 -05:00
UsePkgConfig.cmake BUG: untested fix for newlines in the output of pkg config 2007-03-07 15:36:09 -05:00
UseQt4.cmake ENH: add QT_USE_QTDBUS as it exists for all other modules too 2007-01-04 16:50:18 -05:00
UseSWIG.cmake ENH: patch applied for bug 4517 2007-03-05 15:21:49 -05:00
UseVTK40.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
UseVTKBuildSettings40.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
UseVTKConfig40.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
Use_wxWindows.cmake ENH: Applying patch from bug#3443 to implement FindwxWidgets.cmake properly. It also updates the UseWX test and WXDialog sources to use the new find script. 2006-07-21 15:43:19 -04:00
UsewxWidgets.cmake ENH: Patch from Jan for bug#3453. Cleans up find script and enables -isystem feature for use script. 2006-10-19 10:07:41 -04:00
VTKCompatibility.cmake ENH: fix for back VTK error message 2006-12-13 12:11:14 -05:00
ecos_clean.cmake ENH: now also the "ecosclean" target works with MS nmake 2007-02-07 14:50:45 -05:00
kde3init_dummy.cpp.in ENH: add real-world-tested and used KDE3 support, and obsolete FindKDE.cmake, which wasn't used by anybody that I heard of 2006-03-09 14:10:59 -05:00
kde3uic.cmake BUG: fix #3324: KDE3Macros.cmake didn't find Qt designer plugins when 2006-08-27 15:52:36 -04:00
readme.txt ENH: Added XXX_RUNTIME_LIBRARY_DIRS as a suggested variable. 2006-11-01 09:06:27 -05:00

readme.txt

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.

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 greate 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 [QUIET] [REQUIRED [components...]])

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 and should never issue a FATAL_ERROR.  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 will also 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.