Skip to content
This repository

My collection of CMake modules

branch: master

Update README.markdown

Elaborate on subtree, change example code to use CMAKE_CURRENT_SOURCE_DIR
latest commit 2ee93640cf
Ryan Pavlik authored
cmake-2.8.0-modules fix up the cmake BSD licenses
cmake-2.8.1-modules fix up the cmake BSD licenses
cmake-2.8.12-modules Update backported module and add backported ParseArguments.
cmake-2.8.3-modules Improve formatting of copyright notice when rendered to html
cmake-2.8.4-modules Improve formatting of copyright notice when rendered to html
cmake-4.0.0-modules Impending CMake 3.0 implies that 2.9.0 is no longer ~= infinity.
ghost-fake-stl Improve GHOST finder.
launcher-templates add support for visual studio 2010 to createlaunchers
module-docs Improve formatting of copyright notice when rendered to html
nested_targets Fix up OpenHaptics nested targets.
package-licensing VR JuggLua is no longer unreleased research software - ditch the scar…
package move fixupbundle.cmake.in and improve finding it
workarounds Add cmake build files, fix config - it builds and links!
AboutTheseModules.cmake Run cmake-bulk-decrufter.
BoostTestTargets.cmake Fix syntax error in BoostTestTargets.cmake
BoostTestTargetsDynamic.h Update cmake files
BoostTestTargetsIncluded.h Update cmake files
BoostTestTargetsStatic.h Update cmake files
BundleOSGPlugins.cmake Run cmake-bulk-decrufter.
BundleOSGRuntime.cmake Improve formatting of copyright notice when rendered to html
BundleVRJ22Runtime.cmake Improve formatting of copyright notice when rendered to html
BundleVRJ30Runtime.cmake Added Juggler 3.0 files
CheckMacHIDAPI.cmake Improve formatting of copyright notice when rendered to html
CheckMacHIDAPI.cpp remove unused variables in test file
CheckVersion.cmake Improve formatting of copyright notice when rendered to html
CleanDirectoryList.cmake Improve formatting of copyright notice when rendered to html
CleanLibraryList.cmake Improve formatting of copyright notice when rendered to html
CopyResourcesToBuildTree.cmake Improve formatting of copyright notice when rendered to html
CppcheckTargets.cmake Improve formatting of copyright notice when rendered to html
CreateDashboardScripts.cmake cleanup
CreateImportedTarget.cmake Improve formatting of copyright notice when rendered to html
CreateLaunchers.cmake Make launchers on *nix executable
DashboardScript.cmake.in handle config types in dashboard scripts
DoxygenTargets.cmake Create a doc_open target to open html docs
DoxygenTargets.doxyfile.in Add cmake build files, fix config - it builds and links!
EnableExtraCompilerWarnings.cmake Add another compiler flag for warnings.
EnableProfiling.cmake Improve formatting of copyright notice when rendered to html
FileCopyTargets.cmake Run cmake-bulk-decrufter.
FindALUT.cmake Improve formatting of copyright notice when rendered to html
FindAdrienne.cmake Adrienne timecode generator finder
FindBluez.cmake Improve formatting of copyright notice when rendered to html
FindCPPDOM.cmake Try handling new versions of cppdom that have their own config file.
FindDCubed.cmake improve dcubed include dirs
FindDirectInput.cmake Run cmake-bulk-decrufter.
FindDirectShow.cmake Add FindDirectShow from VRPN
FindDirectX.cmake Find DirectX XInput library
FindFlagpoll.cmake Improve formatting of copyright notice when rendered to html
FindGDB.cmake Run cmake-bulk-decrufter.
FindGHOST.cmake clean up some modules
FindGLUI.cmake Improve formatting of copyright notice when rendered to html
FindGLUT.cmake fix up the cmake BSD licenses
FindGMTL.cmake Add additional versions of cppdom and gmtl.
FindGPM.cmake Improve formatting of copyright notice when rendered to html
FindGadgeteer12.cmake Improve formatting of copyright notice when rendered to html
FindGadgeteer20.cmake Generate, rather than enumerate, juggler lib names.
FindGlove5DT.cmake Improve glove5dt finder
FindHIDAPI.cmake Improve formatting of copyright notice when rendered to html
FindIDLJ.cmake IDLJ finder/script
FindInterSense.cmake Add FindInterSense.cmake
FindJCCL12.cmake Improve formatting of copyright notice when rendered to html
FindJCCL14.cmake Generate, rather than enumerate, juggler lib names.
FindJtTk.cmake actually use the jttk root dir specified
FindJtTk.stampkey.cmake.in Add cmake build files, fix config - it builds and links!
FindLAPACKLibs.cmake Improve formatting of copyright notice when rendered to html
FindLibusb1.cmake clean up some modules
FindLuabind.cmake Improve formatting of copyright notice when rendered to html
FindLyX.cmake Run cmake-bulk-decrufter.
FindMacHID.cmake Improve formatting of copyright notice when rendered to html
FindMarkdown.cmake Add markdown scripts (finding and targets)
FindOpenCV.cmake Run cmake-bulk-decrufter.
FindOpenHaptics.cmake Explicitly specify a binary dir for openhaptics nested targets.
FindParasolid.cmake Improve formatting of copyright notice when rendered to html
FindPerformer.cmake Just a little cleanup.
FindPerlModules.cmake clean up some modules
FindQVRPN.cmake Run cmake-bulk-decrufter.
FindSonix12.cmake Improve formatting of copyright notice when rendered to html
FindSonix14.cmake Generate, rather than enumerate, juggler lib names.
FindTR1.cmake Run cmake-bulk-decrufter.
FindTooN.cmake Improve formatting of copyright notice when rendered to html
FindTooNtag.cmake Improve formatting of copyright notice when rendered to html
FindTweek12.cmake Improve formatting of copyright notice when rendered to html
FindTweek14.cmake Generate, rather than enumerate, juggler lib names.
FindVPR20.cmake Improve formatting of copyright notice when rendered to html
FindVPR22.cmake Conditionally use libuuid for VPR22
FindVPS.cmake Improve formatting of copyright notice when rendered to html
FindVRJ22.cmake Improve formatting of copyright notice when rendered to html
FindVRJ30.cmake Generate, rather than enumerate, juggler lib names.
FindVRJOGL22.cmake Improve formatting of copyright notice when rendered to html
FindVRJOGL30.cmake Generate, rather than enumerate, juggler lib names.
FindVRJuggler.cmake Fix FindVRJuggler for newer cmake versions
FindVRJuggler22.cmake don't force MACOSX_BUNDLE to be on.
FindVRJuggler30.cmake Fix VR Juggler base path determination.
FindVRPN.cmake Update FindVRPN
FindViewPoint.cmake Add new FindViewPoint
FindVirtuoseAPI.cmake Run the decrufter on it all
FindVirtuoseVPP.cmake Run the decrufter on it all
FindWiiSCAAT.cmake Improve formatting of copyright notice when rendered to html
FindWiiUse.cmake Set WIIUSE_RUNTIME_LIBRARY in Wiiuse even not on Windows
FindWinHID.cmake added support for wdk8 in WinHID
FindWindowsSDK.cmake Windows SDK updates from working on VRPN
Findargp.cmake Improve formatting of copyright notice when rendered to html
Findcppcheck.cmake Fixed cppcheck unusedFunction option
Findcppcheck.cpp Add cmake build files, fix config - it builds and links!
Findcppunit.cmake Fix copy-pasteo in findcppunit
Findcutil.cmake Run cmake-bulk-decrufter.
Finddb2pdf.cmake Improve formatting of copyright notice when rendered to html
FindosgLua.cmake Improve formatting of copyright notice when rendered to html
Findquatlib.cmake Improve vrpn/quatlib finders to find the default locations on Windows
GetCPUDetails.cmake Improve formatting of copyright notice when rendered to html
GetCompilerInfoString.cmake Handle other compilers better by using compiler ID
GetDirectoryList.cmake Improve formatting of copyright notice when rendered to html
GetFileList.cmake Improve formatting of copyright notice when rendered to html
GetForceIncludeDefinitions.cmake Improve formatting of copyright notice when rendered to html
GetGitRevisionDescription.cmake Use CMAKE_CURRENT_SOURCE_DIR in GetGitRevisionDescription.
GetGitRevisionDescription.cmake.in Restore some tabs that went missing
GetSubprojectStatus.cmake Improve formatting of copyright notice when rendered to html
LICENSE_1_0.txt Put BSL 1.0 license notice on all cmake files
Licensing.cmake Improve formatting of copyright notice when rendered to html
ListCombinations.cmake Improve formatting of copyright notice when rendered to html
ListFilter.cmake Improve formatting of copyright notice when rendered to html
LuaTargets.cmake Run cmake-bulk-decrufter.
MSVCMultipleProcessCompile.cmake Improve formatting of copyright notice when rendered to html
MSVCStaticRuntime.cmake Improve formatting of copyright notice when rendered to html
MSVCVerboseLinking.cmake Improve formatting of copyright notice when rendered to html
OptionRequires.cmake Run cmake-bulk-decrufter.
PrefixListGlob.cmake Improve formatting of copyright notice when rendered to html
ProgramFilesGlob.cmake Improve formatting of copyright notice when rendered to html
README.markdown Update README.markdown
ResetConfigurations.cmake Re-enable the debug configuration
SearchProgramFilesForOpenSceneGraph.cmake Fix program files osg search
SetDefaultBuildType.cmake Improve formatting of copyright notice when rendered to html
SplitLibraryList.cmake Improve formatting of copyright notice when rendered to html
StampSourcesWithVersion.cmake Improve formatting of copyright notice when rendered to html
StampSourcesWithVersion.sed.in Add cmake build files, fix config - it builds and links!
TCHARWorkaround.cmake Improve formatting of copyright notice when rendered to html
UseBackportedModules.cmake Improve formatting of copyright notice when rendered to html
UseMarkdown.cmake Run cmake-bulk-decrufter.
UseTR1.cmake Improve formatting of copyright notice when rendered to html
WarningDev.cmake Improve formatting of copyright notice when rendered to html
export-to-directory.sh Fix directory export script
module-help.html Update help files.
module-help.txt Update help files.
update-help.sh Generate text too, and rename
README.markdown

VRAC CMake Modules

Ryan Pavlik

rpavlik@iastate.edu abiryan@ryand.net http://academic.cleardefinition.com

Iowa State University HCI Graduate Program/VRAC

Introduction

This is a collection of CMake modules that I've produced during the course of a variety of software development. There are a number of find modules, especially for virtual reality and physical simulation packages, some utility modules of more general interest, and some patches or workarounds for CMake itself.

Each module is generally documented, and depending on how busy I was when I created it, the documentation can be fairly complete.

How to Integrate

These modules are probably best placed wholesale into a "cmake" subdirectory of your project source.

If you use Git, try installing git-subtree (included by default on Git for Windows and perhaps for your Linux distro, especially post-1.9.1), so you can easily use this repository for subtree merges, updating simply.

For the initial checkout:

cd projectdir

git subtree add --squash --prefix=cmake git://github.com/rpavlik/cmake-modules.git master

For updates:

cd projectdir

git subtree pull --squash --prefix=cmake git://github.com/rpavlik/cmake-modules.git master

If you use some other version control, you can export a copy of this directory without the git metadata by calling:

./export-to-directory.sh yourprojectdir/cmake

You might also consider exporting to a temp directory and merging changes, since this will not overwrite by default. You can pass -f to overwrite existing files.

How to Use

At the minimum, all you have to do is add a line like this near the top of your root CMakeLists.txt file (but not before your project() call):

list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")

You might also want the extra automatic features/fixes included with the modules, for that, just add another line following the first one:

include(UseBackportedModules)

Look at module-help.html/txt (generated by update-help.sh on a unix-like shell) either in this directory or online at http://github.com/rpavlik/cmake-modules/blob/master/module-help.txt for more information on individual modules.

Licenses

The modules that I wrote myself are all subject to this license:

Copyright Iowa State University 2009-2014

Distributed under the Boost Software License, Version 1.0.

(See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Modules based on those included with CMake are under the OSI-approved BSD license, which is included in each of those modules. A few other modules are modified from other sources - when in doubt, look at the .cmake.

Important License Note!

If you find this file inside of another project, rather at the top-level directory, you're in a separate project that is making use of these modules. That separate project can (and probably does) have its own license specifics.

Something went wrong with that request. Please try again.