Permalink
Find file
f9bdb65 Nov 29, 2014
@rpavlik @janisz
4043 lines (2373 sloc) 134 KB
cmake version 2.8.11.1
------------------------------------------------------------------------------
Introduction
module-help - Reference of available CMake custom modules.
------------------------------------------------------------------------------
Description
The "cmake" executable is the CMake command-line interface. It may be used
to configure projects in scripts. Project configuration settings may be
specified on the command line with the -D option. The -i option will cause
cmake to interactively prompt for such settings.
CMake is a cross-platform build system generator. Projects specify their
build process with platform-independent CMake listfiles included in each
directory of a source tree with the name CMakeLists.txt. Users build a
project by using CMake to generate a build system for a native tool on their
platform.
------------------------------------------------------------------------------
Custom CMake Modules
The following modules are also available for CMake. They can be used with
INCLUDE(ModuleName).
Custom CMake Modules - Additional Modules for CMake.
This is the documentation for additional modules and scripts for CMake.
Using these modules you can check the computer system for installed software
packages, features of the compiler and the existance of headers to name just
a few.
AboutTheseModules
Dummy module containing information about these modules for the HELP
file
This file documents a snapshot of the cmake-modules available from
http://github.com/rpavlik/cmake-modules/ The latest version of these
modules can always be found there. Additionally, you can find
instructions on how to integrate these modules into your own project
either in the README.markdown file in this directory, or on the GitHub
page listed above (scroll to the bottom to see the README rendered
attractively).
In short: Modules of the form "FindSomeName.cmake" are considered to
be "find modules", and are intended to be used indirectly by calling
find_package, not by calling include. Thus, you'll want to do
something like:
find_package(SomeName)
They define a number of variables allowing you to use whatever
software they search for, such as include directories and libraries.
A few also define some functions for your use.
All other modules provide functionality, either immediately upon
including them, or by defining functions that perform some task of
varying utility that you can use any time after including them. Note
that if a module has the filename, for example,
cmake/BoostTestTargets.cmake, you only need to call:
include(BoostTestTargets)
For more information, see the documentation for individual modules,
the cmake-modules github page, and/or the upstream CMake documentation
at http://www.cmake.org/cmake/help/cmake-2-8-docs.html
Copyright Iowa State University 2009-2010. 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)
BoostTestTargets
Add tests using boost::test
Add this line to your test files in place of including a basic boost
test header:
#include <BoostTestTargetConfig.h>
If you cannot do that and must use the included form for a given test,
include the line
// OVERRIDE_BOOST_TEST_INCLUDED_WARNING
in the same file with the boost test include.
include(BoostTestTargets)
add_boost_test(<testdriver_name> SOURCES <source1> [<more sources...>]
[FAIL_REGULAR_EXPRESSION <additional fail regex>]
[LAUNCHER <generic launcher script>]
[LIBRARIES <library> [<library>...]]
[RESOURCES <resource> [<resource>...]]
[TESTS <testcasename> [<testcasename>...]])
If for some reason you need access to the executable target created,
it can be found in ${${testdriver_name}_TARGET_NAME} as specified when
you called add_boost_test
Requires CMake 2.6 or newer (uses the 'function' command)
Requires: GetForceIncludeDefinitions CopyResourcesToBuildTree
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
BundleOSGPlugins
Provide access to the OpenSceneGraph runtime files for bundling in
an installation or package.
Sets these variables:
- OSGDB_PLUGINS_RELEASE
- OSGDB_PLUGINS_DEBUG
- OSGWRAPPER_PLUGINS_RELEASE
- OSGWRAPPER_PLUGINS_DEBUG
- OSG_RUNTIME_LIBRARY_DIR
- OSG_PATH_TO_PLUGINS
Creates this function:
- install_osg_plugins( {varNameForOutputFilenames} )
Requires these CMake modules:
no additional modules required
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
BundleOSGRuntime
Include the OpenSceneGraph runtime files in an installation or built
package.
OSGRUNTIME_BUNDLE - Set to "yes" to enable this behavior
OSGRUNTIME_zlib1dll - Must be set to the location of zlib1.dll on Windows
OSGRUNTIME_zlib1ddll - Can be set to the location of zlib1d.dll (debug) on Windows.
If set, will be installed.
Requires these CMake modules:
no additional modules required
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
BundleVRJ22Runtime
Include the VR Juggler runtime files in an installation or built
package.
VRJUGGLERRUNTIME_BUNDLE
VRJUGGLERRUNTIME_BUNDLE_DEBUG - set to yes to include debug dll's as well
Requires these CMake modules:
FindVRJuggler22 and its dependencies
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
BundleVRJ30Runtime
Include the VR Juggler runtime files in an installation or built
package.
VRJUGGLERRUNTIME_BUNDLE
VRJUGGLERRUNTIME_BUNDLE_DEBUG - set to yes to include debug dll's as well
Requires these CMake modules:
FindVRJuggler22 and its dependencies
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
CheckMacHIDAPI
Script to check if the signature for a mac HID callback uses UInt32 or
uint32_t
Requires that the associated CPP file be present: CheckMacHIDAPI.cpp.
MACOSX_HID_UINT32T, set according to the results of our test.
Use add_definitions(-DMACOSX_HID_UINT32T=${MACOSX_HID_UINT32T}) in
your listfile and the following prototype for the function you'd like
to register using setInterruptReportHandlerCallback:
void ReaderReportCallback(
void *target,
IOReturn result,
void *refcon,
void *sender,
MACOSX_HID_UINT32T size
)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CheckVersion
Utility function for Find modules considering multiple possible
versions
Requires these CMake modules:
no additional modules required
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CleanDirectoryList
Removes duplicate entries and non-directories from a provided list
clean_directory_list(<listvar> [<additional list items>...])
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CleanLibraryList
A smarter replacement for list(REMOVE_DUPLICATES) for library lists
Note that, in the case of cyclic link dependencies, you _do_ actually
need a library in a list multiple times. So, only use this function
when you know that the dependency graph is acyclic.
clean_library_list(<listvar> [<additional list items>...]) - where
listvar is the name of a destination variable, and also possibly a source, and
it is followed by any number (including 0) of additional libraries to append
to the list before processing.
Removes duplicates from the list, leaving only the last instance,
while preserving the meaning of the "optimized", "debug", and
"general" labeling. (Libraries listed as general are listed in the
result instead as optimized and debug)
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CopyResourcesToBuildTree
Copy the resources your app needs to the build tree.
copy_resources_to_build_tree(<target_name>)
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CppcheckTargets
Run cppcheck on c++ source files as a custom target and a test
include(CppcheckTargets)
add_cppcheck(<target-name> [UNUSED_FUNCTIONS] [STYLE] [POSSIBLE_ERROR] [FAIL_ON_WARNINGS]) -
Create a target to check a target's sources with cppcheck and the indicated options
add_cppcheck_sources(<target-name> [UNUSED_FUNCTIONS] [STYLE] [POSSIBLE_ERROR] [FAIL_ON_WARNINGS]) -
Create a target to check standalone sources with cppcheck and the indicated options
Requires these CMake modules:
Findcppcheck
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CreateDashboardScripts
Create ctest -S scripts to use to run dashboard builds
include(CreateDashboardScripts)
create_dashboard_scripts([<initialcachetemplatefilename>])
If you need additional settings to persist from the "parent" CMake
instance to the initial cache created by the dashboard script, you may
pass a filename which will be configured into the initial cache.
In the resulting DASHBOARDSCRIPT_BASE_DIRECTORY, an end-user may
optionally create a file named
CustomInitialCache.${DASHBOARDSCRIPT_SCRIPT_NAME}
(by default, CustomInitialCache.go.cmake) containing set commands that
use the CACHE option, to set up additional site-local cache variable
values.
Requires these CMake modules:
GetCompilerInfoString
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CreateImportedTarget
A smarter replacement for list(REMOVE_DUPLICATES) for library lists
create_imported_target(<libname> [SHARED|STATIC|MODULE] [<library dependency>...]) - where
${libname}_LIBRARIES is set to this library's paths.
Removes duplicates from the list then sorts while preserving
"optimized", "debug", and "general" labeling
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
CreateLaunchers
Create launchers to set working directory, env. vars, etc.
include(CreateLaunchers) - to make these available
guess_runtime_library_dirs(<outputvarname> [<extralibrary> ...])
create_default_target_launcher(<targetname>
[ARGS <args...>]
[FORWARD_ARGS]
[RUNTIME_LIBRARY_DIRS <dir...>]
[WORKING_DIRECTORY <dir>]
[ENVIRONMENT <VAR=value> [<VAR=value>...]])
create_target_launcher(<targetname>
[ARGS <args...>]
[FORWARD_ARGS]
[RUNTIME_LIBRARY_DIRS <dir...>]
[WORKING_DIRECTORY <dir>]
[ENVIRONMENT <VAR=value> [<VAR=value>...]])
create_generic_launcher(<launchername>
[RUNTIME_LIBRARY_DIRS <dir...>]
[WORKING_DIRECTORY <dir>]
[ENVIRONMENT <VAR=value> [<VAR=value>...]])
- sets GENERIC_LAUNCHER_COMMAND and GENERIC_LAUNCHER_FAIL_REGULAR_EXPRESSION
Requires these CMake modules:
ListFilter
ProgramFilesGlob
CleanDirectoryList
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
DoxygenTargets
Run doxygen on source files as a custom target
include(DoxygenTargets)
add_doxygen(<doxyfile> [OUTPUT_DIRECTORY <outputdir>]
[INSTALL_DESTINATION <installdir>
[INSTALL_COMPONENT <installcomponent>]
[INSTALL_PDF_NAME <installpdfname>] ]
[DOC_TARGET <targetname>]
[PROJECT_NUMBER <versionnumber>]
[NO_WARNINGS]
[NO_PDF])
Requires these CMake modules:
FindDoxygen
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
EnableExtraCompilerWarnings
Add flags to compile with extra warnings
enable_extra_compiler_warnings(<targetname>)
globally_enable_extra_compiler_warnings() - to modify CMAKE_CXX_FLAGS, etc
to change for all targets declared after the command, instead of per-command
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
EnableProfiling
Add flags to compile with profiling support - currently only for GCC
enable_profiling(<targetname>)
globally_enable_profiling() - to modify CMAKE_CXX_FLAGS, etc
to change for all targets declared after the command, instead of per-command
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FileCopyTargets
Add a target for files that just need to be copied
include(FileCopyTargets)
add_file_copy_target(<target_name> <directory to copy to> <filename> [<filename>...])
Creates a custom target that copies the files to a directory, if needed.
Relative paths for the destination directory are considered with
with respect to CMAKE_CURRENT_BINARY_DIR
You can use this target in all the usual ways, including
add_dependencies(some_other_target this_target) to specify that another
target depends on this.
install_file_copy_target(<target_name> [arguments to INSTALL(PROGRAMS ...) ])
Works just the same as INSTALL(PROGRAMS ...) because it wraps it to install
the files you specified in add_file_copy_target
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindALUT
try to find the OpenAL ALUT library
Users may optionally supply:
ALUT_ROOT_DIR - a prefix to start searching.
Cache Variables: (probably not for direct use in your scripts)
ALUT_INCLUDE_DIR
ALUT_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
ALUT_FOUND
ALUT_INCLUDE_DIRS
ALUT_LIBRARIES
ALUT_WORKAROUND_INCLUDE_DIRS - add these to your include path with
include_directories(${ALUT_WORKAROUND_INCLUDE_DIRS} ${ALUT_INCLUDE_DIRS})
so you can always #include <AL/al.h> and #include <AL/alut.h> even on
Mac where the paths might differ.
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindAdrienne
try to find Adrienne Electronics Corporation timecode card library
SDK available from the manufacturer: http://www.adrielec.com/
Cache Variables: (probably not for direct use in your scripts)
ADRIENNE_INCLUDE_DIR
ADRIENNE_LIBRARY
ADRIENNE_RUNTIME_LIBRARY
ADRIENNE_INCLUDE_FILE
Variables you might use in your CMakeLists.txt:
ADRIENNE_FOUND
ADRIENNE_INCLUDE_DIRS
ADRIENNE_LIBRARIES
ADRIENNE_RUNTIME_LIBRARIES - the AEC_NTTC.dll file
ADRIENNE_RUNTIME_LIBRARY_DIRS
ADRIENNE_INCLUDE_FILENAME - this is probably AEC_NTTC.h, but it might also
be AECINTTC.H.
ADRIENNE_INCLUDE_HAS_EXTERN_C - Some (most) versions of the header already
wrap their definitions in extern "C" { }, but some do not.
ADRIENNE_DEFINITIONS - defines a quoted ADRIENNE_INCLUDE_FILENAME as above,
so you can write a line like #include ADRIENNE_INCLUDE_FILENAME
Also defines ADRIENNE_BEFORE_INCLUDE and ADRIENNE_AFTER_INCLUDE to handle
adding extern "C" { and } if the header file doesn't do so itself.
Variables that might be set by the user in the gui/command line to
help find the library:
ADRIENNE_ROOT_DIR - root of an Adrienne CD, disk, or extracted/copied contents
thereof.
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
FindBluez
try to find Bluez
Cache Variables: (probably not for direct use in your scripts)
BLUEZ_INCLUDE_DIR
BLUEZ_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
BLUEZ_FOUND
BLUEZ_INCLUDE_DIRS
BLUEZ_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindCPPDOM
try to find CPPDOM library
Optionally uses Flagpoll and FindFlagpoll.cmake
CPPDOM_LIBRARY_DIR, library search path
CPPDOM_INCLUDE_DIR, include search path
CPPDOM_LIBRARY, the library to link against
CPPDOM_CXX_FLAGS
CPPDOM_FOUND, If false, do not try to use this library.
Useful configuration variables you might want to add to your cache:
CPPDOM_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
CPPDOM_ADDITIONAL_VERSIONS - Additional versions (outside of 0.7.8 to 1.2.0)
to use when constructing search names and paths
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
VR Juggler requires this package, so this Find script takes that into
account when determining where to search for the desired files. The
VJ_BASE_DIR environment variable is searched (preferentially) when
searching for this package, so most sane VR Juggler build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2012. 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)
FindDCubed
try to find DCUBED library
DCUBED_LIBRARY_DIR, library search path
DCUBED_INCLUDE_DIR, include search path
DCUBED_{component}_LIBRARY, the library to link against
DCUBED_ENVIRONMENT
DCUBED_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
DCUBED_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
http://academic.cleardefinition.com Iowa State University HCI Graduate
Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindDirectInput
try to find DirectInput library (part of DirectX SDK)
Cache Variables: (probably not for direct use in your scripts)
DIRECTINPUT_DXGUID_LIBRARY
DIRECTINPUT_DXERR_LIBRARY
DIRECTINPUT_DINPUT_LIBRARY
DIRECTINPUT_INCLUDE_DIR
Non-cache variables you should use in your CMakeLists.txt:
DIRECTINPUT_LIBRARIES
DIRECTINPUT_INCLUDE_DIRS
DIRECTINPUT_FOUND - if this is not true, do not attempt to use this library
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2011 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2011. 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)
FindDirectShow
Find Microsoft DirectShow sample files, library, and headers.
DIRECTSHOW_INCLUDE_DIRS - where to find needed include file
DIRECTSHOW_BASECLASS_DIR- Directory containing the DirectShow baseclass sample code.
DIRECTSHOW_FOUND - True if DirectShow found.
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Initially in VRPN - Distributed under the Boost Software License,
Version 1.0.
Almost entirely re-written by: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
FindDirectX
try to find part of DirectX SDK
Cache Variables: (probably not for direct use in your scripts)
DIRECTX_INCLUDE_DIR
Variables you should use in your CMakeLists.txt:
DIRECTX_DXGUID_LIBRARY
DIRECTX_DXERR_LIBRARY
DIRECTX_DINPUT_LIBRARY
DIRECTX_DINPUT_INCLUDE_DIR
DIRECTX_D3D9_LIBRARY
DIRECTX_D3DXOF_LIBRARY
DIRECTX_D3DX9_LIBRARIES
DIRECTX_INCLUDE_DIRS
DIRECTX_FOUND - if this is not true, do not attempt to use this library
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
SelectLibraryConfigurations
Original Author: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
FindFlagpoll
try to find Flagpoll application, and offer package-finding services
FLAGPOLL, the executable: if not defined, do not try to use Flagpoll.
Useful configuration variables you might want to add to your cache:
FLAGPOLL_ROOT_DIR - A directory prefix to search for the app
(a path that contains bin/ as a subdirectory)
VR Juggler requires this package, so this Find script takes that into
account when determining where to search for the desired files. The
VJ_BASE_DIR environment variable is searched (preferentially) when
searching for this package, so most sane VR Juggler build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
You can use Flagpoll to provide directories to use as HINTS for find_*
These are the provided macros:
flagpoll_get_include_dirs
flagpoll_get_library_dirs
flagpoll_get_library_names
flagpoll_get_extra_libs
All take the name of the desired package, optionally NO_DEPS to pass
--no-deps to Flagpoll, and return
yourpkgname_FLAGPOLL_INCLUDE_DIRS(etc. for the other macros).
Example usage: flagpoll_get_include_dirs(vpr NO_DEPS)
find_path(VPR20_INCLUDE_DIRS vpr/vpr.h
HINTS ${vpr_FLAGPOLL_INCLUDE_DIRS})
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindGDB
Try to find GDB
Once done, this will define:
GDB_FOUND - system has GDB
GDB_COMMAND - the command to run
GDB_VERSION - version
GDB_HAS_RETURN_CHILD_RESULT - if the --return-child-result flag is supported
Useful configuration variables you might want to add to your cache:
GDB_ROOT_DIR - A directory prefix to search
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindGHOST
try to find Sensable GHOST library and include files
GHOST_INCLUDE_DIRS, where to find GL/glut.h, etc.
GHOST_LIBRARIES, the libraries to link against
GHOST_FOUND, If false, do not try to use GLUT.
GHOST_RUNTIME_LIBRARY_DIRS, path to DLL on Windows for runtime use.
Requires these CMake modules:
no additional modules required
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindGLUI
Try to find GLUI (GL User Interface)
Requires OpenGL and GLUT - searches for them using find_package Once
done, this will define
GLUI_INCLUDE_DIR, where to find GL/glui.h (or GLUI/glui.h on mac)
GLUI_LIBRARY, the libraries to link against GLUI_FOUND, If false, do
not try to use GLUI.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
GLUI_ROOT_DIR - A directory prefix to search
(usually a path that contains include/ as a subdirectory)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindGLUT
try to find glut library and include files
GLUT_INCLUDE_DIRS, where to find GL/glut.h, etc.
GLUT_LIBRARIES, the libraries to link against
GLUT_FOUND, If false, do not try to use GLUT.
GLUT_RUNTIME_LIBRARY_DIRS, path to DLL on Windows for runtime use.
GLUT_RUNTIME_LIBRARY, dll on Windows, for installation purposes
Also defined, but not for general use are:
GLUT_INCLUDE_DIR, where to find GL/glut.h, etc.
GLUT_glut_LIBRARY = the full path to the glut library.
FindGMTL
Try to find GMTL
Optionally uses Flagpoll and FindFlagpoll.cmake Once done, this will
define
GMTL_FOUND - system has GMTL
GMTL_INCLUDE_DIR - the GMTL include directory
Useful configuration variables you might want to add to your cache:
GMTL_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
GMTL_ADDITIONAL_VERSIONS - Additional versions (outside of 0.5.1 to 0.7.0)
to use when constructing search names and paths
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
VR Juggler requires this package, so this Find script takes that into
account when determining where to search for the desired files. The
VJ_BASE_DIR environment variable is searched (preferentially) when
searching for this package, so most sane VR Juggler build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2012. 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)
FindGPM
try to find GPM library
Cache Variables: (probably not for direct use in your scripts)
GPM_INCLUDE_DIR
GPM_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
GPM_FOUND
GPM_INCLUDE_DIRS
GPM_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindGadgeteer12
try to find Gadgeteer 1.2 library
Requires JCCL 1.2 and VPR 2.0 (thus FindJCCL12.cmake and
FindVPR20.cmake) Requires X11 if not on Mac or Windows. Optionally
uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 2.2 - you probably want to use
find_package(VRJuggler22) instead, for an easy interface to this and
related scripts. See FindVRJuggler22.cmake for more information.
GADGETEER12_LIBRARY_DIR, library search path
GADGETEER12_INCLUDE_DIR, include search path
GADGETEER12_LIBRARY, the library to link against
GADGETEER12_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
GADGETEER12_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindGadgeteer20
try to find Gadgeteer 2.0 library
Requires JCCL 1.4 and VPR 2.2 (thus FindJCCL14.cmake and
FindVPR22.cmake) Requires X11 if not on Mac or Windows. Optionally
uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 3.0 - you probably want to use
find_package(VRJuggler30) instead, for an easy interface to this and
related scripts. See FindVRJuggler30.cmake for more information.
GADGETEER20_LIBRARY_DIR, library search path
GADGETEER20_INCLUDE_DIR, include search path
GADGETEER20_LIBRARY, the library to link against
GADGETEER20_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
GADGETEER20_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
FindGlove5DT
try to find Glove5DT libraries
Cache Variables: (probably not for direct use in your scripts)
GLOVE5DT_INCLUDE_DIR
GLOVE5DT_LIBRARY
GLOVE5DT_LIBRARY_RELEASE
GLOVE5DT_LIBRARY_DEBUG
GLOVE5DT_RUNTIME_LIBRARY_RELEASE
GLOVE5DT_RUNTIME_LIBRARY_DEBUG
Non-cache variables you might use in your CMakeLists.txt:
GLOVE5DT_FOUND
GLOVE5DT_INCLUDE_DIRS
GLOVE5DT_LIBRARIES
GLOVE5DT_RUNTIME_LIBRARY_DIRS
Requires these CMake modules:
CleanDirectoryList
CleanLibraryList
ListCombinations
ProgramFilesGlob
SelectLibraryConfigurations (included with CMake >=2.8.0)
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindHIDAPI
try to find HIDAPI library
from http://www.signal11.us/oss/hidapi/
Cache Variables: (probably not for direct use in your scripts)
HIDAPI_INCLUDE_DIR
HIDAPI_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
HIDAPI_FOUND
HIDAPI_INCLUDE_DIRS
HIDAPI_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindIDLJ
try to find Java's IDLJ Interface Definition Language compiler.
Ideally used with CMake 2.8.5 or newer for Java support using
FindJava.cmake and UseJava.cmake
Variables:
Java_IDLJ_COMMAND, executable for idlj
IDLJ_FOUND, If false, do not try to use this
Function:
java_idlj(varname idlfile [extra idlj args]) - Generates
the Java source files from the IDL file you indicate, and
appends filenames suitable to add to a add_jar() call to the
variable you specified.
Because the files generated from an IDL file are not entirely
predictable, java_idlj runs idlj in the cmake step, rather than the
build step, and triggers a CMake re-run when an idl file is modified.
Already up-to-date generated source is not re-generated, however.
Files are generated in a directory created specifically for the
particular IDL file and the particular call, in the build directory -
there should be no worries about overwriting files or picking up too
much with the wildcard.
You may wish to add the IDL file to your list of sources if you want
it to appear in your IDE, but it is not necessary.
Original Author: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
FindInterSense
try to find InterSense library
Cache Variables: (probably not for direct use in your scripts)
INTERSENSE_INCLUDE_DIR
INTERSENSE_ISENSEC_DIR - location of the isense.c "import library" substitute.
INTERSENSE_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
INTERSENSE_FOUND
INTERSENSE_INCLUDE_DIRS
INTERSENSE_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Author: 2013 Eric Marsh <bits@wemarsh.com> http://wemarsh.com/
Kognitiv Neuroinformatik, Universität Bremen
(building on Ryan Pavlik's templates)
2013 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
http://academic.cleardefinition.com Iowa State University HCI Graduate
Program/VRAC
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)
FindJCCL12
try to find JCCL 1.2 library
Requires VPR 2.0 (thus FindVPR20.cmake) Optionally uses Flagpoll and
FindFlagpoll.cmake
This library is a part of VR Juggler 2.2 - you probably want to use
find_package(VRJuggler22) instead, for an easy interface to this and
related scripts. See FindVRJuggler22.cmake for more information.
JCCL12_LIBRARY_DIR, library search path
JCCL12_INCLUDE_DIR, include search path
JCCL12_LIBRARY, the library to link against
JCCL12_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
JCCL12_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindJCCL14
try to find JCCL 1.4 library
Requires VPR 2.2 (thus FindVPR22.cmake) Optionally uses Flagpoll and
FindFlagpoll.cmake
This library is a part of VR Juggler 3.0 - you probably want to use
find_package(VRJuggler30) instead, for an easy interface to this and
related scripts. See FindVRJuggler30.cmake for more information.
JCCL14_LIBRARY_DIR, library search path
JCCL14_INCLUDE_DIR, include search path
JCCL14_LIBRARY, the library to link against
JCCL14_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
JCCL14_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
FindJtTk
try to find JTTK library
JTTK_LIBRARY_DIRS, library search path
JTTK_INCLUDE_DIRS, include search path
JTTK_{component}_LIBRARY, the library to link against
JTTK_ENVIRONMENT, environment variables to set
JTTK_RUNTIME_LIBRARY_DIRS
JTTK_FOUND, If false, do not try to use this library.
If you have license issues, you might run this command on each
JtTk-using target:
jttk_stamp_binary(<targetname>)
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
JTTK_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindLAPACKLibs
Try to find LAPACK and BLAS libraries
Once done, this will define
LAPACKLIBS_LIBRARIES, all libraries to link against
LAPACKLIBS_FOUND, If false, do not try to use LAPACK library features.
Users may wish to set:
LAPACKLIBS_ROOT_DIR, location to start searching for LAPACK libraries
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindLibusb1
try to find libusb-1 library
Cache Variables: (probably not for direct use in your scripts)
LIBUSB1_LIBRARY
LIBUSB1_INCLUDE_DIR
Non-cache variables you should use in your CMakeLists.txt:
LIBUSB1_LIBRARIES
LIBUSB1_INCLUDE_DIRS
LIBUSB1_FOUND - if this is not true, do not attempt to use this library
Requires these CMake modules:
ProgramFilesGlob
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindLuabind
try to find Luabind
Users may optionally supply:
LUABIND_ROOT_DIR - a prefix to start searching
Non-cache variables you might use in your CMakeLists.txt:
LUABIND_FOUND
LUABIND_DEFINITIONS
LUABIND_INCLUDE_DIRS
LUABIND_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindLyX
Try to find LyX, and define some custom commands to export from LyX
Once done, this will define:
LYX_FOUND - system has LyX
LYX_COMMAND - the command to run
and the following new functions:
lyx_export(<format> <extension-without-leading-dot> <output-variable>
INPUT <lyx-file> [...]
[OUTPUT_TO_SOURCE_DIR]
[ EXTRA_DEPS <bibtex-or-other-file> [...] ]) - the base function
These shortcut functions all have the same syntax:
lyx_export_to_XXX(<output-variable>
INPUT <lyx-file> [...]
[OUTPUT_TO_SOURCE_DIR]
[ EXTRA_DEPS <bibtex-or-other-file> [...] ])
Available shortcuts:
lyx_export_to_docbook_xml
lyx_export_to_docbook
lyx_export_to_pdf
lyx_export_to_pdf_via_pdflatex
lyx_export_to_pdf_via_dvi
Useful configuration variables you might want to add to your cache:
LYX_ROOT_DIR - A directory prefix to search
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindMacHID
try to find Mac HID frameworks
Cache Variables: (probably not for direct use in your scripts)
MACHID_CoreFoundation_LIBRARY
MACHID_CoreFoundation_INCLUDE_DIR
MACHID_IOKit_LIBRARY
MACHID_IOKit_INCLUDE_DIR
MACOSX_HID_UINT32T (from CheckMacHIDAPI)
Non-cache variables you should use in your CMakeLists.txt:
MACHID_DEFINITIONS
MACHID_LIBRARIES
MACHID_INCLUDE_DIRS
MACHID_FOUND - if this is not true, do not attempt to use this library
Requires these CMake modules:
CheckMacHIDAPI
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindMarkdown
try to find Markdown tool
Cache Variables:
MARKDOWN_EXECUTABLE
Non-cache variables you might use in your CMakeLists.txt:
MARKDOWN_FOUND
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2011 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2011. 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)
FindOpenCV
------------------------------
See http://sourceforge.net/projects/opencvlibrary/
The following variable is optionally searched for defaults
OPENCV_ROOT_DIR: Base directory of OpenCv tree to use.
OPENCV_NEW_LIBRARY_NAMES Set to YES before searching if you want to
The following are set after configuration is done:
OPENCV_FOUND
OPENCV_INCLUDE_DIRS
OPENCV_LIBRARIES
2004/05 Jan Woetzel, Friso, Daniel Grest 2006/01 complete rewrite by
Jan Woetzel 2006/09 2nd rewrite introducing ROOT_DIR and PATH_SUFFIXES
to handle multiple installed versions gracefully by Jan Woetzel
2010/02 Ryan Pavlik (Iowa State University) - partial rewrite to
standardize
tested with:
www.mip.informatik.uni-kiel.de/~jw academic.cleardefinition.com
FindOpenHaptics
try to find OpenHaptics libraries
Cache Variables: (probably not for direct use in your scripts)
HDAPI_INCLUDE_DIR
HDAPI_LIBRARY
HDAPI_LIBRARY_RELEASE
HDAPI_LIBRARY_DEBUG
HDAPI_HDU_INCLUDE_DIR
HDAPI_HDU_LIBRARY
HDAPI_HDU_LIBRARY_RELEASE
HDAPI_HDU_LIBRARY_DEBUG
HLAPI_INCLUDE_DIR
HLAPI_LIBRARY
HLAPI_LIBRARY_RELEASE
HLAPI_LIBRARY_DEBUG
HLAPI_HLU_INCLUDE_DIR
HLAPI_HLU_LIBRARY
HLAPI_HLU_LIBRARY_RELEASE
HLAPI_HLU_LIBRARY_DEBUG
Non-cache variables you might use in your CMakeLists.txt:
OPENHAPTICS_FOUND
HDAPI_INCLUDE_DIRS
HDAPI_LIBRARIES
HDAPI_HDU_INCLUDE_DIRS
HDAPI_HDU_LIBRARIES
HLAPI_INCLUDE_DIRS
HLAPI_LIBRARIES
HLAPI_HLU_INCLUDE_DIRS
HLAPI_HLU_LIBRARIES
OPENHAPTICS_LIBRARIES - includes HD, HDU, HL, HLU
OPENHAPTICS_RUNTIME_LIBRARY_DIRS
OPENHAPTICS_ENVIRONMENT
OPENHAPTICS_LIBRARY_DIRS
OPENHAPTICS_INCLUDE_DIRS
Requires these CMake modules:
CleanDirectoryList
CleanLibraryList
ListCombinations
ProgramFilesGlob
SelectLibraryConfigurations (included with CMake >=2.8.0)
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
CMake 2.6.3 (uses "unset")
Original Author: 2009-2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindParasolid
try to find PARASOLID library
Important note: If you are also using JtTk, do your
find_package(JtTk)
first, to avoid runtime PK_* errors!
PARASOLID_LIBRARY_DIR, library search path
PARASOLID_INCLUDE_DIR, include search path
PARASOLID_{component}_LIBRARY, the library to link against
PARASOLID_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Requires these CMake modules:
CheckVersion
ListCombinations
ProgramFilesGlob
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindPerformer
try to find the OpenGL Performer library
Users may optionally supply:
PERFORMER_ROOT_DIR - a prefix to start searching.
Cache Variables: (probably not for direct use in your scripts)
PERFORMER_INCLUDE_DIR
PERFORMER_LIBRARY
PERFORMER_PFUI_LIBRARY - doesn't get included in PERFORMER_LIBRARIES
PERFORMER_PFDU_UTIL_LIBRARY - doesn't get included in PERFORMER_LIBRARIES
PERFORMER_PFV_LIBRARY - doesn't get included in PERFORMER_LIBRARIES
Non-cache variables you might use in your CMakeLists.txt:
PERFORMER_FOUND
PERFORMER_INCLUDE_DIRS
PERFORMER_LIBRARIES
PERFORMER_RUNTIME_LIBRARY_DIRS
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
FindPerlModules
try to find perl modules, passed as COMPONENTS
Non-cache variable you might use in your CMakeLists.txt:
PERLMODULES_FOUND
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
FindQVRPN
try to find QVRPN library
Of course, you may also just choose to make QVRPN a submodule of your
project itself.
Cache Variables:
QVRPN_LIBRARY
QVRPN_INCLUDE_DIR
Non-cache variables you might use in your CMakeLists.txt:
QVRPN_FOUND
QVRPN_LIBRARIES
QVRPN_INCLUDE_DIRS
QVRPN_ROOT_DIR is searched preferentially for these files
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Refactored from FindVRPN.cmake by: Juan Sebastian Casallas
<casallas@iastate.edu>
FindVRPN.cmake Original Author: 2009-2010 Ryan Pavlik
<rpavlik@iastate.edu> <abiryan@ryand.net>
http://academic.cleardefinition.com Iowa State University HCI Graduate
Program/VRAC
Copyright Iowa State University 2009-2012. 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)
FindSonix12
try to find Sonix 1.2 library
Requires VPR 2.0 and GMTL (thus FindVPR20.cmake and FindGMTL.cmake)
Optionally uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 2.2 - you probably want to use
find_package(VRJuggler22) instead, for an easy interface to this and
related scripts. See FindVRJuggler22.cmake for more information.
SONIX12_LIBRARY_DIR, library search path
SONIX12_INCLUDE_DIR, include search path
SONIX12_LIBRARY, the library to link against
SONIX12_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
SONIX12_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindSonix14
try to find Sonix 1.4 library
Requires VPR 2.2 and GMTL (thus FindVPR22.cmake and FindGMTL.cmake)
Optionally uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 3.0 - you probably want to use
find_package(VRJuggler30) instead, for an easy interface to this and
related scripts. See FindVRJuggler30.cmake for more information.
SONIX14_LIBRARY_DIR, library search path
SONIX14_INCLUDE_DIR, include search path
SONIX14_LIBRARY, the library to link against
SONIX14_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
SONIX14_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
FindTR1
Try to find C++ TR1 headers and libraries
Once done, this will define
TR1_USE_FILE, which you may "include" in your CMake file to be able
to use TR1 features transparently
TR1_INCLUDE_DIRS, any directories needed to access TR1 headers
TR1_LIBRARY_DIRS, any directories needed to access (auto-link) TR1 libraries
TR1_FOUND, If false, do not try to use TR1 features.
If TR1 features are not built-in, we will try to use Boost to
substitute for them.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindTooN
try to find TooN headers
Users may optionally supply:
TOON_ROOT_DIR - a prefix to start searching for the toon headers.
Cache Variables: (probably not for direct use in your scripts)
TOON_INCLUDE_DIR
Non-cache variables you might use in your CMakeLists.txt:
TOON_FOUND
TOON_INCLUDE_DIRS
TOON_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindTooNtag
try to find tag algorithm library (built on TooN)
Users may optionally supply:
TAG_ROOT_DIR - a prefix to start searching for the toon headers.
Cache Variables: (probably not for direct use in your scripts)
TAG_INCLUDE_DIR
TAG_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
TOONTAG_FOUND
TOONTAG_INCLUDE_DIRS
TOONTAG_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindTweek12
try to find Tweek 1.2 library
Requires VPR 2.0 (thus FindVPR20.cmake) Optionally uses Flagpoll and
FindFlagpoll.cmake
This library is a part of VR Juggler 2.2 - you probably want to use
find_package(VRJuggler22) instead, for an easy interface to this and
related scripts. See FindVRJuggler22.cmake for more information.
TWEEK12_LIBRARY_DIR, library search path
TWEEK12_INCLUDE_DIR, include search path
TWEEK12_LIBRARY, the library to link against
TWEEK12_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
TWEEK12_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindTweek14
try to find Tweek 1.4 library
Requires VPR 2.2 (thus FindVPR22.cmake) Optionally uses Flagpoll and
FindFlagpoll.cmake
This library is a part of VR Juggler 3.0 - you probably want to use
find_package(VRJuggler30) instead, for an easy interface to this and
related scripts. See FindVRJuggler30.cmake for more information.
TWEEK14_LIBRARY_DIR, library search path
TWEEK14_INCLUDE_DIR, include search path
TWEEK14_LIBRARY, the library to link against
TWEEK14_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
TWEEK14_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
FindVPR20
try to find VPR 2.0 library
Requires Boost 1.33.1 or greater (including filesystem and signals
libraries) (and thus FindBoost.cmake from 2.8rc3 or newer, preferably)
Requires NSPR4 (and PLC4) on Windows Requires pthreads on Unix (Mac or
Linux) Requires libuuid on Linux Optionally uses Flagpoll and
FindFlagpoll.cmake
This library is a part of VR Juggler 2.2 - you probably want to use
find_package(VRJuggler22) instead, for an easy interface to this and
related scripts. See FindVRJuggler22.cmake for more information.
VPR20_LIBRARY_DIR, library search path
VPR20_INCLUDE_DIR, include search path
VPR20_LIBRARY, the library to link against
VPR20_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
VPR20_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindVPR22
try to find VPR 2.2 library
Requires Boost 1.33.1 or greater (including filesystem and signals
libraries) (and thus FindBoost.cmake from 2.8rc3 or newer, preferably)
Requires NSPR4 (and PLC4) on Windows Requires pthreads on Unix (Mac or
Linux) Requires libuuid on Linux Optionally uses Flagpoll and
FindFlagpoll.cmake
This library is a part of VR Juggler 3.0 - you probably want to use
find_package(VRJuggler30) instead, for an easy interface to this and
related scripts. See FindVRJuggler30.cmake for more information.
VPR22_LIBRARY_DIR, library search path
VPR22_INCLUDE_DIR, include search path
VPR22_LIBRARY, the library to link against
VPR22_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
VPR22_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
FindVPS
try to find VPS library
VPS_LIBRARY_DIR, library search path
VPS_INCLUDE_DIR, include search path
VPS_{component}_LIBRARY, the library to link against
VPS_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
VPS_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindVRJ22
try to find VR Juggler 2.2 core library
Requires JCCL 1.2, Gadgeteer 1.2, VPR 2.0, and Sonix 1.2 (thus
FindJCCL12.cmake, FindGadgeteer12.cmake, FindVPR20.cmake, and
FindSonix12.cmake) Requires X11 if not on Mac or Windows. Optionally
uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 2.2 - you probably want to use
find_package(VRJuggler22) instead, for an easy interface to this and
related scripts. See FindVRJuggler22.cmake for more information.
VRJ22_LIBRARY_DIR, library search path
VRJ22_INCLUDE_DIR, include search path
VRJ22_LIBRARY, the library to link against
VRJ22_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
VRJ22_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindVRJ30
try to find VR Juggler 3.0 core library
Requires JCCL 1.4, Gadgeteer 1.4, VPR 2.2, and Sonix 1.4 (thus
FindJCCL14.cmake, FindGadgeteer20.cmake, FindVPR22.cmake, and
FindSonix14.cmake) Requires X11 if not on Mac or Windows. Optionally
uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 3.0 - you probably want to use
find_package(VRJuggler30) instead, for an easy interface to this and
related scripts. See FindVRJuggler30.cmake for more information.
VRJ30_LIBRARY_DIR, library search path
VRJ30_INCLUDE_DIR, include search path
VRJ30_LIBRARY, the library to link against
VRJ30_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
VRJ30_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
Copyright Iowa State University 2009-2010. 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)
FindVRJOGL22
try to find VRJuggler 2.2 OpenGL library
Requires VRJ core 2.2 (thus FindVRJ22.cmake) Requires OpenGL.
Optionally uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 2.2 - you probably want to use
find_package(VRJuggler22) instead, for an easy interface to this and
related scripts. See FindVRJuggler22.cmake for more information.
VRJOGL22_LIBRARY_DIR, library search path
VRJOGL22_INCLUDE_DIRS, include search path for dependencies
VRJOGL22_LIBRARY, the library to link against
VRJOGL22_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
VRJOGL22_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindVRJOGL30
try to find VRJuggler 3.0 OpenGL library
Requires VRJ core 3.0 (thus FindVRJ30.cmake) Requires OpenGL.
Optionally uses Flagpoll and FindFlagpoll.cmake
This library is a part of VR Juggler 3.0 - you probably want to use
find_package(VRJuggler30) instead, for an easy interface to this and
related scripts. See FindVRJuggler30.cmake for more information.
VRJOGL30_LIBRARY_DIR, library search path
VRJOGL30_INCLUDE_DIRS, include search path for dependencies
VRJOGL30_LIBRARY, the library to link against
VRJOGL30_FOUND, If false, do not try to use this library.
Plural versions refer to this library and its dependencies, and are
recommended to be used instead, unless you have a good reason.
Useful configuration variables you might want to add to your cache:
VRJOGL30_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
This script will use Flagpoll, if found, to provide hints to the
location of this library, but does not use the compiler flags returned
by Flagpoll directly.
The VJ_BASE_DIR environment variable is also searched (preferentially)
when searching for this component, so most sane build environments
should "just work." Note that you need to manually re-run CMake if you
change this environment variable, because it cannot auto-detect this
change and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
FindVRJuggler
try to find VR Juggler-related packages (combined finder)
VRJUGGLER_INCLUDE_DIRS, include search paths
VRJUGGLER_LIBRARIES, the libraries to link against
VRJUGGLER_ENVIRONMENT
VRJUGGLER_RUNTIME_LIBRARY_DIRS
VRJUGGLER_CXX_FLAGS
VRJUGGLER_DEFINITIONS
VRJUGGLER_FOUND, If false, do not try to use VR Juggler.
Components available to search for (uses "VRJOGL" by default):
VRJOGL
VRJ
Gadgeteer
JCCL
VPR
Sonix
Tweek
Additionally, a full setup requires these packages and their
Find_.cmake scripts
CPPDOM
GMTL
Optionally uses Flagpoll (and FindFlagpoll.cmake)
Notes on components:
- All components automatically include their dependencies.
- If you do not specify a component, VRJOGL (the OpenGL view manager)
will be used by default.
- Capitalization of component names does not matter, but it's best to
pretend it does and use the above capitalization.
- Since this script calls find_package for your requested components and
their dependencies, you can use any of the variables specified in those
files in addition to the "summary" ones listed here, for more finely
controlled building and linking.
This CMake script requires all of the Find*.cmake scripts for the
components listed above, as it is only a "meta-script" designed to
make using those scripts more developer-friendly.
Useful configuration variables you might want to add to your cache:
(CAPS COMPONENT NAME)_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
The VJ_BASE_DIR environment variable is also searched (preferentially)
when seeking any of the above components, as well as Flagpoll, CPPDOM,
and Boost (from within VPR), so most sane build environments should
"just work."
IMPORTANT: Note that you need to manually re-run CMake if you change
this environment variable, because it cannot auto-detect this change
and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com>
Copyright Iowa State University 2009-2010. 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)
FindVRJuggler22
try to find VRJuggler 2.2-related packages (main finder)
VRJUGGLER22_LIBRARY_DIRS, library search paths
VRJUGGLER22_INCLUDE_DIRS, include search paths
VRJUGGLER22_LIBRARIES, the libraries to link against
VRJUGGLER22_ENVIRONMENT
VRJUGGLER22_RUNTIME_LIBRARY_DIRS
VRJUGGLER22_CXX_FLAGS
VRJUGGLER22_DEFINITIONS
VRJUGGLER22_FOUND, If false, do not try to use VR Juggler 2.2.
Components available to search for (uses "VRJOGL22" by default):
VRJOGL22
VRJ22
Gadgeteer12
JCCL12
VPR20
Sonix12
Tweek12
Additionally, a full setup requires these packages and their
Find_.cmake scripts
CPPDOM
GMTL
Optionally uses Flagpoll (and FindFlagpoll.cmake)
Notes on components:
- All components automatically include their dependencies.
- You can search for the name above with or without the version suffix.
- If you do not specify a component, VRJOGL22(the OpenGL view manager)
will be used by default.
- Capitalization of component names does not matter, but it's best to
pretend it does and use the above capitalization.
- Since this script calls find_package for your requested components and
their dependencies, you can use any of the variables specified in those
files in addition to the "summary" ones listed here, for more finely
controlled building and linking.
This CMake script requires all of the Find*.cmake scripts for the
components listed above, as it is only a "meta-script" designed to
make using those scripts more developer-friendly.
Useful configuration variables you might want to add to your cache:
(CAPS COMPONENT NAME)_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
The VJ_BASE_DIR environment variable is also searched (preferentially)
when seeking any of the above components, as well as Flagpoll, CPPDOM,
and Boost (from within VPR20), so most sane build environments should
"just work."
IMPORTANT: Note that you need to manually re-run CMake if you change
this environment variable, because it cannot auto-detect this change
and trigger an automatic re-run.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindVRJuggler30
try to find VRJuggler 3.0-related packages (main finder)
VRJUGGLER30_LIBRARY_DIRS, library search paths
VRJUGGLER30_INCLUDE_DIRS, include search paths
VRJUGGLER30_LIBRARIES, the libraries to link against
VRJUGGLER30_ENVIRONMENT
VRJUGGLER30_RUNTIME_LIBRARY_DIRS
VRJUGGLER30_CXX_FLAGS
VRJUGGLER30_DEFINITIONS
VRJUGGLER30_FOUND, If false, do not try to use VR Juggler 3.0.
Components available to search for (uses "VRJOGL30" by default):
VRJOGL30
VRJ30
Gadgeteer20
JCCL14
VPR22
Sonix14
Tweek14
Additionally, a full setup requires these packages and their
Find_.cmake scripts
CPPDOM
GMTL
Optionally uses Flagpoll (and FindFlagpoll.cmake)
Notes on components:
- All components automatically include their dependencies.
- You can search for the name above with or without the version suffix.
- If you do not specify a component, VRJOGL30(the OpenGL view manager)
will be used by default.
- Capitalization of component names does not matter, but it's best to
pretend it does and use the above capitalization.
- Since this script calls find_package for your requested components and
their dependencies, you can use any of the variables specified in those
files in addition to the "summary" ones listed here, for more finely
controlled building and linking.
This CMake script requires all of the Find*.cmake scripts for the
components listed above, as it is only a "meta-script" designed to
make using those scripts more developer-friendly.
Useful configuration variables you might want to add to your cache:
(CAPS COMPONENT NAME)_ROOT_DIR - A directory prefix to search
(a path that contains include/ as a subdirectory)
The VJ_BASE_DIR environment variable is also searched (preferentially)
when seeking any of the above components, as well as Flagpoll, CPPDOM,
and Boost (from within VPR22), so most sane build environments should
"just work."
IMPORTANT: Note that you need to manually re-run CMake if you change
this environment variable, because it cannot auto-detect this change
and trigger an automatic re-run.
Original Author: 2009-2011 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC Updated for VR Juggler 3.0 by:
Brandon Newendorp <brandon@newendorp.com> and Ryan Pavlik
Copyright Iowa State University 2009-2011. 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)
FindVRPN
try to find VRPN library
Cache Variables:
VRPN_LIBRARY
VRPN_SERVER_LIBRARY
VRPN_INCLUDE_DIR
Non-cache variables you might use in your CMakeLists.txt:
VRPN_FOUND
VRPN_SERVER_LIBRARIES - server libraries
VRPN_LIBRARIES - client libraries
VRPN_CLIENT_DEFINITIONS - definitions if you only use the client library
VRPN_DEFINITIONS - Client-only definition if all we found was the client library.
VRPN_INCLUDE_DIRS
VRPN_ROOT_DIR is searched preferentially for these files
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2012. 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)
FindViewPoint
try to find Arrington Research ViewPoint EyeTracker SDK
Cache Variables: (probably not for direct use in your scripts)
VIEWPOINT_INCLUDE_DIR
VIEWPOINT_LIBRARY
VIEWPOINT_RUNTIME_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
VIEWPOINT_FOUND
VIEWPOINT_INCLUDE_DIRS
VIEWPOINT_LIBRARIES
VIEWPOINT_RUNTIME_LIBRARIES - aka the dll for installing
VIEWPOINT_RUNTIME_LIBRARY_DIRS
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
FindVirtuoseAPI
try to find Haption VirtuoseAPI library and include files
VIRTUOSEAPI_INCLUDE_DIRS, where to find headers
VIRTUOSEAPI_LIBRARIES, the libraries to link against
VIRTUOSEAPI_FOUND, If false, do not try to use this library
VIRTUOSEAPI_RUNTIME_LIBRARY_DIRS, path to DLL/SO for runtime use.
VIRTUOSEAPI_RUNTIME_LIBRARIES, runtime libraries you might want to install
FindVirtuoseVPP
try to find Haption VirtuoseAPI C++ wrapper include files
Use of this header depends on the VirtuoseAPI, so we search for that
too.
VIRTUOSEVPP_INCLUDE_DIRS, where to find headers
VIRTUOSEVPP_LIBRARIES, the libraries to link against
VIRTUOSEVPP_FOUND, If false, do not try to use this library
VIRTUOSEVPP_RUNTIME_LIBRARY_DIRS, path to DLL/SO for runtime use.
VIRTUOSEAPI_RUNTIME_LIBRARIES, runtime libraries you might want to install
FindWiiSCAAT
try to find the Wii SCAAT library
Users may optionally supply:
WIISCAAT_ROOT_DIR - a prefix to start searching for the headers.
Cache Variables: (probably not for direct use in your scripts)
WIISCAAT_INCLUDE_DIR
WIISCAAT_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
WIISCAAT_FOUND
WIISCAAT_INCLUDE_DIRS
WIISCAAT_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindWiiUse
try to find WiiUse library
Cache Variables: (probably not for direct use in your scripts)
WIIUSE_INCLUDE_DIR
WIIUSE_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
WIIUSE_FOUND
WIIUSE_INCLUDE_DIRS
WIIUSE_LIBRARIES
WIIUSE_RUNTIME_LIBRARIES - aka the dll for installing
WIIUSE_RUNTIME_LIBRARY_DIRS
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindWinHID
try to find Windows HID support, part of the WDK/DDK
Cache Variables: (probably not for direct use in your scripts)
WINHID_INCLUDE_DIR
WINHID_CRT_INCLUDE_DIR
WINHID_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
WINHID_FOUND
WINHID_INCLUDE_DIRS
WINHID_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
PrefixListGlob
CleanDirectoryList
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindWindowsSDK
Find the Windows SDK aka Platform SDK
Variables:
WINDOWSSDK_FOUND - if any version of the windows or platform SDK was found that is usable with the current version of visual studio
WINDOWSSDK_LATEST_DIR
WINDOWSSDK_LATEST_NAME
WINDOWSSDK_FOUND_PREFERENCE - if we found an entry indicating a "preferred" SDK listed for this visual studio version
WINDOWSSDK_PREFERRED_DIR
WINDOWSSDK_PREFERRED_NAME
WINDOWSSDK_DIRS - contains no duplicates, ordered most recent first.
WINDOWSSDK_PREFERRED_FIRST_DIRS - contains no duplicates, ordered with preferred first, followed by the rest in descending recency
Functions:
windowssdk_name_lookup(<directory> <output variable>) - Find the name corresponding with the SDK directory you pass in, or
NOTFOUND if not recognized. Your directory must be one of WINDOWSSDK_DIRS for this to work.
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2012 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2012. 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)
Findargp
try to find the argp library/component of glibc
Users may optionally supply:
ARGP_ROOT_DIR - a prefix to start searching.
Cache Variables: (probably not for direct use in your scripts)
ARGP_INCLUDE_DIR
ARGP_LIBRARY, only defined if linking to an extra library is required
Non-cache variables you might use in your CMakeLists.txt:
ARGP_FOUND
ARGP_INCLUDE_DIRS
ARGP_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
Findcppcheck
try to find cppcheck tool
Cache Variables:
CPPCHECK_EXECUTABLE
Non-cache variables you might use in your CMakeLists.txt:
CPPCHECK_FOUND
CPPCHECK_POSSIBLEERROR_ARG
CPPCHECK_UNUSEDFUNC_ARG
CPPCHECK_STYLE_ARG
CPPCHECK_QUIET_ARG
CPPCHECK_INCLUDEPATH_ARG
CPPCHECK_FAIL_REGULAR_EXPRESSION
CPPCHECK_WARN_REGULAR_EXPRESSION
CPPCHECK_MARK_AS_ADVANCED - whether to mark our vars as advanced even
if we don't find this program.
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
Findcppunit
try to find cppunit library
Cache Variables: (probably not for direct use in your scripts)
CPPUNIT_INCLUDE_DIR
CPPUNIT_LIBRARY
Non-cache variables you might use in your CMakeLists.txt:
CPPUNIT_FOUND
CPPUNIT_INCLUDE_DIRS
CPPUNIT_LIBRARIES
Requires these CMake modules:
SelectLibraryConfigurations (included with CMake >= 2.8.0)
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2011 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2011. 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)
Findcutil
find NVIDIA CUDA and source for the cutil library, building cutil if
needed.
CUTIL_LIBRARIES - Libraries to link against to use CUTIL
CUTIL_INCLUDE_DIRS - Include directories to add before building a CUTIL app.
Functions:
install_cutil({RUNTIME_LIBRARY_DESTINATION}) - Install the CUTIL shared lib if created.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
Finddb2pdf
Try to find db2pdf, and define a custom command to turn docbook into
pdf
Once done, this will define:
DB2PDF_FOUND - system has LyX
DB2PDF_COMMAND - the command to run
and the following function:
docbook_to_pdf(<output-variable> <docbook files>)
Useful configuration variables you might want to add to your cache:
DB2PDF_ROOT_DIR - A directory prefix to search
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
FindosgLua
try to find osgLua
Users may optionally supply:
OSGLUA_ROOT_DIR - a prefix to start searching
Non-cache variables you might use in your CMakeLists.txt:
OSGLUA_FOUND
OSGLUA_INCLUDE_DIRS
OSGLUA_LIBRARIES
Requires these CMake modules:
FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
Findquatlib
Find quatlib
Find the quatlib headers and libraries.
QUATLIB_INCLUDE_DIRS - where to find quat.h
QUATLIB_LIBRARIES - List of libraries when using quatlib.
QUATLIB_FOUND - True if quatlib found.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
GetCPUDetails
Set a number of variables to indicate things about the current CPU and
OS
CPU_COUNT
CPU_INTEL
CPU_EXE_64BIT
CPU_EXE_32BIT
CPU_HAS_SSE
CPU_HAS_SSE2
CPU_HAS_SSE3
CPU_HAS_SSSE3
CPU_HAS_SSE4_1
CPU_HAS_SSE4_2
Requires these CMake modules:
no additional modules required
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
GetCompilerInfoString
Utility function to return a human-useful-only string ID'ing the
compiler
get_compiler_info_string(<resultvar>)
and some helper functions:
get_gcc_version(<resultvar>)
get_vs_short_version_string(<generator> <resultvar>)
You might consider using it when setting up CTest options, for
example:
include(GetCompilerInfoString)
get_compiler_info_string(COMPILERID)
set(CTEST_BUILD_NAME "${CMAKE_SYSTEM}-${CMAKE_SYSTEM_PROCESSOR}-${COMPILERID}")
Requires these CMake modules:
no additional modules required
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
Some functions based on cmake-2.8.0 modules FindBoost.cmake and
CTest.cmake
=============================================================================
Copyright 2006-2009 Kitware, Inc. Copyright 2006-2008 Andreas
Schneider <mail@cynapses.org> Copyright 2007 Wengo Copyright 2007 Mike
Jackson Copyright 2008 Andreas Pakulat <apaku@gmx.de> Copyright
2008-2009 Philip Lowman <philip@yhbt.com> Copyright 2010 Iowa State
University (Ryan Pavlik <abiryan@ryand.net>)
Distributed under the OSI-approved BSD License (the "License"); see
accompanying file Copyright.txt for details.
This software is distributed WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the License for more information.
=============================================================================
CMake - Cross Platform Makefile Generator Copyright 2000-2009 Kitware,
Inc., Insight Software Consortium All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the names of Kitware, Inc., the Insight Software Consortium,
nor the names of their contributors may be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
=============================================================================
GetDirectoryList
Returns a list of the parent directories of all files passed
get_directory_list(<listvar> <file path> [<additional file paths>...])
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
GetFileList
Returns a list of the file names of all files passed
get_file_list(<listvar> <file path> [<additional file paths>...])
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
GetForceIncludeDefinitions
Get the platform-appropriate flags to add to force inclusion of a file
The most common use of this is to use a generated config.h-type file
placed out of the source tree in all files.
get_force_include_definitions(var forcedincludefiles...) -
where var is the name of your desired output variable, and everything
else is a source file to forcibly include.
a list item to be filtered.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
GetGitRevisionDescription
Returns a version string from Git
These functions force a re-configure on each git commit so that you
can trust the values of the variables in your build system.
get_git_head_revision(<refspecvar> <hashvar> [<additional arguments to git describe> ...])
Returns the refspec and sha hash of the current head revision
git_describe(<var> [<additional arguments to git describe> ...])
Returns the results of git describe on the source tree, and adjusting
the output so that it tests false if an error occurs.
git_get_exact_tag(<var> [<additional arguments to git describe> ...])
Returns the results of git describe --exact-match on the source tree,
and adjusting the output so that it tests false if there was no exact
matching tag.
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
GetSubprojectStatus
Returns whether the current project is on its own or within another
project's build
get_subproject_status(<resultvar>) - resultvar will be YES if we are
included in another project, or NO if we are being built separately
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
Licensing
Building a licensing description file
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
ListCombinations
Combine lists of prefixes and suffixes in all combinations
list_combinations(var PREFIXES listitems... SUFFIXES listitems...) -
where var is the name of your desired output variable and PREFIXES
and SUFFIXES are special arguments that indicate the start of your
list of prefixes or suffixes respectively.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
ListFilter
List filtering functions
list_filter(var regex listitems...) - where var is the name of
your desired output variable, regex is the regex whose matching items
WILL be put in the output variable, and everything else is considered
a list item to be filtered.
list_filter_out(var regex listitems...) - where var is the name of
your desired output variable, regex is the regex whose matching items
will NOT be put in the output variable, and everything else is considered
a list item to be filtered.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
LuaTargets
Copy/parse lua source files as a custom target
include(LuaTargets)
add_lua_target(<target_name> <directory to copy to> [<luafile> <luafile>])
Relative paths for the destination directory are considered with
with respect to CMAKE_CURRENT_BINARY_DIR
install_lua_target(<target_name> [arguments to INSTALL(PROGRAMS ...) ])
Set this variable to specify location of luac, if it is not a target:
LUA_TARGET_LUAC_EXECUTABLE
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
MSVCMultipleProcessCompile
Compile with multiple processes on MSVC
include(MSVCMultipleProcessCompile)
Requires these CMake modules:
ListCombinations.cmake
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
MSVCStaticRuntime
Modify compile flags to use the static runtimes of MSVC
include(MSVCStaticRuntime)
Requires these CMake modules:
ListCombinations.cmake
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
MSVCVerboseLinking
Add appropriate linker flags to show link details on Visual Studio
include(MSVCVerboseLinking) - to add the flags automaticlly if applicable
Be sure to include this module _BEFORE_ adding your targets, or the
targets won't pick up the updated flags.
Requires these CMake modules:
- none
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
OptionRequires
Add an option that depends on one or more variables being true.
option_requires(<option_name> <description> <variable_name> [<variable_name>...])
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
PrefixListGlob
For each given prefix in a list, glob using the prefix+pattern
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
ProgramFilesGlob
Find bit-appropriate program files directories matching a given
pattern
Requires these CMake modules:
CleanDirectoryList
PrefixListGlob
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
ResetConfigurations
Re-set the available configurations to just RelWithDebInfo, Release,
and Debug
Requires these CMake modules:
no additional modules required
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
SearchProgramFilesForOpenSceneGraph
Use some smarts to try to find OpenSceneGraph in the Program Files
dirs
Also uses the OSGHOME environment variable as OSG_DIR, if it's found.
Usage:
include(SearchProgramFilesForOpenSceneGraph OPTIONAL)
Requires these CMake modules:
ListFilter
ProgramFilesGlob
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
SetDefaultBuildType
Set a developer-chosen default build type
Requires these CMake modules:
no additional modules required
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
SplitLibraryList
Given a list of libraries with OPTIMIZED, DEBUG, etc.
split_library_list(_generalvar _releasevar _debugvar)
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
StampSourcesWithVersion
It will only attempt a substitution within the first C-style comment
block
To set up your source code for proper stamping, start your file with a
Doxygen-style comment block, starting with /* and ending with */ On a
line by itself, with unimportant whitespace, add the standard Doxygen
"version" command:
@version xxx
or
\version xxx
To make sure it works, please do actually put xxx as the current
version: when you save, add one of the command below to your cmake
build, and run cmake, it should replace xxx with the current version.
(It replaces anything between the end of the whitespace after \version
and the end of the line with the version that you pass in your build
script, so put nothing else on that line!)
For <version>, I recommend passing the value of a CMake variable like
${CPACK_PACKAGE_VERSION}
Remember, reduced duplication of information means reduced errors!
WARNING! This does edit your source directory, but will only execute
if the (hidden/advanced, default OFF) variable ENABLE_VERSION_STAMPING
is on.
Additionally, it tries to be very careful: of your code (that is, the
first /* */), but only if // is not found first
stamp_target_with_version(<version> <target_name> [HEADERS_ONLY | <source>...]) -
If no source file is specified, all will be processed.
stamp_sources_with_version(<version> <source> [<source> ...]) -
Use for files not directly associated with a target.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
TCHARWorkaround
Script to compile Win32-developed sources using tchar without
modifying the code
Requires that ${CMAKE_SOURCE_DIR}/cmake/workarounds/tchar/ be present.
TCHAR_WORKAROUND, automatically set to on when not on win32
TCHAR_INCLUDE_DIR, location of our fake tchar.h file
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
UseBackportedModules
Do a version-dependent check and auto-include backported modules dirs
Name your module directories cmake-*-modules where * is the full
(maj.min.patch) version number that they came from. You can use
subdirectories within those directories, if you like - all directories
inside of a cmake-*-modules dir for a newer version of CMake that what
we're running, that contain one or more .cmake files, will be appended
to the CMAKE_MODULE_PATH.
When backporting modules, be sure to test them and follow copyright
instructions (usually updating copyright notices)
Requires these CMake modules:
CleanDirectoryList
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
UseMarkdown
Convert markdown source files to HTML as a custom target
include(UseMarkdown)
add_markdown_target(<target_name> <directory to copy to> <markdownfile> [<markdownfile>...] [RENAME <newname>])
Relative paths for the destination directory are considered with
with respect to CMAKE_CURRENT_BINARY_DIR. The RENAME argument is only
valid with a single markdown file as input.
install_markdown_target(<target_name> [extra arguments to INSTALL(FILES ...) ])
Requires CMake 2.6 or newer (uses the 'function' command)
Original Author: 2011 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2011-2012. 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)
UseTR1
Use settings to enable access to C++ TR1
This calls include_directories and link_directories as needed to
permit TR1 support.
Original Author: 2009-2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
WarningDev
Print a developer warning, using author_warning if we have cmake 2.8
warning_dev("your desired message")
Original Author: 2010 Ryan Pavlik <rpavlik@iastate.edu>
<abiryan@ryand.net> http://academic.cleardefinition.com Iowa State
University HCI Graduate Program/VRAC
Copyright Iowa State University 2009-2010. 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)
------------------------------------------------------------------------------
See Also
.B ccmake(1), cpack(1), ctest(1), cmakecommands(1), cmakecompat(1),
cmakemodules(1), cmakeprops(1), cmakevars(1)
The following resources are available to get help using CMake:
Home Page
http://www.cmake.org
The primary starting point for learning about CMake.
Frequently Asked Questions
http://www.cmake.org/Wiki/CMake_FAQ
A Wiki is provided containing answers to frequently asked questions.
Online Documentation
http://www.cmake.org/HTML/Documentation.html
Links to available documentation may be found on this web page.
Mailing List
http://www.cmake.org/HTML/MailingLists.html
For help and discussion about using cmake, a mailing list is provided
at cmake@cmake.org. The list is member-post-only but one may sign up
on the CMake web page. Please first read the full documentation at
http://www.cmake.org before posting questions to the list.