CMake/Modules
Alexander Neundorf 474629568c ENH: check the magic code of the executable file to determine the executable
file format. Tested for ELF on x86 Linux, COFF and Mach-O prepared but
commented out since I don't have such systems available. Please have a look
a CMakeDetermineCompilerId.cmake and enable the test for them too.

Only add the option for using chrpath if the executable format is ELF

Alex
2008-01-02 16:52:12 -05:00
..
Platform ENH: add ability to have manifest files and incremental linking with make and nmake 2008-01-01 15:13:41 -05: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
CMakeASM-ATTInformation.cmake ENH: initial support for assembler in cmake, needs testing by our users 2007-06-28 09:14:27 -04:00
CMakeASMCompiler.cmake.in ENH: second try for handling the linker language with integer priority values (returning a pointer to a string on the stack is no good idea) 2007-07-12 08:37:10 -04:00
CMakeASMInformation.cmake ENH: add CMAKE_INCLUDE_FLAG_ASM${ASM_DIALECT} and don't allow preset 2007-07-11 13:39:51 -04: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: second try for handling the linker language with integer priority values (returning a pointer to a string on the stack is no good idea) 2007-07-12 08:37:10 -04:00
CMakeCCompilerId.c ENH: add support for the Portland Compiler to CMake, can build cmake and the tests pass (except the wrapping tests, which fail to link to the g++-compiled Qt) 2007-09-17 15:55:17 -04:00
CMakeCInformation.cmake BUG: fix for bug 6167 get rid of extra space in flags 2007-12-17 12:04:15 -05:00
CMakeCXXCompiler.cmake.in ENH: second try for handling the linker language with integer priority values (returning a pointer to a string on the stack is no good idea) 2007-07-12 08:37:10 -04:00
CMakeCXXCompilerId.cpp ENH: add support for the Portland Compiler to CMake, can build cmake and the tests pass (except the wrapping tests, which fail to link to the g++-compiled Qt) 2007-09-17 15:55:17 -04:00
CMakeCXXInformation.cmake BUG: fix for bug 6167 get rid of extra space in flags 2007-12-17 12:04:15 -05: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
CMakeDetermineASM-ATTCompiler.cmake ENH: initial support for assembler in cmake, needs testing by our users 2007-06-28 09:14:27 -04:00
CMakeDetermineASMCompiler.cmake ENH: initial support for assembler in cmake, needs testing by our users 2007-06-28 09:14:27 -04:00
CMakeDetermineCCompiler.cmake ENH: if CMAKE_(C|CXX)_COMPILER is preset to a list of two elements, use the 2007-07-18 10:52:53 -04:00
CMakeDetermineCXXCompiler.cmake ENH: if CMAKE_(C|CXX)_COMPILER is preset to a list of two elements, use the 2007-07-18 10:52:53 -04:00
CMakeDetermineCompilerId.cmake ENH: check the magic code of the executable file to determine the executable 2008-01-02 16:52:12 -05:00
CMakeDetermineFortranCompiler.cmake STYLE: fdcorrect comments about FC/CC 2007-05-18 09:16:07 -04:00
CMakeDetermineJavaCompiler.cmake STYLE: use IF(NOT ...) and remove MARK_AS_ADVANCED() for variables which are 2007-06-18 18:01:15 -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 STYLE: don't use an extra file to generate CMakeSystem.cmake but instead 2007-08-15 14:26:00 -04:00
CMakeExportBuildSettings.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
CMakeFindBinUtils.cmake ENH: check the magic code of the executable file to determine the executable 2008-01-02 16:52:12 -05: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
CMakeForceCompiler.cmake STYLE: fix typo in the docs 2007-08-24 08:40:57 -04:00
CMakeFortranCompiler.cmake.in ENH: second try for handling the linker language with integer priority values (returning a pointer to a string on the stack is no good idea) 2007-07-12 08:37:10 -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 BUG: fix for bug 6167 get rid of extra space in flags 2007-12-17 12:04:15 -05:00
CMakeGenericSystem.cmake ENH: add flag so a terminating slash for the link path can be specified (needed by the Digital Mars D compiler) 2007-08-28 16:19:01 -04:00
CMakeImportBuildSettings.cmake ENH: fix for case difference with nmake 2006-07-24 16:58:05 -04:00
CMakeJavaCompiler.cmake.in ENH: second try for handling the linker language with integer priority values (returning a pointer to a string on the stack is no good idea) 2007-07-12 08:37:10 -04:00
CMakeJavaInformation.cmake ENH: fix java and add OBJECT_DIR support 2006-04-17 14:01:22 -04:00
CMakeLists.txt ENH: add a macro FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) 2007-07-18 13:26:02 -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: Unify design of CMakeCCompilerId.c, CMakeCXXCompilerId.cpp, and CMakePlatformId.h. BUG: Do not violate system-reserved symbol namespace _[A-Z]. 2007-05-23 11:00:54 -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 STYLE: don't use an extra file to generate CMakeSystem.cmake but instead 2007-08-15 14:26:00 -04:00
CMakeSystemSpecificInformation.cmake ENH: set UNIX, WIN32 and APPLE in cmMakefile.cxx as it was before, so it 2007-08-10 09:07:39 -04:00
CMakeTestASM-ATTCompiler.cmake ENH: initial support for assembler in cmake, needs testing by our users 2007-06-28 09:14:27 -04:00
CMakeTestASMCompiler.cmake ENH: initial support for assembler in cmake, needs testing by our users 2007-06-28 09:14:27 -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
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 support for vs 2008 beta 2 2007-09-17 15:21:47 -04:00
CMakeVS9FindMake.cmake ENH: add support for vs 2008 beta 2 2007-09-17 15:21:47 -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: Give Mac installers package relocation capability. Default location is still the same for backwards compatibility, but packages will now be relocatable by default like they are on Windows via the NSIS installer. New CPack variables for controlling this functionality are CPACK_PACKAGE_DEFAULT_LOCATION and CPACK_PACKAGE_RELOCATABLE. 2007-12-26 16:57:13 -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 ENH: try if tail works with the -n +<number> syntax, if not use only 2007-07-19 15:39:58 -04: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: Give Mac installers package relocation capability. Default location is still the same for backwards compatibility, but packages will now be relocatable by default like they are on Windows via the NSIS installer. New CPack variables for controlling this functionality are CPACK_PACKAGE_DEFAULT_LOCATION and CPACK_PACKAGE_RELOCATABLE. 2007-12-26 16:57:13 -05:00
CPackDeb.cmake BUG: rename DEBIAN_PACKAGE_* variables to CPACK_DEBIAN_PACKAGE_* variables 2007-10-25 13:26:54 -04:00
CPackRPM.cmake ENH: fix for RPM generator from Eric 2007-11-01 09:52:09 -04:00
CPackZIP.cmake ENH: add ReadListFile() to cmCPackGenericGenerator, so cmMakefile can be 2007-07-24 12:52:39 -04:00
CTest.cmake STYLE: use IF(NOT ) instead of IF() ELSE() with empty IF() branch 2007-12-17 17:05:07 -05: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 ENH: use the same CMAKE_SKIP_RPATH setting in CHECK_C/CXX_SOURCE_RUNS as in 2007-08-28 10:52:07 -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: use the same CMAKE_SKIP_RPATH setting in CHECK_C/CXX_SOURCE_RUNS as in 2007-08-28 10:52:07 -04:00
CheckForPthreads.c ENH: merge in changes for beos support 2006-12-04 17:26:41 -05:00
CheckFortranFunctionExists.cmake ENH: FindBLAS.cmake and FindLAPACK.cmake modules added. They locate various implementations of blas and lapack libraries. CheckFortranFunctionExists.cmake provides a test function to check if the library is usabale. I have also changed the -KPIC flag to -fPIC in Linux-ifort.cmake. 2007-10-10 17:47:37 -04: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
CheckStructHasMember.cmake ENH: add macro to test if a member has specified struct, e.g. 2007-07-12 15:00:37 -04:00
CheckSymbolExists.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
CheckTypeSize.cmake STYLE: remove unused CheckTypeSize.c.in 2007-08-10 13:14:00 -04:00
CheckTypeSizeC.c.in COMP: don't use stdio, it can fail on some embedded targets (sdcc) 2007-06-05 10:20:21 -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: find Dart quietly (so it doesn't go in the feature log) 2007-08-07 15:42:37 -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
FLTKCompatibility.cmake ENH: threads used to include this 2007-08-06 10:42:45 -04:00
FeatureSummary.cmake ENH: add global properties for collecting enabled/disabled features during 2007-08-07 15:41:57 -04:00
FindASPELL.cmake BUG: fix for bug 0005871 2007-10-12 11:00:35 -04:00
FindAVIFile.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindBLAS.cmake ENH: FindBLAS.cmake and FindLAPACK.cmake modules added. They locate various implementations of blas and lapack libraries. CheckFortranFunctionExists.cmake provides a test function to check if the library is usabale. I have also changed the -KPIC flag to -fPIC in Linux-ifort.cmake. 2007-10-10 17:47:37 -04:00
FindBZip2.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindBoost.cmake BUG: fix for bug 5464 better find boost for windows 2007-12-18 10:02:52 -05:00
FindCABLE.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindCURL.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindCups.cmake ENH: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS in some of the FindXXX 2007-07-18 13:56:45 -04:00
FindCurses.cmake COMP: make it build on NetBSD, which has separate curses and ncurses, so 2007-08-27 09:01:14 -04:00
FindCygwin.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindDCMTK.cmake ENH: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS() macro in most of the 2007-07-19 09:00:51 -04: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 BUG: use the correct variable for checking the success (#6062) 2007-11-25 08:20:05 -05:00
FindFLTK.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindFLTK2.cmake ENH: add from bug 0004219 2007-10-12 11:34:07 -04:00
FindFreeType.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindGCCXML.cmake ENH: use program files env for searching 2006-02-28 10:27:30 -05:00
FindGDAL.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindGIFLIB.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindGLU.cmake ENH: add documentation support for modules 2005-12-14 13:51:08 -05:00
FindGLUT.cmake ENH: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS() macro in most of the 2007-07-19 09:00:51 -04:00
FindGTK.cmake ENH: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS() macro in most of the 2007-07-19 09:00:51 -04:00
FindGettext.cmake BUG: fix typo reported by Duncan Mac Vicar 2007-02-25 19:22:59 -05:00
FindGnuplot.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindHSPELL.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -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 5933, look for java in more reg entries 2007-12-17 17:22:51 -05:00
FindJPEG.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindJasper.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -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 ENH: don't hardcode the /lib/kde3/ directory for the libtool files, but make 2007-07-17 08:41:20 -04:00
FindKDE4.cmake BUG: KDEDIRS contains the kde install locations, not the binary dirs, so 2007-08-26 03:29:13 -04:00
FindLAPACK.cmake ENH: FindBLAS.cmake and FindLAPACK.cmake modules added. They locate various implementations of blas and lapack libraries. CheckFortranFunctionExists.cmake provides a test function to check if the library is usabale. I have also changed the -KPIC flag to -fPIC in Linux-ifort.cmake. 2007-10-10 17:47:37 -04:00
FindLATEX.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindLibXml2.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindLibXslt.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindLua50.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindLua51.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindMFC.cmake ENH: cleanups 2005-12-15 14:17:43 -05:00
FindMPEG.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindMPEG2.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindMPI.cmake STYLE: use FIND_PACKAGE_HANDLE_STANDARD_ARGS() also in FindMPI.cmake 2007-08-06 11:02:58 -04:00
FindMatlab.cmake ENH: some style fixes for the book 2005-12-15 10:41:19 -05:00
FindMotif.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindOpenAL.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindOpenGL.cmake STYLE: remove unnecessary default search paths 2007-08-10 11:37:29 -04:00
FindOpenSSL.cmake ENH: add cmake modules for some common libraries: aspell, hspell, bzip2, 2006-09-19 16:11:53 -04:00
FindOpenThreads.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindPHP4.cmake BUG: fix #5329, if /usr/xpg4/bin/tail exists, use this one -> on SunOS 2007-07-19 09:42:57 -04:00
FindPNG.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindPackageHandleStandardArgs.cmake STYLE: fix typo 2007-08-06 22:08:59 -04:00
FindPerl.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindPerlLibs.cmake BUG: Fix bug 6106 FindPerlLibs.cmake missing escaped $ 2007-12-12 07:26:25 -05:00
FindPhysFS.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindPike.cmake ENH: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS() macro in most of the 2007-07-19 09:00:51 -04:00
FindPkgConfig.cmake BUG: fix for 5722 2007-12-17 21:37:16 -05:00
FindProducer.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindPythonInterp.cmake ENH: add support for the next python release, python 2.6 2007-08-30 13:35:54 -04:00
FindPythonLibs.cmake BUG: make the string static, otherwise the contents are gone when we exit 2007-09-18 15:13:22 -04:00
FindQt.cmake ENH: change to fatal error 2006-01-25 12:16:49 -05:00
FindQt3.cmake BUG: Fixed name of variable used to check version of uic executable. 2007-06-11 15:02:03 -04:00
FindQt4.cmake ENH: Better QT4_EXTRACT_OPTIONS macro. 2007-12-19 16:48:04 -05:00
FindQuickTime.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindRuby.cmake ENH: add more ruby paths: sitearch, sitelib, vendorarch, vendorlib (#5531) 2008-01-02 12:32:17 -05:00
FindSDL.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindSDL_image.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindSDL_mixer.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindSDL_net.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindSDL_sound.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindSDL_ttf.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -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 ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindTIFF.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindTclsh.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindThreads.cmake BUG: Enable CMAKE_HP_PTHREADS only when the old CMA threads are available. Modern HP pthreads are just normal pthreads. 2007-09-24 09:53:41 -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: add second failure message parameter to 2007-07-23 09:49:52 -04:00
FindWish.cmake BUG: fix for bug #3846 more advanced stuff 2006-10-13 11:25:07 -04:00
FindX11.cmake ENH: more consistence among the X11 components 2007-06-08 10:28:52 -04:00
FindXMLRPC.cmake BUG: fix for bug 4123, find xmlrpc in standard locations 2006-12-04 11:44:47 -05:00
FindZLIB.cmake ENH: add second failure message parameter to 2007-07-23 09:49:52 -04:00
Findosg.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgDB.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgFX.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgGA.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgIntrospection.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgManipulator.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgParticle.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgProducer.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgShadow.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgSim.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgTerrain.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgText.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgUtil.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindosgViewer.cmake BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found. 2007-12-20 20:59:44 -05:00
FindwxWidgets.cmake STYLE: Refactored common libs into a variable, modified comments, and cleaned use of monolithic build. 2007-12-22 10:15:04 -05: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 ENH: change name 2007-11-09 12:18:06 -05:00
KDE3Macros.cmake ENH: don't hardcode the /lib/kde3/ directory for the libtool files, but make 2007-07-17 08:41:20 -04: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: allow for desktop link to be created and fix chop of last char in PATH on uninstall 2007-09-18 15:16:21 -04:00
NSIS.template.in ENH: add ability to set installer icons, links to web pages, nsis code in the icon section of the template, and ability to escape variables correctly 2007-10-29 08:11:44 -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.cmake ENH: for universal binaries return the endianess based on the processor 2007-08-13 11:04:19 -04:00
TestCXXAcceptsFlag.cmake ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
TestEndianess.c.in STYLE: remove unused CheckTypeSize.c.in 2007-08-10 13:14:00 -04:00
TestForANSIForScope.cmake STYLE: fix doc string 2007-12-17 17:57:57 -05: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: minor doc cleanups and an example of documenting a variable 2007-10-15 14:50:18 -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: Define QT_NO_DEBUG when building with release Qt libs. 2007-11-30 19:11: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: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS() macro in most of the 2007-07-19 09:00:51 -04: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 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 [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.  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.

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