Remove obsolete files
This commit is contained in:
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
/build/
|
||||||
|
/bin/
|
||||||
|
/.gradle
|
||||||
|
/.settings
|
||||||
|
/.classpath
|
||||||
18
.project
Normal file
18
.project
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>libwiiuse</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.springsource.ide.eclipse.gradle.core.nature</nature>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
||||||
139
CMakeLists.txt
139
CMakeLists.txt
@@ -1,139 +0,0 @@
|
|||||||
# 2009-2011 Ryan Pavlik <rpavlik@iastate.edu>
|
|
||||||
# http://academic.cleardefinition.com/
|
|
||||||
# Iowa State University HCI Graduate Program/VRAC
|
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 2.6.2)
|
|
||||||
|
|
||||||
# Set package properties
|
|
||||||
project(WiiUse)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Set up options
|
|
||||||
###
|
|
||||||
|
|
||||||
if(NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
|
||||||
set(SUBPROJECT YES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include("./ParseVersion.cmake")
|
|
||||||
message(STATUS "Configuring WiiUse version ${CPACK_PACKAGE_VERSION}")
|
|
||||||
|
|
||||||
option(BUILD_EXAMPLE "Should we build the example app?" YES)
|
|
||||||
option(BUILD_EXAMPLE_SDL "Should we build the SDL-based example app?" YES)
|
|
||||||
option(BUILD_WIIUSE_SHARED_LIB "Should we build as a shared library (dll/so)?" YES)
|
|
||||||
option(INSTALL_EXAMPLES "Should we install the example apps?" YES)
|
|
||||||
|
|
||||||
option(CPACK_MONOLITHIC_INSTALL "Only produce a single component installer, rather than multi-component." NO)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Perform build configuration of dependencies
|
|
||||||
###
|
|
||||||
|
|
||||||
# Locally-developed modules dist'ed with this app - always have this first.
|
|
||||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
|
||||||
include(UseBackportedModules)
|
|
||||||
include(DoxygenTargets)
|
|
||||||
|
|
||||||
if(BUILD_WIIUSE_SHARED_LIB)
|
|
||||||
set(WIIUSE_LIB_TYPE SHARED)
|
|
||||||
else()
|
|
||||||
set(WIIUSE_LIB_TYPE STATIC)
|
|
||||||
add_definitions(-DWIIUSE_STATIC)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT WIN32 AND NOT APPLE)
|
|
||||||
set(LINUX YES)
|
|
||||||
find_package(Bluez REQUIRED)
|
|
||||||
include_directories(${BLUEZ_INCLUDE_DIRS})
|
|
||||||
else()
|
|
||||||
set(LINUX NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
find_package(WinHID REQUIRED)
|
|
||||||
include_directories(${WINHID_INCLUDE_DIRS})
|
|
||||||
if(MSVC)
|
|
||||||
# Minimum requirement is WinXP
|
|
||||||
add_definitions(-D_WIN32_WINNT=0x0501)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Build the project
|
|
||||||
###
|
|
||||||
|
|
||||||
# The lib is in the "src" subdirectory
|
|
||||||
add_subdirectory(src)
|
|
||||||
|
|
||||||
if(NOT SUBPROJECT)
|
|
||||||
# Example apps
|
|
||||||
if(BUILD_EXAMPLE)
|
|
||||||
add_subdirectory(example)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_EXAMPLE_SDL)
|
|
||||||
add_subdirectory(example-sdl)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(SUBPROJECT)
|
|
||||||
set(WIIUSE_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src" PARENT_SCOPE)
|
|
||||||
set(WIIUSE_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/src" PARENT_SCOPE)
|
|
||||||
set(WIIUSE_LIBRARY wiiuse PARENT_SCOPE)
|
|
||||||
set(WIIUSE_LIBRARIES wiiuse PARENT_SCOPE)
|
|
||||||
set(WIIUSE_FOUND ON PARENT_SCOPE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT SUBPROJECT)
|
|
||||||
###
|
|
||||||
# Set packaging options (for CPack)
|
|
||||||
###
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
set(DOC_DIR .)
|
|
||||||
else()
|
|
||||||
set(DOC_DIR share/doc/wiiuse)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Documentation
|
|
||||||
add_doxygen(Doxyfile
|
|
||||||
INSTALL_DESTINATION ${DOC_DIR}
|
|
||||||
INSTALL_COMPONENT docs
|
|
||||||
NO_PDF)
|
|
||||||
|
|
||||||
install(FILES
|
|
||||||
CHANGELOG.mkd
|
|
||||||
LICENSE
|
|
||||||
README.mkd
|
|
||||||
DESTINATION ${DOC_DIR} COMPONENT docs)
|
|
||||||
|
|
||||||
if(INSTALL_EXAMPLES)
|
|
||||||
install(FILES example/example.c
|
|
||||||
DESTINATION ${DOC_DIR}/example COMPONENT examples)
|
|
||||||
install(FILES example-sdl/sdl.c
|
|
||||||
DESTINATION ${DOC_DIR}/example-sdl COMPONENT examples)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
|
|
||||||
set(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/README.mkd")
|
|
||||||
|
|
||||||
include(GetCompilerInfoString)
|
|
||||||
get_compiler_info_string(_compiler)
|
|
||||||
|
|
||||||
set(CPACK_PACKAGE_FILE_NAME "${PROJECT_NAME}-${CPACK_PACKAGE_VERSION}-${_compiler}")
|
|
||||||
|
|
||||||
# Include the packaging system now that we have it all set up
|
|
||||||
include(CPack)
|
|
||||||
|
|
||||||
cpack_add_component(docs HIDDEN)
|
|
||||||
|
|
||||||
cpack_add_component(development
|
|
||||||
DISPLAY_NAME "Development Files")
|
|
||||||
|
|
||||||
cpack_add_component(examples
|
|
||||||
DISPLAY_NAME "Examples")
|
|
||||||
|
|
||||||
cpack_add_component(runtime
|
|
||||||
DISPLAY_NAME "Runtime Library"
|
|
||||||
REQUIRED)
|
|
||||||
endif()
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
set(_version_file "${CMAKE_CURRENT_SOURCE_DIR}/src/wiiuse.h")
|
|
||||||
if(EXISTS "${_version_file}")
|
|
||||||
file(READ "${_version_file}" _version_contents)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${_version_contents}" MATCHES "WIIUSE_MAJOR ([0-9]+)")
|
|
||||||
set(CPACK_PACKAGE_VERSION_MAJOR "${CMAKE_MATCH_1}")
|
|
||||||
else()
|
|
||||||
set(CPACK_PACKAGE_VERSION_MAJOR "0")
|
|
||||||
message("Could not parse major version from wiiuse.h")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${_version_contents}" MATCHES "WIIUSE_MINOR ([0-9]+)")
|
|
||||||
set(CPACK_PACKAGE_VERSION_MINOR "${CMAKE_MATCH_1}")
|
|
||||||
else()
|
|
||||||
set(CPACK_PACKAGE_VERSION_MINOR "13")
|
|
||||||
message("Could not parse minor version from wiiuse.h")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${_version_contents}" MATCHES "WIIUSE_MICRO ([0-9]+)")
|
|
||||||
set(CPACK_PACKAGE_VERSION_MICRO "${CMAKE_MATCH_1}")
|
|
||||||
else()
|
|
||||||
set(CPACK_PACKAGE_VERSION_MICRO "0")
|
|
||||||
message("Could not parse micro version from wiiuse.h")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CPACK_PACKAGE_VERSION
|
|
||||||
"${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_MICRO}")
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
@@ -1,274 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__add_boost_test)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__add_boost_test YES)
|
|
||||||
|
|
||||||
set(BOOST_TEST_TARGET_PREFIX "boosttest")
|
|
||||||
|
|
||||||
if(NOT Boost_FOUND)
|
|
||||||
find_package(Boost 1.34.0 QUIET)
|
|
||||||
endif()
|
|
||||||
if("${Boost_VERSION}0" LESS "1034000")
|
|
||||||
set(_shared_msg
|
|
||||||
"NOTE: boost::test-based targets and tests cannot "
|
|
||||||
"be added: boost >= 1.34.0 required but not found. "
|
|
||||||
"(found: '${Boost_VERSION}'; want >=103400) ")
|
|
||||||
if(BUILD_TESTING)
|
|
||||||
message(FATAL_ERROR
|
|
||||||
${_shared_msg}
|
|
||||||
"You may disable BUILD_TESTING to continue without the "
|
|
||||||
"tests.")
|
|
||||||
else()
|
|
||||||
message(STATUS
|
|
||||||
${_shared_msg}
|
|
||||||
"BUILD_TESTING disabled, so continuing anyway.")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(GetForceIncludeDefinitions)
|
|
||||||
include(CopyResourcesToBuildTree)
|
|
||||||
|
|
||||||
if(Boost_FOUND AND NOT "${Boost_VERSION}0" LESS "1034000")
|
|
||||||
set(_boosttesttargets_libs)
|
|
||||||
set(_boostConfig "BoostTestTargetsIncluded.h")
|
|
||||||
if(NOT Boost_UNIT_TEST_FRAMEWORK_LIBRARY)
|
|
||||||
find_package(Boost 1.34.0 QUIET COMPONENTS unit_test_framework)
|
|
||||||
endif()
|
|
||||||
if(Boost_UNIT_TEST_FRAMEWORK_LIBRARY)
|
|
||||||
set(_boosttesttargets_libs "${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}")
|
|
||||||
if(Boost_USE_STATIC_LIBS)
|
|
||||||
set(_boostConfig "BoostTestTargetsStatic.h")
|
|
||||||
else()
|
|
||||||
if(NOT APPLE)
|
|
||||||
set(_boostConfig "BoostTestTargetsDynamic.h")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
get_filename_component(_moddir ${CMAKE_CURRENT_LIST_FILE} PATH)
|
|
||||||
configure_file("${_moddir}/${_boostConfig}"
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/BoostTestTargetConfig.h"
|
|
||||||
COPYONLY)
|
|
||||||
include_directories("${CMAKE_CURRENT_BINARY_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
function(add_boost_test _name)
|
|
||||||
if(NOT BUILD_TESTING)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
if("${CMAKE_VERSION}" VERSION_LESS "2.8.0")
|
|
||||||
if(NOT "${_boost_test_cmakever_pestered}x" EQUALS "${CMAKE_VERSION}x")
|
|
||||||
message(STATUS
|
|
||||||
"Not adding boost::test targets - CMake 2.8.0 or newer required, using ${CMAKE_VERSION}")
|
|
||||||
set(_boost_test_cmakever_pestered
|
|
||||||
"${CMAKE_VERSION}"
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
""
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# parse arguments
|
|
||||||
set(_nowhere)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
set(_val_args
|
|
||||||
SOURCES
|
|
||||||
FAIL_REGULAR_EXPRESSION
|
|
||||||
LAUNCHER
|
|
||||||
LIBRARIES
|
|
||||||
RESOURCES
|
|
||||||
TESTS)
|
|
||||||
set(_bool_args
|
|
||||||
USE_COMPILED_LIBRARY)
|
|
||||||
foreach(_arg ${_val_args} ${_bool_args})
|
|
||||||
set(${_arg})
|
|
||||||
endforeach()
|
|
||||||
foreach(_element ${ARGN})
|
|
||||||
list(FIND _val_args "${_element}" _val_arg_find)
|
|
||||||
list(FIND _bool_args "${_element}" _bool_arg_find)
|
|
||||||
if("${_val_arg_find}" GREATER "-1")
|
|
||||||
set(_curdest "${_element}")
|
|
||||||
elseif("${_bool_arg_find}" GREATER "-1")
|
|
||||||
set("${_element}" ON)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
else()
|
|
||||||
list(APPEND ${_curdest} "${_element}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(_nowhere)
|
|
||||||
message(FATAL_ERROR "Syntax error in use of add_boost_test!")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT SOURCES)
|
|
||||||
message(FATAL_ERROR
|
|
||||||
"Syntax error in use of add_boost_test: at least one source file required!")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(Boost_FOUND AND NOT "${Boost_VERSION}0" LESS "1034000")
|
|
||||||
|
|
||||||
include_directories(${Boost_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
set(includeType)
|
|
||||||
foreach(src ${SOURCES})
|
|
||||||
file(READ ${src} thefile)
|
|
||||||
if("${thefile}" MATCHES ".*BoostTestTargetConfig.h.*")
|
|
||||||
set(includeType CONFIGURED)
|
|
||||||
set(includeFileLoc ${src})
|
|
||||||
break()
|
|
||||||
elseif("${thefile}" MATCHES ".*boost/test/included/unit_test.hpp.*")
|
|
||||||
set(includeType INCLUDED)
|
|
||||||
set(includeFileLoc ${src})
|
|
||||||
set(_boosttesttargets_libs) # clear this out - linking would be a bad idea
|
|
||||||
if(NOT
|
|
||||||
"${thefile}"
|
|
||||||
MATCHES
|
|
||||||
".*OVERRIDE_BOOST_TEST_INCLUDED_WARNING.*")
|
|
||||||
message("Please replace the include line in ${src} with this alternate include line instead:")
|
|
||||||
message(" \#include <BoostTestTargetConfig.h>")
|
|
||||||
message("Once you've saved your changes, re-run CMake. (See BoostTestTargets.cmake for more info)")
|
|
||||||
endif()
|
|
||||||
break()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(NOT _boostTestTargetsNagged${_name} STREQUAL "${includeType}")
|
|
||||||
if("includeType" STREQUAL "CONFIGURED")
|
|
||||||
message(STATUS
|
|
||||||
"Test '${_name}' uses the CMake-configurable form of the boost test framework - congrats! (Including File: ${includeFileLoc})")
|
|
||||||
elseif("${includeType}" STREQUAL "INCLUDED")
|
|
||||||
message("In test '${_name}': ${includeFileLoc} uses the 'included' form of the boost unit test framework.")
|
|
||||||
else()
|
|
||||||
message("In test '${_name}': Didn't detect the CMake-configurable boost test include.")
|
|
||||||
message("Please replace your existing boost test include in that test with the following:")
|
|
||||||
message(" \#include <BoostTestTargetConfig.h>")
|
|
||||||
message("Once you've saved your changes, re-run CMake. (See BoostTestTargets.cmake for more info)")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
set(_boostTestTargetsNagged${_name}
|
|
||||||
"${includeType}"
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
""
|
|
||||||
FORCE)
|
|
||||||
|
|
||||||
|
|
||||||
if(RESOURCES)
|
|
||||||
list(APPEND SOURCES ${RESOURCES})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Generate a unique target name, using the relative binary dir
|
|
||||||
# and provided name. (transform all / into _ and remove all other
|
|
||||||
# non-alphabet characters)
|
|
||||||
file(RELATIVE_PATH
|
|
||||||
targetpath
|
|
||||||
"${CMAKE_BINARY_DIR}"
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}")
|
|
||||||
string(REGEX REPLACE "[^A-Za-z/_]" "" targetpath "${targetpath}")
|
|
||||||
string(REPLACE "/" "_" targetpath "${targetpath}")
|
|
||||||
|
|
||||||
set(_target_name ${BOOST_TEST_TARGET_PREFIX}-${targetpath}-${_name})
|
|
||||||
set(${_name}_TARGET_NAME "${_target_name}" PARENT_SCOPE)
|
|
||||||
|
|
||||||
# Build the test.
|
|
||||||
add_executable(${_target_name} ${SOURCES})
|
|
||||||
|
|
||||||
list(APPEND LIBRARIES ${_boosttesttargets_libs})
|
|
||||||
|
|
||||||
if(LIBRARIES)
|
|
||||||
target_link_libraries(${_target_name} ${LIBRARIES})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(RESOURCES)
|
|
||||||
set_property(TARGET ${_target_name} PROPERTY RESOURCE ${RESOURCES})
|
|
||||||
copy_resources_to_build_tree(${_target_name})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT Boost_TEST_FLAGS)
|
|
||||||
# set(Boost_TEST_FLAGS --catch_system_error=yes --output_format=XML)
|
|
||||||
set(Boost_TEST_FLAGS --catch_system_error=yes)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# TODO: Figure out why only recent boost handles individual test running properly
|
|
||||||
|
|
||||||
if(LAUNCHER)
|
|
||||||
set(_test_command ${LAUNCHER} "\$<TARGET_FILE:${_target_name}>")
|
|
||||||
else()
|
|
||||||
set(_test_command ${_target_name})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(TESTS AND ( "${Boost_VERSION}" VERSION_GREATER "103799" ))
|
|
||||||
foreach(_test ${TESTS})
|
|
||||||
add_test(NAME
|
|
||||||
${_name}-${_test}
|
|
||||||
COMMAND
|
|
||||||
${_test_command}
|
|
||||||
--run_test=${_test}
|
|
||||||
${Boost_TEST_FLAGS})
|
|
||||||
if(FAIL_REGULAR_EXPRESSION)
|
|
||||||
set_tests_properties(${_name}-${_test}
|
|
||||||
PROPERTIES
|
|
||||||
FAIL_REGULAR_EXPRESSION
|
|
||||||
"${FAIL_REGULAR_EXPRESSION}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
else()
|
|
||||||
add_test(NAME
|
|
||||||
${_name}-boost_test
|
|
||||||
COMMAND
|
|
||||||
${_test_command}
|
|
||||||
${Boost_TEST_FLAGS})
|
|
||||||
if(FAIL_REGULAR_EXPRESSION)
|
|
||||||
set_tests_properties(${_name}-${_test}
|
|
||||||
PROPERTIES
|
|
||||||
FAIL_REGULAR_EXPRESSION
|
|
||||||
"${FAIL_REGULAR_EXPRESSION}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# CppCheck the test if we can.
|
|
||||||
if(COMMAND add_cppcheck)
|
|
||||||
add_cppcheck(${_target_name} STYLE UNUSED_FUNCTIONS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
// Small header computed by CMake to set up boost test.
|
|
||||||
// include AFTER #define BOOST_TEST_MODULE whatever
|
|
||||||
// but before any other boost test includes.
|
|
||||||
|
|
||||||
// Using the Boost UTF dynamic library
|
|
||||||
|
|
||||||
#define BOOST_TEST_DYN_LINK
|
|
||||||
#include <boost/test/unit_test.hpp>
|
|
||||||
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
// Small header computed by CMake to set up boost test.
|
|
||||||
// include AFTER #define BOOST_TEST_MODULE whatever
|
|
||||||
// but before any other boost test includes.
|
|
||||||
|
|
||||||
// Using the Boost UTF included framework
|
|
||||||
|
|
||||||
#include <boost/test/included/unit_test.hpp>
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
// Small header computed by CMake to set up boost test.
|
|
||||||
// include AFTER #define BOOST_TEST_MODULE whatever
|
|
||||||
// but before any other boost test includes.
|
|
||||||
|
|
||||||
// Using the Boost UTF static library
|
|
||||||
|
|
||||||
#include <boost/test/unit_test.hpp>
|
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
function(_osgbundle_split_debug_versions releasevar debugvar)
|
|
||||||
set(release)
|
|
||||||
set(debug)
|
|
||||||
foreach(fn ${ARGN})
|
|
||||||
get_filename_component(name "${fn}" NAME_WE)
|
|
||||||
if("${name}" MATCHES "d$")
|
|
||||||
list(APPEND debug "${fn}")
|
|
||||||
else()
|
|
||||||
list(APPEND release "${fn}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
set(${releasevar} ${release} PARENT_SCOPE)
|
|
||||||
set(${debugvar} ${debug} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(_osgbundle_find_plugins varprefix filenameprefix)
|
|
||||||
file(GLOB
|
|
||||||
all
|
|
||||||
"${OSG_RUNTIME_LIBRARY_DIR}/osgPlugins-${OPENSCENEGRAPH_VERSION}/${filenameprefix}*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
||||||
_osgbundle_split_debug_versions(${varprefix}_PLUGINS_RELEASE
|
|
||||||
${varprefix}_PLUGINS_DEBUG
|
|
||||||
${all})
|
|
||||||
set(${varprefix}_PLUGINS_RELEASE
|
|
||||||
"${${varprefix}_PLUGINS_RELEASE}"
|
|
||||||
PARENT_SCOPE)
|
|
||||||
set(${varprefix}_PLUGINS_DEBUG
|
|
||||||
"${${varprefix}_PLUGINS_DEBUG}"
|
|
||||||
PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
if(OPENSCENEGRAPH_FOUND)
|
|
||||||
if(WIN32)
|
|
||||||
get_filename_component(_osglibdir "${OSG_LIBRARY}" PATH)
|
|
||||||
get_filename_component(_osgroot "${_osglibdir}/.." ABSOLUTE)
|
|
||||||
set(OSG_RUNTIME_LIBRARY_DIR "${_osgroot}/bin")
|
|
||||||
set(OSG_PATH_TO_PLUGINS "bin/osgPlugins-${OPENSCENEGRAPH_VERSION}/")
|
|
||||||
else()
|
|
||||||
get_filename_component(_osglibdir "${OSG_LIBRARY}" PATH)
|
|
||||||
set(OSG_RUNTIME_LIBRARY_DIR "${_osglibdir}")
|
|
||||||
set(OSG_PATH_TO_PLUGINS "lib/osgPlugins-${OPENSCENEGRAPH_VERSION}/")
|
|
||||||
endif()
|
|
||||||
# Find the osgDB plugins
|
|
||||||
_osgbundle_find_plugins(OSGDB osgdb)
|
|
||||||
_osgbundle_find_plugins(OSGWRAPPER osgwrapper)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
function(install_osg_plugins var)
|
|
||||||
set(INSTALLEDPLUGINS)
|
|
||||||
foreach(plugin ${OSGDB_PLUGINS_RELEASE} ${OSGWRAPPER_PLUGINS_RELEASE})
|
|
||||||
install(FILES "${plugin}"
|
|
||||||
DESTINATION "${OSG_PATH_TO_PLUGINS}"
|
|
||||||
CONFIGURATIONS Release RelWithDebInfo MinSizeRel)
|
|
||||||
get_filename_component(name "${plugin}" NAME)
|
|
||||||
list(APPEND INSTALLEDPLUGINS "${OSG_PATH_TO_PLUGINS}/${name}")
|
|
||||||
endforeach()
|
|
||||||
foreach(plugin ${OSGDB_PLUGINS_DEBUG} ${OSGWRAPPER_PLUGINS_DEBUG})
|
|
||||||
install(FILES
|
|
||||||
"${plugin}"
|
|
||||||
DESTINATION
|
|
||||||
"${OSG_PATH_TO_PLUGINS}"
|
|
||||||
CONFIGURATIONS
|
|
||||||
Debug)
|
|
||||||
#get_filename_component(name "${plugin}" NAME)
|
|
||||||
#list(APPEND INSTALLEDPLUGINS "${OSG_PATH_TO_PLUGINS}/${name}")
|
|
||||||
endforeach()
|
|
||||||
set(${var} ${INSTALLEDPLUGINS} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,118 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
function(_osgbundle_split_debug_versions releasevar debugvar)
|
|
||||||
set(release)
|
|
||||||
set(debug)
|
|
||||||
foreach(fn ${ARGN})
|
|
||||||
get_filename_component(name "${fn}" NAME_WE)
|
|
||||||
if(${name} MATCHES "d$")
|
|
||||||
list(APPEND debug "${fn}")
|
|
||||||
else()
|
|
||||||
list(APPEND release "${fn}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
set(${releasevar} ${release} PARENT_SCOPE)
|
|
||||||
set(${debugvar} ${debug} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(_osgbundle_find_plugins varprefix filenameprefix)
|
|
||||||
file(GLOB
|
|
||||||
all
|
|
||||||
"${OSG_RUNTIME_LIBRARY_DIR}/osgPlugins-${OPENSCENEGRAPH_VERSION}/${filenameprefix}*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
||||||
_osgbundle_split_debug_versions(${varprefix}_PLUGINS_RELEASE
|
|
||||||
${varprefix}_PLUGINS_DEBUG
|
|
||||||
${all})
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
if(OPENSCENEGRAPH_FOUND)
|
|
||||||
if(WIN32)
|
|
||||||
get_filename_component(_osglibdir "${OSG_LIBRARY}" PATH)
|
|
||||||
get_filename_component(_osgroot "${_osglibdir}/.." ABSOLUTE)
|
|
||||||
set(OSG_RUNTIME_LIBRARY_DIR "${_osgroot}/bin")
|
|
||||||
find_file(OSGBUNDLE_zlib1dll
|
|
||||||
zlib1.dll
|
|
||||||
PATHS
|
|
||||||
"${_osgroot}/bin"
|
|
||||||
"${_osgroot}/lib")
|
|
||||||
find_file(OSGBUNDLE_zlib1ddll
|
|
||||||
zlib1d.dll
|
|
||||||
PATHS
|
|
||||||
"${_osgroot}/bin"
|
|
||||||
"${_osgroot}/lib")
|
|
||||||
mark_as_advanced(OSGBUNDLE_zlib1dll OSGBUNDLE_zlib1ddll)
|
|
||||||
set(_osgbundle_required OSGBUNDLE_zlib1dll)
|
|
||||||
set(_osgbundle_platformOK on)
|
|
||||||
else()
|
|
||||||
get_filename_component(_osglibdir "${OSG_LIBRARY}" PATH)
|
|
||||||
set(OSG_RUNTIME_LIBRARY_DIR "${_osglibdir}")
|
|
||||||
set(_osgbundle_platformOK on)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find the osgDB plugins
|
|
||||||
|
|
||||||
_osgbundle_find_plugins(OSGDB osgdb)
|
|
||||||
_osgbundle_find_plugins(OSGWRAPPER osgwrapper)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(_osgbundle_platformOK)
|
|
||||||
set(_osgbundle_caninstall on)
|
|
||||||
foreach(_var ${_osgbundle_required})
|
|
||||||
if(NOT ${_var})
|
|
||||||
# If we are missing a single required file, cut out now.
|
|
||||||
set(_osgbundle_caninstall off)
|
|
||||||
option(OSGRUNTIME_BUNDLE
|
|
||||||
"Install a local copy of the OpenSceneGraph runtime files with the project."
|
|
||||||
off)
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
if(_osgbundle_caninstall)
|
|
||||||
option(OSGRUNTIME_BUNDLE
|
|
||||||
"Install a local copy of the OpenSceneGraph runtime files with the project."
|
|
||||||
on)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(OSGRUNTIME_BUNDLE)
|
|
||||||
|
|
||||||
if(OSGRUNTIME_BUNDLE AND OPENSCENEGRAPH_FOUND AND _osgbundle_caninstall)
|
|
||||||
if(WIN32)
|
|
||||||
set(DESTINATION bin)
|
|
||||||
install(FILES "${OSGBUNDLE_zlib1dll}"
|
|
||||||
DESTINATION ${DESTINATION})
|
|
||||||
|
|
||||||
if(OSGBUNDLE_zlib1ddll)
|
|
||||||
install(FILES "${OSGBUNDLE_zlib1ddll}"
|
|
||||||
DESTINATION ${DESTINATION})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
else()
|
|
||||||
set(DESTINATION lib)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
install(DIRECTORY "${_osgroot}/bin/" "${_osgroot}/lib/"
|
|
||||||
DESTINATION ${DESTINATION}
|
|
||||||
FILES_MATCHING
|
|
||||||
|
|
||||||
# Runtime files
|
|
||||||
PATTERN "*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
||||||
endif()
|
|
||||||
@@ -1,99 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
option(VRJUGGLERRUNTIME_BUNDLE
|
|
||||||
"Install a local copy of the VR Juggler runtime files with the project."
|
|
||||||
on)
|
|
||||||
option(VRJUGGLERRUNTIME_BUNDLE_DEBUG
|
|
||||||
"Install the VR Juggler debug runtime files as well."
|
|
||||||
off)
|
|
||||||
mark_as_advanced(VRJUGGLERRUNTIME_BUNDLE_DEBUG)
|
|
||||||
else()
|
|
||||||
# TODO - how to handle when not on Windows?
|
|
||||||
#option(VRJUGGLERRUNTIME_BUNDLE "Install a local copy of the VR Juggler runtime files with the project." off)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJUGGLERRUNTIME_BUNDLE VRJUGGLERRUNTIME_BUNDLE_DEBUG)
|
|
||||||
|
|
||||||
if(VRJUGGLERRUNTIME_BUNDLE AND VRJUGGLER22_FOUND)
|
|
||||||
if(WIN32)
|
|
||||||
get_filename_component(_vrjlibdir "${VRJ22_LIBRARY_RELEASE}" PATH)
|
|
||||||
get_filename_component(_vrjroot "${_vrjlibdir}/../" ABSOLUTE)
|
|
||||||
|
|
||||||
# TODO - make sure gadgeteer and sonix can find their DSO's at runtime...
|
|
||||||
|
|
||||||
foreach(_dir bin lib)
|
|
||||||
if(VRJUGGLERRUNTIME_BUNDLE_DEBUG)
|
|
||||||
install(DIRECTORY "${_vrjroot}/${_dir}/"
|
|
||||||
DESTINATION bin
|
|
||||||
PATTERN "*.lib" EXCLUDE # exclude static and link libraries
|
|
||||||
PATTERN "*.exe" EXCLUDE # exclude unneeded executables
|
|
||||||
PATTERN "*.py" EXCLUDE # exclude unneeded python executables
|
|
||||||
PATTERN "*.pyc" EXCLUDE # exclude unneeded python executables
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
install(DIRECTORY ${_vrjroot}/${_dir}/
|
|
||||||
DESTINATION bin
|
|
||||||
PATTERN "*.lib" EXCLUDE # exclude static and link libraries
|
|
||||||
PATTERN "*.exe" EXCLUDE # exclude unneeded executables
|
|
||||||
PATTERN "*.py" EXCLUDE # exclude unneeded python executables
|
|
||||||
PATTERN "*.pyc" EXCLUDE # exclude unneeded python executables
|
|
||||||
|
|
||||||
PATTERN "*d.dll" EXCLUDE # exclude debug dll's
|
|
||||||
PATTERN "*-gd-*.dll" EXCLUDE # exclude Boost debug dll's
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
install(DIRECTORY ${_vrjroot}/share/
|
|
||||||
DESTINATION share
|
|
||||||
FILES_MATCHING
|
|
||||||
|
|
||||||
# Runtime files
|
|
||||||
PATTERN "*.dll"
|
|
||||||
PATTERN "*.jar"
|
|
||||||
|
|
||||||
# Data files
|
|
||||||
PATTERN "*.wav"
|
|
||||||
PATTERN "*.xml"
|
|
||||||
PATTERN "*.xsl"
|
|
||||||
PATTERN "*.xsd"
|
|
||||||
PATTERN "*.flt"
|
|
||||||
PATTERN "*.dat"
|
|
||||||
PATTERN "*.table"
|
|
||||||
|
|
||||||
|
|
||||||
# Config files
|
|
||||||
PATTERN "*.jdef"
|
|
||||||
PATTERN "*.jconf"
|
|
||||||
PATTERN "*.cfg"
|
|
||||||
PATTERN "hosts.allow"
|
|
||||||
|
|
||||||
# Other Files
|
|
||||||
PATTERN "*.txt"
|
|
||||||
PATTERN "COPYING*"
|
|
||||||
PATTERN "ChangeLog"
|
|
||||||
)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
endif()
|
|
||||||
@@ -1,96 +0,0 @@
|
|||||||
# - 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>
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
option(VRJUGGLERRUNTIME_BUNDLE
|
|
||||||
"Install a local copy of the VR Juggler runtime files with the project."
|
|
||||||
on)
|
|
||||||
option(VRJUGGLERRUNTIME_BUNDLE_DEBUG
|
|
||||||
"Install the VR Juggler debug runtime files as well."
|
|
||||||
off)
|
|
||||||
mark_as_advanced(VRJUGGLERRUNTIME_BUNDLE_DEBUG)
|
|
||||||
else()
|
|
||||||
# TODO - how to handle when not on Windows?
|
|
||||||
#option(VRJUGGLERRUNTIME_BUNDLE "Install a local copy of the VR Juggler runtime files with the project." off)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJUGGLERRUNTIME_BUNDLE VRJUGGLERRUNTIME_BUNDLE_DEBUG)
|
|
||||||
|
|
||||||
if(VRJUGGLERRUNTIME_BUNDLE AND VRJUGGLER22_FOUND)
|
|
||||||
if(WIN32)
|
|
||||||
get_filename_component(_vrjlibdir "${VRJ22_LIBRARY_RELEASE}" PATH)
|
|
||||||
get_filename_component(_vrjroot "${_vrjlibdir}/../" ABSOLUTE)
|
|
||||||
|
|
||||||
# TODO - make sure gadgeteer and sonix can find their DSO's at runtime...
|
|
||||||
|
|
||||||
foreach(_dir bin lib)
|
|
||||||
if(VRJUGGLERRUNTIME_BUNDLE_DEBUG)
|
|
||||||
install(DIRECTORY "${_vrjroot}/${_dir}/"
|
|
||||||
DESTINATION bin
|
|
||||||
PATTERN "*.lib" EXCLUDE # exclude static and link libraries
|
|
||||||
PATTERN "*.exe" EXCLUDE # exclude unneeded executables
|
|
||||||
PATTERN "*.py" EXCLUDE # exclude unneeded python executables
|
|
||||||
PATTERN "*.pyc" EXCLUDE # exclude unneeded python executables
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
install(DIRECTORY ${_vrjroot}/${_dir}/
|
|
||||||
DESTINATION bin
|
|
||||||
PATTERN "*.lib" EXCLUDE # exclude static and link libraries
|
|
||||||
PATTERN "*.exe" EXCLUDE # exclude unneeded executables
|
|
||||||
PATTERN "*.py" EXCLUDE # exclude unneeded python executables
|
|
||||||
PATTERN "*.pyc" EXCLUDE # exclude unneeded python executables
|
|
||||||
|
|
||||||
PATTERN "*d.dll" EXCLUDE # exclude debug dll's
|
|
||||||
PATTERN "*-gd-*.dll" EXCLUDE # exclude Boost debug dll's
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
install(DIRECTORY ${_vrjroot}/share/
|
|
||||||
DESTINATION share
|
|
||||||
FILES_MATCHING
|
|
||||||
|
|
||||||
# Runtime files
|
|
||||||
PATTERN "*.dll"
|
|
||||||
PATTERN "*.jar"
|
|
||||||
|
|
||||||
# Data files
|
|
||||||
PATTERN "*.wav"
|
|
||||||
PATTERN "*.xml"
|
|
||||||
PATTERN "*.xsl"
|
|
||||||
PATTERN "*.xsd"
|
|
||||||
PATTERN "*.flt"
|
|
||||||
PATTERN "*.dat"
|
|
||||||
PATTERN "*.table"
|
|
||||||
|
|
||||||
|
|
||||||
# Config files
|
|
||||||
PATTERN "*.jdef"
|
|
||||||
PATTERN "*.jconf"
|
|
||||||
PATTERN "*.cfg"
|
|
||||||
PATTERN "hosts.allow"
|
|
||||||
|
|
||||||
# Other Files
|
|
||||||
PATTERN "*.txt"
|
|
||||||
PATTERN "COPYING*"
|
|
||||||
PATTERN "ChangeLog"
|
|
||||||
)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
endif()
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
if(NOT MACOSX_HID_UINT32T)
|
|
||||||
get_filename_component(_moddir ${CMAKE_CURRENT_LIST_FILE} PATH)
|
|
||||||
|
|
||||||
try_compile(_HID_uint32t
|
|
||||||
${CMAKE_BINARY_DIR}
|
|
||||||
${_moddir}/CheckMacHIDAPI.cpp
|
|
||||||
OUTPUT_VARIABLE
|
|
||||||
_HID_uint32t_OUTPUT
|
|
||||||
COMPILE_DEFINITIONS
|
|
||||||
-DMACOSX_HID_UINT32T=uint32_t)
|
|
||||||
message(STATUS
|
|
||||||
"Checking uint32_t in HID callback signature... ${_HID_uint32t}")
|
|
||||||
|
|
||||||
try_compile(_HID_UInt32
|
|
||||||
${CMAKE_BINARY_DIR}
|
|
||||||
${_moddir}/CheckMacHIDAPI.cpp
|
|
||||||
OUTPUT_VARIABLE
|
|
||||||
_HID_UInt32_OUTPUT
|
|
||||||
COMPILE_DEFINITIONS
|
|
||||||
-DMACOSX_HID_UINT32T=UInt32)
|
|
||||||
message(STATUS
|
|
||||||
"Checking UInt32 in HID callback signature... ${_HID_UInt32}")
|
|
||||||
|
|
||||||
|
|
||||||
if(_HID_uint32t)
|
|
||||||
set(MACOSX_HID_UINT32T
|
|
||||||
"uint32_t"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"The 32-bit uint type desired in the callback set by setInterruptReportHandlerCallback")
|
|
||||||
mark_as_advanced(MACOSX_HID_UINT32T)
|
|
||||||
elseif(_HID_UInt32)
|
|
||||||
set(MACOSX_HID_UINT32T
|
|
||||||
"UInt32"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"The 32-bit uint type desired in the callback set by setInterruptReportHandlerCallback")
|
|
||||||
mark_as_advanced(MACOSX_HID_UINT32T)
|
|
||||||
else()
|
|
||||||
message(SEND_ERROR
|
|
||||||
"ERROR: Could not detect appropriate Mac HID uint32 type!")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
/**
|
|
||||||
* \file CheckMacHIDAPI.cpp
|
|
||||||
* \brief C++ source file used by CMake module CheckMacHIDAPI.cmake
|
|
||||||
*
|
|
||||||
* \author
|
|
||||||
* Ryan Pavlik, 2009-2010
|
|
||||||
* <rpavlik@iastate.edu>
|
|
||||||
* http://academic.cleardefinition.com/
|
|
||||||
*
|
|
||||||
* \author
|
|
||||||
* Based on code extracted from VRPN 07.22 for use as a minimal test case
|
|
||||||
*
|
|
||||||
* Attempts to compile a difficult bit of code against the Mac
|
|
||||||
* HID API, as two different types have been required in the callback
|
|
||||||
* function (UInt32 and uint32_t) and testing is the best way to know
|
|
||||||
* which one is correct for a given system.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(__APPLE__)
|
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <IOKit/IOCFPlugIn.h>
|
|
||||||
#include <IOKit/hid/IOHIDLib.h>
|
|
||||||
#include <IOKit/hid/IOHIDKeys.h>
|
|
||||||
#include <CoreFoundation/CoreFoundation.h>
|
|
||||||
void ReaderReportCallback(
|
|
||||||
void *target, IOReturn result, void *refcon, void *sender, MACOSX_HID_UINT32T size
|
|
||||||
)
|
|
||||||
{}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
int main(int argc, char* argv[]) {
|
|
||||||
#if defined(__APPLE__)
|
|
||||||
io_object_t _ioObject;
|
|
||||||
IOHIDDeviceInterface122 **_interface;
|
|
||||||
unsigned char _buffer[512];
|
|
||||||
IOReturn result = (*_interface)->setInterruptReportHandlerCallback(_interface,
|
|
||||||
_buffer, 512,
|
|
||||||
ReaderReportCallback,
|
|
||||||
NULL, 0);
|
|
||||||
#endif
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
@@ -1,47 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__check_version)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__check_version YES)
|
|
||||||
|
|
||||||
function(check_version var packagename version)
|
|
||||||
# By default, we say that the version is good enough
|
|
||||||
set(_result TRUE)
|
|
||||||
|
|
||||||
# Was a version requested? If so, what is our test condition?
|
|
||||||
if(${packagename}_FIND_VERSION)
|
|
||||||
if(${packagename}_FIND_VERSION_EXACT)
|
|
||||||
# Yes, an exact == version was requested - check it.
|
|
||||||
|
|
||||||
if(NOT "${version}" VERSION_EQUAL "${${packagename}_FIND_VERSION}")
|
|
||||||
# version is not an exact match
|
|
||||||
set(_result FALSE)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
# Yes, a minimum >= version was requested - check it.
|
|
||||||
|
|
||||||
if("${version}" VERSION_LESS "${${packagename}_FIND_VERSION}")
|
|
||||||
# version is lower than requested
|
|
||||||
set(_result FALSE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Return _result
|
|
||||||
set(${var} ${_result} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__clean_directory_list)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__clean_directory_list YES)
|
|
||||||
|
|
||||||
function(clean_directory_list _var)
|
|
||||||
# combine variable's current value with additional list items
|
|
||||||
set(_in ${${_var}} ${ARGN})
|
|
||||||
|
|
||||||
if(_in)
|
|
||||||
# Initial list cleaning
|
|
||||||
list(REMOVE_DUPLICATES _in)
|
|
||||||
|
|
||||||
# Grab the absolute path of each actual directory
|
|
||||||
set(_out)
|
|
||||||
foreach(_dir ${_in})
|
|
||||||
if(IS_DIRECTORY "${_dir}")
|
|
||||||
get_filename_component(_dir "${_dir}" ABSOLUTE)
|
|
||||||
file(TO_CMAKE_PATH "${_dir}" _dir)
|
|
||||||
list(APPEND _out "${_dir}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(_out)
|
|
||||||
# Clean up the output list now
|
|
||||||
list(REMOVE_DUPLICATES _out)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# return _out
|
|
||||||
set(${_var} "${_out}" PARENT_SCOPE)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__clean_library_list)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__clean_library_list YES)
|
|
||||||
|
|
||||||
function(clean_library_list _var)
|
|
||||||
# combine variable's current value with additional list items
|
|
||||||
set(_work ${${_var}} ${ARGN})
|
|
||||||
if(_work)
|
|
||||||
# Turn each of optimized, debug, and general into flags
|
|
||||||
# prefixed on their respective library (combining list items)
|
|
||||||
string(REGEX REPLACE "optimized;" "1CLL%O%" _work "${_work}")
|
|
||||||
string(REGEX REPLACE "debug;" "1CLL%D%" _work "${_work}")
|
|
||||||
string(REGEX REPLACE "general;" "1CLL%G%" _work "${_work}")
|
|
||||||
|
|
||||||
# Any library that doesn't have a prefix is general, and a general
|
|
||||||
# library is both debug and optimized so stdize it
|
|
||||||
set(_std)
|
|
||||||
foreach(_lib ${_work})
|
|
||||||
if(NOT "${_lib}" MATCHES "^1CLL%.%")
|
|
||||||
list(APPEND _std "1CLL%D%${_lib}" "1CLL%O%${_lib}")
|
|
||||||
elseif("${_lib}" MATCHES "^1CLL%G%")
|
|
||||||
string(REPLACE "1CLL%G%" "" _justlib "${_lib}")
|
|
||||||
list(APPEND _std "1CLL%D%${_justlib}" "1CLL%O%${_justlib}")
|
|
||||||
else()
|
|
||||||
list(APPEND _std "${_lib}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# REMOVE_DUPLICATES leaves the first - so we reverse before and after
|
|
||||||
# to keep the last, instead
|
|
||||||
list(REVERSE _std)
|
|
||||||
list(REMOVE_DUPLICATES _std)
|
|
||||||
list(REVERSE _std)
|
|
||||||
|
|
||||||
# Split list items back out again: turn prefixes into the
|
|
||||||
# library type flags.
|
|
||||||
string(REGEX REPLACE "1CLL%D%" "debug;" _std "${_std}")
|
|
||||||
string(REGEX REPLACE "1CLL%O%" "optimized;" _std "${_std}")
|
|
||||||
|
|
||||||
# Return _std
|
|
||||||
set(${_var} ${_std} PARENT_SCOPE)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
@@ -1,83 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__copy_resources_to_build_tree)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__copy_resources_to_build_tree YES)
|
|
||||||
|
|
||||||
function(copy_resources_to_build_tree _target)
|
|
||||||
get_target_property(_resources ${_target} RESOURCE)
|
|
||||||
if(NOT _resources)
|
|
||||||
# Bail if no resources
|
|
||||||
message(STATUS
|
|
||||||
"Told to copy resources for target ${_target}, but "
|
|
||||||
"no resources are set!")
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
get_target_property(_path ${_target} LOCATION)
|
|
||||||
get_filename_component(_path "${_path}" PATH)
|
|
||||||
|
|
||||||
if(NOT MSVC AND NOT "${CMAKE_GENERATOR}" MATCHES "Makefiles")
|
|
||||||
foreach(_config ${CMAKE_CONFIGURATION_TYPES})
|
|
||||||
get_target_property(_path${_config} ${_target} LOCATION_${_config})
|
|
||||||
get_filename_component(_path${_config} "${_path${_config}}" PATH)
|
|
||||||
add_custom_command(TARGET ${_target}
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND
|
|
||||||
${CMAKE_COMMAND}
|
|
||||||
ARGS -E make_directory "${_path${_config}}/"
|
|
||||||
COMMENT "Creating directory ${_path${_config}}/")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(_res ${_resources})
|
|
||||||
if(NOT IS_ABSOLUTE "${_res}")
|
|
||||||
get_filename_component(_res "${_res}" ABSOLUTE)
|
|
||||||
endif()
|
|
||||||
get_filename_component(_name "${_res}" NAME)
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
# Working dir is solution file dir, not exe file dir.
|
|
||||||
add_custom_command(TARGET ${_target}
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND
|
|
||||||
${CMAKE_COMMAND}
|
|
||||||
ARGS -E copy "${_res}" "${CMAKE_BINARY_DIR}/"
|
|
||||||
COMMENT "Copying ${_name} to ${CMAKE_BINARY_DIR}/ for MSVC")
|
|
||||||
else()
|
|
||||||
if("${CMAKE_GENERATOR}" MATCHES "Makefiles")
|
|
||||||
add_custom_command(TARGET ${_target}
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND
|
|
||||||
${CMAKE_COMMAND}
|
|
||||||
ARGS -E copy "${_res}" "${_path}/"
|
|
||||||
COMMENT "Copying ${_name} to ${_path}/")
|
|
||||||
else()
|
|
||||||
foreach(_config ${CMAKE_CONFIGURATION_TYPES})
|
|
||||||
add_custom_command(TARGET ${_target}
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND
|
|
||||||
${CMAKE_COMMAND}
|
|
||||||
ARGS -E copy "${_res}" "${_path${_config}}"
|
|
||||||
COMMENT "Copying ${_name} to ${_path${_config}}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endfunction()
|
|
||||||
@@ -1,213 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__add_cppcheck)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__add_cppcheck YES)
|
|
||||||
|
|
||||||
if(NOT CPPCHECK_FOUND)
|
|
||||||
find_package(cppcheck QUIET)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(CPPCHECK_FOUND)
|
|
||||||
if(NOT TARGET all_cppcheck)
|
|
||||||
add_custom_target(all_cppcheck)
|
|
||||||
set_target_properties(all_cppcheck PROPERTIES EXCLUDE_FROM_ALL TRUE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
function(add_cppcheck_sources _targetname)
|
|
||||||
if(CPPCHECK_FOUND)
|
|
||||||
set(_cppcheck_args)
|
|
||||||
set(_input ${ARGN})
|
|
||||||
list(FIND _input UNUSED_FUNCTIONS _unused_func)
|
|
||||||
if("${_unused_func}" GREATER "-1")
|
|
||||||
list(APPEND _cppcheck_args ${CPPCHECK_UNUSEDFUNC_ARG})
|
|
||||||
list(REMOVE_AT _input ${_unused_func})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(FIND _input STYLE _style)
|
|
||||||
if("${_style}" GREATER "-1")
|
|
||||||
list(APPEND _cppcheck_args ${CPPCHECK_STYLE_ARG})
|
|
||||||
list(REMOVE_AT _input ${_style})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(FIND _input POSSIBLE_ERROR _poss_err)
|
|
||||||
if("${_poss_err}" GREATER "-1")
|
|
||||||
list(APPEND _cppcheck_args ${CPPCHECK_POSSIBLEERROR_ARG})
|
|
||||||
list(REMOVE_AT _input ${_poss_err})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(FIND _input FAIL_ON_WARNINGS _fail_on_warn)
|
|
||||||
if("${_fail_on_warn}" GREATER "-1")
|
|
||||||
list(APPEND
|
|
||||||
CPPCHECK_FAIL_REGULAR_EXPRESSION
|
|
||||||
${CPPCHECK_WARN_REGULAR_EXPRESSION})
|
|
||||||
list(REMOVE_AT _input ${_fail_on_warn})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_files)
|
|
||||||
foreach(_source ${_input})
|
|
||||||
get_source_file_property(_cppcheck_loc "${_source}" LOCATION)
|
|
||||||
if(_cppcheck_loc)
|
|
||||||
# This file has a source file property, carry on.
|
|
||||||
get_source_file_property(_cppcheck_lang "${_source}" LANGUAGE)
|
|
||||||
if("${_cppcheck_lang}" MATCHES "CXX")
|
|
||||||
list(APPEND _files "${_cppcheck_loc}")
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
# This file doesn't have source file properties - figure it out.
|
|
||||||
get_filename_component(_cppcheck_loc "${_source}" ABSOLUTE)
|
|
||||||
if(EXISTS "${_cppcheck_loc}")
|
|
||||||
list(APPEND _files "${_cppcheck_loc}")
|
|
||||||
else()
|
|
||||||
message(FATAL_ERROR
|
|
||||||
"Adding CPPCHECK for file target ${_targetname}: "
|
|
||||||
"File ${_source} does not exist or needs a corrected path location "
|
|
||||||
"since we think its absolute path is ${_cppcheck_loc}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if("1.${CMAKE_VERSION}" VERSION_LESS "1.2.8.0")
|
|
||||||
# Older than CMake 2.8.0
|
|
||||||
add_test(${_targetname}_cppcheck_test
|
|
||||||
"${CPPCHECK_EXECUTABLE}"
|
|
||||||
${CPPCHECK_TEMPLATE_ARG}
|
|
||||||
${_cppcheck_args}
|
|
||||||
${_files})
|
|
||||||
else()
|
|
||||||
# CMake 2.8.0 and newer
|
|
||||||
add_test(NAME
|
|
||||||
${_targetname}_cppcheck_test
|
|
||||||
COMMAND
|
|
||||||
"${CPPCHECK_EXECUTABLE}"
|
|
||||||
${CPPCHECK_TEMPLATE_ARG}
|
|
||||||
${_cppcheck_args}
|
|
||||||
${_files})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set_tests_properties(${_targetname}_cppcheck_test
|
|
||||||
PROPERTIES
|
|
||||||
FAIL_REGULAR_EXPRESSION
|
|
||||||
"${CPPCHECK_FAIL_REGULAR_EXPRESSION}")
|
|
||||||
|
|
||||||
add_custom_command(TARGET
|
|
||||||
all_cppcheck
|
|
||||||
PRE_BUILD
|
|
||||||
COMMAND
|
|
||||||
${CPPCHECK_EXECUTABLE}
|
|
||||||
${CPPCHECK_QUIET_ARG}
|
|
||||||
${CPPCHECK_TEMPLATE_ARG}
|
|
||||||
${_cppcheck_args}
|
|
||||||
${_files}
|
|
||||||
WORKING_DIRECTORY
|
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
COMMENT
|
|
||||||
"${_targetname}_cppcheck: Running cppcheck on target ${_targetname}..."
|
|
||||||
VERBATIM)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(add_cppcheck _name)
|
|
||||||
if(NOT TARGET ${_name})
|
|
||||||
message(FATAL_ERROR
|
|
||||||
"add_cppcheck given a target name that does not exist: '${_name}' !")
|
|
||||||
endif()
|
|
||||||
if(CPPCHECK_FOUND)
|
|
||||||
set(_cppcheck_args)
|
|
||||||
|
|
||||||
list(FIND ARGN UNUSED_FUNCTIONS _unused_func)
|
|
||||||
if("${_unused_func}" GREATER "-1")
|
|
||||||
list(APPEND _cppcheck_args ${CPPCHECK_UNUSEDFUNC_ARG})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(FIND ARGN STYLE _style)
|
|
||||||
if("${_style}" GREATER "-1")
|
|
||||||
list(APPEND _cppcheck_args ${CPPCHECK_STYLE_ARG})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(FIND ARGN POSSIBLE_ERROR _poss_err)
|
|
||||||
if("${_poss_err}" GREATER "-1")
|
|
||||||
list(APPEND _cppcheck_args ${CPPCHECK_POSSIBLEERROR_ARG})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(FIND _input FAIL_ON_WARNINGS _fail_on_warn)
|
|
||||||
if("${_fail_on_warn}" GREATER "-1")
|
|
||||||
list(APPEND
|
|
||||||
CPPCHECK_FAIL_REGULAR_EXPRESSION
|
|
||||||
${CPPCHECK_WARN_REGULAR_EXPRESSION})
|
|
||||||
list(REMOVE_AT _input ${_unused_func})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
get_target_property(_cppcheck_sources "${_name}" SOURCES)
|
|
||||||
set(_files)
|
|
||||||
foreach(_source ${_cppcheck_sources})
|
|
||||||
get_source_file_property(_cppcheck_lang "${_source}" LANGUAGE)
|
|
||||||
get_source_file_property(_cppcheck_loc "${_source}" LOCATION)
|
|
||||||
if("${_cppcheck_lang}" MATCHES "CXX")
|
|
||||||
list(APPEND _files "${_cppcheck_loc}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if("1.${CMAKE_VERSION}" VERSION_LESS "1.2.8.0")
|
|
||||||
# Older than CMake 2.8.0
|
|
||||||
add_test(${_name}_cppcheck_test
|
|
||||||
"${CPPCHECK_EXECUTABLE}"
|
|
||||||
${CPPCHECK_TEMPLATE_ARG}
|
|
||||||
${_cppcheck_args}
|
|
||||||
${_files})
|
|
||||||
else()
|
|
||||||
# CMake 2.8.0 and newer
|
|
||||||
add_test(NAME
|
|
||||||
${_name}_cppcheck_test
|
|
||||||
COMMAND
|
|
||||||
"${CPPCHECK_EXECUTABLE}"
|
|
||||||
${CPPCHECK_TEMPLATE_ARG}
|
|
||||||
${_cppcheck_args}
|
|
||||||
${_files})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set_tests_properties(${_name}_cppcheck_test
|
|
||||||
PROPERTIES
|
|
||||||
FAIL_REGULAR_EXPRESSION
|
|
||||||
"${CPPCHECK_FAIL_REGULAR_EXPRESSION}")
|
|
||||||
|
|
||||||
add_custom_command(TARGET
|
|
||||||
all_cppcheck
|
|
||||||
PRE_BUILD
|
|
||||||
COMMAND
|
|
||||||
${CPPCHECK_EXECUTABLE}
|
|
||||||
${CPPCHECK_QUIET_ARG}
|
|
||||||
${CPPCHECK_TEMPLATE_ARG}
|
|
||||||
${_cppcheck_args}
|
|
||||||
${_files}
|
|
||||||
WORKING_DIRECTORY
|
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
COMMENT
|
|
||||||
"${_name}_cppcheck: Running cppcheck on target ${_name}..."
|
|
||||||
VERBATIM)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endfunction()
|
|
||||||
@@ -1,196 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
# Only do any of the prep work if not already in a dashboard script
|
|
||||||
if(NOT IN_DASHBOARD_SCRIPT)
|
|
||||||
|
|
||||||
# Hide a CTest variable
|
|
||||||
mark_as_advanced(DART_TESTING_TIMEOUT)
|
|
||||||
|
|
||||||
include(GetCompilerInfoString)
|
|
||||||
|
|
||||||
get_compiler_info_string(_COMPILERID)
|
|
||||||
|
|
||||||
# We must run the following at "include" time, not at function call time,
|
|
||||||
# to find the path to this module rather than the path to a calling list file
|
|
||||||
get_filename_component(_dashboardmoddir
|
|
||||||
${CMAKE_CURRENT_LIST_FILE}
|
|
||||||
PATH)
|
|
||||||
|
|
||||||
if(NOT "$ENV{USER}" MATCHES "^$")
|
|
||||||
set(_user "$ENV{USER}")
|
|
||||||
elseif(NOT "$ENV{USERNAME}" MATCHES "^$")
|
|
||||||
set(_user "$ENV{USERNAME}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT _dashboardscript_machine)
|
|
||||||
if(NOT SITE)
|
|
||||||
site_name(SITE)
|
|
||||||
endif()
|
|
||||||
set(_dashboardscript_machine "${SITE}" CACHE INTERNAL "")
|
|
||||||
set(SITE
|
|
||||||
"${_user}@${_dashboardscript_machine}"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"Human-readable site name"
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(DASHBOARDSCRIPT_BASE_DIRECTORY
|
|
||||||
"${CMAKE_BINARY_DIR}/Dashboards-${_dashboardscript_machine}-${_user}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to use as the root of all dashboard work")
|
|
||||||
mark_as_advanced(DASHBOARDSCRIPT_BASE_DIRECTORY)
|
|
||||||
|
|
||||||
set(DASHBOARDSCRIPT_SOURCE_DIRECTORY "${CMAKE_SOURCE_DIR}")
|
|
||||||
|
|
||||||
set(BUILDNAME
|
|
||||||
"${CMAKE_SYSTEM}-${CMAKE_SYSTEM_PROCESSOR}-${_COMPILERID}"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"Human-readable build ID info")
|
|
||||||
|
|
||||||
set(DASHBOARDSCRIPT_CMAKE_COMMAND
|
|
||||||
"${CMAKE_COMMAND}"
|
|
||||||
CACHE
|
|
||||||
FILEPATH
|
|
||||||
"The cmake binary to use when configuring a dashboard build")
|
|
||||||
mark_as_advanced(DASHBOARDSCRIPT_CMAKE_COMMAND)
|
|
||||||
|
|
||||||
# Try to find CTest, preferably right next to the chosen CMake
|
|
||||||
if(DASHBOARDSCRIPT_CMAKE_COMMAND)
|
|
||||||
get_filename_component(_cmake_dir
|
|
||||||
${DASHBOARDSCRIPT_CMAKE_COMMAND}
|
|
||||||
PATH)
|
|
||||||
else()
|
|
||||||
get_filename_component(_cmake_dir ${CMAKE_COMMAND} PATH)
|
|
||||||
endif()
|
|
||||||
find_program(DASHBOARDSCRIPT_CTEST_EXECUTABLE
|
|
||||||
NAMES
|
|
||||||
ctest
|
|
||||||
HINTS
|
|
||||||
"${_cmake_dir}"
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
find_program(DASHBOARDSCRIPT_CTEST_EXECUTABLE
|
|
||||||
NAMES
|
|
||||||
ctest
|
|
||||||
HINTS
|
|
||||||
"${_cmake_dir}")
|
|
||||||
|
|
||||||
|
|
||||||
set(DASHBOARDSCRIPT_CTEST_EXECUTABLE
|
|
||||||
"${DASHBOARDSCRIPT_CTEST_EXECUTABLE}"
|
|
||||||
CACHE
|
|
||||||
FILEPATH
|
|
||||||
"Path to the CTest executable to use for dashboard builds.")
|
|
||||||
mark_as_advanced(DASHBOARDSCRIPT_CTEST_EXECUTABLE)
|
|
||||||
|
|
||||||
|
|
||||||
# Optionals
|
|
||||||
|
|
||||||
if(NOT "1.${CMAKE_VERSION}" VERSION_LESS "1.2.8.0")
|
|
||||||
if(IS_DIRECTORY "${CMAKE_SOURCE_DIRECTORY}/.git")
|
|
||||||
find_program(DASHBOARDSCRIPT_GIT_EXECUTABLE NAMES git git.cmd)
|
|
||||||
if(DASHBOARDSCRIPT_GIT_EXECUTABLE)
|
|
||||||
|
|
||||||
set(UPDATE_TYPE "git")
|
|
||||||
set(UPDATE_COMMAND "${DASHBOARDSCRIPT_GIT_EXECUTABLE}")
|
|
||||||
set(UPDATE_OPTIONS "")
|
|
||||||
mark_as_advanced(DASHBOARDSCRIPT_GIT_EXECUTABLE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
else()
|
|
||||||
# IN_DASHBOARD_SCRIPT is YES
|
|
||||||
message(STATUS
|
|
||||||
"CreateDashboardScripts detected that we're in a dashboard script already.")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
function(create_dashboard_scripts)
|
|
||||||
# Only create the script if we have all the required variables
|
|
||||||
# and are not already in it, and are at least 2.8.0.
|
|
||||||
if(DASHBOARDSCRIPT_BASE_DIRECTORY AND
|
|
||||||
DASHBOARDSCRIPT_SOURCE_DIRECTORY AND
|
|
||||||
DASHBOARDSCRIPT_BASE_DIRECTORY AND
|
|
||||||
BUILDNAME AND
|
|
||||||
DASHBOARDSCRIPT_CMAKE_COMMAND AND
|
|
||||||
DASHBOARDSCRIPT_CTEST_EXECUTABLE AND
|
|
||||||
NOT IN_DASHBOARD_SCRIPT AND
|
|
||||||
NOT "${CMAKE_VERSION}" VERSION_LESS "2.8.0")
|
|
||||||
|
|
||||||
set(_Continuous_cron "15 * * * * ")
|
|
||||||
set(_Nightly_cron "15 0 * * * ")
|
|
||||||
set(_Experimental_cron
|
|
||||||
"\nor run this command for an one-off experimental test build:\n")
|
|
||||||
set(_Experimental_flags "-VV")
|
|
||||||
|
|
||||||
message(STATUS
|
|
||||||
"Dashboard scripts have been generated for automatic nightly and continuous builds.")
|
|
||||||
if(WIN32)
|
|
||||||
set(_Continuous_cron)
|
|
||||||
set(_Nightly_cron)
|
|
||||||
message(STATUS
|
|
||||||
"You can set up scheduled tasks to run these command lines:")
|
|
||||||
else()
|
|
||||||
message(STATUS "You can add these sample lines to your crontab:")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_msg)
|
|
||||||
|
|
||||||
if(NOT DASHBOARDSCRIPT_BUILD_CONFIGURATION)
|
|
||||||
set(DASHBOARDSCRIPT_BUILD_CONFIGURATION "RelWithDebInfo")
|
|
||||||
endif()
|
|
||||||
set(DASHBOARDSCRIPT_BUILD_CONFIGURATION "${DASHBOARDSCRIPT_BUILD_CONFIGURATION}" CACHE STRING "Build configuration to use for dashboard builds by default")
|
|
||||||
mark_as_advanced(DASHBOARDSCRIPT_BUILD_CONFIGURATION)
|
|
||||||
|
|
||||||
foreach(DASHBOARDSCRIPT_DASH_TYPE Nightly Continuous Experimental)
|
|
||||||
# If given a cache template, configure it
|
|
||||||
if(ARGN)
|
|
||||||
configure_file(${ARGN}
|
|
||||||
"${DASHBOARDSCRIPT_BASE_DIRECTORY}/GeneratedInitialCache.run${DASHBOARDSCRIPT_DASH_TYPE}.cmake"
|
|
||||||
@ONLY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Actually create the script file
|
|
||||||
configure_file(${_dashboardmoddir}/DashboardScript.cmake.in
|
|
||||||
"${DASHBOARDSCRIPT_BASE_DIRECTORY}/run${DASHBOARDSCRIPT_DASH_TYPE}.cmake"
|
|
||||||
@ONLY)
|
|
||||||
|
|
||||||
set(_msg
|
|
||||||
"${_msg}\n${_${DASHBOARDSCRIPT_DASH_TYPE}_cron}\"${DASHBOARDSCRIPT_CTEST_EXECUTABLE}\" -S \"${DASHBOARDSCRIPT_BASE_DIRECTORY}/run${DASHBOARDSCRIPT_DASH_TYPE}.cmake\" ${_${DASHBOARDSCRIPT_DASH_TYPE}_flags}")
|
|
||||||
|
|
||||||
endforeach()
|
|
||||||
message(STATUS "\n${_msg}\n")
|
|
||||||
message(STATUS "")
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
@@ -1,64 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__create_imported_target)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__create_imported_target YES)
|
|
||||||
|
|
||||||
function(create_imported_target _libname)
|
|
||||||
if(ARGN)
|
|
||||||
list(FIND ARGN SHARED _target_shared)
|
|
||||||
list(FIND ARGN STATIC _target_static)
|
|
||||||
list(FIND ARGN MODULE _target_module)
|
|
||||||
|
|
||||||
if(${_target_shared} GREATER -1)
|
|
||||||
set(_target_type SHARED)
|
|
||||||
elseif(${_target_static} GREATER -1)
|
|
||||||
set(_target_type STATIC)
|
|
||||||
elseif(${_target_module} GREATER -1)
|
|
||||||
set(_target_type MODULE)
|
|
||||||
else()
|
|
||||||
set(_target_type UNKNOWN)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_deps ${ARGN})
|
|
||||||
list(REMOVE_ITEM _deps SHARED STATIC MODULE UNKNOWN)
|
|
||||||
else()
|
|
||||||
set(_target_type UNKNOWN)
|
|
||||||
set(_deps)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(${_libname}_LIBRARIES AND NOT TARGET ${_libname}_imported)
|
|
||||||
add_library(${_libname}_imported ${_target_type} IMPORTED)
|
|
||||||
#message(STATUS "Library ${_libname}: lib ${${_libname}_LIBRARIES}")
|
|
||||||
#message(STATUS "Deps: ${_deps}")
|
|
||||||
set_target_properties(${_libname}_imported
|
|
||||||
PROPERTIES
|
|
||||||
IMPORTED_LOCATION
|
|
||||||
"${${_libname}_LIBRARIES}"
|
|
||||||
IMPORTED_LINK_INTERFACE_LIBRARIES
|
|
||||||
"${_deps}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(TARGET ${_libname}_imported)
|
|
||||||
set(${_libname}_LIBRARIES ${_libname}_imported PARENT_SCOPE)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
@@ -1,325 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__create_launchers)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__create_launchers YES)
|
|
||||||
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
# We must run the following at "include" time, not at function call time,
|
|
||||||
# to find the path to this module rather than the path to a calling list file
|
|
||||||
get_filename_component(_launchermoddir
|
|
||||||
${CMAKE_CURRENT_LIST_FILE}
|
|
||||||
PATH)
|
|
||||||
set(_launchermoddir "${_launchermoddir}/launcher-templates")
|
|
||||||
|
|
||||||
macro(_launcher_system_settings)
|
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
||||||
set(BITS 64)
|
|
||||||
else()
|
|
||||||
set(BITS 32)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
# Find user and system name
|
|
||||||
set(SYSTEM_NAME $ENV{USERDOMAIN})
|
|
||||||
set(USER_NAME $ENV{USERNAME})
|
|
||||||
set(VCPROJ_TYPE vcproj)
|
|
||||||
set(USERFILE_EXTENSION ${SYSTEM_NAME}.${USER_NAME}.user)
|
|
||||||
set(LAUNCHER_LINESEP "
")
|
|
||||||
if(MSVC10)
|
|
||||||
set(LAUNCHER_LINESEP "\n")
|
|
||||||
set(USERFILE_VC_VERSION 10.00)
|
|
||||||
set(USERFILE_EXTENSION user)
|
|
||||||
set(VCPROJ_TYPE vcxproj)
|
|
||||||
elseif(MSVC90)
|
|
||||||
set(USERFILE_VC_VERSION 9.00)
|
|
||||||
elseif(MSVC80)
|
|
||||||
set(USERFILE_VC_VERSION 8.00)
|
|
||||||
elseif(MSVC71)
|
|
||||||
set(USERFILE_VC_VERSION 7.10)
|
|
||||||
elseif(MSVC)
|
|
||||||
message(STATUS "MSVC but unrecognized version!")
|
|
||||||
endif()
|
|
||||||
if(BITS EQUAL 64)
|
|
||||||
set(USERFILE_PLATFORM x64)
|
|
||||||
else()
|
|
||||||
set(USERFILE_PLATFORM Win${BITS})
|
|
||||||
endif()
|
|
||||||
set(_pathdelim ";")
|
|
||||||
set(_suffix "cmd")
|
|
||||||
else()
|
|
||||||
set(_pathdelim ":")
|
|
||||||
set(USERFILE_PLATFORM ${CMAKE_SYSTEM_NAME}${BITS})
|
|
||||||
set(_suffix "sh")
|
|
||||||
find_package(GDB QUIET)
|
|
||||||
if(GDB_FOUND)
|
|
||||||
set(LAUNCHERS_GOT_GDB YES)
|
|
||||||
if(GDB_HAS_RETURN_CHILD_RESULT)
|
|
||||||
set(LAUNCHERS_GDB_ARG --return-child-result)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(LAUNCHERS_GOT_GDB)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32 AND NOT USERFILE_REMOTE_MACHINE)
|
|
||||||
site_name(USERFILE_REMOTE_MACHINE)
|
|
||||||
mark_as_advanced(USERFILE_REMOTE_MACHINE)
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(_launcher_process_args)
|
|
||||||
set(_nowhere)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
set(_val_args
|
|
||||||
ARGS
|
|
||||||
RUNTIME_LIBRARY_DIRS
|
|
||||||
WORKING_DIRECTORY
|
|
||||||
ENVIRONMENT)
|
|
||||||
set(_bool_args FORWARD_ARGS)
|
|
||||||
foreach(_arg ${_val_args} ${_bool_args})
|
|
||||||
set(${_arg})
|
|
||||||
endforeach()
|
|
||||||
foreach(_element ${ARGN})
|
|
||||||
list(FIND _val_args "${_element}" _val_arg_find)
|
|
||||||
list(FIND _bool_args "${_element}" _bool_arg_find)
|
|
||||||
if("${_val_arg_find}" GREATER "-1")
|
|
||||||
set(_curdest "${_element}")
|
|
||||||
elseif("${_bool_arg_find}" GREATER "-1")
|
|
||||||
set("${_element}" ON)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
else()
|
|
||||||
list(APPEND ${_curdest} "${_element}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(_nowhere)
|
|
||||||
message(FATAL_ERROR
|
|
||||||
"Syntax error in use of a function in CreateLaunchers!")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Turn into a list of native paths
|
|
||||||
set(_runtime_lib_dirs)
|
|
||||||
foreach(_dlldir ${RUNTIME_LIBRARY_DIRS})
|
|
||||||
file(TO_NATIVE_PATH "${_dlldir}" _path)
|
|
||||||
set(_runtime_lib_dirs "${_runtime_lib_dirs}${_path}${_pathdelim}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(NOT WORKING_DIRECTORY)
|
|
||||||
set(WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(FORWARD_ARGS)
|
|
||||||
if(WIN32)
|
|
||||||
set(FWD_ARGS %*)
|
|
||||||
else()
|
|
||||||
set(FWD_ARGS $*)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(FWD_ARGS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(USERFILE_WORKING_DIRECTORY "${WORKING_DIRECTORY}")
|
|
||||||
set(USERFILE_COMMAND_ARGUMENTS "${ARGS}")
|
|
||||||
set(LAUNCHERSCRIPT_COMMAND_ARGUMENTS "${ARGS} ${FWD_ARGS}")
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
set(RUNTIME_LIBRARIES_ENVIRONMENT "PATH=${_runtime_lib_dirs};%PATH%")
|
|
||||||
file(READ
|
|
||||||
"${_launchermoddir}/launcher.env.cmd.in"
|
|
||||||
_cmdenv)
|
|
||||||
else()
|
|
||||||
if(APPLE)
|
|
||||||
set(RUNTIME_LIBRARIES_ENVIRONMENT
|
|
||||||
"DYLD_LIBRARY_PATH=${_runtime_lib_dirs}:$DYLD_LIBRARY_PATH")
|
|
||||||
else()
|
|
||||||
set(RUNTIME_LIBRARIES_ENVIRONMENT
|
|
||||||
"LD_LIBRARY_PATH=${_runtime_lib_dirs}:$LD_LIBRARY_PATH")
|
|
||||||
endif()
|
|
||||||
file(READ
|
|
||||||
"${_launchermoddir}/launcher.env.sh.in"
|
|
||||||
_cmdenv)
|
|
||||||
endif()
|
|
||||||
set(USERFILE_ENVIRONMENT "${RUNTIME_LIBRARIES_ENVIRONMENT}")
|
|
||||||
|
|
||||||
set(USERFILE_ENV_COMMANDS)
|
|
||||||
foreach(_arg "${RUNTIME_LIBRARIES_ENVIRONMENT}" ${ENVIRONMENT})
|
|
||||||
string(CONFIGURE
|
|
||||||
"@USERFILE_ENVIRONMENT@@LAUNCHER_LINESEP@@_arg@"
|
|
||||||
USERFILE_ENVIRONMENT
|
|
||||||
@ONLY)
|
|
||||||
string(CONFIGURE
|
|
||||||
"@USERFILE_ENV_COMMANDS@${_cmdenv}"
|
|
||||||
USERFILE_ENV_COMMANDS
|
|
||||||
@ONLY)
|
|
||||||
endforeach()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(_launcher_produce_vcproj_user)
|
|
||||||
if(MSVC)
|
|
||||||
file(READ
|
|
||||||
"${_launchermoddir}/perconfig.${VCPROJ_TYPE}.user.in"
|
|
||||||
_perconfig)
|
|
||||||
set(USERFILE_CONFIGSECTIONS)
|
|
||||||
foreach(USERFILE_CONFIGNAME ${CMAKE_CONFIGURATION_TYPES})
|
|
||||||
get_target_property(USERFILE_${USERFILE_CONFIGNAME}_COMMAND
|
|
||||||
${_targetname}
|
|
||||||
LOCATION_${USERFILE_CONFIGNAME})
|
|
||||||
file(TO_NATIVE_PATH
|
|
||||||
"${USERFILE_${USERFILE_CONFIGNAME}_COMMAND}"
|
|
||||||
USERFILE_${USERFILE_CONFIGNAME}_COMMAND)
|
|
||||||
string(CONFIGURE "${_perconfig}" _temp @ONLY ESCAPE_QUOTES)
|
|
||||||
string(CONFIGURE
|
|
||||||
"${USERFILE_CONFIGSECTIONS}${_temp}"
|
|
||||||
USERFILE_CONFIGSECTIONS
|
|
||||||
ESCAPE_QUOTES)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
|
|
||||||
configure_file("${_launchermoddir}/${VCPROJ_TYPE}.user.in"
|
|
||||||
${VCPROJNAME}.${VCPROJ_TYPE}.${USERFILE_EXTENSION}
|
|
||||||
@ONLY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(_launcher_create_target_launcher)
|
|
||||||
if(CMAKE_CONFIGURATION_TYPES)
|
|
||||||
# Multi-config generator - multiple launchers
|
|
||||||
foreach(_config ${CMAKE_CONFIGURATION_TYPES})
|
|
||||||
get_target_property(USERFILE_${_config}_COMMAND
|
|
||||||
${_targetname}
|
|
||||||
LOCATION_${_config})
|
|
||||||
file(TO_NATIVE_PATH
|
|
||||||
"${USERFILE_${_config}_COMMAND}"
|
|
||||||
USERFILE_COMMAND)
|
|
||||||
configure_file("${_launchermoddir}/targetlauncher.${_suffix}.in"
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/launch-${_targetname}-${_config}.${_suffix}"
|
|
||||||
@ONLY)
|
|
||||||
endforeach()
|
|
||||||
else()
|
|
||||||
# Single-config generator - single launcher
|
|
||||||
get_target_property(USERFILE_COMMAND
|
|
||||||
${_targetname}
|
|
||||||
LOCATION)
|
|
||||||
file(TO_NATIVE_PATH
|
|
||||||
"${USERFILE_COMMAND}"
|
|
||||||
USERFILE_COMMAND)
|
|
||||||
configure_file("${_launchermoddir}/targetlauncher.${_suffix}.in"
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/launch-${_targetname}.${_suffix}"
|
|
||||||
@ONLY)
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
function(create_default_target_launcher _targetname)
|
|
||||||
_launcher_system_settings()
|
|
||||||
_launcher_process_args(${ARGN})
|
|
||||||
|
|
||||||
set(VCPROJNAME "${CMAKE_BINARY_DIR}/ALL_BUILD")
|
|
||||||
_launcher_produce_vcproj_user()
|
|
||||||
|
|
||||||
_launcher_create_target_launcher()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(create_target_launcher _targetname)
|
|
||||||
_launcher_system_settings()
|
|
||||||
_launcher_process_args(${ARGN})
|
|
||||||
|
|
||||||
set(VCPROJNAME "${CMAKE_CURRENT_BINARY_DIR}/${_targetname}")
|
|
||||||
_launcher_produce_vcproj_user()
|
|
||||||
|
|
||||||
_launcher_create_target_launcher()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(create_generic_launcher _launchername)
|
|
||||||
_launcher_system_settings()
|
|
||||||
_launcher_process_args(${ARGN})
|
|
||||||
|
|
||||||
if(NOT IS_ABSOLUTE _launchername)
|
|
||||||
set(_launchername
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${_launchername}.${_suffix}")
|
|
||||||
else()
|
|
||||||
set(_launchername "${_launchername}.${_suffix}")
|
|
||||||
endif()
|
|
||||||
if(WIN32)
|
|
||||||
set(GENERIC_LAUNCHER_COMMAND "${_launchername}" PARENT_SCOPE)
|
|
||||||
set(GENERIC_LAUNCHER_FAIL_REGULAR_EXPRESSION)
|
|
||||||
else()
|
|
||||||
set(GENERIC_LAUNCHER_COMMAND sh "${_launchername}" PARENT_SCOPE)
|
|
||||||
set(GENERIC_LAUNCHER_FAIL_REGULAR_EXPRESSION
|
|
||||||
"Program terminated with signal")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
configure_file("${_launchermoddir}/genericlauncher.${_suffix}.in"
|
|
||||||
"${_launchername}"
|
|
||||||
@ONLY)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(guess_runtime_library_dirs _var)
|
|
||||||
# Start off with the link directories of the calling listfile's directory
|
|
||||||
get_directory_property(_libdirs LINK_DIRECTORIES)
|
|
||||||
|
|
||||||
# Add additional libraries passed to the function
|
|
||||||
foreach(_lib ${ARGN})
|
|
||||||
get_filename_component(_libdir "${_lib}" PATH)
|
|
||||||
list(APPEND _libdirs "${_libdir}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Now, build a list of potential dll directories
|
|
||||||
set(_dlldirs)
|
|
||||||
foreach(_libdir ${_libdirs})
|
|
||||||
# Add the libdir itself
|
|
||||||
list(APPEND _dlldirs "${_libdir}")
|
|
||||||
|
|
||||||
# Look also in libdir/../bin since the dll might not be with the lib
|
|
||||||
get_filename_component(_libdir "${_libdir}/../bin" ABSOLUTE)
|
|
||||||
list(APPEND _dlldirs "${_libdir}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Only keep the valid, unique directories
|
|
||||||
clean_directory_list(_dlldirs)
|
|
||||||
|
|
||||||
# Return _dlldirs
|
|
||||||
set(${_var} "${_dlldirs}" PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,122 +0,0 @@
|
|||||||
# - Dashboard driver script for use with ctest.
|
|
||||||
#
|
|
||||||
# Generated file processed by CreateDashboardScripts.cmake
|
|
||||||
# Run it like:
|
|
||||||
# ctest -S nameofthisfile
|
|
||||||
# with -V or -V -VV if you want more feedback.
|
|
||||||
#
|
|
||||||
# Generally you do not need to edit this file by hand!
|
|
||||||
#
|
|
||||||
# If this file isn't named DashboardScript.cmake.in and located
|
|
||||||
# in the same directory as CreateDashboardScripts.cmake, it has been
|
|
||||||
# auto-generated and will be overwritten every time CMake configures
|
|
||||||
# itself. (This may be every build!)
|
|
||||||
#
|
|
||||||
# Original Author:
|
|
||||||
# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
|
|
||||||
# http://academic.cleardefinition.com
|
|
||||||
# Iowa State University HCI Graduate Program/VRAC
|
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
|
|
||||||
|
|
||||||
set(CTEST_CMAKE_GENERATOR "@CMAKE_GENERATOR@")
|
|
||||||
set(CTEST_PROJECT_NAME "@PROJECT_NAME@")
|
|
||||||
|
|
||||||
set(CTEST_DASHBOARD_ROOT "@DASHBOARDSCRIPT_BASE_DIRECTORY@")
|
|
||||||
set(CTEST_SOURCE_DIRECTORY "@DASHBOARDSCRIPT_SOURCE_DIRECTORY@")
|
|
||||||
set(DASH_TYPE "@DASHBOARDSCRIPT_DASH_TYPE@")
|
|
||||||
set(CTEST_BINARY_DIRECTORY "${CTEST_DASHBOARD_ROOT}/build-${DASH_TYPE}")
|
|
||||||
|
|
||||||
set(CTEST_NOTES_FILES
|
|
||||||
"${CTEST_SCRIPT_DIRECTORY}/${CTEST_SCRIPT_NAME}"
|
|
||||||
"${CTEST_DASHBOARD_ROOT}/GeneratedCombinedCache.${CTEST_SCRIPT_NAME}")
|
|
||||||
|
|
||||||
set(CTEST_BUILD_NAME "@BUILDNAME@")
|
|
||||||
set(CTEST_SITE "@SITE@")
|
|
||||||
|
|
||||||
set(CTEST_USE_LAUNCHERS TRUE)
|
|
||||||
|
|
||||||
set(CTEST_COMMAND "@DASHBOARDSCRIPT_CTEST_EXECUTABLE@")
|
|
||||||
set(CTEST_CMAKE_COMMAND "@DASHBOARDSCRIPT_CMAKE_COMMAND@")
|
|
||||||
set(CTEST_UPDATE_TYPE "@UPDATE_TYPE@")
|
|
||||||
set(CTEST_UPDATE_COMMAND "@UPDATE_COMMAND@")
|
|
||||||
set(CTEST_UPDATE_OPTIONS "@UPDATE_OPTIONS@")
|
|
||||||
|
|
||||||
if((NOT CTEST_CONFIGURATION_TYPE) OR (NOT CTEST_BUILD_CONFIGURATION))
|
|
||||||
set(CTEST_BUILD_CONFIGURATION "@DASHBOARDSCRIPT_BUILD_CONFIGURATION@")
|
|
||||||
set(CTEST_CONFIGURATION_TYPE "@DASHBOARDSCRIPT_BUILD_CONFIGURATION@")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
# Avoid non-ascii characters in tool output.
|
|
||||||
set(ENV{LC_ALL} C)
|
|
||||||
|
|
||||||
if(EXISTS "${CTEST_DASHBOARD_ROOT}/GeneratedInitialCache.${CTEST_SCRIPT_NAME}")
|
|
||||||
file(READ "${CTEST_DASHBOARD_ROOT}/GeneratedInitialCache.${CTEST_SCRIPT_NAME}" _initcache)
|
|
||||||
else()
|
|
||||||
set(_initcache)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(EXISTS "${CTEST_DASHBOARD_ROOT}/CustomInitialCache.cmake")
|
|
||||||
file(READ "${CTEST_DASHBOARD_ROOT}/CustomInitialCache.cmake" _customcache)
|
|
||||||
set(_initcache "${_initcache}
|
|
||||||
${_customcache}")
|
|
||||||
endif()
|
|
||||||
set(_initcache "# This file is automatically regenerated every dashboard build -
|
|
||||||
# Do not edit it directly!
|
|
||||||
# If you want to add initial cache values, you can create/modify
|
|
||||||
# the CustomInitialCache.cmake file in this directory.
|
|
||||||
|
|
||||||
# Pretty typical settings to preseve from the generating cache
|
|
||||||
set(BUILD_TESTING ON CACHE BOOL docstring)
|
|
||||||
set(IN_DASHBOARD_SCRIPT ON CACHE BOOL docstring)
|
|
||||||
set(CTEST_USE_LAUNCHERS ON CACHE BOOL docstring)
|
|
||||||
set(CMAKE_PREFIX_PATH \"@CMAKE_PREFIX_PATH@\" CACHE STRING docstring)
|
|
||||||
set(CMAKE_BUILD_TYPE \"@CMAKE_BUILD_TYPE@\" CACHE STRING docstring)
|
|
||||||
set(CTEST_CONFIGURATION_TYPE \"@CMAKE_BUILD_TYPE@\" CACHE STRING docstring)
|
|
||||||
|
|
||||||
# testing tool locations
|
|
||||||
# Saved here because the tools in the path might be outdated
|
|
||||||
set(CPPCHECK_EXECUTABLE \"@CPPCHECK_EXECUTABLE@\" CACHE FILEPATH docstring)
|
|
||||||
set(DOXYGEN_EXECUTABLE \"@DOXYGEN_EXECUTABLE@\" CACHE FILEPATH docstring)
|
|
||||||
|
|
||||||
${_initcache}")
|
|
||||||
|
|
||||||
file(WRITE "${CTEST_DASHBOARD_ROOT}/GeneratedCombinedCache.${CTEST_SCRIPT_NAME}" "${_initcache}")
|
|
||||||
|
|
||||||
ctest_empty_binary_directory("${CTEST_BINARY_DIRECTORY}")
|
|
||||||
|
|
||||||
ctest_start(${DASH_TYPE})
|
|
||||||
|
|
||||||
if(CTEST_UPDATE_COMMAND AND NOT DASH_TYPE STREQUAL "Experimental")
|
|
||||||
ctest_update(SOURCE "${CTEST_SOURCE_DIRECTORY}" RETURN_VALUE res)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Only proceed if we updated a file or if we're not a continuous build
|
|
||||||
set(PROCEED NO)
|
|
||||||
if(res GREATER 0)
|
|
||||||
message(STATUS "One or more files were updated, so we will proceed to "
|
|
||||||
"and build")
|
|
||||||
set(PROCEED YES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT DASH_TYPE STREQUAL "Continuous")
|
|
||||||
message(STATUS "We are not a continuous dashboard, so continuing regardless "
|
|
||||||
"of whether any files were updated")
|
|
||||||
set(PROCEED YES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(PROCEED)
|
|
||||||
ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res
|
|
||||||
OPTIONS "-C${CTEST_DASHBOARD_ROOT}/GeneratedCombinedCache.${CTEST_SCRIPT_NAME}")
|
|
||||||
if(${res} EQUAL 0)
|
|
||||||
# Only try to build if we could configure
|
|
||||||
ctest_build(BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res)
|
|
||||||
|
|
||||||
# Some tests, like cppcheck tests, don't depend on a successful build
|
|
||||||
ctest_test(BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Always submit results
|
|
||||||
ctest_submit(RETURN_VALUE res)
|
|
||||||
@@ -1,334 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__add_doxygen)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__add_doxygen YES)
|
|
||||||
|
|
||||||
# We must run the following at "include" time, not at function call time,
|
|
||||||
# to find the path to this module rather than the path to a calling list file
|
|
||||||
get_filename_component(_doxygenmoddir ${CMAKE_CURRENT_LIST_FILE} PATH)
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
list(APPEND CMAKE_PREFIX_PATH "/usr/texbin")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT DOXYGEN_FOUND)
|
|
||||||
find_package(Doxygen QUIET)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(DOXYGEN_LATEX "NO")
|
|
||||||
set(DOXYGEN_PDFLATEX "NO")
|
|
||||||
set(DOXYGEN_DOT "NO")
|
|
||||||
|
|
||||||
if(DOXYGEN_DOT_EXECUTABLE)
|
|
||||||
set(DOXYGEN_DOT "YES")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_package(LATEX QUIET)
|
|
||||||
if(LATEX_COMPILER AND MAKEINDEX_COMPILER)
|
|
||||||
set(DOXYGEN_LATEX "YES")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(PDFLATEX_COMPILER)
|
|
||||||
set(DOXYGEN_PDFLATEX "YES")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# An optional single-file install that supports cmake older than 2.8.0
|
|
||||||
# For internal use
|
|
||||||
function(_dt_install_file target filename dest rename)
|
|
||||||
if(CMAKE_VER VERSION_LESS 2.8.0)
|
|
||||||
set(INSTALL_CODE "
|
|
||||||
if(EXISTS \"${filename}\")
|
|
||||||
message(STATUS \"Found: ${filename}\")
|
|
||||||
file(INSTALL
|
|
||||||
DESTINATION \"\${CMAKE_INSTALL_PREFIX}/${dest}\"
|
|
||||||
TYPE FILE
|
|
||||||
RENAME \"${rename}\"
|
|
||||||
FILES \"${filename}\")
|
|
||||||
else()
|
|
||||||
message(STATUS \"Skipping (build '${target}' to create): ${filename}\")
|
|
||||||
endif()
|
|
||||||
")
|
|
||||||
if(NOT ARGN STREQUAL "")
|
|
||||||
set(INSTALL_COMPONENT "${ARGN}")
|
|
||||||
set(INSTALL_CODE "
|
|
||||||
if(NOT CMAKE_INSTALL_COMPONENT OR \"\${CMAKE_INSTALL_COMPONENT}\" STREQUAL \"${INSTALL_COMPONENT}\")
|
|
||||||
${INSTALL_CODE}
|
|
||||||
endif()
|
|
||||||
")
|
|
||||||
endif()
|
|
||||||
install(CODE "${INSTALL_CODE}")
|
|
||||||
else()
|
|
||||||
set(COMPONENT_ARGS)
|
|
||||||
if(NOT ARGN STREQUAL "")
|
|
||||||
set(COMPONENT_ARGS COMPONENT "${ARGN}")
|
|
||||||
endif()
|
|
||||||
install(FILES
|
|
||||||
"${filename}"
|
|
||||||
DESTINATION
|
|
||||||
"${dest}"
|
|
||||||
RENAME "${rename}"
|
|
||||||
${COMPONENT_ARGS}
|
|
||||||
OPTIONAL)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
# An optional single-directory install that supports cmake older than 2.8.0
|
|
||||||
# For internal use
|
|
||||||
function(_dt_install_dir target dir dest)
|
|
||||||
if(CMAKE_VER VERSION_LESS 2.8.0)
|
|
||||||
set(INSTALL_CODE "
|
|
||||||
if(EXISTS \"${dir}\")
|
|
||||||
message(STATUS \"Found: ${dir}\")
|
|
||||||
file(INSTALL
|
|
||||||
DESTINATION \"\${CMAKE_INSTALL_PREFIX}/${dest}\"
|
|
||||||
TYPE DIRECTORY
|
|
||||||
FILES \"${dir}\")
|
|
||||||
else()
|
|
||||||
message(STATUS \"Skipping (build '${target}' to create): ${dir}\")
|
|
||||||
endif()
|
|
||||||
")
|
|
||||||
if(NOT ARGN STREQUAL "")
|
|
||||||
set(INSTALL_COMPONENT "${ARGN}")
|
|
||||||
set(INSTALL_CODE "
|
|
||||||
|
|
||||||
if(NOT CMAKE_INSTALL_COMPONENT OR \"\${CMAKE_INSTALL_COMPONENT}\" STREQUAL \"${INSTALL_COMPONENT}\")
|
|
||||||
${INSTALL_CODE}
|
|
||||||
endif()
|
|
||||||
")
|
|
||||||
endif()
|
|
||||||
install(CODE "${INSTALL_CODE}")
|
|
||||||
else()
|
|
||||||
set(COMPONENT_ARGS)
|
|
||||||
if(NOT ARGN STREQUAL "")
|
|
||||||
set(COMPONENT_ARGS COMPONENT "${ARGN}")
|
|
||||||
endif()
|
|
||||||
install(DIRECTORY
|
|
||||||
"${dir}"
|
|
||||||
DESTINATION
|
|
||||||
"${dest}"
|
|
||||||
${COMPONENT_ARGS}
|
|
||||||
OPTIONAL)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(add_doxygen _doxyfile)
|
|
||||||
# parse arguments
|
|
||||||
set(WARNINGS YES)
|
|
||||||
set(_nowhere)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
set(_val_args
|
|
||||||
OUTPUT_DIRECTORY
|
|
||||||
DOC_TARGET
|
|
||||||
INSTALL_DESTINATION
|
|
||||||
INSTALL_COMPONENT
|
|
||||||
INSTALL_PDF_NAME
|
|
||||||
PROJECT_NUMBER)
|
|
||||||
set(_bool_args
|
|
||||||
NO_WARNINGS
|
|
||||||
NO_PDF)
|
|
||||||
foreach(_arg ${_val_args} ${_bool_args})
|
|
||||||
set(${_arg})
|
|
||||||
endforeach()
|
|
||||||
foreach(_element ${ARGN})
|
|
||||||
list(FIND _val_args "${_element}" _val_arg_find)
|
|
||||||
list(FIND _bool_args "${_element}" _bool_arg_find)
|
|
||||||
if("${_val_arg_find}" GREATER "-1")
|
|
||||||
set(_curdest "${_element}")
|
|
||||||
elseif("${_bool_arg_find}" GREATER "-1")
|
|
||||||
set("${_element}" ON)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
else()
|
|
||||||
list(APPEND ${_curdest} "${_element}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(_nowhere)
|
|
||||||
message(FATAL_ERROR "Syntax error in use of add_doxygen!")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NO_WARNINGS)
|
|
||||||
set(WARNINGS NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT DOC_TARGET)
|
|
||||||
set(DOC_TARGET doc)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT OUTPUT_DIRECTORY)
|
|
||||||
set(OUTPUT_DIRECTORY "docs-generated")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${OUTPUT_DIRECTORY}")
|
|
||||||
|
|
||||||
if(NOT INSTALL_PDF_NAME)
|
|
||||||
set(INSTALL_PDF_NAME "docs-generated.pdf")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT PROJECT_NUMBER)
|
|
||||||
set(PROJECT_NUMBER "${CPACK_PACKAGE_VERSION}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(DOXYGEN_FOUND)
|
|
||||||
if(NOT TARGET ${DOC_TARGET})
|
|
||||||
|
|
||||||
if(NOT IN_DASHBOARD_SCRIPT)
|
|
||||||
add_custom_target(${DOC_TARGET})
|
|
||||||
set_target_properties(${DOC_TARGET}
|
|
||||||
PROPERTIES
|
|
||||||
EXCLUDE_FROM_ALL
|
|
||||||
TRUE)
|
|
||||||
set_target_properties(${DOC_TARGET}
|
|
||||||
PROPERTIES
|
|
||||||
EXCLUDE_FROM_DEFAULT_BUILD
|
|
||||||
TRUE)
|
|
||||||
else()
|
|
||||||
add_custom_target(${DOC_TARGET} ALL)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT IS_ABSOLUTE "${OUTPUT_DIRECTORY}")
|
|
||||||
get_filename_component(OUTPUT_DIRECTORY
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${OUTPUT_DIRECTORY}"
|
|
||||||
ABSOLUTE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set_property(DIRECTORY
|
|
||||||
APPEND
|
|
||||||
PROPERTY
|
|
||||||
ADDITIONAL_MAKE_CLEAN_FILES
|
|
||||||
"${OUTPUT_DIRECTORY}/html"
|
|
||||||
"${OUTPUT_DIRECTORY}/latex")
|
|
||||||
|
|
||||||
if(NOT TARGET ${DOC_TARGET}_open)
|
|
||||||
# Create a target to open the generated HTML file.
|
|
||||||
if(WIN32)
|
|
||||||
set(DOXYGEN_LAUNCHER_COMMAND start "Documentation")
|
|
||||||
elseif(NOT APPLE)
|
|
||||||
set(DOXYGEN_LAUNCHER_COMMAND xdg-open)
|
|
||||||
endif()
|
|
||||||
if(DOXYGEN_LAUNCHER_COMMAND)
|
|
||||||
add_custom_target(${DOC_TARGET}_open
|
|
||||||
COMMAND ${DOXYGEN_LAUNCHER_COMMAND} "${OUTPUT_DIRECTORY}/html/index.html")
|
|
||||||
set_target_properties(${DOC_TARGET}_open
|
|
||||||
PROPERTIES
|
|
||||||
EXCLUDE_FROM_ALL
|
|
||||||
TRUE)
|
|
||||||
set_target_properties(${DOC_TARGET}_open
|
|
||||||
PROPERTIES
|
|
||||||
EXCLUDE_FROM_DEFAULT_BUILD
|
|
||||||
TRUE)
|
|
||||||
add_dependencies(${DOC_TARGET}_open ${DOC_TARGET})
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
get_filename_component(_doxyfileabs "${_doxyfile}" ABSOLUTE)
|
|
||||||
get_filename_component(INCLUDE_FILE "${_doxyfileabs}" NAME)
|
|
||||||
get_filename_component(INCLUDE_PATH "${_doxyfileabs}" PATH)
|
|
||||||
|
|
||||||
# Doesn't currently work on Windows, so don't bother
|
|
||||||
if(DOXYGEN_LATEX AND NOT NO_PDF AND NOT WIN32)
|
|
||||||
set(MAKE_PDF YES)
|
|
||||||
set(GENERATE_LATEX YES)
|
|
||||||
else()
|
|
||||||
set(MAKE_PDF NO)
|
|
||||||
set(GENERATE_LATEX NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(DOXYGEN_PDFLATEX AND MAKE_PDF)
|
|
||||||
set(USE_PDFLATEX YES)
|
|
||||||
else()
|
|
||||||
set(USE_PDFLATEX NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(DOXYGEN_DOT)
|
|
||||||
set(HAVE_DOT YES)
|
|
||||||
set(DOT_PATH ${DOXYGEN_DOT_PATH})
|
|
||||||
else()
|
|
||||||
set(HAVE_DOT NO)
|
|
||||||
set(DOT_PATH)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# See http://www.cmake.org/pipermail/cmake/2006-August/010786.html
|
|
||||||
# for info on this variable
|
|
||||||
if("${CMAKE_BUILD_TOOL}" MATCHES "(msdev|devenv)")
|
|
||||||
set(WARN_FORMAT "\"$file($line) : $text \"")
|
|
||||||
else()
|
|
||||||
set(WARN_FORMAT "\"$file:$line: $text \"")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
configure_file("${_doxygenmoddir}/DoxygenTargets.doxyfile.in"
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${_doxyfile}.additional"
|
|
||||||
@ONLY)
|
|
||||||
|
|
||||||
add_custom_command(TARGET
|
|
||||||
${DOC_TARGET}
|
|
||||||
COMMAND
|
|
||||||
${DOXYGEN_EXECUTABLE}
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${_doxyfile}.additional"
|
|
||||||
WORKING_DIRECTORY
|
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
#MAIN_DEPENDENCY ${DOC_TARGET}
|
|
||||||
COMMENT
|
|
||||||
"Running Doxygen with configuration ${_doxyfile}..."
|
|
||||||
VERBATIM)
|
|
||||||
|
|
||||||
if(MAKE_PDF)
|
|
||||||
add_custom_command(TARGET
|
|
||||||
${DOC_TARGET}
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND
|
|
||||||
${CMAKE_MAKE_PROGRAM}
|
|
||||||
WORKING_DIRECTORY
|
|
||||||
"${OUTPUT_DIRECTORY}/latex"
|
|
||||||
COMMENT
|
|
||||||
"Generating PDF using PDFLaTeX..."
|
|
||||||
VERBATIM)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(INSTALL_DESTINATION)
|
|
||||||
if(INSTALL_COMPONENT)
|
|
||||||
_dt_install_dir("${DOC_TARGET}" "${OUTPUT_DIRECTORY}/html" "${INSTALL_DESTINATION}" "${INSTALL_COMPONENT}")
|
|
||||||
if(MAKE_PDF)
|
|
||||||
_dt_install_file("${DOC_TARGET}" "${OUTPUT_DIRECTORY}/latex/refman.pdf" "${INSTALL_DESTINATION}" "${INSTALL_PDF_NAME}" "${INSTALL_COMPONENT}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
else()
|
|
||||||
_dt_install_dir("${DOC_TARGET}" "${OUTPUT_DIRECTORY}/html" "${INSTALL_DESTINATION}")
|
|
||||||
if(MAKE_PDF)
|
|
||||||
_dt_install_file("${DOC_TARGET}" "${OUTPUT_DIRECTORY}/latex/refman.pdf" "${INSTALL_DESTINATION}" "${INSTALL_PDF_NAME}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
@INCLUDE_PATH = "@INCLUDE_PATH@"
|
|
||||||
@INCLUDE = "@INCLUDE_FILE@"
|
|
||||||
|
|
||||||
OUTPUT_DIRECTORY = "@OUTPUT_DIRECTORY@"
|
|
||||||
GENERATE_LATEX = "@GENERATE_LATEX@"
|
|
||||||
USE_PDFLATEX = @USE_PDFLATEX@
|
|
||||||
HAVE_DOT = @HAVE_DOT@
|
|
||||||
DOT_PATH = "@DOT_PATH@"
|
|
||||||
LATEX_CMD_NAME = "@LATEX_COMPILER@"
|
|
||||||
MAKEINDEX_CMD_NAME = "@MAKEINDEX_COMPILER@"
|
|
||||||
|
|
||||||
WARNINGS = @WARNINGS@
|
|
||||||
WARN_FORMAT = @WARN_FORMAT@
|
|
||||||
|
|
||||||
PROJECT_NUMBER = @PROJECT_NUMBER@
|
|
||||||
|
|
||||||
LATEX_BATCHMODE = YES
|
|
||||||
QUIET = YES
|
|
||||||
@@ -1,83 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__enable_extra_compiler_warnings)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__enable_extra_compiler_warnings YES)
|
|
||||||
|
|
||||||
macro(_enable_extra_compiler_warnings_flags)
|
|
||||||
set(_flags)
|
|
||||||
if(MSVC)
|
|
||||||
option(COMPILER_WARNINGS_EXTREME
|
|
||||||
"Use compiler warnings that are probably overkill."
|
|
||||||
off)
|
|
||||||
mark_as_advanced(COMPILER_WARNINGS_EXTREME)
|
|
||||||
set(_flags "/W4")
|
|
||||||
if(COMPILER_WARNINGS_EXTREME)
|
|
||||||
set(_flags "${_flags} /Wall /wd4619 /wd4668 /wd4820 /wd4571 /wd4710")
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
include(CheckCXXCompilerFlag)
|
|
||||||
set(_flags)
|
|
||||||
|
|
||||||
check_cxx_compiler_flag(-W SUPPORTS_W_FLAG)
|
|
||||||
if(SUPPORTS_W_FLAG)
|
|
||||||
set(_flags "${_flags} -W")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
check_cxx_compiler_flag(-Wall SUPPORTS_WALL_FLAG)
|
|
||||||
if(SUPPORTS_WALL_FLAG)
|
|
||||||
set(_flags "${_flags} -Wall")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
check_cxx_compiler_flag(-Wextra SUPPORTS_WEXTRA_FLAG)
|
|
||||||
if(SUPPORTS_WEXTRA_FLAG)
|
|
||||||
set(_flags "${_flags} -Wextra")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
check_cxx_compiler_flag(-Weffc++ SUPPORTS_WEFFCXX_FLAG)
|
|
||||||
if(SUPPORTS_WEFFCXX_FLAG)
|
|
||||||
set(_flags "${_flags} -Weffc++")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
function(enable_extra_compiler_warnings _target)
|
|
||||||
_enable_extra_compiler_warnings_flags()
|
|
||||||
get_target_property(_origflags ${_target} COMPILE_FLAGS)
|
|
||||||
if(_origflags)
|
|
||||||
set_property(TARGET
|
|
||||||
${_target}
|
|
||||||
PROPERTY
|
|
||||||
COMPILE_FLAGS
|
|
||||||
"${_flags} ${_origflags}")
|
|
||||||
else()
|
|
||||||
set_property(TARGET
|
|
||||||
${_target}
|
|
||||||
PROPERTY
|
|
||||||
COMPILE_FLAGS
|
|
||||||
"${_flags}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(globally_enable_extra_compiler_warnings)
|
|
||||||
_enable_extra_compiler_warnings_flags()
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_flags}" PARENT_SCOPE)
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_flags}" PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__enable_profiling)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__enable_profiling YES)
|
|
||||||
|
|
||||||
macro(_enable_profiling_flags)
|
|
||||||
set(_flags)
|
|
||||||
if(MSVC)
|
|
||||||
# TODO: what kind of flags are needed to profile on MSVC?
|
|
||||||
#set(_flags /W4)
|
|
||||||
elseif(CMAKE_COMPILER_IS_GNUCXX)
|
|
||||||
set(_flags "-p")
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
function(enable_profiling _target)
|
|
||||||
_enable_profiling_flags()
|
|
||||||
get_target_property(_origflags ${_target} COMPILE_FLAGS)
|
|
||||||
if(_origflags)
|
|
||||||
set_property(TARGET
|
|
||||||
${_target}
|
|
||||||
PROPERTY
|
|
||||||
COMPILE_FLAGS
|
|
||||||
"${_flags} ${_origflags}")
|
|
||||||
else()
|
|
||||||
set_property(TARGET
|
|
||||||
${_target}
|
|
||||||
PROPERTY
|
|
||||||
COMPILE_FLAGS
|
|
||||||
"${_flags}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(globally_enable_profiling)
|
|
||||||
_enable_profiling_flags()
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_flags}" PARENT_SCOPE)
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_flags}" PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,103 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(__add_file_copy_target)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__add_file_copy_target YES)
|
|
||||||
|
|
||||||
define_property(TARGET
|
|
||||||
PROPERTY
|
|
||||||
FILE_COPY_TARGET
|
|
||||||
BRIEF_DOCS
|
|
||||||
"File Copy target"
|
|
||||||
FULL_DOCS
|
|
||||||
"Is this a target created by add_file_copy_target?")
|
|
||||||
|
|
||||||
function(add_file_copy_target _target _dest)
|
|
||||||
if(NOT ARGN)
|
|
||||||
message(WARNING
|
|
||||||
"In add_file_copy_target call for target ${_target}, no source files were specified!")
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(ALLFILES)
|
|
||||||
set(SOURCES)
|
|
||||||
foreach(fn ${ARGN})
|
|
||||||
# Produce an absolute path to the input file
|
|
||||||
if(IS_ABSOLUTE "${fn}")
|
|
||||||
get_filename_component(fullpath "${fn}" ABSOLUTE)
|
|
||||||
get_filename_component(fn "${fn}" NAME)
|
|
||||||
else()
|
|
||||||
get_filename_component(fullpath
|
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/${fn}"
|
|
||||||
ABSOLUTE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Clean up output file name
|
|
||||||
get_filename_component(absout "${_dest}/${fn}" ABSOLUTE)
|
|
||||||
|
|
||||||
add_custom_command(OUTPUT "${absout}"
|
|
||||||
COMMAND
|
|
||||||
${CMAKE_COMMAND}
|
|
||||||
ARGS -E make_directory "${_dest}"
|
|
||||||
COMMAND
|
|
||||||
${CMAKE_COMMAND}
|
|
||||||
ARGS -E copy "${fullpath}" "${_dest}"
|
|
||||||
MAIN_DEPENDENCY "${fullpath}"
|
|
||||||
VERBATIM
|
|
||||||
COMMENT "Copying ${fn} to ${absout}")
|
|
||||||
list(APPEND SOURCES "${fullpath}")
|
|
||||||
list(APPEND ALLFILES "${absout}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Custom target depending on all the file copy commands
|
|
||||||
add_custom_target(${_target}
|
|
||||||
SOURCES ${SOURCES}
|
|
||||||
DEPENDS ${ALLFILES})
|
|
||||||
|
|
||||||
set_property(TARGET ${_target} PROPERTY FILE_COPY_TARGET YES)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(install_file_copy_target _target)
|
|
||||||
get_target_property(_isFCT ${_target} FILE_COPY_TARGET)
|
|
||||||
if(NOT _isFCT)
|
|
||||||
message(WARNING
|
|
||||||
"install_file_copy_target called on a target not created with add_file_copy_target!")
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Get sources
|
|
||||||
get_target_property(_srcs ${_target} SOURCES)
|
|
||||||
|
|
||||||
# Remove the "fake" file forcing build
|
|
||||||
list(REMOVE_AT _srcs 0)
|
|
||||||
|
|
||||||
# Forward the call to install
|
|
||||||
install(PROGRAMS ${_srcs} ${ARGN})
|
|
||||||
endfunction()
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(ALUT_ROOT_DIR
|
|
||||||
"${ALUT_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for ALUT library")
|
|
||||||
|
|
||||||
# Share search paths with OpenAL
|
|
||||||
if(NOT "$ENV{OPENALDIR}" STREQUAL "")
|
|
||||||
if(NOT ALUT_ROOT_DIR)
|
|
||||||
set(ALUT_ROOT_DIR "$ENV{OPENALDIR}")
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
if(ALUT_ROOT_DIR)
|
|
||||||
set(ENV{OPENALDIR} "${ALUT_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure ALUT
|
|
||||||
###
|
|
||||||
find_path(ALUT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
alut.h
|
|
||||||
HINTS
|
|
||||||
"${ALUT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
AL
|
|
||||||
alut
|
|
||||||
OpenAL
|
|
||||||
include
|
|
||||||
include/alut
|
|
||||||
include/freealut
|
|
||||||
include/AL
|
|
||||||
include/OpenAL
|
|
||||||
PATHS
|
|
||||||
/usr/local
|
|
||||||
/opt/local
|
|
||||||
/sw)
|
|
||||||
mark_as_advanced(ALUT_INCLUDE_DIR)
|
|
||||||
|
|
||||||
find_library(ALUT_LIBRARY
|
|
||||||
NAMES
|
|
||||||
alut
|
|
||||||
HINTS
|
|
||||||
"${ALUT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
lib64
|
|
||||||
PATHS
|
|
||||||
/usr/local
|
|
||||||
/opt/local
|
|
||||||
/sw)
|
|
||||||
mark_as_advanced(ALUT_LIBRARY)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Prereq: OpenAL
|
|
||||||
###
|
|
||||||
|
|
||||||
# On Mac OS X, the ALUT headers were in the OpenAL framework until 10.4.7
|
|
||||||
# If we found ALUT headers elsewhere, it's probably freealut which may
|
|
||||||
# define the same symbols as the library in the framework (?)
|
|
||||||
# so we might want to save/restore the CMake variable that controls searching
|
|
||||||
# in frameworks
|
|
||||||
find_package(OpenAL QUIET)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(ALUT
|
|
||||||
DEFAULT_MSG
|
|
||||||
ALUT_LIBRARY
|
|
||||||
ALUT_INCLUDE_DIR
|
|
||||||
OPENAL_FOUND)
|
|
||||||
|
|
||||||
if(ALUT_FOUND)
|
|
||||||
set(ALUT_INCLUDE_DIRS "${OPENAL_INCLUDE_DIR}" "${ALUT_INCLUDE_DIR}")
|
|
||||||
set(ALUT_LIBRARIES "${OPENAL_LIBRARY}" ${ALUT_LIBRARY})
|
|
||||||
if(APPLE)
|
|
||||||
get_filename_component(_moddir ${CMAKE_CURRENT_LIST_FILE} PATH)
|
|
||||||
if("${OPENAL_INCLUDE_DIR}" MATCHES "\\.framework$")
|
|
||||||
# OpenAL is in a framework - need a workaround
|
|
||||||
set(OPENAL_WORKAROUND_INCLUDE_DIR
|
|
||||||
"${_moddir}/workarounds/mac-openal")
|
|
||||||
list(APPEND
|
|
||||||
ALUT_WORKAROUND_INCLUDE_DIRS
|
|
||||||
"${OPENAL_WORKAROUND_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
if("${ALUT_INCLUDE_DIR}" MATCHES "\\.framework$")
|
|
||||||
# ALUT is in the OpenAL framework - need a workaround
|
|
||||||
set(ALUT_WORKAROUND_INCLUDE_DIR
|
|
||||||
"${_moddir}/workarounds/mac-alut-framework")
|
|
||||||
list(APPEND
|
|
||||||
ALUT_WORKAROUND_INCLUDE_DIRS
|
|
||||||
"${ALUT_WORKAROUND_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${ALUT_INCLUDE_DIR}" MATCHES "AL$")
|
|
||||||
get_filename_component(_parent "${ALUT_INCLUDE_DIR}/.." ABSOLUTE)
|
|
||||||
list(APPEND ALUT_INCLUDE_DIRS "${_parent}")
|
|
||||||
endif()
|
|
||||||
mark_as_advanced(ALUT_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
@@ -1,202 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
# Apparently Windows only.
|
|
||||||
if(WIN32 OR CYGWIN)
|
|
||||||
set(ADRIENNE_ROOT_DIR
|
|
||||||
"${ADRIENNE_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to search for Adrienne Electronics Timecode data - root of a software distribution or extracted download from http://www.adrielec.com/")
|
|
||||||
|
|
||||||
set(ADRIENNE_DEFINITIONS)
|
|
||||||
|
|
||||||
set(ADRIENNE_INCLUDE_SEARCH
|
|
||||||
# from AecPCIeTC_8-12a: contains AEC_NTTC.h with extern "C" and three extra functions:
|
|
||||||
# AEC_PCTC_OPEN_ALL, AEC_PCTC_CLOSE_ALL, AEC_PCTC_INITIALIZE_EVENT
|
|
||||||
"SDK_SourceCode"
|
|
||||||
|
|
||||||
# from AecPci6_02_CD - called AECINTTC.H but otherwise essentially identical to earlier versions
|
|
||||||
"TestPrograms_WithDLL/DLL_API_INFO"
|
|
||||||
# A zipped development project contains essentially the same, named AEC_NTTC.h so we'll add this in case it's unzipped.
|
|
||||||
"TestPrograms_WithDLL/ZippedDevelopmentProjects/AecMfc32_Rel504"
|
|
||||||
|
|
||||||
# from pc-ltc - called AECINTTC.H and lacks extern "C"
|
|
||||||
"NT-CODE/C40-APP1"
|
|
||||||
)
|
|
||||||
set(ADRIENNE_HEADER_NAMES
|
|
||||||
AEC_NTTC.H
|
|
||||||
AEC_NTTC.h
|
|
||||||
Aec_nttc.h
|
|
||||||
AECINTTC.H)
|
|
||||||
|
|
||||||
set(ADRIENNE_LIB_SEARCH)
|
|
||||||
set(ADRIENNE_DLL_SEARCH)
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
# 64 bit code - apparently initially packaged only in the
|
|
||||||
# PCIe version of their software
|
|
||||||
list(APPEND ADRIENNE_LIB_SEARCH
|
|
||||||
# from AecPCIeTC_8-12a
|
|
||||||
"64BitOS_files/DLL Versions")
|
|
||||||
|
|
||||||
list(APPEND ADRIENNE_DLL_SEARCH
|
|
||||||
# from AecPCIeTC_8-12a
|
|
||||||
"64BitOS_files/DLL Versions")
|
|
||||||
else()
|
|
||||||
# 32-bit code, much more prevalent.
|
|
||||||
list(APPEND ADRIENNE_LIB_SEARCH
|
|
||||||
# from AecPCIeTC_8-12a
|
|
||||||
"32BitOS_files/DLLversions"
|
|
||||||
|
|
||||||
# from AecPci6_02_CD
|
|
||||||
"TestPrograms_WithDLL/DLL_API_INFO"
|
|
||||||
|
|
||||||
# from pc-ltc
|
|
||||||
"NT-CODE/DLL"
|
|
||||||
)
|
|
||||||
|
|
||||||
list(APPEND ADRIENNE_DLL_SEARCH
|
|
||||||
# from AecPCIeTC_8-12a
|
|
||||||
"32BitOS_files/DLLversions"
|
|
||||||
|
|
||||||
# from AecPci6_02_CD
|
|
||||||
"TestPrograms_WithDLL"
|
|
||||||
|
|
||||||
# from pc-ltc
|
|
||||||
"NT-CODE/DLL")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(ADRIENNE_LIBRARY
|
|
||||||
NAMES
|
|
||||||
AEC_NTTC
|
|
||||||
PATHS
|
|
||||||
"${ADRIENNE_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${ADRIENNE_LIB_SEARCH})
|
|
||||||
|
|
||||||
find_path(ADRIENNE_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
${ADRIENNE_HEADER_NAMES}
|
|
||||||
PATHS
|
|
||||||
"${ADRIENNE_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${ADRIENNE_INCLUDE_SEARCH})
|
|
||||||
|
|
||||||
if(ADRIENNE_INCLUDE_DIR)
|
|
||||||
find_file(ADRIENNE_INCLUDE_FILE
|
|
||||||
NAMES
|
|
||||||
${ADRIENNE_HEADER_NAMES}
|
|
||||||
HINTS
|
|
||||||
${ADRIENNE_INCLUDE_DIR})
|
|
||||||
|
|
||||||
# Get include filename
|
|
||||||
get_filename_component(ADRIENNE_INCLUDE_FILENAME
|
|
||||||
"${ADRIENNE_INCLUDE_FILE}"
|
|
||||||
NAME)
|
|
||||||
list(APPEND ADRIENNE_DEFINITIONS -DADRIENNE_INCLUDE_FILENAME="ADRIENNE_INCLUDE_FILENAME")
|
|
||||||
|
|
||||||
# Find out if it has extern "C" in it.
|
|
||||||
file(STRINGS "${ADRIENNE_INCLUDE_FILE}" strings)
|
|
||||||
set(ADRIENNE_INCLUDE_HAS_EXTERN_C OFF)
|
|
||||||
foreach(_line ${strings})
|
|
||||||
if("${_line}" STREQUAL "extern \"C\"")
|
|
||||||
set(ADRIENNE_INCLUDE_HAS_EXTERN_C ON)
|
|
||||||
break()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(ADRIENNE_INCLUDE_HAS_EXTERN_C)
|
|
||||||
list(APPEND ADRIENNE_DEFINITIONS -DADRIENNE_BEFORE_INCLUDE -DADRIENNE_AFTER_INCLUDE)
|
|
||||||
else()
|
|
||||||
list(APPEND ADRIENNE_DEFINITIONS "-DADRIENNE_BEFORE_INCLUDE=extern \"C\" {" "-DADRIENNE_AFTER_INCLUDE=}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
get_filename_component(_adrienne_libdir "${ADRIENNE_LIBRARY}" PATH)
|
|
||||||
find_file(ADRIENNE_RUNTIME_LIBRARY
|
|
||||||
NAMES
|
|
||||||
AEC_NTTC.dll
|
|
||||||
HINTS
|
|
||||||
"${_adrienne_libdir}"
|
|
||||||
"${_adrienne_libdir}/.."
|
|
||||||
PATHS
|
|
||||||
"${ADRIENNE_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${ADRIENNE_DLL_SEARCH})
|
|
||||||
|
|
||||||
|
|
||||||
set(ADRIENNE_RUNTIME_LIBRARIES "${ADRIENNE_RUNTIME_LIBRARY}")
|
|
||||||
get_filename_component(ADRIENNE_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${ADRIENNE_RUNTIME_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Adrienne
|
|
||||||
DEFAULT_MSG
|
|
||||||
ADRIENNE_LIBRARY
|
|
||||||
ADRIENNE_RUNTIME_LIBRARY
|
|
||||||
ADRIENNE_INCLUDE_DIR
|
|
||||||
ADRIENNE_INCLUDE_FILENAME)
|
|
||||||
|
|
||||||
if(ADRIENNE_FOUND)
|
|
||||||
set(ADRIENNE_LIBRARIES "${ADRIENNE_LIBRARY}")
|
|
||||||
set(ADRIENNE_INCLUDE_DIRS "${ADRIENNE_INCLUDE_DIR}")
|
|
||||||
mark_as_advanced(ADRIENNE_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(
|
|
||||||
ADRIENNE_LIBRARY
|
|
||||||
ADRIENNE_RUNTIME_LIBRARY
|
|
||||||
ADRIENNE_INCLUDE_DIR
|
|
||||||
ADRIENNE_INCLUDE_FILE)
|
|
||||||
else()
|
|
||||||
set(ADRIENNE_FOUND OFF)
|
|
||||||
set(ADRIENNE_SDK_IS_WINDOWS_ONLY NOTFOUND)
|
|
||||||
find_package_handle_standard_args(Adrienne
|
|
||||||
DEFAULT_MSG
|
|
||||||
ADRIENNE_SDK_IS_WINDOWS_ONLY)
|
|
||||||
endif()
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(WIN32 OR APPLE OR NOT UNIX)
|
|
||||||
if(NOT Bluez_FIND_QUIETLY)
|
|
||||||
message(STATUS "Platform not supported by Bluez - skipping search")
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(BLUEZ_ROOT_DIR
|
|
||||||
"${BLUEZ_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to search")
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_LIBSUFFIXES lib64 lib)
|
|
||||||
else()
|
|
||||||
set(_LIBSUFFIXES lib)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(BLUEZ_LIBRARY
|
|
||||||
NAMES
|
|
||||||
bluetooth
|
|
||||||
HINTS
|
|
||||||
"${BLUEZ_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"${_LIBSUFFIXES}")
|
|
||||||
|
|
||||||
# Might want to look close to the library first for the includes.
|
|
||||||
get_filename_component(_libdir "${BLUEZ_LIBRARY}" PATH)
|
|
||||||
|
|
||||||
find_path(BLUEZ_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
bluetooth/bluetooth.h
|
|
||||||
HINTS
|
|
||||||
"${_libdir}/.."
|
|
||||||
PATHS
|
|
||||||
"${BLUEZ_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include/)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Bluez
|
|
||||||
DEFAULT_MSG
|
|
||||||
BLUEZ_LIBRARY
|
|
||||||
BLUEZ_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(BLUEZ_FOUND)
|
|
||||||
set(BLUEZ_LIBRARIES "${BLUEZ_LIBRARY}")
|
|
||||||
set(BLUEZ_INCLUDE_DIRS "${BLUEZ_INCLUDE_DIR}")
|
|
||||||
mark_as_advanced(BLUEZ_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(BLUEZ_INCLUDE_DIR
|
|
||||||
BLUEZ_LIBRARY)
|
|
||||||
@@ -1,200 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(_HUMAN "cppdom")
|
|
||||||
set(_HEADER cppdom/cppdom.h)
|
|
||||||
set(_FP_PKG_NAME cppdom)
|
|
||||||
|
|
||||||
set(CPPDOM_VERSIONS
|
|
||||||
${CPPDOM_ADDITIONAL_VERSIONS}
|
|
||||||
1.3.0
|
|
||||||
1.2.0
|
|
||||||
1.1.2
|
|
||||||
1.1.1
|
|
||||||
1.1.0
|
|
||||||
1.0.3
|
|
||||||
1.0.2
|
|
||||||
1.0.1
|
|
||||||
1.0.0
|
|
||||||
0.7.10
|
|
||||||
0.7.9
|
|
||||||
0.7.8)
|
|
||||||
set(CPPDOM_DIRS)
|
|
||||||
set(CPPDOM_RELEASE_LIB_NAMES)
|
|
||||||
set(CPPDOM_DEBUG_LIB_NAMES)
|
|
||||||
foreach(_version ${CPPDOM_VERSIONS})
|
|
||||||
string(REGEX REPLACE "[-\\.]" "_" _versionclean ${_version})
|
|
||||||
list(APPEND CPPDOM_DIRS cppdom-${_version})
|
|
||||||
list(APPEND CPPDOM_HEADER_DIRS include/cppdom-${_version})
|
|
||||||
list(APPEND CPPDOM_RELEASE_LIB_NAMES cppdom-${_versionclean})
|
|
||||||
list(APPEND CPPDOM_DEBUG_LIB_NAMES cppdom_d-${_versionclean})
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(CPPDOM_INCLUDE_DIRS AND CPPDOM_LIBRARIES)
|
|
||||||
# in cache already
|
|
||||||
set(CPPDOM_FIND_QUIETLY TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_names(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CPPDOM_ROOT_DIR
|
|
||||||
"${CPPDOM_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for CPPDOM")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(CPPDOM_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT CPPDOM_ROOT_DIR)
|
|
||||||
if(VRJUGGLER22_ROOT_DIR)
|
|
||||||
set(CPPDOM_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
elseif(VRJUGGLER30_ROOT_DIR)
|
|
||||||
set(CPPDOM_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${CPPDOM_ROOT_DIR}")
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_VRJ_LIBSUFFIXES lib64 lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES
|
|
||||||
debug
|
|
||||||
lib64/x86_64/debug
|
|
||||||
lib64/debug
|
|
||||||
lib64
|
|
||||||
lib/x86_64/debug
|
|
||||||
lib/debug
|
|
||||||
lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES_ONLY
|
|
||||||
debug
|
|
||||||
lib64/x86_64/debug
|
|
||||||
lib64/debug
|
|
||||||
lib/x86_64/debug
|
|
||||||
lib/debug)
|
|
||||||
else()
|
|
||||||
set(_VRJ_LIBSUFFIXES lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES debug lib/i686/debug lib/debug lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES_ONLY debug lib/i686/debug lib/debug)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(CPPDOM_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
${_ROOT_DIR}
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATHS
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${CPPDOM_DIRS}
|
|
||||||
${CPPDOM_HEADER_DIRS}
|
|
||||||
include
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(CPPDOM_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${CPPDOM_RELEASE_LIB_NAMES}
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_NAMES}
|
|
||||||
HINTS
|
|
||||||
${_ROOT_DIR}
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} library full path")
|
|
||||||
|
|
||||||
find_library(CPPDOM_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${CPPDOM_DEBUG_LIB_NAMES}
|
|
||||||
HINTS
|
|
||||||
${_ROOT_DIR}
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
# Fallback to same library name but in the debug folder
|
|
||||||
if(NOT CPPDOM_LIBRARY_DEBUG)
|
|
||||||
find_library(CPPDOM_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${CPPDOM_LIB_NAMES}
|
|
||||||
HINTS
|
|
||||||
${CPPDOM_INCLUDE_DIR}/../
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES_ONLY}
|
|
||||||
NO_DEFAULT_PATH
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(CPPDOM_LIBRARY_RELEASE OR CPPDOM_LIBRARY_DEBUG)
|
|
||||||
select_library_configurations(CPPDOM)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(CPPDOM
|
|
||||||
DEFAULT_MSG
|
|
||||||
CPPDOM_LIBRARY
|
|
||||||
CPPDOM_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(CPPDOM_FOUND)
|
|
||||||
set(CPPDOM_INCLUDE_DIRS ${CPPDOM_INCLUDE_DIR})
|
|
||||||
if(MSVC)
|
|
||||||
set(CPPDOM_CXX_FLAGS "/wd4290")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(CPPDOM_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(CPPDOM_LIBRARY_RELEASE
|
|
||||||
CPPDOM_LIBRARY_DEBUG
|
|
||||||
CPPDOM_INCLUDE_DIR)
|
|
||||||
@@ -1,192 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(NOT BITS)
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(BITS 64)
|
|
||||||
else()
|
|
||||||
set(BITS 32)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32 AND MSVC)
|
|
||||||
include(CMakeDetermineVSServicePack)
|
|
||||||
determinevsservicepack(_sp)
|
|
||||||
if(MSVC71)
|
|
||||||
set(VC_VER vc71)
|
|
||||||
set(VC_VER_LONG vc71)
|
|
||||||
elseif(MSVC80)
|
|
||||||
set(VC_VER vc8)
|
|
||||||
set(VC_VER_LONG vc80)
|
|
||||||
# FIXME TODO provide more options here
|
|
||||||
set(D3BUILD nt8)
|
|
||||||
if("${_sp}" STREQUAL "vc80sp1")
|
|
||||||
set(_verstring nt8s1)
|
|
||||||
else()
|
|
||||||
set(_verstring nt8)
|
|
||||||
endif()
|
|
||||||
elseif(MSVC90)
|
|
||||||
set(VC_VER vc9)
|
|
||||||
set(VC_VER_LONG vc90)
|
|
||||||
set(_verstring nt9)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BITS EQUAL 32)
|
|
||||||
set(PLATFORM win32)
|
|
||||||
else()
|
|
||||||
set(PLATFORM win64)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT DCUBED_ROOT_DIR)
|
|
||||||
if(EXISTS "$ENV{DCUBED}" AND IS_DIRECTORY "$ENV{DCUBED}")
|
|
||||||
set(DCUBED_ROOT_DIR "$ENV{DCUBED}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "${DCUBED_ROOT_DIR}" DCUBED_ROOT_DIR)
|
|
||||||
|
|
||||||
set(DCUBED_ROOT_DIR
|
|
||||||
"${DCUBED_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for DCubed")
|
|
||||||
|
|
||||||
# Do this by default
|
|
||||||
if(NOT DEFINED DCUBED_NESTED_TARGETS)
|
|
||||||
set(DCUBED_NESTED_TARGETS TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(DCUBED_NESTED_TARGETS
|
|
||||||
"${DCUBED_NESTED_TARGETS}"
|
|
||||||
CACHE
|
|
||||||
BOOL
|
|
||||||
"Whether we should compile the wrappers as a part of the solution")
|
|
||||||
mark_as_advanced(DCUBED_NESTED_TARGETS)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure DCubed
|
|
||||||
###
|
|
||||||
|
|
||||||
|
|
||||||
find_path(DCUBED_CORE_INCLUDE_DIR
|
|
||||||
d3ew_inc/modelgate.hxx
|
|
||||||
PATHS
|
|
||||||
"${DCUBED_ROOT_DIR}/inc")
|
|
||||||
|
|
||||||
foreach(lib aem cdmwp d3e_base d3e_cd dcm dcm3 g3)
|
|
||||||
find_library(DCUBED_${lib}_LIBRARY
|
|
||||||
${lib}
|
|
||||||
PATHS
|
|
||||||
"${DCUBED_ROOT_DIR}/lib/${_verstring}")
|
|
||||||
if(DCUBED_${lib}_LIBRARY)
|
|
||||||
list(APPEND DCUBED_LIBRARIES ${DCUBED_${lib}_LIBRARY})
|
|
||||||
list(APPEND DCUBED_CORE_LIBRARIES ${DCUBED_${lib}_LIBRARY})
|
|
||||||
endif()
|
|
||||||
mark_as_advanced(DCUBED_${lib}_LIBRARY)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
find_path(DCUBED_WRAPPER_INCLUDE_DIR
|
|
||||||
d3ew_p/p_utils.hxx
|
|
||||||
PATHS
|
|
||||||
"${DCUBED_ROOT_DIR}/source/wrapper_source/")
|
|
||||||
|
|
||||||
foreach(lib d3ew_p d3ew_scene)
|
|
||||||
find_library(DCUBED_WRAPPER_${lib}_LIBRARY
|
|
||||||
${lib}_${D3BUILD}
|
|
||||||
PATHS
|
|
||||||
"${DCUBED_ROOT_DIR}/wrappers/cdmwp/${lib}")
|
|
||||||
mark_as_advanced(DCUBED_WRAPPER_${lib}_LIBRARY)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
set(_nest_targets)
|
|
||||||
if(DCUBED_WRAPPER_INCLUDE_DIR)
|
|
||||||
foreach(lib d3ew_p d3ew_scene)
|
|
||||||
if(DCUBED_NESTED_TARGETS OR NOT DCUBED_WRAPPER_${lib}_LIBRARY)
|
|
||||||
if(PARASOLID_FOUND)
|
|
||||||
set(_nest_targets YES)
|
|
||||||
set(DCUBED_WRAPPER_${lib}_LIBRARY
|
|
||||||
"dcubed_wrapper_${lib}_nested_target"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"We will build the DCubed wrapper ${lib} lib."
|
|
||||||
FORCE)
|
|
||||||
else()
|
|
||||||
set(DCUBED_WRAPPER_${lib}_LIBRARY
|
|
||||||
"NESTED_TARGET_REQUIRES_PARASOLID-NOTFOUND"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"Can't build the DCubed wrapper ${lib} without first finding Parasolid."
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(lib d3ew_p d3ew_scene)
|
|
||||||
if(DCUBED_WRAPPER_${lib}_LIBRARY)
|
|
||||||
list(APPEND DCUBED_WRAPPER_LIBRARIES ${DCUBED_WRAPPER_${lib}_LIBRARY})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(NOT DCUBED_ROOT_DIR)
|
|
||||||
get_filename_component(_path "${DCUBED_dcm_LIBRARY}" PATH)
|
|
||||||
get_filename_component(_path "${_path}/../.." ABSOLUTE)
|
|
||||||
set(DCUBED_ROOT_DIR
|
|
||||||
"${_path}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for DCubed"
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
#file(TO_NATIVE_PATH "${DCUBED_ROOT_DIR}" _d3envdir)
|
|
||||||
set(DCUBED_ENVIRONMENT "DCUBED=${DCUBED_ROOT_DIR}")
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(DCubed
|
|
||||||
DEFAULT_MSG
|
|
||||||
DCUBED_ROOT_DIR
|
|
||||||
DCUBED_LIBRARIES
|
|
||||||
DCUBED_CORE_LIBRARIES
|
|
||||||
DCUBED_CORE_INCLUDE_DIR
|
|
||||||
DCUBED_WRAPPER_INCLUDE_DIR
|
|
||||||
DCUBED_WRAPPER_LIBRARIES)
|
|
||||||
|
|
||||||
if(DCUBED_FOUND)
|
|
||||||
if(_nest_targets)
|
|
||||||
get_filename_component(_moddir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
||||||
add_subdirectory("${_moddir}/nested_targets/DCubed")
|
|
||||||
endif()
|
|
||||||
set(DCUBED_INCLUDE_DIRS
|
|
||||||
"${DCUBED_CORE_INCLUDE_DIR}"
|
|
||||||
"${DCUBED_CORE_INCLUDE_DIR}/if3"
|
|
||||||
"${DCUBED_CORE_INCLUDE_DIR}/.."
|
|
||||||
"${DCUBED_WRAPPER_INCLUDE_DIR}")
|
|
||||||
mark_as_advanced(DCUBED_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(DCUBED_CORE_INCLUDE_DIR DCUBED_WRAPPER_INCLUDE_DIR)
|
|
||||||
@@ -1,180 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(DIRECTINPUT_ROOT_DIR
|
|
||||||
"${DIRECTINPUT_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for DirectX/DirectInput")
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles}" _PROG_FILES)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles(x86)}" _PROG_FILES_X86)
|
|
||||||
if(_PROG_FILES_X86)
|
|
||||||
set(_PROG_FILES "${_PROG_FILES_X86}")
|
|
||||||
endif()
|
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
||||||
set(_lib_suffixes lib/x64 lib)
|
|
||||||
else()
|
|
||||||
set(_lib_suffixes lib/x86 lib)
|
|
||||||
endif()
|
|
||||||
macro(_append_dxsdk_in_inclusive_range _low _high)
|
|
||||||
if((NOT MSVC_VERSION LESS ${_low}) AND (NOT MSVC_VERSION GREATER ${_high}))
|
|
||||||
list(APPEND DXSDK_DIRS ${ARGN})
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
_append_dxsdk_in_inclusive_range(1500 1600 "${_PROG_FILES}/Microsoft DirectX SDK (June 2010)")
|
|
||||||
_append_dxsdk_in_inclusive_range(1400 1600
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (February 2010)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2009)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (March 2009)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (November 2008)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2008)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (June 2008)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (March 2008)")
|
|
||||||
_append_dxsdk_in_inclusive_range(1310 1500
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (November 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (June 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (April 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (February 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (December 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (October 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (June 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (April 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (February 2006)")
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "$ENV{DXSDK_DIR}" ENV_DXSDK_DIR)
|
|
||||||
if(ENV_DXSDK_DIR)
|
|
||||||
list(APPEND DXSDK_DIRS ${ENV_DXSDK_DIR})
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(_lib_suffixes lib)
|
|
||||||
set(DXSDK_DIRS /mingw)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(DIRECTINPUT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
dinput.h
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${DIRECTINPUT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
|
|
||||||
find_library(DIRECTINPUT_DXGUID_LIBRARY
|
|
||||||
NAMES
|
|
||||||
dxguid
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${DIRECTINPUT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
if(DIRECTINPUT_DXGUID_LIBRARY)
|
|
||||||
get_filename_component(_dinput_lib_dir
|
|
||||||
${DIRECTINPUT_DXGUID_LIBRARY}
|
|
||||||
PATH)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(DIRECTINPUT_DINPUT_LIBRARY
|
|
||||||
NAMES
|
|
||||||
dinput8
|
|
||||||
dinput
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dinput_lib_dir}"
|
|
||||||
"${DIRECTINPUT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
find_library(DIRECTINPUT_DXERR_LIBRARY
|
|
||||||
NAMES
|
|
||||||
dxerr
|
|
||||||
dxerr9
|
|
||||||
dxerr8
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dinput_lib_dir}"
|
|
||||||
"${DIRECTINPUT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
set(DIRECTINPUT_EXTRA_CHECK)
|
|
||||||
if(DIRECTINPUT_INCLUDE_DIR)
|
|
||||||
if(MSVC80)
|
|
||||||
set(DXSDK_DEPRECATION_BUILD 1962)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(DXSDK_DEPRECATION_BUILD)
|
|
||||||
include(CheckCSourceCompiles)
|
|
||||||
set(_dinput_old_includes ${CMAKE_REQUIRED_INCLUDES})
|
|
||||||
set(CMAKE_REQUIRED_INCLUDES "${DIRECTINPUT_INCLUDE_DIR}")
|
|
||||||
check_c_source_compiles(
|
|
||||||
"
|
|
||||||
#include <dxsdkver.h>
|
|
||||||
#if _DXSDK_BUILD_MAJOR >= ${DXSDK_DEPRECATION_BUILD}
|
|
||||||
#error
|
|
||||||
#else
|
|
||||||
int main(int argc, char * argv[]) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
"
|
|
||||||
DIRECTINPUT_SDK_SUPPORTS_COMPILER)
|
|
||||||
set(DIRECTINPUT_EXTRA_CHECK DIRECTINPUT_SDK_SUPPORTS_COMPILER)
|
|
||||||
set(CMAKE_REQUIRED_INCLUDES "${_dinput_old_includes}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(DirectInput
|
|
||||||
DEFAULT_MSG
|
|
||||||
DIRECTINPUT_DINPUT_LIBRARY
|
|
||||||
DIRECTINPUT_DXGUID_LIBRARY
|
|
||||||
DIRECTINPUT_DXERR_LIBRARY
|
|
||||||
DIRECTINPUT_INCLUDE_DIR
|
|
||||||
${DIRECTINPUT_EXTRA_CHECK})
|
|
||||||
|
|
||||||
if(DIRECTINPUT_FOUND)
|
|
||||||
set(DIRECTINPUT_LIBRARIES
|
|
||||||
"${DIRECTINPUT_DXGUID_LIBRARY}"
|
|
||||||
"${DIRECTINPUT_DXERR_LIBRARY}"
|
|
||||||
"${DIRECTINPUT_DINPUT_LIBRARY}")
|
|
||||||
|
|
||||||
set(DIRECTINPUT_INCLUDE_DIRS "${DIRECTINPUT_INCLUDE_DIR}")
|
|
||||||
|
|
||||||
mark_as_advanced(DIRECTINPUT_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(DIRECTINPUT_DINPUT_LIBRARY
|
|
||||||
DIRECTINPUT_DXGUID_LIBRARY
|
|
||||||
DIRECTINPUT_DXERR_LIBRARY
|
|
||||||
DIRECTINPUT_INCLUDE_DIR)
|
|
||||||
@@ -1,126 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
# Look for one of the sample files.
|
|
||||||
|
|
||||||
find_package(WindowsSDK)
|
|
||||||
find_package(DirectX QUIET)
|
|
||||||
|
|
||||||
set(DIRECTSHOW_WINDOWSSDK_ROOT
|
|
||||||
"${DIRECTSHOW_WINDOWSSDK_ROOT}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"A specific Windows SDK to use for DirectShow.")
|
|
||||||
|
|
||||||
if(MSVC AND CMAKE_CL_64)
|
|
||||||
set(DIRECTSHOW_LIB_SUBDIR /x64)
|
|
||||||
else()
|
|
||||||
set(DIRECTSHOW_LIB_SUBDIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_acceptable_winsdk)
|
|
||||||
if(WINDOWSSDK_FOUND)
|
|
||||||
foreach(_sdkdir ${WINDOWSSDK_DIRS})
|
|
||||||
if(EXISTS "${_sdkdir}/Samples/Multimedia/DirectShow/BaseClasses/streams.h"
|
|
||||||
AND EXISTS "${_sdkdir}/Lib${DIRECTSHOW_LIB_SUBDIR}/strmiids.lib"
|
|
||||||
AND EXISTS "${_sdkdir}/Include/DShow.h")
|
|
||||||
list(APPEND _acceptable_winsdk "${_sdkdir}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(DIRECTSHOW_BASECLASS_DIR
|
|
||||||
NAMES
|
|
||||||
streams.h
|
|
||||||
HINTS
|
|
||||||
"${DIRECTSHOW_WINDOWSSDK_ROOT}"
|
|
||||||
PATHS
|
|
||||||
${_acceptable_winsdk}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"Samples/Multimedia/DirectShow/BaseClasses")
|
|
||||||
|
|
||||||
find_path(DIRECTSHOW_WINDOWSSDK_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
DShow.h
|
|
||||||
HINTS
|
|
||||||
"${DIRECTSHOW_WINDOWSSDK_ROOT}"
|
|
||||||
PATHS
|
|
||||||
${_acceptable_winsdk}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"Include")
|
|
||||||
|
|
||||||
# This one we can grab from another SDK version.
|
|
||||||
find_path(DIRECTSHOW_QEDIT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
qedit.h
|
|
||||||
HINTS
|
|
||||||
"${DIRECTSHOW_WINDOWSSDK_ROOT}"
|
|
||||||
PATHS
|
|
||||||
${WINDOWSSDK_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"Include")
|
|
||||||
|
|
||||||
find_library(DIRECTSHOW_STRMIIDS_LIBRARY
|
|
||||||
NAMES
|
|
||||||
strmiids
|
|
||||||
HINTS
|
|
||||||
"${DIRECTSHOW_WINDOWSSDK_ROOT}"
|
|
||||||
PATHS
|
|
||||||
${_acceptable_winsdk}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"Lib${DIRECTSHOW_LIB_SUBDIR}")
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(DirectShow
|
|
||||||
DEFAULT_MSG
|
|
||||||
DIRECTSHOW_BASECLASS_DIR
|
|
||||||
DIRECTSHOW_WINDOWSSDK_INCLUDE_DIR
|
|
||||||
DIRECTSHOW_QEDIT_INCLUDE_DIR
|
|
||||||
DIRECTX_INCLUDE_DIR
|
|
||||||
DIRECTX_FOUND
|
|
||||||
DIRECTSHOW_STRMIIDS_LIBRARY)
|
|
||||||
|
|
||||||
if(DIRECTSHOW_FOUND)
|
|
||||||
set(DIRECTSHOW_INCLUDE_DIRS
|
|
||||||
# Baseclass must be before SDK so it gets the correct refclock.h
|
|
||||||
"${DIRECTSHOW_BASECLASS_DIR}"
|
|
||||||
"${DIRECTSHOW_WINDOWSSDK_INCLUDE_DIR}"
|
|
||||||
"${DIRECTX_INCLUDE_DIR}"
|
|
||||||
)
|
|
||||||
if(EXISTS "${DIRECTSHOW_WINDOWSSDK_INCLUDE_DIR}/atl/atlbase.h")
|
|
||||||
list(APPEND
|
|
||||||
DIRECTSHOW_INCLUDE_DIRS
|
|
||||||
"${DIRECTSHOW_WINDOWSSDK_INCLUDE_DIR}/atl")
|
|
||||||
endif()
|
|
||||||
if(NOT "${DIRECTSHOW_QEDIT_INCLUDE_DIR}" STREQUAL "${DIRECTSHOW_WINDOWSSDK_INCLUDE_DIR}")
|
|
||||||
# QEdit include dir might be an older SDK, so put it last.
|
|
||||||
list(APPEND DIRECTSHOW_INCLUDE_DIRS "${DIRECTSHOW_QEDIT_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(DIRECTSHOW_LIBRARIES "${DIRECTSHOW_STRMIIDS_LIBRARY}")
|
|
||||||
|
|
||||||
mark_as_advanced(DIRECTSHOW_WINDOWSSDK_ROOT)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(DIRECTSHOW_BASECLASS_DIR
|
|
||||||
DIRECTSHOW_WINDOWSSDK_INCLUDE_DIR
|
|
||||||
DIRECTSHOW_QEDIT_INCLUDE_DIR
|
|
||||||
DIRECTSHOW_STRMIIDS_LIBRARY)
|
|
||||||
@@ -1,244 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(DIRECTX_ROOT_DIR
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for DirectX")
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles}" _PROG_FILES)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles(x86)}" _PROG_FILES_X86)
|
|
||||||
if(_PROG_FILES_X86)
|
|
||||||
set(_PROG_FILES "${_PROG_FILES_X86}")
|
|
||||||
endif()
|
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
||||||
set(_lib_suffixes lib/x64 lib)
|
|
||||||
else()
|
|
||||||
set(_lib_suffixes lib/x86 lib)
|
|
||||||
endif()
|
|
||||||
macro(_append_dxsdk_in_inclusive_range _low _high)
|
|
||||||
if((NOT MSVC_VERSION LESS ${_low}) AND (NOT MSVC_VERSION GREATER ${_high}))
|
|
||||||
list(APPEND DXSDK_DIRS ${ARGN})
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
_append_dxsdk_in_inclusive_range(1500 1600 "${_PROG_FILES}/Microsoft DirectX SDK (June 2010)")
|
|
||||||
_append_dxsdk_in_inclusive_range(1400 1600
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (February 2010)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2009)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (March 2009)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (November 2008)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2008)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (June 2008)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (March 2008)")
|
|
||||||
_append_dxsdk_in_inclusive_range(1310 1500
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (November 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (June 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (April 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (February 2007)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (December 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (October 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (August 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (June 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (April 2006)"
|
|
||||||
"${_PROG_FILES}/Microsoft DirectX SDK (February 2006)")
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "$ENV{DXSDK_DIR}" ENV_DXSDK_DIR)
|
|
||||||
if(ENV_DXSDK_DIR)
|
|
||||||
list(APPEND DXSDK_DIRS ${ENV_DXSDK_DIR})
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(_lib_suffixes lib)
|
|
||||||
set(DXSDK_DIRS /mingw)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(DIRECTX_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
dxdiag.h
|
|
||||||
dinput.h
|
|
||||||
dxerr8.h
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
find_path(DIRECTX_DINPUT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
dinput.h
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
|
|
||||||
find_library(DIRECTX_DXGUID_LIBRARY
|
|
||||||
NAMES
|
|
||||||
dxguid
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
if(DIRECTX_DXGUID_LIBRARY)
|
|
||||||
get_filename_component(_dxsdk_lib_dir ${DIRECTX_DXGUID_LIBRARY} PATH)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(DIRECTX_DINPUT_LIBRARY
|
|
||||||
NAMES
|
|
||||||
dinput8
|
|
||||||
dinput
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dxsdk_lib_dir}"
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
find_library(DIRECTX_DXERR_LIBRARY
|
|
||||||
NAMES
|
|
||||||
dxerr
|
|
||||||
dxerr9
|
|
||||||
dxerr8
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dxsdk_lib_dir}"
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
find_library(DIRECTX_D3D9_LIBRARY
|
|
||||||
NAMES
|
|
||||||
d3d9
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dxsdk_lib_dir}"
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
find_library(DIRECTX_D3DXOF_LIBRARY
|
|
||||||
NAMES
|
|
||||||
d3dxof
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dxsdk_lib_dir}"
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
find_library(DIRECTX_D3DX9_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
d3dx9
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dxsdk_lib_dir}"
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
find_library(DIRECTX_D3DX9_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
d3dx9d
|
|
||||||
PATHS
|
|
||||||
${DXSDK_DIRS}
|
|
||||||
HINTS
|
|
||||||
"${_dxsdk_lib_dir}"
|
|
||||||
"${DIRECTX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
select_library_configurations(DIRECTX_D3DX9)
|
|
||||||
|
|
||||||
set(DIRECTX_EXTRA_CHECK)
|
|
||||||
if(DIRECTX_INCLUDE_DIR)
|
|
||||||
if(MSVC80)
|
|
||||||
set(DXSDK_DEPRECATION_BUILD 1962)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(DXSDK_DEPRECATION_BUILD)
|
|
||||||
include(CheckCSourceCompiles)
|
|
||||||
set(_dinput_old_includes ${CMAKE_REQUIRED_INCLUDES})
|
|
||||||
set(CMAKE_REQUIRED_INCLUDES "${DIRECTX_INCLUDE_DIR}")
|
|
||||||
check_c_source_compiles("
|
|
||||||
#include <dxsdkver.h>
|
|
||||||
#if _DXSDK_BUILD_MAJOR >= ${DXSDK_DEPRECATION_BUILD}
|
|
||||||
#error
|
|
||||||
#else
|
|
||||||
int main(int argc, char * argv[]) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
"
|
|
||||||
DIRECTX_SDK_SUPPORTS_COMPILER)
|
|
||||||
set(DIRECTX_EXTRA_CHECK DIRECTX_SDK_SUPPORTS_COMPILER)
|
|
||||||
set(CMAKE_REQUIRED_INCLUDES "${_dinput_old_includes}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(DirectX
|
|
||||||
DEFAULT_MSG
|
|
||||||
DIRECTX_DXGUID_LIBRARY
|
|
||||||
DIRECTX_DINPUT_LIBRARY
|
|
||||||
DIRECTX_DXERR_LIBRARY
|
|
||||||
DIRECTX_INCLUDE_DIR
|
|
||||||
${DIRECTX_EXTRA_CHECK})
|
|
||||||
|
|
||||||
if(DIRECTX_FOUND)
|
|
||||||
set(DIRECTX_LIBRARIES
|
|
||||||
"${DIRECTX_DXGUID_LIBRARY}"
|
|
||||||
"${DIRECTX_DXERR_LIBRARY}"
|
|
||||||
"${DIRECTX_DINPUT_LIBRARY}")
|
|
||||||
|
|
||||||
set(DIRECTX_INCLUDE_DIRS "${DIRECTX_INCLUDE_DIR}")
|
|
||||||
|
|
||||||
mark_as_advanced(DIRECTX_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(DIRECTX_DINPUT_LIBRARY
|
|
||||||
DIRECTX_DXGUID_LIBRARY
|
|
||||||
DIRECTX_DXERR_LIBRARY
|
|
||||||
DIRECTX_D3D9_LIBRARY
|
|
||||||
DIRECTX_D3DXOF_LIBRARY
|
|
||||||
DIRECTX_D3DX9_LIBRARY_RELEASE
|
|
||||||
DIRECTX_D3DX9_LIBRARY_DEBUG
|
|
||||||
DIRECTX_INCLUDE_DIR)
|
|
||||||
@@ -1,151 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
###
|
|
||||||
# Flagpoll detection
|
|
||||||
###
|
|
||||||
set(Flagpoll_FIND_QUIETLY true)
|
|
||||||
find_program(FLAGPOLL
|
|
||||||
NAMES
|
|
||||||
flagpoll
|
|
||||||
flagpoll.exe
|
|
||||||
PATHS
|
|
||||||
"${FLAGPOLL_ROOT_DIR}"
|
|
||||||
"${VRJUGGLER22_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
bin)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Flagpoll DEFAULT_MSG FLAGPOLL)
|
|
||||||
|
|
||||||
mark_as_advanced(FLAGPOLL)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Macro for internal use - shared workings between all the public macros below.
|
|
||||||
###
|
|
||||||
macro(_flagpoll_get_results _package _arg _flag _output)
|
|
||||||
if(FLAGPOLL)
|
|
||||||
|
|
||||||
# If the CMakeLists that called the flagpoll macro passed NO_DEPS,
|
|
||||||
# we won't return the results for dependencies
|
|
||||||
if("${ARGN}" MATCHES "NO_DEPS")
|
|
||||||
set(_FLAGPOLL_NODEP "--no-deps")
|
|
||||||
else()
|
|
||||||
set(_FLAGPOLL_NODEP "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Run flagpoll
|
|
||||||
execute_process(COMMAND
|
|
||||||
${FLAGPOLL}
|
|
||||||
${_package}
|
|
||||||
${_arg}
|
|
||||||
${_FLAGPOLL_NODEP}
|
|
||||||
OUTPUT_VARIABLE
|
|
||||||
_FLAGPOLL_OUTPUT
|
|
||||||
ERROR_QUIET
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
|
|
||||||
if(_FLAGPOLL_OUTPUT)
|
|
||||||
# Remove -I and /I(or equivalent for other flags
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"[-/]${_flag}"
|
|
||||||
""
|
|
||||||
_FLAGPOLL_OUTPUT
|
|
||||||
${_FLAGPOLL_OUTPUT})
|
|
||||||
|
|
||||||
# Remove extra spaces
|
|
||||||
string(REGEX REPLACE " +" " " _FLAGPOLL_OUTPUT ${_FLAGPOLL_OUTPUT})
|
|
||||||
|
|
||||||
# Make a CMake list, standardize paths, and append only what we want to our final list
|
|
||||||
separate_arguments(_FLAGPOLL_OUTPUT)
|
|
||||||
foreach(_RESULT ${_FLAGPOLL_OUTPUT})
|
|
||||||
string(REGEX MATCH "^-" _BAD ${_RESULT})
|
|
||||||
if(_RESULT AND NOT _BAD)
|
|
||||||
file(TO_CMAKE_PATH "${_RESULT}" _RESULT_CLEAN)
|
|
||||||
list(APPEND ${_output} ${_RESULT_CLEAN})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
###
|
|
||||||
# "Public" macros - to use flagpoll to give you HINTS directories when finding things
|
|
||||||
###
|
|
||||||
macro(flagpoll_get_include_dirs _package)
|
|
||||||
# Passing ARGN along so if they specified NO_DEPS we actually do it.
|
|
||||||
_flagpoll_get_results(${_package}
|
|
||||||
"--cflags-only-I"
|
|
||||||
I
|
|
||||||
${_package}_FLAGPOLL_INCLUDE_DIRS
|
|
||||||
${ARGN})
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(flagpoll_get_library_dirs _package)
|
|
||||||
# Passing ARGN along so if they specified NO_DEPS we actually do it.
|
|
||||||
_flagpoll_get_results(${_package}
|
|
||||||
"--libs-only-L"
|
|
||||||
L
|
|
||||||
${_package}_FLAGPOLL_LIBRARY_DIRS
|
|
||||||
${ARGN})
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(flagpoll_get_library_names _package)
|
|
||||||
# Passing ARGN along so if they specified NO_DEPS we actually do it.
|
|
||||||
_flagpoll_get_results(${_package}
|
|
||||||
"--libs-only-l"
|
|
||||||
l
|
|
||||||
${_package}_FLAGPOLL_LIBRARY_NAMES
|
|
||||||
${ARGN})
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(flagpoll_get_extra_libs _package)
|
|
||||||
# Passing ARGN along so if they specified NO_DEPS we actually do it.
|
|
||||||
_flagpoll_get_results(${_package}
|
|
||||||
"--get-extra-libs"
|
|
||||||
l
|
|
||||||
${_package}_FLAGPOLL_EXTRA_LIBS
|
|
||||||
${ARGN})
|
|
||||||
endmacro()
|
|
||||||
@@ -1,74 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(GDB_ROOT_DIR
|
|
||||||
"${GDB_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to start our search in")
|
|
||||||
|
|
||||||
find_program(GDB_COMMAND
|
|
||||||
NAMES
|
|
||||||
gdb
|
|
||||||
HINTS
|
|
||||||
"${GDB_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
bin
|
|
||||||
libexec)
|
|
||||||
|
|
||||||
if(GDB_COMMAND)
|
|
||||||
execute_process(COMMAND
|
|
||||||
gdb
|
|
||||||
--version
|
|
||||||
COMMAND
|
|
||||||
head
|
|
||||||
-n
|
|
||||||
1
|
|
||||||
OUTPUT_VARIABLE
|
|
||||||
GDB_VERSION
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"[^0-9]*([0-9]+[0-9.]*).*"
|
|
||||||
"\\1"
|
|
||||||
GDB_VERSION
|
|
||||||
"${GDB_VERSION}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GDB
|
|
||||||
DEFAULT_MSG
|
|
||||||
GDB_COMMAND
|
|
||||||
GDB_VERSION)
|
|
||||||
|
|
||||||
if(GDB_FOUND)
|
|
||||||
mark_as_advanced(GDB_ROOT_DIR)
|
|
||||||
if(GDB_VERSION VERSION_LESS 6.4)
|
|
||||||
set(GDB_HAS_RETURN_CHILD_RESULT FALSE)
|
|
||||||
else()
|
|
||||||
set(GDB_HAS_RETURN_CHILD_RESULT TRUE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GDB_COMMAND)
|
|
||||||
@@ -1,90 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(GHOST_ROOT_DIR
|
|
||||||
"${GHOST_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for GHOST")
|
|
||||||
|
|
||||||
set(_dirs)
|
|
||||||
if(WIN32)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
program_files_fallback_glob(_dirs "/Sensable/GHOST/v*/")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(GHOST_INCLUDE_DIR
|
|
||||||
gstPHANToM.h
|
|
||||||
PATHS
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${GHOST_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
|
|
||||||
find_library(GHOST_LIBRARY
|
|
||||||
GHOST40
|
|
||||||
GHOST31
|
|
||||||
PATHS
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${GHOST_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib)
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
if(MSVC_VERSION GREATER 1300)
|
|
||||||
# .NET and newer: fake the STL headers
|
|
||||||
get_filename_component(_moddir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
||||||
set(GHOST_STL_INCLUDE_DIR "${_moddir}/ghost-fake-stl")
|
|
||||||
else()
|
|
||||||
# 6.0 and earlier - use GHOST-provided STL
|
|
||||||
find_path(GHOST_STL_INCLUDE_DIR
|
|
||||||
vector.h
|
|
||||||
PATHS
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${GHOST_ROOT_DIR}"
|
|
||||||
"${GHOST_INCLUDE_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
external/stl
|
|
||||||
stl)
|
|
||||||
endif()
|
|
||||||
set(_deps_check GHOST_STL_INCLUDE_DIR)
|
|
||||||
else()
|
|
||||||
set(_deps_check)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GHOST
|
|
||||||
DEFAULT_MSG
|
|
||||||
GHOST_LIBRARY
|
|
||||||
${_deps_check}
|
|
||||||
GHOST_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(GHOST_FOUND)
|
|
||||||
set(GHOST_LIBRARIES "${GHOST_LIBRARY}")
|
|
||||||
set(GHOST_INCLUDE_DIRS "${GHOST_INCLUDE_DIR}")
|
|
||||||
|
|
||||||
mark_as_advanced(GHOST_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GHOST_LIBRARY GHOST_STL_INCLUDE_DIR GHOST_INCLUDE_DIR)
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(GLUI_FIND_QUIETLY)
|
|
||||||
find_package(OpenGL QUIET)
|
|
||||||
find_package(GLUT QUIET)
|
|
||||||
else()
|
|
||||||
find_package(OpenGL)
|
|
||||||
find_package(GLUT)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(OPENGL_FOUND AND GLUT_FOUND)
|
|
||||||
if(WIN32)
|
|
||||||
find_path(GLUI_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
GL/glui.h
|
|
||||||
PATHS
|
|
||||||
${GLUI_ROOT_PATH}/include
|
|
||||||
DOC
|
|
||||||
"GLUI include directory")
|
|
||||||
find_library(GLUI_LIBRARY
|
|
||||||
NAMES
|
|
||||||
glui
|
|
||||||
${GLUI_ROOT_DIR}/lib
|
|
||||||
${GLUI_ROOT_DIR}/Release
|
|
||||||
HINTS
|
|
||||||
${OPENGL_LIBRARY_DIR}
|
|
||||||
${OPENGL_INCLUDE_DIR}/../lib
|
|
||||||
DOC
|
|
||||||
"GLUI library")
|
|
||||||
find_library(GLUI_DEBUG_LIBRARY
|
|
||||||
NAMES
|
|
||||||
glui32
|
|
||||||
${GLUI_ROOT_DIR}/lib
|
|
||||||
${GLUI_ROOT_DIR}/Debug
|
|
||||||
HINTS
|
|
||||||
${OPENGL_LIBRARY_DIR}
|
|
||||||
${OPENGL_INCLUDE_DIR}/../lib
|
|
||||||
DOC
|
|
||||||
"GLUI debug library")
|
|
||||||
else()
|
|
||||||
find_library(GLUI_LIBRARY
|
|
||||||
NAMES
|
|
||||||
GLUI
|
|
||||||
glui
|
|
||||||
PATHS
|
|
||||||
${GLUI_ROOT_DIR}/lib64
|
|
||||||
${GLUI_ROOT_DIR}/lib
|
|
||||||
${GLUI_ROOT_DIR}
|
|
||||||
/usr/openwin/lib
|
|
||||||
HINTS
|
|
||||||
${OPENGL_LIBRARY_DIR}
|
|
||||||
${OPENGL_INCLUDE_DIR}/../lib64
|
|
||||||
${OPENGL_INCLUDE_DIR}/../lib
|
|
||||||
DOC
|
|
||||||
"GLUI library")
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
find_path(GLUI_INCLUDE_DIR
|
|
||||||
GLUI/glui.h
|
|
||||||
HINTS
|
|
||||||
${OPENGL_INCLUDE_DIR}
|
|
||||||
DOC
|
|
||||||
"GLUI include directory")
|
|
||||||
else()
|
|
||||||
find_path(GLUI_INCLUDE_DIR
|
|
||||||
GL/glui.h
|
|
||||||
PATHS
|
|
||||||
${GLUI_ROOT_DIR}/include
|
|
||||||
/usr/include/GL
|
|
||||||
/usr/openwin/share/include
|
|
||||||
/usr/openwin/include
|
|
||||||
/opt/graphics/OpenGL/include
|
|
||||||
/opt/graphics/OpenGL/contrib/libglui
|
|
||||||
DOC
|
|
||||||
"GLUI include directory")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GLUI
|
|
||||||
DEFAULT_MSG
|
|
||||||
GLUI_INCLUDE_DIR
|
|
||||||
GLUI_LIBRARY
|
|
||||||
GLUT_FOUND
|
|
||||||
OPENGL_FOUND)
|
|
||||||
|
|
||||||
if(GLUI_FOUND)
|
|
||||||
if(WIN32 AND GLUI_LIBRARY AND GLUI_DEBUG_LIBRARY)
|
|
||||||
set(GLUI_LIBRARIES
|
|
||||||
optimized
|
|
||||||
${GLUI_LIBRARY}
|
|
||||||
debug
|
|
||||||
${GLUI_DEBUG_LIBRARY}
|
|
||||||
${GLUT_LIBRARIES}
|
|
||||||
${OPENGL_LIBRARIES})
|
|
||||||
else()
|
|
||||||
set(GLUI_LIBRARIES
|
|
||||||
${GLUI_LIBRARY}
|
|
||||||
${GLUT_LIBRARIES}
|
|
||||||
${OPENGL_LIBRARIES})
|
|
||||||
endif()
|
|
||||||
set(GLUI_INCLUDE_DIRS
|
|
||||||
${GLUI_INCLUDE_DIR}
|
|
||||||
${GLUT_INCLUDE_DIR}
|
|
||||||
${OPENGL_INCLUDE_DIR})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(GLUI_LIBRARY AND GLUI_INCLUDE_DIR)
|
|
||||||
mark_as_advanced(GLUI_INCLUDE_DIR GLUI_LIBRARY GLUI_DEBUG_LIBRARY)
|
|
||||||
endif()
|
|
||||||
@@ -1,132 +0,0 @@
|
|||||||
# - 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.
|
|
||||||
|
|
||||||
#=============================================================================
|
|
||||||
# Copyright 2001-2009 Kitware, Inc.
|
|
||||||
# Copyright 2009-2010 Iowa State University
|
|
||||||
# (Author: Ryan Pavlik <abiryan@ryand.net> )
|
|
||||||
#
|
|
||||||
# Distributed under the OSI-approved BSD License (the "License");
|
|
||||||
# see below.
|
|
||||||
#
|
|
||||||
# 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.
|
|
||||||
#=============================================================================
|
|
||||||
#
|
|
||||||
# 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.
|
|
||||||
#=============================================================================
|
|
||||||
|
|
||||||
if(GLUT_FIND_QUIETLY)
|
|
||||||
find_package(OpenGL QUIET)
|
|
||||||
else()
|
|
||||||
find_package(OpenGL)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(OPENGL_FOUND)
|
|
||||||
get_filename_component(_ogl_libdir ${OPENGL_gl_LIBRARY} PATH)
|
|
||||||
find_path(GLUT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
GL/glut.h
|
|
||||||
GLUT/glut.h
|
|
||||||
glut.h
|
|
||||||
PATHS
|
|
||||||
${_ogl_libdir}/../include
|
|
||||||
${GLUT_ROOT_PATH}
|
|
||||||
${GLUT_ROOT_PATH}/include
|
|
||||||
/usr/include/GL
|
|
||||||
/usr/openwin/share/include
|
|
||||||
/usr/openwin/include
|
|
||||||
/opt/graphics/OpenGL/include
|
|
||||||
/opt/graphics/OpenGL/contrib/libglut)
|
|
||||||
|
|
||||||
find_library(GLUT_glut_LIBRARY
|
|
||||||
NAMES
|
|
||||||
glut
|
|
||||||
glut32
|
|
||||||
GLUT
|
|
||||||
freeglut
|
|
||||||
PATHS
|
|
||||||
${_ogl_libdir}
|
|
||||||
${GLUT_ROOT_PATH}
|
|
||||||
${GLUT_ROOT_PATH}/Release
|
|
||||||
/usr/openwin/lib)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GLUT
|
|
||||||
DEFAULT_MSG
|
|
||||||
GLUT_glut_LIBRARY
|
|
||||||
GLUT_INCLUDE_DIR
|
|
||||||
OPENGL_FOUND)
|
|
||||||
|
|
||||||
if(GLUT_FOUND)
|
|
||||||
set(GLUT_LIBRARIES ${GLUT_glut_LIBRARY} ${OPENGL_LIBRARIES})
|
|
||||||
set(GLUT_INCLUDE_DIRS ${GLUT_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR})
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
get_filename_component(_basename "${GLUT_glut_LIBRARY}" NAME_WE)
|
|
||||||
get_filename_component(_libpath "${GLUT_glut_LIBRARY}" PATH)
|
|
||||||
find_path(GLUT_RUNTIME_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_basename}.dll
|
|
||||||
glut.dll
|
|
||||||
glut32.dll
|
|
||||||
freeglut.dll
|
|
||||||
HINTS
|
|
||||||
${_libpath}
|
|
||||||
${_libpath}/../bin)
|
|
||||||
if(GLUT_RUNTIME_LIBRARY)
|
|
||||||
get_filename_component(GLUT_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${GLUT_RUNTIME_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
else()
|
|
||||||
set(GLUT_RUNTIME_LIBRARY_DIRS)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
#The following deprecated settings are for backwards compatibility with CMake1.4
|
|
||||||
set(GLUT_LIBRARY ${GLUT_LIBRARIES})
|
|
||||||
set(GLUT_INCLUDE_PATH ${GLUT_INCLUDE_DIR})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GLUT_INCLUDE_DIR
|
|
||||||
GLUT_glut_LIBRARY
|
|
||||||
GLUT_RUNTIME_LIBRARY)
|
|
||||||
@@ -1,111 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(_HUMAN "GMTL")
|
|
||||||
set(_HEADER gmtl/gmtl.h)
|
|
||||||
set(_FP_PKG_NAME gmtl)
|
|
||||||
|
|
||||||
include(CheckVersion)
|
|
||||||
|
|
||||||
set(GMTL_VERSIONS
|
|
||||||
${GMTL_ADDITIONAL_VERSIONS}
|
|
||||||
0.7.0
|
|
||||||
0.6.2
|
|
||||||
0.6.1
|
|
||||||
0.6.0
|
|
||||||
0.5.4
|
|
||||||
0.5.3
|
|
||||||
0.5.2
|
|
||||||
0.5.1)
|
|
||||||
set(GMTL_DIRS)
|
|
||||||
foreach(_version ${GMTL_VERSIONS})
|
|
||||||
check_version(_ver_ok GMTL ${_version})
|
|
||||||
if(_ver_ok)
|
|
||||||
list(APPEND GMTL_DIRS gmtl-${_version})
|
|
||||||
list(APPEND GMTL_HEADER_DIRS include/gmtl-${_version})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(GMTL_ROOT_DIR
|
|
||||||
"${GMTL_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for GMTL")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(GMTL_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT GMTL_ROOT_DIR)
|
|
||||||
set(GMTL_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${GMTL_ROOT_DIR}")
|
|
||||||
|
|
||||||
# Include dir
|
|
||||||
find_path(GMTL_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATHS
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${GMTL_DIRS}
|
|
||||||
${GMTL_HEADER_DIRS}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"GMTL include path")
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GMTL DEFAULT_MSG GMTL_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(GMTL_FOUND)
|
|
||||||
set(GMTL_INCLUDE_DIRS "${GMTL_INCLUDE_DIR}")
|
|
||||||
mark_as_advanced(GMTL_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GMTL_INCLUDE_DIR)
|
|
||||||
@@ -1,43 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
find_library(GPM_LIBRARY
|
|
||||||
NAMES gpm)
|
|
||||||
|
|
||||||
find_path(GPM_INCLUDE_DIR
|
|
||||||
NAMES gpm.h)
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GPM
|
|
||||||
DEFAULT_MSG
|
|
||||||
GPM_LIBRARY
|
|
||||||
GPM_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(GPM_FOUND)
|
|
||||||
set(GPM_LIBRARIES "${GPM_LIBRARY}")
|
|
||||||
|
|
||||||
set(GPM_INCLUDE_DIRS "${GPM_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GPM_INCLUDE_DIR GPM_LIBRARY)
|
|
||||||
@@ -1,186 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(_HUMAN "Gadgeteer 1.2")
|
|
||||||
set(_RELEASE_NAMES gadget-1_2 libgadget-1_2)
|
|
||||||
set(_DEBUG_NAMES gadget_d-1_2 libgadget_d-1_2)
|
|
||||||
set(_DIR gadgeteer-1.2)
|
|
||||||
set(_HEADER gadget/gadgetConfig.h)
|
|
||||||
set(_FP_PKG_NAME gadgeteer)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(Gadgeteer12_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_extra_libs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(GADGETEER12_ROOT_DIR
|
|
||||||
"${GADGETEER12_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for Gadgeteer")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(GADGETEER12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT GADGETEER12_ROOT_DIR)
|
|
||||||
set(GADGETEER12_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${GADGETEER12_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(GADGETEER12_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(GADGETEER12_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(GADGETEER12_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(GADGETEER12)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
foreach(package JCCL12 VPR20 GMTL)
|
|
||||||
if(NOT ${PACKAGE}_FOUND)
|
|
||||||
find_package(${package} ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
# We need X11 if not on Mac or Windows
|
|
||||||
if(NOT X11_FOUND)
|
|
||||||
find_package(X11 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_CHECK_EXTRAS
|
|
||||||
X11_FOUND
|
|
||||||
X11_X11_LIB
|
|
||||||
X11_ICE_LIB
|
|
||||||
X11_SM_LIB
|
|
||||||
X11_INCLUDE_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Gadgeteer12
|
|
||||||
DEFAULT_MSG
|
|
||||||
GADGETEER12_LIBRARY
|
|
||||||
GADGETEER12_INCLUDE_DIR
|
|
||||||
JCCL12_FOUND
|
|
||||||
JCCL12_LIBRARIES
|
|
||||||
JCCL12_INCLUDE_DIR
|
|
||||||
VPR20_FOUND
|
|
||||||
VPR20_LIBRARIES
|
|
||||||
VPR20_INCLUDE_DIR
|
|
||||||
GMTL_FOUND
|
|
||||||
GMTL_INCLUDE_DIR
|
|
||||||
${_CHECK_EXTRAS})
|
|
||||||
|
|
||||||
if(GADGETEER12_FOUND)
|
|
||||||
set(_DEPS ${JCCL12_LIBRARIES} ${VPR20_LIBRARIES})
|
|
||||||
|
|
||||||
set(GADGETEER12_INCLUDE_DIRS ${GADGETEER12_INCLUDE_DIR})
|
|
||||||
list(APPEND
|
|
||||||
GADGETEER12_INCLUDE_DIRS
|
|
||||||
${JCCL12_INCLUDE_DIRS}
|
|
||||||
${VPR20_INCLUDE_DIRS}
|
|
||||||
${GMTL_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
# We need X11 if not on Mac or Windows
|
|
||||||
list(APPEND _DEPS ${X11_X11_LIB} ${X11_ICE_LIB} ${X11_SM_LIB})
|
|
||||||
list(APPEND GADGETEER12_INCLUDE_DIRS ${X11_INCLUDE_DIR})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
clean_directory_list(GADGETEER12_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER22_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(GADGETEER12 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(GADGETEER12_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GADGETEER12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GADGETEER12_LIBRARY_RELEASE
|
|
||||||
GADGETEER12_LIBRARY_DEBUG
|
|
||||||
GADGETEER12_INCLUDE_DIR)
|
|
||||||
@@ -1,187 +0,0 @@
|
|||||||
# - 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>
|
|
||||||
|
|
||||||
set(_HUMAN "Gadgeteer 2.0")
|
|
||||||
set(_FP_PKG_NAME gadgeteer)
|
|
||||||
set(_RELEASE_NAMES)
|
|
||||||
set(_DEBUG_NAMES)
|
|
||||||
foreach(VER 2_0 2_0_0 2_0_1 2_0_2)
|
|
||||||
list(APPEND _RELEASE_NAMES gadget-${VER})
|
|
||||||
list(APPEND _DEBUG_NAMES gadget_d-${VER})
|
|
||||||
endforeach()
|
|
||||||
set(_DIR gadgeteer-2.0)
|
|
||||||
set(_HEADER gadget/gadgetConfig.h)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(GADGETEER20_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_extra_libs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(GADGETEER20_ROOT_DIR
|
|
||||||
"${GADGETEER20_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for Gadgeteer")
|
|
||||||
if(DEFINED VRJUGGLER30_ROOT_DIR)
|
|
||||||
mark_as_advanced(GADGETEER20_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT GADGETEER20_ROOT_DIR)
|
|
||||||
set(GADGETEER20_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${GADGETEER20_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(GADGETEER20_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(GADGETEER20_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(GADGETEER20_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(GADGETEER20)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
foreach(package JCCL14 VPR22 GMTL)
|
|
||||||
if(NOT ${PACKAGE}_FOUND)
|
|
||||||
find_package(${package} ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
# We need X11 if not on Mac or Windows
|
|
||||||
if(NOT X11_FOUND)
|
|
||||||
find_package(X11 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_CHECK_EXTRAS
|
|
||||||
X11_FOUND
|
|
||||||
X11_X11_LIB
|
|
||||||
X11_ICE_LIB
|
|
||||||
X11_SM_LIB
|
|
||||||
X11_INCLUDE_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GADGETEER20
|
|
||||||
DEFAULT_MSG
|
|
||||||
GADGETEER20_LIBRARY
|
|
||||||
GADGETEER20_INCLUDE_DIR
|
|
||||||
JCCL14_FOUND
|
|
||||||
JCCL14_LIBRARIES
|
|
||||||
JCCL14_INCLUDE_DIR
|
|
||||||
VPR22_FOUND
|
|
||||||
VPR22_LIBRARIES
|
|
||||||
VPR22_INCLUDE_DIR
|
|
||||||
GMTL_FOUND
|
|
||||||
GMTL_INCLUDE_DIR
|
|
||||||
${_CHECK_EXTRAS})
|
|
||||||
|
|
||||||
if(GADGETEER20_FOUND)
|
|
||||||
set(_DEPS ${JCCL14_LIBRARIES} ${VPR22_LIBRARIES})
|
|
||||||
|
|
||||||
set(GADGETEER20_INCLUDE_DIRS ${GADGETEER20_INCLUDE_DIR})
|
|
||||||
list(APPEND
|
|
||||||
GADGETEER20_INCLUDE_DIRS
|
|
||||||
${JCCL14_INCLUDE_DIRS}
|
|
||||||
${VPR22_INCLUDE_DIRS}
|
|
||||||
${GMTL_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
# We need X11 if not on Mac or Windows
|
|
||||||
list(APPEND _DEPS ${X11_X11_LIB} ${X11_ICE_LIB} ${X11_SM_LIB})
|
|
||||||
list(APPEND GADGETEER20_INCLUDE_DIRS ${X11_INCLUDE_DIR})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
clean_directory_list(GADGETEER20_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER30_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(GADGETEER20 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(GADGETEER20_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GADGETEER20_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(GADGETEER20_LIBRARY_RELEASE
|
|
||||||
GADGETEER20_LIBRARY_DEBUG
|
|
||||||
GADGETEER20_INCLUDE_DIR)
|
|
||||||
@@ -1,203 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(GLOVE5DT_ROOT_DIR
|
|
||||||
"${GLOVE5DT_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for Glove5DT SDK")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure Glove5DT
|
|
||||||
###
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(ListCombinations)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
# Data Glove 5 and 16 use these directories for includes, lib, and runtime
|
|
||||||
program_files_glob(_dirs516 "/5DT/*/Driver")
|
|
||||||
set(_dirs516
|
|
||||||
"${GLOVE5DT_ROOT_DIR}/Driver"
|
|
||||||
"${GLOVE5DT_ROOT_DIR}"
|
|
||||||
${_dirs516})
|
|
||||||
|
|
||||||
# Data Glove Ultra uses this directory as the base for a dll, inc, and lib directory
|
|
||||||
program_files_glob(_dirsultra "/5DT/*/SDK")
|
|
||||||
|
|
||||||
list_combinations(_libsearchultra
|
|
||||||
PREFIXES
|
|
||||||
"${GLOVE5DT_ROOT_DIR}"
|
|
||||||
"${_dirsultra}"
|
|
||||||
SUFFIXES
|
|
||||||
"/lib")
|
|
||||||
list_combinations(_incsearchultra
|
|
||||||
PREFIXES
|
|
||||||
"${GLOVE5DT_ROOT_DIR}"
|
|
||||||
"${_dirsultra}"
|
|
||||||
SUFFIXES
|
|
||||||
"/inc")
|
|
||||||
list_combinations(_dllsearchultra
|
|
||||||
PREFIXES
|
|
||||||
"${GLOVE5DT_ROOT_DIR}"
|
|
||||||
"${_dirsultra}"
|
|
||||||
SUFFIXES
|
|
||||||
"/dll")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
###
|
|
||||||
# First search for the Ultra (2.0) SDK
|
|
||||||
###
|
|
||||||
find_path(GLOVE5DT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
fglove.h
|
|
||||||
HINTS
|
|
||||||
${_incsearchultra}
|
|
||||||
${GLOVE5DT_ROOT_DIR})
|
|
||||||
|
|
||||||
find_library(GLOVE5DT_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
fglove
|
|
||||||
HINTS
|
|
||||||
${_libsearchultra}
|
|
||||||
${GLOVE5DT_ROOT_DIR})
|
|
||||||
|
|
||||||
find_library(GLOVE5DT_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
fgloved
|
|
||||||
HINTS
|
|
||||||
${_libsearchultra}
|
|
||||||
${GLOVE5DT_ROOT_DIR})
|
|
||||||
|
|
||||||
|
|
||||||
select_library_configurations(GLOVE5DT)
|
|
||||||
# As a post condition, either both LIBRARY_RELEASE and LIBRARY_DEBUG are set, or
|
|
||||||
# neither is.
|
|
||||||
|
|
||||||
|
|
||||||
###
|
|
||||||
# Ultra (2.0) SDK Runtime Libraries
|
|
||||||
###
|
|
||||||
if(WIN32)
|
|
||||||
find_file(GLOVE5DT_RUNTIME_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
fglove.dll
|
|
||||||
HINTS
|
|
||||||
${_dllsearchultra})
|
|
||||||
|
|
||||||
find_file(GLOVE5DT_RUNTIME_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
fgloved.dll
|
|
||||||
HINTS
|
|
||||||
${_dllsearchultra})
|
|
||||||
else()
|
|
||||||
# the library is the runtime library
|
|
||||||
set(GLOVE5DT_RUNTIME_LIBRARY_RELEASE "${GLOVE5DT_LIBRARY_RELEASE}")
|
|
||||||
set(GLOVE5DT_RUNTIME_LIBRARY_DEBUG "${GLOVE5DT_LIBRARY_DEBUG}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
select_library_configurations(GLOVE5DT_RUNTIME)
|
|
||||||
|
|
||||||
|
|
||||||
###
|
|
||||||
# Fallback to the 5/16 (1.0) SDK
|
|
||||||
###
|
|
||||||
find_path(GLOVE5DT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
fglove.h
|
|
||||||
HINTS
|
|
||||||
${_dirs516})
|
|
||||||
|
|
||||||
find_library(GLOVE5DT_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
fglove
|
|
||||||
HINTS
|
|
||||||
${_dirs516})
|
|
||||||
|
|
||||||
select_library_configurations(GLOVE5DT)
|
|
||||||
|
|
||||||
###
|
|
||||||
# 5/16 (1.0) SDK Runtime Libraries
|
|
||||||
###
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
find_file(GLOVE5DT_RUNTIME_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
fglove.dll
|
|
||||||
HINTS
|
|
||||||
${_dirs516})
|
|
||||||
else()
|
|
||||||
# the library is the runtime library
|
|
||||||
set(GLOVE5DT_RUNTIME_LIBRARY_RELEASE "${GLOVE5DT_LIBRARY_RELEASE}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
select_library_configurations(GLOVE5DT_RUNTIME)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Glove5DT
|
|
||||||
DEFAULT_MSG
|
|
||||||
GLOVE5DT_LIBRARY_RELEASE
|
|
||||||
GLOVE5DT_RUNTIME_LIBRARY_RELEASE
|
|
||||||
GLOVE5DT_INCLUDE_DIR)
|
|
||||||
|
|
||||||
|
|
||||||
if(GLOVE5DT_FOUND)
|
|
||||||
set(GLOVE5DT_RUNTIME_LIBRARY_DIRS)
|
|
||||||
foreach(_lib
|
|
||||||
GLOVE5DT_RUNTIME_LIBRARY_RELEASE
|
|
||||||
GLOVE5DT_RUNTIME_LIBRARY_DEBUG)
|
|
||||||
if(${_lib})
|
|
||||||
get_filename_component(_libdir ${${_lib}} PATH)
|
|
||||||
list(APPEND GLOVE5DT_RUNTIME_LIBRARY_DIRS "${_libdir}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
clean_directory_list(GLOVE5DT_RUNTIME_LIBRARY_DIRS)
|
|
||||||
set(GLOVE5DT_INCLUDE_DIRS "${GLOVE5DT_INCLUDE_DIR}")
|
|
||||||
set(GLOVE5DT_LIBRARIES ${GLOVE5DT_LIBRARY})
|
|
||||||
mark_as_advanced(GLOVE5DT_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
mark_as_advanced(GLOVE5DT_INCLUDE_DIR
|
|
||||||
GLOVE5DT_LIBRARY_RELEASE
|
|
||||||
GLOVE5DT_LIBRARY_DEBUG
|
|
||||||
GLOVE5DT_RUNTIME_LIBRARY_RELEASE
|
|
||||||
GLOVE5DT_RUNTIME_LIBRARY_DEBUG)
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
find_library(HIDAPI_LIBRARY
|
|
||||||
NAMES hidapi)
|
|
||||||
|
|
||||||
find_path(HIDAPI_INCLUDE_DIR
|
|
||||||
NAMES hidapi.h)
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(HIDAPI
|
|
||||||
DEFAULT_MSG
|
|
||||||
HIDAPI_LIBRARY
|
|
||||||
HIDAPI_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(HIDAPI_FOUND)
|
|
||||||
set(HIDAPI_LIBRARIES "${HIDAPI_LIBRARY}")
|
|
||||||
|
|
||||||
set(HIDAPI_INCLUDE_DIRS "${HIDAPI_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(HIDAPI_INCLUDE_DIR HIDAPI_LIBRARY)
|
|
||||||
@@ -1,92 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(NOT JAVA_FOUND)
|
|
||||||
find_package(Java QUIET)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(JAVA_FOUND)
|
|
||||||
get_filename_component(JAVA_BIN_DIR "${Java_JAVAC_EXECUTABLE}" PATH)
|
|
||||||
find_program(Java_IDLJ_COMMAND
|
|
||||||
idlj
|
|
||||||
HINTS
|
|
||||||
${JAVA_BIN_DIR}
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(IDLJ
|
|
||||||
DEFAULT_MSG
|
|
||||||
Java_IDLJ_COMMAND
|
|
||||||
JAVA_FOUND)
|
|
||||||
|
|
||||||
if(IDLJ_FOUND)
|
|
||||||
function(java_idlj _varname _idlfile)
|
|
||||||
# Get some unique value we can use in a directory name
|
|
||||||
# TODO would be better to somehow munge the full path relative to CMAKE_CURRENT_SOURCE_DIR
|
|
||||||
# in case somebody has multiple idl files with the same name
|
|
||||||
get_filename_component(_idl_name "${_idlfile}" NAME_WE)
|
|
||||||
get_filename_component(_idl_abs "${_idlfile}" ABSOLUTE)
|
|
||||||
|
|
||||||
# Compute directory name and stamp filename
|
|
||||||
set(outdir "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/idlj/${_idl_name}.dir")
|
|
||||||
set(stampfile "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/idlj/${_idl_name}.stamp")
|
|
||||||
|
|
||||||
# Force re-cmake if idl file changes
|
|
||||||
configure_file("${_idl_abs}" "${stampfile}" COPY_ONLY)
|
|
||||||
|
|
||||||
if((NOT EXISTS "${outdir}") OR ("${_idl_abs}" IS_NEWER_THAN "${outdir}"))
|
|
||||||
file(REMOVE_RECURSE "${outdir}")
|
|
||||||
message(STATUS "Processing ${_idlfile} with Java's idlj")
|
|
||||||
execute_process(COMMAND
|
|
||||||
"${Java_IDLJ_COMMAND}" -fclient -fallTIE -td "${outdir}" ${ARGN} "${_idlfile}"
|
|
||||||
WORKING_DIRECTORY
|
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}")
|
|
||||||
endif()
|
|
||||||
file(GLOB_RECURSE _idl_output "${outdir}/*")
|
|
||||||
|
|
||||||
set(${_varname} ${_idl_output} PARENT_SCOPE)
|
|
||||||
|
|
||||||
# Clean up after ourselves on make clean
|
|
||||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${outdir}" "${stampfile}")
|
|
||||||
endfunction()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(Java_IDLJ_COMMAND)
|
|
||||||
@@ -1,152 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "JCCL 1.2")
|
|
||||||
set(_RELEASE_NAMES jccl-1_2 libjccl-1_2)
|
|
||||||
set(_DEBUG_NAMES jccl_d-1_2 libjccl_d-1_2)
|
|
||||||
set(_DIR jccl-1.2)
|
|
||||||
set(_HEADER jccl/jcclConfig.h)
|
|
||||||
set(_FP_PKG_NAME jccl)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(JCCL12_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(JCCL12_ROOT_DIR
|
|
||||||
"${JCCL12_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for JCCL")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(JCCL12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT JCCL12_ROOT_DIR)
|
|
||||||
set(JCCL12_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR ${JCCL12_ROOT_DIR})
|
|
||||||
|
|
||||||
find_path(JCCL12_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(JCCL12_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(JCCL12_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(JCCL12)
|
|
||||||
|
|
||||||
# Dependency
|
|
||||||
if(NOT VPR20_FOUND)
|
|
||||||
find_package(VPR20 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(JCCL12
|
|
||||||
DEFAULT_MSG
|
|
||||||
JCCL12_LIBRARY
|
|
||||||
JCCL12_INCLUDE_DIR
|
|
||||||
VPR20_FOUND
|
|
||||||
VPR20_LIBRARIES
|
|
||||||
VPR20_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(JCCL12_FOUND)
|
|
||||||
set(_DEPS ${VPR20_LIBRARIES})
|
|
||||||
|
|
||||||
set(JCCL12_INCLUDE_DIRS ${JCCL12_INCLUDE_DIR})
|
|
||||||
list(APPEND JCCL12_INCLUDE_DIRS ${VPR20_INCLUDE_DIRS})
|
|
||||||
clean_directory_list(JCCL12_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER22_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(JCCL12 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(JCCL12_LIBRARIES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(JCCL12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(JCCL12_LIBRARY_RELEASE
|
|
||||||
JCCL12_LIBRARY_DEBUG
|
|
||||||
JCCL12_INCLUDE_DIR)
|
|
||||||
@@ -1,153 +0,0 @@
|
|||||||
# - 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>
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "JCCL 1.4")
|
|
||||||
set(_FP_PKG_NAME jccl)
|
|
||||||
set(_RELEASE_NAMES)
|
|
||||||
set(_DEBUG_NAMES)
|
|
||||||
foreach(VER 1_4 1_4_0 1_4_1 1_4_2)
|
|
||||||
list(APPEND _RELEASE_NAMES ${_FP_PKG_NAME}-${VER})
|
|
||||||
list(APPEND _DEBUG_NAMES ${_FP_PKG_NAME}_d-${VER})
|
|
||||||
endforeach()
|
|
||||||
set(_DIR jccl-1.4)
|
|
||||||
set(_HEADER jccl/jcclConfig.h)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(JCCL14_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(JCCL14_ROOT_DIR
|
|
||||||
"${JCCL14_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for JCCL")
|
|
||||||
if(DEFINED VRJUGGLER30_ROOT_DIR)
|
|
||||||
mark_as_advanced(JCCL14_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT JCCL14_ROOT_DIR)
|
|
||||||
set(JCCL14_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR ${JCCL14_ROOT_DIR})
|
|
||||||
|
|
||||||
find_path(JCCL14_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(JCCL14_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(JCCL14_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(JCCL14)
|
|
||||||
|
|
||||||
# Dependency
|
|
||||||
if(NOT VPR22_FOUND)
|
|
||||||
find_package(VPR22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(JCCL14
|
|
||||||
DEFAULT_MSG
|
|
||||||
JCCL14_LIBRARY
|
|
||||||
JCCL14_INCLUDE_DIR
|
|
||||||
VPR22_FOUND
|
|
||||||
VPR22_LIBRARIES
|
|
||||||
VPR22_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(JCCL14_FOUND)
|
|
||||||
set(_DEPS ${VPR22_LIBRARIES})
|
|
||||||
|
|
||||||
set(JCCL14_INCLUDE_DIRS ${JCCL14_INCLUDE_DIR})
|
|
||||||
list(APPEND JCCL14_INCLUDE_DIRS ${VPR22_INCLUDE_DIRS})
|
|
||||||
clean_directory_list(JCCL14_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER30_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(JCCL14 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(JCCL14_LIBRARIES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(JCCL14_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(JCCL14_LIBRARY_RELEASE
|
|
||||||
JCCL14_LIBRARY_DEBUG
|
|
||||||
JCCL14_INCLUDE_DIR)
|
|
||||||
@@ -1,455 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
include(ListCombinations)
|
|
||||||
include(CheckVersion)
|
|
||||||
include(GetDirectoryList)
|
|
||||||
include(PrefixListGlob)
|
|
||||||
include(GetCompilerInfoString)
|
|
||||||
if(WIN32)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(JTTK_ROOT_DIR
|
|
||||||
"${JTTK_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for JtTk")
|
|
||||||
|
|
||||||
if(NOT JTTK_CUSTOMER_ID)
|
|
||||||
set(JTTK_CUSTOMER_ID "$ENV{JTTK_CUSTOMER_ID}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(JTTK_CUSTOMER_ID
|
|
||||||
"${JTTK_CUSTOMER_ID}"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"JtTk customer ID, to place in the environment")
|
|
||||||
|
|
||||||
|
|
||||||
get_filename_component(_jttk_mod_dir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
||||||
|
|
||||||
if(NOT BITS)
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(BITS 64)
|
|
||||||
else()
|
|
||||||
set(BITS 32)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(JTTK_ENVIRONMENT "JTTK_DEV_PLATFORM=${BITS}")
|
|
||||||
if(JTTK_CUSTOMER_ID)
|
|
||||||
list(APPEND JTTK_ENVIRONMENT "JTTK_CUSTOMER_ID=${JTTK_CUSTOMER_ID}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32 AND MSVC)
|
|
||||||
if(MSVC90)
|
|
||||||
set(VC_VER vc9)
|
|
||||||
set(VC_VER_LONG vc90)
|
|
||||||
elseif(MSVC80)
|
|
||||||
set(VC_VER vc8)
|
|
||||||
set(VC_VER_LONG vc80)
|
|
||||||
elseif(MSVC71)
|
|
||||||
set(VC_VER vc71)
|
|
||||||
set(VC_VER_LONG vc71)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BITS EQUAL 32)
|
|
||||||
set(PLATFORM win32)
|
|
||||||
else()
|
|
||||||
set(PLATFORM win64)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT "${3RDPARTYROOT}")
|
|
||||||
set(3RDPARTYROOT ${CMAKE_SOURCE_DIR}/third-party)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(libsearchdirs)
|
|
||||||
set(includesearchdirs)
|
|
||||||
set(_jttklibs)
|
|
||||||
set(_libsuffixes)
|
|
||||||
if(WIN32)
|
|
||||||
program_files_fallback_glob(_dirs "/UGS/JTOpenToolkit/*/dev")
|
|
||||||
program_files_fallback_glob(_dirs2 "/Siemens/JTOpenToolkit/*/dev")
|
|
||||||
list(APPEND _dirs ${_dirs2})
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "$ENV{JTTK_DEV_PATH}" _envloc)
|
|
||||||
list(APPEND _dirs "${_envloc}")
|
|
||||||
|
|
||||||
if(MSVC90)
|
|
||||||
prefix_list_glob(_vc9_libdirs
|
|
||||||
"/lib/win_${BITS}vc9/JtTk*.dll"
|
|
||||||
"${JTTK_ROOT_DIR}"
|
|
||||||
${_dirs})
|
|
||||||
list(APPEND _jttklibs ${_vc9_libdirs})
|
|
||||||
prefix_list_glob(_vc9_libdirs
|
|
||||||
"/lib/win_${BITS}_vc9/JtTk*.dll"
|
|
||||||
"${JTTK_ROOT_DIR}"
|
|
||||||
${_dirs})
|
|
||||||
list(APPEND _jttklibs ${_vc9_libdirs})
|
|
||||||
list(APPEND _libsuffixes "/lib/win_${BITS}vc9" "/lib/win_${BITS}_vc9")
|
|
||||||
endif()
|
|
||||||
if(MSVC80)
|
|
||||||
prefix_list_glob(_vc8_libdirs
|
|
||||||
"/lib/win_${BITS}/JtTk*.dll"
|
|
||||||
"${JTTK_ROOT_DIR}"
|
|
||||||
${_dirs})
|
|
||||||
list(APPEND _jttklibs ${_vc8_libdirs})
|
|
||||||
list(APPEND _libsuffixes "/lib/win_${BITS}")
|
|
||||||
endif()
|
|
||||||
if(MSVC71)
|
|
||||||
prefix_list_glob(_vc71_libdirs
|
|
||||||
"/lib/win_${BITS}vs7/JtTk*.dll"
|
|
||||||
"${dirs}")
|
|
||||||
list(APPEND _jttklibs "${_vc71_libdirs}")
|
|
||||||
list(APPEND _libsuffixes "/lib/win_${BITS}vs7")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
elseif(UNIX)
|
|
||||||
|
|
||||||
get_gcc_version(_gccver)
|
|
||||||
if("${_gccver}" VERSION_LESS "4.1.0")
|
|
||||||
set(_compiler "")
|
|
||||||
else()
|
|
||||||
set(_compiler "_gcc41")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
string(TOLOWER "${CMAKE_SYSTEM_NAME}" _sysname)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{JTTK_DEV_PATH}" _envloc)
|
|
||||||
prefix_list_glob(_jttklibs
|
|
||||||
"/lib/${_sysname}_${BITS}${_compiler}/libJtTk*"
|
|
||||||
"${JTTK_ROOT_DIR}"
|
|
||||||
"/usr/"
|
|
||||||
"/usr/local/"
|
|
||||||
"/usr/local/siemens/"
|
|
||||||
"/usr/local/ugs/")
|
|
||||||
prefix_list_glob(_jttklibs2
|
|
||||||
"/dev/lib/${_sysname}_${BITS}${_compiler}/libJtTk*"
|
|
||||||
"${JTTK_ROOT_DIR}"
|
|
||||||
"/usr/"
|
|
||||||
"/usr/local/"
|
|
||||||
"/usr/local/siemens/"
|
|
||||||
"/usr/local/ugs/"
|
|
||||||
"${_envloc}/")
|
|
||||||
list(APPEND _jttklibs ${_jttklibs2})
|
|
||||||
|
|
||||||
list(APPEND _libsuffixes "/lib/${_sysname}_${BITS}${_compiler}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(_lib ${_jttklibs})
|
|
||||||
string(REGEX MATCH "JtTk[0-9][0-9]" _jttkver "${_lib}")
|
|
||||||
if(_jttkver)
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"JtTk([0-9])([0-9])"
|
|
||||||
"\\1.\\2"
|
|
||||||
_verstd
|
|
||||||
"${_jttkver}")
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"JtTk([0-9])([0-9])"
|
|
||||||
"\\1\\2"
|
|
||||||
_vernodot
|
|
||||||
"${_jttkver}")
|
|
||||||
endif()
|
|
||||||
check_version(_result JtTk "${_verstd}")
|
|
||||||
if(_result)
|
|
||||||
get_filename_component(_libpath "${_lib}" PATH)
|
|
||||||
list(APPEND JTTK_JTTK_VERSIONS ${_vernodot})
|
|
||||||
list(APPEND JTTK_DEV_PATHS "${_libpath}")
|
|
||||||
else()
|
|
||||||
#message(STATUS "Found JtTk version ${ver}, does not meet requirements")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(JTTK_JTTK_VERSIONS)
|
|
||||||
list(SORT JTTK_JTTK_VERSIONS)
|
|
||||||
list(REVERSE JTTK_JTTK_VERSIONS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure JtTk
|
|
||||||
###
|
|
||||||
|
|
||||||
###
|
|
||||||
# Find the link library
|
|
||||||
###
|
|
||||||
list_combinations(names PREFIXES "JtTk" SUFFIXES ${JTTK_JTTK_VERSIONS})
|
|
||||||
find_library(JTTK_JtTk_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${names}
|
|
||||||
HINTS
|
|
||||||
${JTTK_DEV_PATHS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_libsuffixes})
|
|
||||||
set(JTTK_LIBRARY "${JTTK_JtTk_LIBRARY}")
|
|
||||||
set(JTTK_LIBRARIES "${JTTK_JtTk_LIBRARY}")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Prepare for the rest of our search based off of where we found the link library
|
|
||||||
###
|
|
||||||
get_filename_component(JTTK_LIBRARY_DIR "${JTTK_LIBRARY}" PATH)
|
|
||||||
get_filename_component(JTTK_DEV_PATH
|
|
||||||
"${JTTK_LIBRARY_DIR}/../.."
|
|
||||||
ABSOLUTE)
|
|
||||||
|
|
||||||
# Grab JtTk version
|
|
||||||
string(REGEX MATCH "JtTk[0-9]*" _ver "${JTTK_LIBRARY}")
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"JtTk([0-9])([0-9])"
|
|
||||||
"\\1.\\2"
|
|
||||||
JTTK_JTTK_VERSION
|
|
||||||
"${_ver}")
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"JtTk([0-9])([0-9])"
|
|
||||||
"\\1\\2"
|
|
||||||
JTTK_JTTK_VERNODOT
|
|
||||||
"${_ver}")
|
|
||||||
|
|
||||||
# Grab JT version
|
|
||||||
file(GLOB _jtdll "${JTTK_LIBRARY_DIR}/*JtBrep*")
|
|
||||||
string(REGEX MATCH "JtBrep[0-9]*" _jtver "${_jtdll}")
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"JtBrep([0-9])([0-9])"
|
|
||||||
"\\1\\2"
|
|
||||||
JTTK_JT_VERNODOT
|
|
||||||
"${_jtver}")
|
|
||||||
|
|
||||||
# Setup dev path
|
|
||||||
get_filename_component(JTTK_DEV_PATH
|
|
||||||
"${JTTK_LIBRARY_DIR}/../../"
|
|
||||||
ABSOLUTE)
|
|
||||||
|
|
||||||
list(APPEND JTTK_ENVIRONMENT "JTTK_DEV_PATH=${JTTK_DEV_PATH}")
|
|
||||||
set(ENV{JTTK_DEV_PLATFORM} ${BITS})
|
|
||||||
set(ENV{JTTK_DEV_PATH} "${JTTK_DEV_PATH}")
|
|
||||||
|
|
||||||
set(_deps_libs)
|
|
||||||
set(_deps_includes)
|
|
||||||
set(_deps_check)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Find the headers
|
|
||||||
###
|
|
||||||
find_path(JTTK_INCLUDE_DIR
|
|
||||||
JtTk/JtkEntity.h
|
|
||||||
HINTS
|
|
||||||
${JTTK_DEV_PATH}/include)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
###
|
|
||||||
# Find the DLL's
|
|
||||||
###
|
|
||||||
|
|
||||||
# Find the versioned DLL's
|
|
||||||
foreach(dll Jt JtBrep JtLibra JtSimp JtSupt JtXTBrep ParaSupt)
|
|
||||||
find_file(JTTK_${dll}_DLL
|
|
||||||
NAMES
|
|
||||||
"${dll}${JTTK_JT_VERNODOT}.dll"
|
|
||||||
HINTS
|
|
||||||
"${JTTK_LIBRARY_DIR}")
|
|
||||||
list(APPEND JTTK_DLLS ${JTTK_${dll}_DLL})
|
|
||||||
mark_as_advanced(JTTK_${dll}_DLL)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Find the unversioned DLL's and the matching JtTk dll
|
|
||||||
foreach(dll psbodyshop pskernel psxttoolkit JtTk${JTTK_JTTK_VERNODOT})
|
|
||||||
list_combinations(names PREFIXES "${dll}" SUFFIXES ".dll")
|
|
||||||
find_file(JTTK_${dll}_DLL
|
|
||||||
NAMES
|
|
||||||
${names}
|
|
||||||
HINTS
|
|
||||||
"${JTTK_LIBRARY_DIR}")
|
|
||||||
list(APPEND JTTK_DLLS ${JTTK_${dll}_DLL})
|
|
||||||
mark_as_advanced(JTTK_${dll}_DLL)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
get_directory_list(JTTK_RUNTIME_LIBRARY_DIRS ${JTTK_DLLS})
|
|
||||||
|
|
||||||
elseif(UNIX)
|
|
||||||
|
|
||||||
foreach(_lib Jt JtBrep JtLibra JtSimp JtSupt JtXTBrep ParaSupt)
|
|
||||||
find_library(JTTK_${_lib}_LIBRARY
|
|
||||||
NAMES
|
|
||||||
"${_lib}${JTTK_JT_VERNODOT}"
|
|
||||||
HINTS
|
|
||||||
"${JTTK_LIBRARY_DIR}")
|
|
||||||
list(APPEND _deps_libs "${JTTK_${_lib}_LIBRARY}")
|
|
||||||
list(APPEND _deps_check JTTK_${_lib}_LIBRARY)
|
|
||||||
mark_as_advanced(JTTK_${_lib}_LIBRARY)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Find the unversioned libs
|
|
||||||
foreach(_lib psbodyshop pskernel psxttoolkit eaiunicode)
|
|
||||||
find_library(JTTK_${_lib}_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_lib}
|
|
||||||
HINTS
|
|
||||||
"${JTTK_LIBRARY_DIR}")
|
|
||||||
list(APPEND _deps_libs "${JTTK_${_lib}_LIBRARY}")
|
|
||||||
list(APPEND _deps_check JTTK_${_lib}_LIBRARY)
|
|
||||||
mark_as_advanced(JTTK_${_lib}_LIBRARY)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Find stamper
|
|
||||||
#list(APPEND _deps_check JTTK_KEYS)
|
|
||||||
|
|
||||||
find_program(JTTK_STAMP_COMMAND
|
|
||||||
stampkey
|
|
||||||
HINTS
|
|
||||||
"${JTTK_DEV_PATH}/../bin")
|
|
||||||
list(APPEND _deps_check JTTK_STAMP_COMMAND)
|
|
||||||
|
|
||||||
find_program(JTTK_STAMP_PLATFORM_COMMAND
|
|
||||||
stampkey
|
|
||||||
HINTS
|
|
||||||
"${JTTK_DEV_PATH}/../bin/${_sysname}")
|
|
||||||
list(APPEND _deps_check JTTK_STAMP_PLATFORM_COMMAND)
|
|
||||||
|
|
||||||
|
|
||||||
if("${JTTK_KEYS}" STREQUAL "${JTTK_KEYS_AUTO}" OR NOT JTTK_KEYS)
|
|
||||||
find_file(JTTK_INSTALL_LOG
|
|
||||||
install.log
|
|
||||||
HINTS
|
|
||||||
"${JTTK_DEV_PATH}/.."
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
#list(APPEND _deps_check JTTK_INSTALL_LOG)
|
|
||||||
mark_as_advanced(JTTK_INSTALL_LOG)
|
|
||||||
|
|
||||||
if(JTTK_INSTALL_LOG)
|
|
||||||
file(READ "${JTTK_INSTALL_LOG}" _log)
|
|
||||||
string(REGEX MATCHALL "..key ([0-9A-Z])+" _keylines "${_log}")
|
|
||||||
set(JTTK_KEYS)
|
|
||||||
foreach(_keyline ${_keylines})
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"..key (([0-9A-Z])+)$"
|
|
||||||
"\\1"
|
|
||||||
_key
|
|
||||||
"${_keyline}")
|
|
||||||
list(APPEND JTTK_KEYS "${_key}")
|
|
||||||
message(STATUS "Found JtTk key: ${_key}")
|
|
||||||
endforeach()
|
|
||||||
set(JTTK_KEYS
|
|
||||||
"${JTTK_KEYS}"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"A semi-colon separated list of JtTk keys to stamp on the binaries."
|
|
||||||
FORCE)
|
|
||||||
set(JTTK_KEYS_AUTO
|
|
||||||
"${JTTK_KEYS}"
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
"The keys we auto-detected"
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
foreach(_key ${JTTK_KEYS})
|
|
||||||
message(STATUS "Using cached JtTk key: ${_key}")
|
|
||||||
endforeach()
|
|
||||||
set(JTTK_KEYS
|
|
||||||
"${JTTK_KEYS}"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"A semi-colon separated list of JtTk keys to stamp on the binaries.")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find dependencies
|
|
||||||
find_library(JTTK_MATH_LIBRARY m)
|
|
||||||
mark_as_advanced(JTTK_MATH_LIBRARY)
|
|
||||||
list(APPEND _deps_check JTTK_MATH_LIBRARY)
|
|
||||||
list(APPEND _deps_libs ${JTTK_MATH_LIBRARY})
|
|
||||||
|
|
||||||
if(NOT X11_FOUND)
|
|
||||||
find_package(X11)
|
|
||||||
endif()
|
|
||||||
list(APPEND _deps_check X11_FOUND)
|
|
||||||
list(APPEND _deps_libs ${X11_LIBRARIES})
|
|
||||||
list(APPEND _deps_includes ${X11_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
if(NOT OPENGL_FOUND)
|
|
||||||
find_package(OpenGL)
|
|
||||||
endif()
|
|
||||||
list(APPEND _deps_check OPENGL_FOUND)
|
|
||||||
list(APPEND _deps_libs ${OPENGL_LIBRARIES})
|
|
||||||
list(APPEND _deps_includes ${OPENGL_INCLUDE_DIR})
|
|
||||||
|
|
||||||
if(NOT THREADS_FOUND)
|
|
||||||
find_package(Threads)
|
|
||||||
endif()
|
|
||||||
list(APPEND _deps_check THREADS_FOUND)
|
|
||||||
list(APPEND _deps_libs ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
|
|
||||||
get_directory_list(JTTK_RUNTIME_LIBRARY_DIRS ${_deps_libs})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(JtTk
|
|
||||||
DEFAULT_MSG
|
|
||||||
JTTK_JtTk_LIBRARY
|
|
||||||
JTTK_CUSTOMER_ID
|
|
||||||
JTTK_INCLUDE_DIR
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
if(JTTK_FOUND)
|
|
||||||
set(JTTK_INCLUDE_DIRS "${JTTK_INCLUDE_DIR}" ${_deps_includes})
|
|
||||||
set(JTTK_LIBRARIES "${JTTK_LIBRARY}" ${_deps_libs})
|
|
||||||
mark_as_advanced(JTTK_CUSTOMER_ID JTTK_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
function(jttk_stamp_binary _target)
|
|
||||||
if(UNIX)
|
|
||||||
get_target_property(_binary "${_target}" LOCATION)
|
|
||||||
configure_file("${_jttk_mod_dir}/FindJtTk.stampkey.cmake.in"
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${_target}.stampkey.cmake"
|
|
||||||
@ONLY)
|
|
||||||
add_custom_command(TARGET
|
|
||||||
"${_target}"
|
|
||||||
POST_BUILD
|
|
||||||
COMMAND
|
|
||||||
"${CMAKE_COMMAND}"
|
|
||||||
-P
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${_target}.stampkey.cmake"
|
|
||||||
COMMENT
|
|
||||||
"Stamping executable ${_binary} with JtTk keys..."
|
|
||||||
VERBATIM)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
mark_as_advanced(JTTK_JtTk_LIBRARY
|
|
||||||
JTTK_INCLUDE_DIR
|
|
||||||
JTTK_KEYS
|
|
||||||
JTTK_STAMP_COMMAND
|
|
||||||
JTTK_STAMP_PLATFORM_COMMAND)
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
# Small script to stamp the JtTk license key on an executable
|
|
||||||
#
|
|
||||||
# Original Author:
|
|
||||||
# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
|
|
||||||
# http://academic.cleardefinition.com
|
|
||||||
# Iowa State University HCI Graduate Program/VRAC
|
|
||||||
|
|
||||||
set(ENV{JTTK_DEV_PLATFORM} @BITS@)
|
|
||||||
set(ENV{JTTK_DEV_PATH} @JTTK_DEV_PATH@)
|
|
||||||
set(ENV{LD_LIBRARY_PATH} "$ENV{LD_LIBRARY_PATH}:@JTTK_LIBRARY_DIR@")
|
|
||||||
set(ENV{PATH} "$ENV{PATH}:@JTTK_DEV_PATH@/../bin/")
|
|
||||||
|
|
||||||
message(STATUS "The stamp commands are being run with these environment variables:")
|
|
||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E environment)
|
|
||||||
|
|
||||||
set(JTTK_KEYS @JTTK_KEYS@)
|
|
||||||
foreach(_key ${JTTK_KEYS})
|
|
||||||
execute_process(COMMAND ${_command} @JTTK_STAMP_COMMAND@ ${_key} @_binary@
|
|
||||||
RESULT_VARIABLE _result)
|
|
||||||
|
|
||||||
if(NOT "${_result}" EQUAL "0")
|
|
||||||
message(STATUS "Failed (error ${_result}) running stamp command:
|
|
||||||
@JTTK_STAMP_COMMAND@ ${_key} @_binary@")
|
|
||||||
|
|
||||||
else()
|
|
||||||
message(STATUS "Succeeded running stamp command:
|
|
||||||
@JTTK_STAMP_COMMAND@ ${_key} @_binary@")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
execute_process(COMMAND @JTTK_STAMP_PLATFORM_COMMAND@ ${_key} @_binary@
|
|
||||||
RESULT_VARIABLE _result)
|
|
||||||
|
|
||||||
if(NOT "${_result}" EQUAL "0")
|
|
||||||
message(STATUS "Failed (error ${_result}) running stamp command:
|
|
||||||
@JTTK_STAMP_PLATFORM_COMMAND@ ${_key} @_binary@")
|
|
||||||
|
|
||||||
else()
|
|
||||||
message(STATUS "Succeeded running stamp command:
|
|
||||||
@JTTK_STAMP_PLATFORM_COMMAND@ ${_key} @_binary@")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endforeach()
|
|
||||||
@@ -1,91 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(_check)
|
|
||||||
|
|
||||||
set(LAPACKLIBS_ROOT_DIR
|
|
||||||
"${LAPACKLIBS_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to search for LAPACK libraries")
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
find_library(LAPACKLIBS_VECLIB_FRAMEWORK veclib)
|
|
||||||
find_library(LAPACKLIBS_ACCELERATE_FRAMEWORK accelerate)
|
|
||||||
mark_as_advanced(LAPACKLIBS_VECLIB_FRAMEWORK
|
|
||||||
LAPACKLIBS_ACCELERATE_FRAMEWORK)
|
|
||||||
|
|
||||||
set(LAPACKLIBS_LIBRARIES
|
|
||||||
"${LAPACKLIBS_VECLIB_FRAMEWORK}"
|
|
||||||
"${LAPACKLIBS_ACCELERATE_FRAMEWORK}")
|
|
||||||
list(APPEND
|
|
||||||
_check
|
|
||||||
LAPACKLIBS_VECLIB_FRAMEWORK
|
|
||||||
LAPACKLIBS_ACCELERATE_FRAMEWORK)
|
|
||||||
elseif(WIN32)
|
|
||||||
# Tested to work with the files from http://www.fi.muni.cz/~xsvobod2/misc/lapack/
|
|
||||||
# You might also see http://icl.cs.utk.edu/lapack-for-windows/clapack/index.html for
|
|
||||||
# the libraries and headers.
|
|
||||||
|
|
||||||
# Good luck!
|
|
||||||
|
|
||||||
find_library(LAPACKLIBS_LAPACK_LIBRARY
|
|
||||||
NAMES
|
|
||||||
lapack_win32_MT
|
|
||||||
lapack
|
|
||||||
lapackd
|
|
||||||
HINTS
|
|
||||||
${LAPACKLIBS_ROOT_DIR}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lapack-MT-release
|
|
||||||
lapack-MT-debug
|
|
||||||
lib)
|
|
||||||
find_library(LAPACKLIBS_BLAS_LIBRARY
|
|
||||||
NAMES
|
|
||||||
blas_win32_MT
|
|
||||||
blas
|
|
||||||
blasd
|
|
||||||
HINTS
|
|
||||||
${LAPACKLIBS_ROOT_DIR}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lapack-MT-release
|
|
||||||
lapack-MT-debug
|
|
||||||
lib)
|
|
||||||
set(LAPACKLIBS_LIBRARIES
|
|
||||||
"${LAPACKLIBS_LAPACK_LIBRARY}"
|
|
||||||
"${LAPACKLIBS_BLAS_LIBRARY}")
|
|
||||||
list(APPEND _check LAPACKLIBS_LAPACK_LIBRARY LAPACKLIBS_BLAS_LIBRARY)
|
|
||||||
elseif(UNIX)
|
|
||||||
# All other Linux/Unix should have lapack without a fuss
|
|
||||||
list(APPEND _check LAPACKLIBS_LAPACK_LIBRARY)
|
|
||||||
find_library(LAPACKLIBS_LAPACK_LIBRARY lapack)
|
|
||||||
set(LAPACKLIBS_LIBRARIES "${LAPACKLIBS_LAPACK_LIBRARY}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(LAPACKLibs
|
|
||||||
DEFAULT_MSG
|
|
||||||
${_check})
|
|
||||||
|
|
||||||
if(LAPACKLIBS_FOUND)
|
|
||||||
mark_as_advanced(LAPACKLIBS_ROOT_DIR
|
|
||||||
LAPACKLIBS_LAPACK_LIBRARY
|
|
||||||
LAPACKLIBS_BLAS_LIBRARY)
|
|
||||||
endif()
|
|
||||||
@@ -1,91 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(LIBUSB1_ROOT_DIR
|
|
||||||
"${LIBUSB1_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for libusb-1")
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
program_files_fallback_glob(_dirs "LibUSB-Win32")
|
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
||||||
if(MSVC)
|
|
||||||
set(_lib_suffixes lib/msvc_x64)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
if(MSVC)
|
|
||||||
set(_lib_suffixes lib/msvc)
|
|
||||||
elseif(COMPILER_IS_GNUCXX)
|
|
||||||
set(_lib_suffixes lib/gcc)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(_lib_suffixes)
|
|
||||||
find_package(PkgConfig QUIET)
|
|
||||||
if(PKG_CONFIG_FOUND)
|
|
||||||
pkg_check_modules(PC_LIBUSB1 libusb-1.0)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(LIBUSB1_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
libusb.h
|
|
||||||
PATHS
|
|
||||||
${PC_LIBUSB1_INCLUDE_DIRS}
|
|
||||||
${PC_LIBUSB1_INCLUDEDIR}
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${LIBUSB1_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
|
|
||||||
find_library(LIBUSB1_LIBRARY
|
|
||||||
NAMES
|
|
||||||
usb-1.0
|
|
||||||
PATHS
|
|
||||||
${PC_LIBUSB1_LIBRARY_DIRS}
|
|
||||||
${PC_LIBUSB1_LIBDIR}
|
|
||||||
${_dirs}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_lib_suffixes})
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Libusb1
|
|
||||||
DEFAULT_MSG
|
|
||||||
LIBUSB1_LIBRARY
|
|
||||||
LIBUSB1_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(LIBUSB1_FOUND)
|
|
||||||
set(LIBUSB1_LIBRARIES "${LIBUSB1_LIBRARY}")
|
|
||||||
|
|
||||||
set(LIBUSB1_INCLUDE_DIRS "${LIBUSB1_INCLUDE_DIR}")
|
|
||||||
|
|
||||||
mark_as_advanced(LIBUSB1_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(LIBUSB1_INCLUDE_DIR LIBUSB1_LIBRARY)
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(LUABIND_ROOT_DIR
|
|
||||||
"${LUABIND_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for Luabind")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Dependencies
|
|
||||||
###
|
|
||||||
find_package(Lua51 QUIET)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure Luabind
|
|
||||||
###
|
|
||||||
find_path(LUABIND_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
luabind/luabind.hpp
|
|
||||||
HINTS
|
|
||||||
"${LUABIND_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
mark_as_advanced(LUABIND_INCLUDE_DIR)
|
|
||||||
|
|
||||||
find_library(LUABIND_LIBRARY
|
|
||||||
NAMES
|
|
||||||
luabind
|
|
||||||
HINTS
|
|
||||||
"${LUABIND_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib64
|
|
||||||
lib)
|
|
||||||
mark_as_advanced(LUABIND_LIBRARY)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Luabind
|
|
||||||
DEFAULT_MSG
|
|
||||||
LUABIND_LIBRARY
|
|
||||||
LUABIND_INCLUDE_DIR
|
|
||||||
LUA_LIBRARIES
|
|
||||||
LUA_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(LUABIND_FOUND)
|
|
||||||
set(LUABIND_INCLUDE_DIRS "${LUABIND_INCLUDE_DIR}" "${LUA_INCLUDE_DIR}")
|
|
||||||
set(LUABIND_LIBRARIES "${LUABIND_LIBRARY}" ${LUA_LIBRARIES})
|
|
||||||
set(LUABIND_DEFINITIONS "-DLUABIND_DYNAMIC_LINK")
|
|
||||||
mark_as_advanced(LUABIND_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
@@ -1,144 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(LYX_ROOT_DIR
|
|
||||||
"${LYX_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to start our search in")
|
|
||||||
|
|
||||||
find_program(LYX_COMMAND
|
|
||||||
NAMES
|
|
||||||
lyx
|
|
||||||
HINTS
|
|
||||||
"${LYX_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
bin)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(LyX DEFAULT_MSG LYX_COMMAND)
|
|
||||||
|
|
||||||
if(LYX_FOUND)
|
|
||||||
mark_as_advanced(LYX_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(LYX_COMMAND)
|
|
||||||
|
|
||||||
function(lyx_export _format _extension _outvar)
|
|
||||||
set(_nowhere)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
set(_val_args EXTRA_DEPS INPUT)
|
|
||||||
set(_bool_args OUTPUT_TO_SOURCE_DIR)
|
|
||||||
foreach(_arg ${_val_args} ${_bool_args})
|
|
||||||
set(${_arg})
|
|
||||||
endforeach()
|
|
||||||
foreach(_element ${ARGN})
|
|
||||||
list(FIND _val_args "${_element}" _val_arg_find)
|
|
||||||
list(FIND _bool_args "${_element}" _bool_arg_find)
|
|
||||||
if("${_val_arg_find}" GREATER "-1")
|
|
||||||
set(_curdest "${_element}")
|
|
||||||
elseif("${_bool_arg_find}" GREATER "-1")
|
|
||||||
set("${_element}" ON)
|
|
||||||
set(_curdest _nowhere)
|
|
||||||
else()
|
|
||||||
list(APPEND ${_curdest} "${_element}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(_nowhere)
|
|
||||||
message(FATAL_ERROR "Syntax error in use of a lyx_export command!")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_out)
|
|
||||||
set(_outname)
|
|
||||||
foreach(_file ${INPUT})
|
|
||||||
get_filename_component(_base "${_file}" NAME_WE)
|
|
||||||
|
|
||||||
if(NOT OUTPUT_TO_SOURCE_DIR)
|
|
||||||
set(_outname "${CMAKE_CURRENT_BINARY_DIR}/${_base}.${_extension}")
|
|
||||||
else()
|
|
||||||
set(_outname "${CMAKE_CURRENT_SOURCE_DIR}/${_base}.${_extension}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND _out "${_outname}")
|
|
||||||
if(LYX_COMMAND)
|
|
||||||
add_custom_command(OUTPUT "${_outname}"
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove "${_outname}"
|
|
||||||
#COMMAND ${LYX_COMMAND} "${_file}" --export ${_format}
|
|
||||||
COMMAND ${LYX_COMMAND} "${_file}"
|
|
||||||
--execute
|
|
||||||
"buffer-export-custom ${_format} ${CMAKE_COMMAND} -E copy '$$$$FName' '${_outname}'"
|
|
||||||
--execute
|
|
||||||
"lyx-quit"
|
|
||||||
MAIN_DEPENDENCY "${_file}"
|
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
DEPENDS "${_file}" ${EXTRA_DEPS}
|
|
||||||
COMMENT "Exporting ${_file} to ${_format}...")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
set(${_outvar} ${_out} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(lyx_export_to_docbook_xml _outvar)
|
|
||||||
lyx_export(docbook-xml xml ${_outvar} ${ARGN})
|
|
||||||
set(${_outvar} ${${_outvar}} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(lyx_export_to_docbook _outvar)
|
|
||||||
lyx_export(docbook sgml ${_outvar} ${ARGN})
|
|
||||||
set(${_outvar} ${${_outvar}} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(lyx_export_to_pdf _outvar)
|
|
||||||
lyx_export(pdf pdf ${_outvar} ${ARGN})
|
|
||||||
set(${_outvar} ${${_outvar}} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(lyx_export_to_pdf_via_pdflatex _outvar)
|
|
||||||
lyx_export(pdf2 pdf ${_outvar} ${ARGN})
|
|
||||||
set(${_outvar} ${${_outvar}} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(lyx_export_to_pdf_via_dvi _outvar)
|
|
||||||
lyx_export(pdf3 pdf ${_outvar} ${ARGN})
|
|
||||||
set(${_outvar} ${${_outvar}} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
find_library(MACHID_CoreFoundation_LIBRARY CoreFoundation)
|
|
||||||
find_path(MACHID_CoreFoundation_INCLUDE_DIR
|
|
||||||
CoreFoundation/CoreFoundation.h)
|
|
||||||
|
|
||||||
find_library(MACHID_IOKit_LIBRARY IOKit)
|
|
||||||
find_path(MACHID_IOKit_INCLUDE_DIR IOKit/hid/IOHIDLib.h)
|
|
||||||
|
|
||||||
include(CheckMacHIDAPI)
|
|
||||||
set(MACHID_DEFINITIONS "-DMACOSX_HID_UINT32T=${MACOSX_HID_UINT32T}")
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(MacHID
|
|
||||||
DEFAULT_MSG
|
|
||||||
MACHID_CoreFoundation_LIBRARY
|
|
||||||
MACHID_CoreFoundation_INCLUDE_DIR
|
|
||||||
MACHID_IOKit_LIBRARY
|
|
||||||
MACHID_IOKit_INCLUDE_DIR
|
|
||||||
MACOSX_HID_UINT32T)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MACHID_FOUND)
|
|
||||||
set(MACHID_LIBRARIES
|
|
||||||
"${MACHID_CoreFoundation_LIBRARY}"
|
|
||||||
"${MACHID_IOKit_LIBRARY}")
|
|
||||||
|
|
||||||
set(MACHID_INCLUDE_DIRS
|
|
||||||
"${MACHID_CoreFoundation_INCLUDE_DIR}"
|
|
||||||
"${MACHID_IOKit_INCLUDE_DIR}")
|
|
||||||
|
|
||||||
mark_as_advanced(MACHID_CoreFoundation_LIBRARY
|
|
||||||
MACHID_CoreFoundation_INCLUDE_DIR
|
|
||||||
MACHID_IOKit_LIBRARY
|
|
||||||
MACHID_IOKit_INCLUDE_DIR)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "${MARKDOWN_ROOT_DIR}" MARKDOWN_ROOT_DIR)
|
|
||||||
set(MARKDOWN_ROOT_DIR
|
|
||||||
"${MARKDOWN_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for Markdown")
|
|
||||||
|
|
||||||
if(MARKDOWN_EXECUTABLE AND NOT EXISTS "${MARKDOWN_EXECUTABLE}")
|
|
||||||
set(MARKDOWN_EXECUTABLE "notfound" CACHE PATH FORCE "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# If we have a custom path, look there first.
|
|
||||||
if(MARKDOWN_ROOT_DIR)
|
|
||||||
find_program(MARKDOWN_EXECUTABLE
|
|
||||||
NAMES
|
|
||||||
markdown
|
|
||||||
PATHS
|
|
||||||
"${MARKDOWN_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
bin
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_program(MARKDOWN_EXECUTABLE NAMES markdown)
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Markdown
|
|
||||||
DEFAULT_MSG
|
|
||||||
MARKDOWN_EXECUTABLE)
|
|
||||||
|
|
||||||
if(MARKDOWN_FOUND)
|
|
||||||
mark_as_advanced(MARKDOWN_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(MARKDOWN_EXECUTABLE)
|
|
||||||
@@ -1,245 +0,0 @@
|
|||||||
# - Try to find OpenCV library installation
|
|
||||||
# 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:
|
|
||||||
# -OpenCV 0.97 (beta5a): MSVS 7.1, gcc 3.3, gcc 4.1
|
|
||||||
# -OpenCV 0.99 (1.0rc1): MSVS 7.1
|
|
||||||
#
|
|
||||||
# www.mip.informatik.uni-kiel.de/~jw
|
|
||||||
# academic.cleardefinition.com
|
|
||||||
# --------------------------------
|
|
||||||
|
|
||||||
set(OPENCV_ROOT_DIR
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for OpenCV")
|
|
||||||
|
|
||||||
find_package(OpenCV QUIET NO_MODULE)
|
|
||||||
if(OpenCV_LIBS AND NOT OpenCV_LIBRARIES)
|
|
||||||
set(OPENCV_LIBRARIES ${OpenCV_LIBS})
|
|
||||||
set(OPENCV_FOUND true)
|
|
||||||
else()
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
|
|
||||||
# typical root dirs of installations, exactly one of them is used
|
|
||||||
program_files_glob(_dirs "/OpenCV*/")
|
|
||||||
|
|
||||||
#
|
|
||||||
# select exactly ONE OPENCV base directory/tree
|
|
||||||
# to avoid mixing different version headers and libs
|
|
||||||
#
|
|
||||||
find_path(OPENCV_BASE_DIR
|
|
||||||
NAMES
|
|
||||||
cv/include/cv.h
|
|
||||||
include/opencv/cv.h
|
|
||||||
include/cv/cv.h
|
|
||||||
include/cv.h
|
|
||||||
HINTS
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
"$ENV{OPENCV_ROOT_DIR}"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Intel(R) Open Source Computer Vision Library_is1;Inno Setup: App Path]"
|
|
||||||
${_dirs})
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# header include dir suffixes appended to OPENCV_BASE_DIR
|
|
||||||
set(OPENCV_INCDIR_SUFFIXES
|
|
||||||
include
|
|
||||||
include/cv
|
|
||||||
include/opencv
|
|
||||||
cv/include
|
|
||||||
cxcore/include
|
|
||||||
cvaux/include
|
|
||||||
otherlibs/cvcam/include
|
|
||||||
otherlibs/highgui
|
|
||||||
otherlibs/highgui/include
|
|
||||||
otherlibs/_graphics/include)
|
|
||||||
|
|
||||||
# library linkdir suffixes appended to OPENCV_BASE_DIR
|
|
||||||
set(OPENCV_LIBDIR_SUFFIXES
|
|
||||||
lib
|
|
||||||
lib64
|
|
||||||
OpenCV/lib
|
|
||||||
otherlibs/_graphics/lib)
|
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# find incdir for each lib
|
|
||||||
#
|
|
||||||
find_path(OPENCV_cv_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
cv.h
|
|
||||||
HINTS
|
|
||||||
"${OPENCV_BASE_DIR}"
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_INCDIR_SUFFIXES})
|
|
||||||
find_path(OPENCV_cxcore_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
cxcore.h
|
|
||||||
HINTS
|
|
||||||
"${OPENCV_BASE_DIR}"
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_INCDIR_SUFFIXES})
|
|
||||||
find_path(OPENCV_cxcore_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
cvaux.h
|
|
||||||
HINTS
|
|
||||||
"${OPENCV_BASE_DIR}"
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_INCDIR_SUFFIXES})
|
|
||||||
find_path(OPENCV_highgui_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
highgui.h
|
|
||||||
HINTS
|
|
||||||
"${OPENCV_BASE_DIR}"
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_INCDIR_SUFFIXES})
|
|
||||||
find_path(OPENCV_cvcam_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
cvcam.h
|
|
||||||
HINTS
|
|
||||||
"${OPENCV_BASE_DIR}"
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_INCDIR_SUFFIXES})
|
|
||||||
|
|
||||||
#
|
|
||||||
# find sbsolute path to all libraries
|
|
||||||
# some are optionally, some may not exist on Linux
|
|
||||||
#
|
|
||||||
find_library(OPENCV_legacy_LIBRARY
|
|
||||||
NAMES
|
|
||||||
opencv_legacy
|
|
||||||
HINTS
|
|
||||||
"${OPENCV_BASE_DIR}"
|
|
||||||
"${OPENCV_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_LIBDIR_SUFFIXES})
|
|
||||||
|
|
||||||
set(OPENCV_NEW_COMPONENTS calib3d contrib core features2d highgui imgproc legacy ml objdetect video)
|
|
||||||
set(OPENCV_OLD_COMPONENTS cv cvaux cvcam cvhaartraining cxcore cxts highgui ml trs)
|
|
||||||
set(opencv_components)
|
|
||||||
if(OPENCV_NEW_LIBRARY_NAMES OR OPENCV_legacy_LIBRARY)
|
|
||||||
|
|
||||||
# New-style library names
|
|
||||||
foreach(component ${OPENCV_NEW_COMPONENTS})
|
|
||||||
find_library(OPENCV_${component}_LIBRARY
|
|
||||||
NAMES
|
|
||||||
opencv_${component}
|
|
||||||
HINTS
|
|
||||||
${OPENCV_BASE_DIR}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_LIBDIR_SUFFIXES})
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# cv components with header and library if COMPONENTS unspecified
|
|
||||||
if(NOT OpenCV_FIND_COMPONENTS)
|
|
||||||
# default
|
|
||||||
set(opencv_components core legacy imgproc highgui)
|
|
||||||
if(WIN32)
|
|
||||||
list(APPEND opencv_components video) # WIN32 only actually
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
# TODO: clean up/convert to new components
|
|
||||||
string(TOLOWER "${OpenCV_FIND_COMPONENTS}" opencv_components)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
else()
|
|
||||||
# Old-style lib names
|
|
||||||
if(NOT OpenCV_FIND_COMPONENTS)
|
|
||||||
# default
|
|
||||||
set(opencv_components cv cxcore cvaux highgui)
|
|
||||||
if(WIN32)
|
|
||||||
list(APPEND opencv_components cvcam) # WIN32 only actually
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
string(TOLOWER "${OpenCV_FIND_COMPONENTS}" opencv_components)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(component ${OPENCV_OLD_COMPONENTS})
|
|
||||||
find_library(OPENCV_${component}_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${component}
|
|
||||||
HINTS
|
|
||||||
${OPENCV_BASE_DIR}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${OPENCV_LIBDIR_SUFFIXES})
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
#
|
|
||||||
# Logic selecting required libs and headers
|
|
||||||
#
|
|
||||||
|
|
||||||
set(_req_check)
|
|
||||||
set(_req_libs)
|
|
||||||
set(_req_includes)
|
|
||||||
foreach(component ${opencv_components})
|
|
||||||
#message(STATUS "Component requested: ${component}")
|
|
||||||
|
|
||||||
# only good if header and library both found
|
|
||||||
list(APPEND
|
|
||||||
_req_check
|
|
||||||
OPENCV_${component}_LIBRARY)
|
|
||||||
list(APPEND _req_libs "${OPENCV_${component}_LIBRARY}")
|
|
||||||
if(DEFINED OPENCV_${component}_INCLUDE_DIR)
|
|
||||||
list(APPEND
|
|
||||||
_req_check
|
|
||||||
OPENCV_${component}_INCLUDE_DIR)
|
|
||||||
list(APPEND _req_includes "${OPENCV_${component}_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(OpenCV
|
|
||||||
DEFAULT_MSG
|
|
||||||
OPENCV_cv_INCLUDE_DIR
|
|
||||||
${_req_check})
|
|
||||||
|
|
||||||
if(OPENCV_FOUND)
|
|
||||||
set(OPENCV_LIBRARY_DIRS)
|
|
||||||
foreach(lib ${_req_libs})
|
|
||||||
get_filename_component(dir "${lib}" PATH)
|
|
||||||
list(APPEND OPENCV_LIBRARY_DIRS "${dir}")
|
|
||||||
endforeach()
|
|
||||||
list(REVERSE OPENCV_LIBRARY_DIRS)
|
|
||||||
list(REMOVE_DUPLICATES OPENCV_LIBRARY_DIRS)
|
|
||||||
list(REVERSE OPENCV_LIBRARY_DIRS)
|
|
||||||
|
|
||||||
set(OPENCV_INCLUDE_DIRS ${_req_includes})
|
|
||||||
set(OPENCV_LIBRARIES ${_req_libs})
|
|
||||||
mark_as_advanced(OPENCV_ROOT_DIR OpenCV_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(OPENCV_BASE_DIR)
|
|
||||||
foreach(component ${OPENCV_NEW_COMPONENTS} ${OPENCV_OLD_COMPONENTS})
|
|
||||||
mark_as_advanced(OPENCV_${component}_LIBRARY OPENCV_${component}_INCLUDE_DIR)
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,481 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 2.6.3)
|
|
||||||
|
|
||||||
set(OPENHAPTICS_ROOT_DIR
|
|
||||||
"${OPENHAPTICS_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for OpenHaptics")
|
|
||||||
option(OPENHAPTICS_NESTED_TARGETS
|
|
||||||
"Whether we should compile HDU and HLU, if needed, as a part of the solution"
|
|
||||||
ON)
|
|
||||||
mark_as_advanced(OPENHAPTICS_NESTED_TARGETS)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure OpenHaptics
|
|
||||||
###
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(ListCombinations)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
|
|
||||||
set(_nest_targets)
|
|
||||||
set(_incsearchdirs)
|
|
||||||
set(_libsearchdirs)
|
|
||||||
set(OPENHAPTICS_ENVIRONMENT)
|
|
||||||
set(OPENHAPTICS_RUNTIME_LIBRARY_DIRS)
|
|
||||||
|
|
||||||
set(_dirs)
|
|
||||||
if(NOT "$ENV{OH_SDK_BASE}" STREQUAL "")
|
|
||||||
list(APPEND _dirs "$ENV{OH_SDK_BASE}")
|
|
||||||
elseif(NOT "$ENV{3DTOUCH_BASE}" STREQUAL "")
|
|
||||||
list(APPEND _dirs "$ENV{3DTOUCH_BASE}")
|
|
||||||
endif()
|
|
||||||
if(WIN32)
|
|
||||||
program_files_fallback_glob(_pfdirs "/Sensable/3DTouch*/")
|
|
||||||
foreach(_OH_DEFAULT_LOCATION "C:/OpenHaptics/3.1" "C:/OpenHaptics/Academic/3.1")
|
|
||||||
if(EXISTS "${_OH_DEFAULT_LOCATION}")
|
|
||||||
list(APPEND _dirs "${_OH_DEFAULT_LOCATION}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
set(_dirs "${_dirs};${_pfdirs}")
|
|
||||||
if(MSVC60)
|
|
||||||
set(_vc "vc6")
|
|
||||||
elseif(MSVC70 OR MSVC71)
|
|
||||||
set(_vc "vc7")
|
|
||||||
elseif(MSVC80)
|
|
||||||
set(_vc "vc8")
|
|
||||||
endif()
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
# 64-bit
|
|
||||||
list_combinations(_libsearch
|
|
||||||
PREFIXES
|
|
||||||
"${OPENHAPTICS_ROOT_DIR}"
|
|
||||||
${_dirs}
|
|
||||||
SUFFIXES
|
|
||||||
"/lib/x64")
|
|
||||||
list_combinations(_libsearch2
|
|
||||||
PREFIXES
|
|
||||||
"${OPENHAPTICS_ROOT_DIR}"
|
|
||||||
${_dirs}
|
|
||||||
SUFFIXES
|
|
||||||
"/utilities/lib/x64")
|
|
||||||
else()
|
|
||||||
# 32-bit
|
|
||||||
list_combinations(_libsearch
|
|
||||||
PREFIXES
|
|
||||||
"${OPENHAPTICS_ROOT_DIR}"
|
|
||||||
${_dirs}
|
|
||||||
SUFFIXES
|
|
||||||
"/lib"
|
|
||||||
"/lib/win32")
|
|
||||||
list_combinations(_libsearch2
|
|
||||||
PREFIXES
|
|
||||||
"${OPENHAPTICS_ROOT_DIR}"
|
|
||||||
${_dirs}
|
|
||||||
SUFFIXES
|
|
||||||
"/utilities/lib/Win32"
|
|
||||||
"/utilities/lib"
|
|
||||||
"/utilities/lib/${_vc}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
clean_directory_list(_libsearchdirs ${_libsearch} ${_libsearch2})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list_combinations(_incsearch
|
|
||||||
PREFIXES
|
|
||||||
"${OPENHAPTICS_ROOT_DIR}"
|
|
||||||
${_dirs}
|
|
||||||
SUFFIXES
|
|
||||||
"/include")
|
|
||||||
list_combinations(_incsearch2
|
|
||||||
PREFIXES
|
|
||||||
"${OPENHAPTICS_ROOT_DIR}"
|
|
||||||
${_dirs}
|
|
||||||
SUFFIXES
|
|
||||||
"/utilities/include")
|
|
||||||
clean_directory_list(_incsearchdirs ${_incsearch} ${_incsearch2})
|
|
||||||
|
|
||||||
set(_deps_check)
|
|
||||||
set(_deps_libs)
|
|
||||||
|
|
||||||
###
|
|
||||||
# HDAPI: HD
|
|
||||||
###
|
|
||||||
|
|
||||||
if(UNIX)
|
|
||||||
find_library(HDAPI_PHANToMIO_LIBRARY
|
|
||||||
NAMES
|
|
||||||
PHANToMIO
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
mark_as_advanced(HDAPI_PHANToMIO_LIBRARY)
|
|
||||||
list(APPEND _deps_check HDAPI_PHANToMIO_LIBRARY)
|
|
||||||
list(APPEND _deps_libs "${HDAPI_PHANToMIO_LIBRARY}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(HDAPI_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
HD/hd.h
|
|
||||||
HINTS
|
|
||||||
${_incsearchdirs})
|
|
||||||
|
|
||||||
find_library(HDAPI_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
HD
|
|
||||||
PATH_SUFFIXES
|
|
||||||
ReleaseAcademicEdition
|
|
||||||
Release
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
find_library(HDAPI_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
HD
|
|
||||||
PATH_SUFFIXES
|
|
||||||
DebugAcademicEdition
|
|
||||||
Debug
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
select_library_configurations(HDAPI)
|
|
||||||
|
|
||||||
###
|
|
||||||
# HDAPI: HDU
|
|
||||||
###
|
|
||||||
find_path(HDAPI_HDU_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
HDU/hdu.h
|
|
||||||
HINTS
|
|
||||||
${_incsearchdirs})
|
|
||||||
|
|
||||||
find_library(HDAPI_HDU_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
HDU
|
|
||||||
PATH_SUFFIXES
|
|
||||||
ReleaseAcademicEdition
|
|
||||||
Release
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
find_library(HDAPI_HDU_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
HDU
|
|
||||||
PATH_SUFFIXES
|
|
||||||
DebugAcademicEdition
|
|
||||||
Debug
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
# Fallback
|
|
||||||
find_library(HDAPI_HDU_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
HDUD
|
|
||||||
PATH_SUFFIXES
|
|
||||||
DebugAcademicEdition
|
|
||||||
Debug
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
select_library_configurations(HDAPI_HDU)
|
|
||||||
|
|
||||||
if(OPENHAPTICS_NESTED_TARGETS OR NOT HDAPI_HDU_LIBRARY)
|
|
||||||
if(HDAPI_HDU_SOURCE_DIR AND NOT EXISTS "${HDAPI_HDU_SOURCE_DIR}/hdu.cpp")
|
|
||||||
unset(HDAPI_HDU_SOURCE_DIR)
|
|
||||||
endif()
|
|
||||||
find_path(HDAPI_HDU_SOURCE_DIR
|
|
||||||
NAMES
|
|
||||||
hdu.cpp
|
|
||||||
PATH_SUFFIXES
|
|
||||||
src
|
|
||||||
src/HDU
|
|
||||||
src/HDU/src
|
|
||||||
libsrc/HDU
|
|
||||||
HINTS
|
|
||||||
"${HDAPI_HDU_INCLUDE_DIR}/.."
|
|
||||||
"${HDAPI_HDU_INCLUDE_DIR}/../share/3DTouch")
|
|
||||||
list(APPEND _deps_check HDAPI_HDU_SOURCE_DIR)
|
|
||||||
if(HDAPI_HDU_SOURCE_DIR)
|
|
||||||
mark_as_advanced(HDAPI_HDU_SOURCE_DIR)
|
|
||||||
set(_nest_targets YES)
|
|
||||||
set(HDAPI_HDU_LIBRARY
|
|
||||||
"openhaptics_hdu_nested_target"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"We will build the OpenHaptics HDU lib."
|
|
||||||
FORCE)
|
|
||||||
set(HDAPI_HDU_LIBRARIES ${HDAPI_HDU_LIBRARY})
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
###
|
|
||||||
# HLAPI: HL
|
|
||||||
###
|
|
||||||
find_path(HLAPI_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
HL/hl.h
|
|
||||||
HINTS
|
|
||||||
${_incsearchdirs})
|
|
||||||
|
|
||||||
find_library(HLAPI_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
HL
|
|
||||||
PATH_SUFFIXES
|
|
||||||
ReleaseAcademicEdition
|
|
||||||
Release
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
find_library(HLAPI_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
HL
|
|
||||||
PATH_SUFFIXES
|
|
||||||
DebugAcademicEdition
|
|
||||||
Debug
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
select_library_configurations(HLAPI)
|
|
||||||
|
|
||||||
###
|
|
||||||
# HLAPI: HLU
|
|
||||||
###
|
|
||||||
find_path(HLAPI_HLU_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
HLU/hlu.h
|
|
||||||
HINTS
|
|
||||||
${_incsearchdirs})
|
|
||||||
|
|
||||||
find_library(HLAPI_HLU_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
HLU
|
|
||||||
PATH_SUFFIXES
|
|
||||||
ReleaseAcademicEdition
|
|
||||||
Release
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
find_library(HLAPI_HLU_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
HLU
|
|
||||||
PATH_SUFFIXES
|
|
||||||
DebugAcademicEdition
|
|
||||||
Debug
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
# fallback
|
|
||||||
find_library(HLAPI_HLU_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
HLUD
|
|
||||||
PATH_SUFFIXES
|
|
||||||
DebugAcademicEdition
|
|
||||||
Debug
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs})
|
|
||||||
|
|
||||||
select_library_configurations(HLAPI_HLU)
|
|
||||||
|
|
||||||
if(OPENHAPTICS_NESTED_TARGETS OR NOT HLAPI_HLU_LIBRARY)
|
|
||||||
if(HLAPI_HLU_SOURCE_DIR AND NOT EXISTS "${HLAPI_HLU_SOURCE_DIR}/hlu.cpp")
|
|
||||||
unset(HLAPI_HLU_SOURCE_DIR)
|
|
||||||
endif()
|
|
||||||
find_path(HLAPI_HLU_SOURCE_DIR
|
|
||||||
NAMES
|
|
||||||
hlu.cpp
|
|
||||||
PATH_SUFFIXES
|
|
||||||
src
|
|
||||||
src/HLU
|
|
||||||
src/HLU/src
|
|
||||||
libsrc/HLU
|
|
||||||
HINTS
|
|
||||||
"${HLAPI_HLU_INCLUDE_DIR}/.."
|
|
||||||
"${HLAPI_HLU_INCLUDE_DIR}/../share/3DTouch")
|
|
||||||
list(APPEND _deps_check HLAPI_HLU_SOURCE_DIR)
|
|
||||||
if(HLAPI_HLU_SOURCE_DIR)
|
|
||||||
mark_as_advanced(HLAPI_HLU_SOURCE_DIR)
|
|
||||||
set(_nest_targets YES)
|
|
||||||
set(HLAPI_HLU_LIBRARY
|
|
||||||
"openhaptics_hlu_nested_target"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"We will build the OpenHaptics HLU lib."
|
|
||||||
FORCE)
|
|
||||||
set(HLAPI_HLU_LIBRARIES ${HLAPI_HLU_LIBRARY})
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Add dependencies: Libraries
|
|
||||||
###
|
|
||||||
set(HDAPI_LIBRARIES "${HDAPI_LIBRARY}" ${_deps_libs})
|
|
||||||
|
|
||||||
if(HDAPI_HDU_LIBRARIES AND HDAPI_LIBRARIES)
|
|
||||||
list(APPEND HDAPI_HDU_LIBRARIES ${HDAPI_LIBRARIES})
|
|
||||||
else()
|
|
||||||
set(HDAPI_HDU_LIBRARIES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(HLAPI_LIBRARY AND HDAPI_LIBRARIES)
|
|
||||||
set(HLAPI_LIBRARIES ${HLAPI_LIBRARY} ${HDAPI_LIBRARIES})
|
|
||||||
else()
|
|
||||||
set(HLAPI_LIBRARIES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(HLAPI_HLU_LIBRARIES AND HLAPI_LIBRARIES)
|
|
||||||
list(APPEND HLAPI_HLU_LIBRARIES ${HLAPI_LIBRARIES})
|
|
||||||
else()
|
|
||||||
set(HLAPI_HLU_LIBRARIES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Add dependencies: Include dirs
|
|
||||||
###
|
|
||||||
if(HDAPI_INCLUDE_DIR)
|
|
||||||
set(HDAPI_INCLUDE_DIRS ${HDAPI_INCLUDE_DIR})
|
|
||||||
|
|
||||||
if(HDAPI_HDU_INCLUDE_DIR)
|
|
||||||
set(HDAPI_HDU_INCLUDE_DIRS
|
|
||||||
${HDAPI_INCLUDE_DIRS}
|
|
||||||
${HDAPI_HDU_INCLUDE_DIR})
|
|
||||||
|
|
||||||
if(HDAPI_HDU_INCLUDE_DIR)
|
|
||||||
set(HLAPI_INCLUDE_DIRS ${HDAPI_INCLUDE_DIRS} ${HLAPI_INCLUDE_DIR})
|
|
||||||
|
|
||||||
if(HLAPI_HLU_INCLUDE_DIR)
|
|
||||||
set(HLAPI_HLU_INCLUDE_DIRS
|
|
||||||
${HLAPI_INCLUDE_DIRS}
|
|
||||||
${HLAPI_HLU_INCLUDE_DIR})
|
|
||||||
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(OpenHaptics
|
|
||||||
DEFAULT_MSG
|
|
||||||
HDAPI_LIBRARY
|
|
||||||
HDAPI_INCLUDE_DIR
|
|
||||||
HDAPI_HDU_INCLUDE_DIR
|
|
||||||
HDAPI_HDU_LIBRARY
|
|
||||||
HLAPI_INCLUDE_DIR
|
|
||||||
HLAPI_LIBRARY
|
|
||||||
HLAPI_HLU_INCLUDE_DIR
|
|
||||||
HLAPI_HLU_LIBRARY
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
if(OPENHAPTICS_FOUND)
|
|
||||||
# Recurse into the nested targets subdirectory if needed
|
|
||||||
if(_nest_targets)
|
|
||||||
get_filename_component(_moddir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
||||||
add_subdirectory("${_moddir}/nested_targets/OpenHaptics")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(OPENHAPTICS_LIBRARIES
|
|
||||||
${HDAPI_LIBRARY}
|
|
||||||
${HDAPI_HDU_LIBRARY}
|
|
||||||
${HLAPI_LIBRARY}
|
|
||||||
${HLAPI_HLU_LIBRARY})
|
|
||||||
set(OPENHAPTICS_LIBRARY_DIRS)
|
|
||||||
foreach(_lib
|
|
||||||
${_deps_check}
|
|
||||||
HDAPI_LIBRARY_RELEASE
|
|
||||||
HDAPI_LIBRARY_DEBUG
|
|
||||||
HDAPI_HDU_LIBRARY_RELEASE
|
|
||||||
HDAPI_HDU_LIBRARY_DEBUG
|
|
||||||
HLAPI_LIBRARY_RELEASE
|
|
||||||
HLAPI_LIBRARY_DEBUG
|
|
||||||
HLAPI_HLU_LIBRARY_RELEASE
|
|
||||||
HLAPI_HLU_LIBRARY_DEBUG)
|
|
||||||
get_filename_component(_libdir ${${_lib}} PATH)
|
|
||||||
list(APPEND OPENHAPTICS_LIBRARY_DIRS ${_libdir})
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
set(OPENHAPTICS_INCLUDE_DIRS
|
|
||||||
${HLAPI_HLU_INCLUDE_DIRS}
|
|
||||||
${HDAPI_HDU_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
clean_directory_list(OPENHAPTICS_LIBRARY_DIRS)
|
|
||||||
clean_directory_list(OPENHAPTICS_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
list(APPEND
|
|
||||||
OPENHAPTICS_RUNTIME_LIBRARY_DIRS
|
|
||||||
${OPENHAPTICS_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
clean_library_list(OPENHAPTICS_LIBRARIES)
|
|
||||||
|
|
||||||
mark_as_advanced(OPENHAPTICS_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(HDAPI_INCLUDE_DIR
|
|
||||||
HDAPI_LIBRARY_RELEASE
|
|
||||||
HDAPI_LIBRARY_DEBUG
|
|
||||||
HDAPI_HDU_INCLUDE_DIR
|
|
||||||
HDAPI_HDU_LIBRARY_RELEASE
|
|
||||||
HDAPI_HDU_LIBRARY_DEBUG
|
|
||||||
HLAPI_INCLUDE_DIR
|
|
||||||
HLAPI_LIBRARY_RELEASE
|
|
||||||
HLAPI_LIBRARY_DEBUG
|
|
||||||
HLAPI_HLU_INCLUDE_DIR
|
|
||||||
HLAPI_HLU_LIBRARY_RELEASE
|
|
||||||
HLAPI_HLU_LIBRARY_DEBUG)
|
|
||||||
@@ -1,305 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
include(ListCombinations)
|
|
||||||
include(CheckVersion)
|
|
||||||
include(PrefixListGlob)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
if(WIN32)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(PARASOLID_ROOT_DIR
|
|
||||||
"${PARASOLID_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for Parasolid")
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "${PARASOLID_ROOT_DIR}" PARASOLID_ROOT_DIR)
|
|
||||||
|
|
||||||
# Do this by default
|
|
||||||
if(NOT DEFINED PARASOLID_NESTED_TARGETS)
|
|
||||||
set(PARASOLID_NESTED_TARGETS TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(PARASOLID_NESTED_TARGETS
|
|
||||||
"${PARASOLID_NESTED_TARGETS}"
|
|
||||||
CACHE
|
|
||||||
BOOL
|
|
||||||
"Whether we should compile fg and frustrum as a part of the solution")
|
|
||||||
mark_as_advanced(PARASOLID_NESTED_TARGETS)
|
|
||||||
|
|
||||||
set(_nest_targets)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure Parasolid
|
|
||||||
###
|
|
||||||
|
|
||||||
string(TOLOWER "${CMAKE_SYSTEM_NAME}" _lcsystem)
|
|
||||||
set(libsearchdirs)
|
|
||||||
if(WIN32)
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
# 64-bit
|
|
||||||
program_files_fallback_glob(dirs "/Parasolid*/kernel/x64_win/base")
|
|
||||||
program_files_fallback_glob(dirs2 "/Parasolid/kernel/*/x64_win/base")
|
|
||||||
list(APPEND dirs ${dirs2})
|
|
||||||
else()
|
|
||||||
# 32-bit
|
|
||||||
program_files_glob(dirs "/Parasolid*/kernel/intel_nt/base")
|
|
||||||
program_files_fallback_glob(dirs2 "/Parasolid/kernel/*/intel_nt/base")
|
|
||||||
list(APPEND dirs ${dirs2})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list_combinations(libsearchdirs
|
|
||||||
PREFIXES
|
|
||||||
${dirs}
|
|
||||||
"${PARASOLID_ROOT_DIR}"
|
|
||||||
SUFFIXES
|
|
||||||
"/dll")
|
|
||||||
list(APPEND libsearchdirs ${dirs} "${PARASOLID_ROOT_DIR}")
|
|
||||||
elseif("${_lcsystem}" MATCHES "linux")
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
# 64-bit
|
|
||||||
prefix_list_glob(libsearchdirs
|
|
||||||
"/Parasolid*/kernel/intel_linux/base_lx64"
|
|
||||||
"${PARASOLID_ROOT_DIR}"
|
|
||||||
"/usr"
|
|
||||||
"/usr/local"
|
|
||||||
"/usr/local/ugs")
|
|
||||||
else()
|
|
||||||
# 32-bit
|
|
||||||
prefix_list_glob(libsearchdirs
|
|
||||||
"/Parasolid*/kernel/intel_linux/base_lx32"
|
|
||||||
"${PARASOLID_ROOT_DIR}"
|
|
||||||
"/usr"
|
|
||||||
"/usr/local"
|
|
||||||
"/usr/local/ugs")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Find the link library
|
|
||||||
###
|
|
||||||
find_library(PARASOLID_pskernel_LIBRARY
|
|
||||||
NAMES
|
|
||||||
pskernel
|
|
||||||
PATH_SUFFIXES
|
|
||||||
dll
|
|
||||||
shared_object
|
|
||||||
HINTS
|
|
||||||
${libsearchdirs}
|
|
||||||
PATHS
|
|
||||||
"${PARASOLID_ROOT_DIR}")
|
|
||||||
|
|
||||||
|
|
||||||
# Don't add this library to the default list of libraries
|
|
||||||
find_library(PARASOLID_pskernel_archive_LIBRARY
|
|
||||||
NAMES
|
|
||||||
pskernel_archive
|
|
||||||
pskernel_archive.lib
|
|
||||||
HINTS
|
|
||||||
${libsearchdirs}
|
|
||||||
PATHS
|
|
||||||
"${PARASOLID_ROOT_DIR}")
|
|
||||||
mark_as_advanced(PARASOLID_pskernel_archive_LIBRARY)
|
|
||||||
|
|
||||||
|
|
||||||
###
|
|
||||||
# Prepare for the rest of our search based off of where we found the link library
|
|
||||||
###
|
|
||||||
get_filename_component(PARASOLID_LIBRARY_DIR
|
|
||||||
"${PARASOLID_pskernel_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
|
|
||||||
# Setup include search path
|
|
||||||
get_filename_component(_includedir
|
|
||||||
"${PARASOLID_LIBRARY_DIR}/../include"
|
|
||||||
ABSOLUTE)
|
|
||||||
get_filename_component(_includedir2
|
|
||||||
"${PARASOLID_LIBRARY_DIR}/.."
|
|
||||||
ABSOLUTE)
|
|
||||||
set(includesearchdirs
|
|
||||||
"${PARASOLID_LIBRARY_DIR}"
|
|
||||||
"${_includedir}"
|
|
||||||
"${_includedir2}")
|
|
||||||
clean_directory_list(includesearchdirs)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Find the headers
|
|
||||||
###
|
|
||||||
find_path(PARASOLID_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
parasolid_kernel.h
|
|
||||||
HINTS
|
|
||||||
${includesearchdirs}
|
|
||||||
PATHS
|
|
||||||
"${PARASOLID_ROOT_DIR}")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Find remaining libs
|
|
||||||
###
|
|
||||||
|
|
||||||
# Default libs
|
|
||||||
foreach(lib fg frustrum)
|
|
||||||
find_library(PARASOLID_${lib}_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${lib}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
dll
|
|
||||||
HINTS
|
|
||||||
"${PARASOLID_LIBRARY_DIR}"
|
|
||||||
${libsearchdirs}
|
|
||||||
PATHS
|
|
||||||
"${PARASOLID_ROOT_DIR}")
|
|
||||||
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(PARASOLID_pskernel_LIBRARY OR PARASOLID_INCLUDE_DIR)
|
|
||||||
get_filename_component(_libdir "${PARASOLID_pskernel_LIBRARY}" PATH)
|
|
||||||
get_filename_component(_incdir "${PARASOLID_INCLUDE_DIR}" PATH)
|
|
||||||
|
|
||||||
if(PARASOLID_NESTED_TARGETS OR NOT PARASOLID_fg_LIBRARY)
|
|
||||||
find_file(PARASOLID_FG_C
|
|
||||||
NAMES
|
|
||||||
fg.c
|
|
||||||
HINTS
|
|
||||||
"${_libdir}"
|
|
||||||
"${_libdir}/.."
|
|
||||||
"${_incdir}")
|
|
||||||
if(PARASOLID_FG_C)
|
|
||||||
mark_as_advanced(PARASOLID_FG_C)
|
|
||||||
set(_nest_targets YES)
|
|
||||||
set(PARASOLID_fg_LIBRARY
|
|
||||||
"parasolid_fg_nested_target"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"We will build the Parasolid fg lib."
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(PARASOLID_NESTED_TARGETS OR NOT PARASOLID_frustrum_LIBRARY)
|
|
||||||
find_file(PARASOLID_FRUSTRUM_C
|
|
||||||
NAMES
|
|
||||||
frustrum.c
|
|
||||||
HINTS
|
|
||||||
"${_libdir}"
|
|
||||||
"${_libdir}/.."
|
|
||||||
"${_incdir}")
|
|
||||||
if(PARASOLID_FRUSTRUM_C)
|
|
||||||
mark_as_advanced(PARASOLID_FRUSTRUM_C)
|
|
||||||
set(_nest_targets YES)
|
|
||||||
set(PARASOLID_frustrum_LIBRARY
|
|
||||||
"parasolid_frustrum_nested_target"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"We will build the Parasolid frustrum lib."
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Non-default libs
|
|
||||||
foreach(lib testfr)
|
|
||||||
find_library(PARASOLID_${lib}_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${lib}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
dll
|
|
||||||
HINTS
|
|
||||||
${PARASOLID_LIBRARY_DIR}
|
|
||||||
${libsearchdirs}
|
|
||||||
PATHS
|
|
||||||
"${PARASOLID_ROOT_DIR}")
|
|
||||||
mark_as_advanced(PARASOLID_${lib}_LIBRARY)
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Find the DLL's
|
|
||||||
###
|
|
||||||
|
|
||||||
if(JTTK_FOUND AND JTTK_pskernel_DLL)
|
|
||||||
# If we have JtTk, must use the dll there or we'll have weird runtime errors
|
|
||||||
# in parasolid
|
|
||||||
set(PARASOLID_pskernel_DLL "${JTTK_pskernel_DLL}")
|
|
||||||
else()
|
|
||||||
# Find the unversioned DLL
|
|
||||||
set(dll pskernel)
|
|
||||||
find_file(PARASOLID_${dll}_DLL
|
|
||||||
NAMES
|
|
||||||
${dll}.dll
|
|
||||||
PATH_SUFFIXES
|
|
||||||
dll
|
|
||||||
HINTS
|
|
||||||
${PARASOLID_LIBRARY_DIR}
|
|
||||||
${libsearchdirs}
|
|
||||||
PATHS
|
|
||||||
"${PARASOLID_ROOT_DIR}")
|
|
||||||
list(APPEND PARASOLID_DLLS ${PARASOLID_${dll}_DLL})
|
|
||||||
mark_as_advanced(PARASOLID_${dll}_DLL)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Parasolid
|
|
||||||
DEFAULT_MSG
|
|
||||||
PARASOLID_pskernel_LIBRARY
|
|
||||||
PARASOLID_fg_LIBRARY
|
|
||||||
PARASOLID_frustrum_LIBRARY
|
|
||||||
PARASOLID_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(PARASOLID_FOUND)
|
|
||||||
# Recurse into the nested targets subdirectory if needed
|
|
||||||
if(_nest_targets)
|
|
||||||
get_filename_component(_moddir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
||||||
add_subdirectory("${_moddir}/nested_targets/Parasolid")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(PARASOLID_INCLUDE_DIRS "${PARASOLID_INCLUDE_DIR}")
|
|
||||||
set(PARASOLID_LIBRARIES
|
|
||||||
"${PARASOLID_pskernel_LIBRARY}"
|
|
||||||
"${PARASOLID_fg_LIBRARY}"
|
|
||||||
"${PARASOLID_frustrum_LIBRARY}")
|
|
||||||
if(PARASOLID_pskernel_DLL)
|
|
||||||
get_filename_component(PARASOLID_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${PARASOLID_pskernel_DLL}"
|
|
||||||
PATH)
|
|
||||||
endif()
|
|
||||||
mark_as_advanced(PARASOLID_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(PARASOLID_pskernel_LIBRARY
|
|
||||||
PARASOLID_pskernel_archive_LIBRARY
|
|
||||||
PARASOLID_fg_LIBRARY
|
|
||||||
PARASOLID_frustrum_LIBRARY
|
|
||||||
PARASOLID_INCLUDE_DIR
|
|
||||||
PARASOLID_FRUSTRUM_C
|
|
||||||
PARASOLID_FG_C)
|
|
||||||
@@ -1,153 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(PERFORMER_ROOT_DIR
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for OpenGL Performer library")
|
|
||||||
|
|
||||||
|
|
||||||
find_path(PERFORMER_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
pf.h
|
|
||||||
HINTS
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include
|
|
||||||
include/Performer
|
|
||||||
Performer
|
|
||||||
PATHS
|
|
||||||
$ENV{PFROOT})
|
|
||||||
mark_as_advanced(PERFORMER_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
set(_pf_libnameprefix lib)
|
|
||||||
find_library(PERFORMER_PFDU_UTIL_LIBRARY
|
|
||||||
NAMES
|
|
||||||
libpfdu-util
|
|
||||||
HINTS
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
PATHS
|
|
||||||
$ENV{PFROOT})
|
|
||||||
else()
|
|
||||||
set(_pf_libnameprefix)
|
|
||||||
find_library(PERFORMER_PFDU_LIBRARY
|
|
||||||
NAMES
|
|
||||||
pfdu
|
|
||||||
HINTS
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
PATHS
|
|
||||||
$ENV{PFROOT})
|
|
||||||
find_library(PERFORMER_PFUTIL_LIBRARY
|
|
||||||
NAMES
|
|
||||||
pfutil
|
|
||||||
HINTS
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
PATHS
|
|
||||||
$ENV{PFROOT})
|
|
||||||
if(PERFORMER_PFDU_LIBRARY AND PERFORMER_PFUTIL_LIBRARY)
|
|
||||||
set(PERFORMER_PFDU_UTIL_LIBRARY
|
|
||||||
${PERFORMER_PFDU_LIBRARY}
|
|
||||||
${PERFORMER_PFUTIL_LIBRARY})
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(PERFORMER_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_pf_libnameprefix}pf
|
|
||||||
HINTS
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
PATHS
|
|
||||||
$ENV{PFROOT})
|
|
||||||
find_library(PERFORMER_PFUI_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_pf_libnameprefix}pfui
|
|
||||||
HINTS
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
PATHS
|
|
||||||
$ENV{PFROOT})
|
|
||||||
find_library(PERFORMER_PFV_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_pf_libnameprefix}pfv
|
|
||||||
HINTS
|
|
||||||
"${PERFORMER_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
PATHS
|
|
||||||
$ENV{PFROOT})
|
|
||||||
|
|
||||||
###
|
|
||||||
# Prereq: OpenGL
|
|
||||||
###
|
|
||||||
|
|
||||||
find_package(OpenGL QUIET)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Performer
|
|
||||||
DEFAULT_MSG
|
|
||||||
PERFORMER_LIBRARY
|
|
||||||
PERFORMER_PFUI_LIBRARY
|
|
||||||
PERFORMER_PFV_LIBRARY
|
|
||||||
PERFORMER_PFDU_UTIL_LIBRARY
|
|
||||||
PERFORMER_INCLUDE_DIR
|
|
||||||
OPENGL_FOUND)
|
|
||||||
|
|
||||||
if(PERFORMER_FOUND)
|
|
||||||
set(PERFORMER_INCLUDE_DIRS
|
|
||||||
"${OPENGL_INCLUDE_DIR}"
|
|
||||||
"${PERFORMER_INCLUDE_DIR}")
|
|
||||||
if(PERFORMER_INCLUDE_DIR MATCHES ".*Performer.*")
|
|
||||||
list(APPEND PERFORMER_INCLUDE_DIRS "${PERFORMER_INCLUDE_DIR}/..")
|
|
||||||
endif()
|
|
||||||
set(PERFORMER_LIBRARIES "${OPENGL_LIBRARY}" "${PERFORMER_LIBRARY}")
|
|
||||||
mark_as_advanced(PERFORMER_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(PERFORMER_LIBRARY
|
|
||||||
PERFORMER_PFUI_LIBRARY
|
|
||||||
PERFORMER_PFV_LIBRARY
|
|
||||||
PERFORMER_PFDU_LIBRARY
|
|
||||||
PERFORMER_PFUTIL_LIBRARY
|
|
||||||
PERFORMER_PFDU_UTIL_LIBRARY
|
|
||||||
PERFORMER_INCLUDE_DIR)
|
|
||||||
@@ -1,78 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(NOT PERL_FOUND)
|
|
||||||
find_package(Perl QUIET)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_deps_check)
|
|
||||||
if(PERL_FOUND)
|
|
||||||
foreach(module ${PerlModules_FIND_COMPONENTS})
|
|
||||||
string(REPLACE "::" "/" modfilename "${module}.pm")
|
|
||||||
string(REPLACE "::" "_" modvarname "PERLMODULES_${module}_MODULE")
|
|
||||||
string(TOUPPER "${modvarname}" modvarname)
|
|
||||||
list(APPEND _deps_check ${modvarname})
|
|
||||||
if(NOT ${modvarname})
|
|
||||||
if(NOT PerlModules_FIND_QUIETLY)
|
|
||||||
message(STATUS "Checking for perl module ${module}")
|
|
||||||
endif()
|
|
||||||
execute_process(COMMAND
|
|
||||||
"${PERL_EXECUTABLE}"
|
|
||||||
"-e"
|
|
||||||
"use ${module}; print \$INC{\"${modfilename}\"}"
|
|
||||||
RESULT_VARIABLE result_code
|
|
||||||
OUTPUT_VARIABLE filename
|
|
||||||
ERROR_VARIABLE error_info
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
if(result_code EQUAL 0)
|
|
||||||
if(NOT PerlModules_FIND_QUIETLY)
|
|
||||||
message(STATUS
|
|
||||||
"Checking for perl module ${module} - found at ${filename}")
|
|
||||||
endif()
|
|
||||||
set(${modvarname}
|
|
||||||
"${filename}"
|
|
||||||
CACHE
|
|
||||||
FILEPATH
|
|
||||||
"Location found for module ${module}"
|
|
||||||
FORCE)
|
|
||||||
mark_as_advanced(${modvarname})
|
|
||||||
else()
|
|
||||||
if(NOT PerlModules_FIND_QUIETLY)
|
|
||||||
message(STATUS "Checking for perl module ${module} - failed")
|
|
||||||
endif()
|
|
||||||
set(${modvarname}
|
|
||||||
"NOTFOUND"
|
|
||||||
CACHE
|
|
||||||
FILEPATH
|
|
||||||
"No location found for module ${module}"
|
|
||||||
FORCE)
|
|
||||||
file(APPEND
|
|
||||||
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
|
|
||||||
"Determining if the Perl module ${module} exists failed with the following error output:\n"
|
|
||||||
"${error_info}\n\n")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(PerlModules
|
|
||||||
DEFAULT_MSG
|
|
||||||
PERL_FOUND
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(QVRPN_ROOT_DIR
|
|
||||||
"${QVRPN_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for QVRPN")
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_LIBSUFFIXES /lib64 /lib)
|
|
||||||
else()
|
|
||||||
set(_LIBSUFFIXES /lib)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure QVRPN
|
|
||||||
###
|
|
||||||
|
|
||||||
find_path(QVRPN_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
vrpn_QMainloopContainer.h
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include
|
|
||||||
include/qvrpn
|
|
||||||
HINTS
|
|
||||||
"${QVRPN_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_library(QVRPN_LIBRARY
|
|
||||||
NAMES
|
|
||||||
qvrpn
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_libsuffixes}
|
|
||||||
HINTS
|
|
||||||
"${QVRPN_ROOT_DIR}")
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(QVRPN
|
|
||||||
DEFAULT_MSG
|
|
||||||
QVRPN_LIBRARY
|
|
||||||
QVRPN_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(QVRPN_FOUND)
|
|
||||||
set(QVRPN_INCLUDE_DIRS "${QVRPN_INCLUDE_DIR}")
|
|
||||||
set(QVRPN_LIBRARIES "${QVRPN_LIBRARY}")
|
|
||||||
|
|
||||||
mark_as_advanced(QVRPN_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(QVRPN_LIBRARY QVRPN_INCLUDE_DIR)
|
|
||||||
@@ -1,162 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "Sonix 1.2")
|
|
||||||
set(_RELEASE_NAMES sonix-1_2 libsonix-1_2)
|
|
||||||
set(_DEBUG_NAMES sonix_d-1_2 libsonix_d-1_2)
|
|
||||||
set(_DIR sonix-1.2)
|
|
||||||
set(_HEADER snx/sonix.h)
|
|
||||||
set(_FP_PKG_NAME sonix)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(Sonix12_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(SONIX12_ROOT_DIR
|
|
||||||
"${SONIX12_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for Sonix")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(SONIX12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT SONIX12_ROOT_DIR)
|
|
||||||
set(SONIX12_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${SONIX12_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(SONIX12_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(SONIX12_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(SONIX12_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(SONIX12)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
if(NOT VPR20_FOUND)
|
|
||||||
find_package(VPR20 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT GMTL_FOUND)
|
|
||||||
find_package(GMTL ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Sonix12
|
|
||||||
DEFAULT_MSG
|
|
||||||
SONIX12_LIBRARY
|
|
||||||
SONIX12_INCLUDE_DIR
|
|
||||||
VPR20_FOUND
|
|
||||||
VPR20_LIBRARIES
|
|
||||||
VPR20_INCLUDE_DIR
|
|
||||||
GMTL_FOUND
|
|
||||||
GMTL_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(SONIX12_FOUND)
|
|
||||||
set(_DEPS ${VPR20_LIBRARIES})
|
|
||||||
|
|
||||||
set(SONIX12_INCLUDE_DIRS ${SONIX12_INCLUDE_DIR})
|
|
||||||
list(APPEND
|
|
||||||
SONIX12_INCLUDE_DIRS
|
|
||||||
${VPR20_INCLUDE_DIRS}
|
|
||||||
${GMTL_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
clean_directory_list(SONIX12_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER22_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(SONIX12 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(SONIX12_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(SONIX12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(SONIX12_LIBRARY_RELEASE
|
|
||||||
SONIX12_LIBRARY_DEBUG
|
|
||||||
SONIX12_INCLUDE_DIR)
|
|
||||||
@@ -1,163 +0,0 @@
|
|||||||
# - 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>
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "Sonix 1.4")
|
|
||||||
set(_FP_PKG_NAME sonix)
|
|
||||||
set(_RELEASE_NAMES)
|
|
||||||
set(_DEBUG_NAMES)
|
|
||||||
foreach(VER 1_4 1_4_0 1_4_1 1_4_2)
|
|
||||||
list(APPEND _RELEASE_NAMES ${_FP_PKG_NAME}-${VER})
|
|
||||||
list(APPEND _DEBUG_NAMES ${_FP_PKG_NAME}_d-${VER})
|
|
||||||
endforeach()
|
|
||||||
set(_DIR sonix-1.4)
|
|
||||||
set(_HEADER snx/sonix.h)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(SONIX14_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(SONIX14_ROOT_DIR
|
|
||||||
"${SONIX14_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for Sonix")
|
|
||||||
if(DEFINED VRJUGGLER30_ROOT_DIR)
|
|
||||||
mark_as_advanced(SONIX14_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT SONIX14_ROOT_DIR)
|
|
||||||
set(SONIX14_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${SONIX14_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(SONIX14_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(SONIX14_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(SONIX14_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(SONIX14)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
if(NOT VPR22_FOUND)
|
|
||||||
find_package(VPR22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT GMTL_FOUND)
|
|
||||||
find_package(GMTL ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(SONIX14
|
|
||||||
DEFAULT_MSG
|
|
||||||
SONIX14_LIBRARY
|
|
||||||
SONIX14_INCLUDE_DIR
|
|
||||||
VPR22_FOUND
|
|
||||||
VPR22_LIBRARIES
|
|
||||||
VPR22_INCLUDE_DIR
|
|
||||||
GMTL_FOUND
|
|
||||||
GMTL_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(SONIX14_FOUND)
|
|
||||||
set(_DEPS ${VPR22_LIBRARIES})
|
|
||||||
|
|
||||||
set(SONIX14_INCLUDE_DIRS ${SONIX14_INCLUDE_DIR})
|
|
||||||
list(APPEND
|
|
||||||
SONIX14_INCLUDE_DIRS
|
|
||||||
${VPR22_INCLUDE_DIRS}
|
|
||||||
${GMTL_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
clean_directory_list(SONIX14_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER30_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(SONIX14 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(SONIX14_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(SONIX14_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(SONIX14_LIBRARY_RELEASE
|
|
||||||
SONIX14_LIBRARY_DEBUG
|
|
||||||
SONIX14_INCLUDE_DIR)
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
# If we were sought quietly, any dependencies should be quiet as well
|
|
||||||
if(TR1_FIND_QUIETLY)
|
|
||||||
set(_findflags QUIET)
|
|
||||||
else()
|
|
||||||
set(_findflags)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_check)
|
|
||||||
set(TR1_INCLUDE_DIRS)
|
|
||||||
set(TR1_LIBRARY_DIRS)
|
|
||||||
|
|
||||||
get_filename_component(_findtr1moddir
|
|
||||||
${CMAKE_CURRENT_LIST_FILE}
|
|
||||||
PATH)
|
|
||||||
set(TR1_USE_FILE "${_findtr1moddir}/UseTR1.cmake")
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
if(MSVC)
|
|
||||||
set(PLATFORM "Visual Studio - no workarounds")
|
|
||||||
else()
|
|
||||||
set(PLATFORM "Unknown Windows platform - no workarounds set")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC_VERSION LESS 1600)
|
|
||||||
# Earlier than VS 2010
|
|
||||||
# Missing stdint.h/cstdint
|
|
||||||
set(PLATFORM "Visual Studio older than Visual Studio 2010")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC_VERSION LESS 1500)
|
|
||||||
# Earlier than VS 2008
|
|
||||||
# Missing all of TR1
|
|
||||||
# (The feature pack or SP1 is required for VS2008 TR support)
|
|
||||||
set(PLATFORM "Visual Studio older than Visual Studio 2008")
|
|
||||||
list(APPEND _check Boost_FOUND)
|
|
||||||
find_package(Boost COMPONENTS math_c99 math_tr1 ${_findflags})
|
|
||||||
list(APPEND
|
|
||||||
TR1_INCLUDE_DIRS
|
|
||||||
"${Boost_INCLUDE_DIR}/boost/tr1/tr1"
|
|
||||||
"${Boost_INCLUDE_DIR}/boost/tr1"
|
|
||||||
"${Boost_INCLUDE_DIR}")
|
|
||||||
list(APPEND TR1_LIBRARY_DIRS ${Boost_LIBRARY_DIRS})
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(PLATFORM "Non-Windows Platform - no workarounds set")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(TR1 DEFAULT_MSG PLATFORM ${_check})
|
|
||||||
@@ -1,68 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(TOON_ROOT_DIR
|
|
||||||
"${TOON_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for TooN")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Dependencies
|
|
||||||
###
|
|
||||||
if(NOT LAPACKLIBS_ROOT_DIR)
|
|
||||||
set(LAPACKLIBS_ROOT_DIR "${TOON_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
find_package(LAPACKLibs QUIET)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure TooN
|
|
||||||
###
|
|
||||||
find_path(TOON_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
TooN/TooN.h
|
|
||||||
HINTS
|
|
||||||
"${TOON_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
mark_as_advanced(TOON_INCLUDE_DIR)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(TooN
|
|
||||||
DEFAULT_MSG
|
|
||||||
TOON_INCLUDE_DIR
|
|
||||||
LAPACKLIBS_FOUND)
|
|
||||||
|
|
||||||
if(TOON_FOUND)
|
|
||||||
set(TOON_INCLUDE_DIRS "${TOON_INCLUDE_DIR}")
|
|
||||||
set(TOON_LIBRARIES ${LAPACKLIBS_LIBRARIES})
|
|
||||||
mark_as_advanced(TOON_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,84 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(TOONTAG_ROOT_DIR
|
|
||||||
"${TOONTAG_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for tag")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Dependencies
|
|
||||||
###
|
|
||||||
if(NOT TOON_ROOT_DIR)
|
|
||||||
set(TOON_ROOT_DIR "${TOONTAG_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
find_package(TooN QUIET)
|
|
||||||
|
|
||||||
find_package(TR1 QUIET)
|
|
||||||
include("${TR1_USE_FILE}")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure tag
|
|
||||||
###
|
|
||||||
find_path(TOONTAG_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
tag/helpers.h
|
|
||||||
HINTS
|
|
||||||
"${TOONTAG_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
tag
|
|
||||||
include)
|
|
||||||
mark_as_advanced(TOONTAG_INCLUDE_DIR)
|
|
||||||
|
|
||||||
find_library(TOONTAG_LIBRARY
|
|
||||||
NAMES
|
|
||||||
toontag
|
|
||||||
HINTS
|
|
||||||
"${TOONTAG_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
lib64)
|
|
||||||
mark_as_advanced(TOONTAG_LIBRARY)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(TooNtag
|
|
||||||
DEFAULT_MSG
|
|
||||||
TOONTAG_LIBRARY
|
|
||||||
TOONTAG_INCLUDE_DIR
|
|
||||||
TOON_FOUND)
|
|
||||||
|
|
||||||
if(TOONTAG_FOUND)
|
|
||||||
set(TOONTAG_INCLUDE_DIRS "${TOONTAG_INCLUDE_DIR}" ${TOON_INCLUDE_DIRS})
|
|
||||||
set(TOONTAG_LIBRARIES "${TOONTAG_LIBRARY}" ${TOON_LIBRARIES})
|
|
||||||
mark_as_advanced(TOONTAG_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,153 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "Tweek 1.2")
|
|
||||||
set(_RELEASE_NAMES tweek-1_2 libtweek-1_2)
|
|
||||||
set(_DEBUG_NAMES tweek_d-1_2 libtweek_d-1_2)
|
|
||||||
set(_DIR tweek-1.2)
|
|
||||||
set(_HEADER tweek/tweek.h)
|
|
||||||
set(_FP_PKG_NAME tweek)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(Tweek12_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(TWEEK12_ROOT_DIR
|
|
||||||
"${TWEEK12_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for Tweek")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(TWEEK12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT TWEEK12_ROOT_DIR)
|
|
||||||
set(TWEEK12_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${TWEEK12_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(TWEEK12_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(TWEEK12_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(TWEEK12_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(TWEEK12)
|
|
||||||
|
|
||||||
# Dependency
|
|
||||||
if(NOT VPR20_FOUND)
|
|
||||||
find_package(VPR20 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Tweek12
|
|
||||||
DEFAULT_MSG
|
|
||||||
TWEEK12_LIBRARY
|
|
||||||
TWEEK12_INCLUDE_DIR
|
|
||||||
VPR20_FOUND
|
|
||||||
VPR20_LIBRARIES
|
|
||||||
VPR20_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(TWEEK12_FOUND)
|
|
||||||
set(_DEPS ${VPR20_LIBRARIES})
|
|
||||||
|
|
||||||
set(TWEEK12_INCLUDE_DIRS ${TWEEK12_INCLUDE_DIR})
|
|
||||||
list(APPEND TWEEK12_INCLUDE_DIRS ${VPR20_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
clean_directory_list(TWEEK12_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER22_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(TWEEK12 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(TWEEK12_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(TWEEK12_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(TWEEK12_LIBRARY_RELEASE
|
|
||||||
TWEEK12_LIBRARY_DEBUG
|
|
||||||
TWEEK12_INCLUDE_DIR)
|
|
||||||
@@ -1,154 +0,0 @@
|
|||||||
# - 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>
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "Tweek 1.4")
|
|
||||||
set(_FP_PKG_NAME sonix)
|
|
||||||
set(_RELEASE_NAMES)
|
|
||||||
set(_DEBUG_NAMES)
|
|
||||||
foreach(VER 1_4 1_4_0 1_4_1 1_4_2)
|
|
||||||
list(APPEND _RELEASE_NAMES ${_FP_PKG_NAME}-${VER})
|
|
||||||
list(APPEND _DEBUG_NAMES ${_FP_PKG_NAME}_d-${VER})
|
|
||||||
endforeach()
|
|
||||||
set(_DIR tweek-1.4)
|
|
||||||
set(_HEADER tweek/tweek.h)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(TWEEK14_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(TWEEK14_ROOT_DIR
|
|
||||||
"${TWEEK14_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for Tweek")
|
|
||||||
if(DEFINED VRJUGGLER30_ROOT_DIR)
|
|
||||||
mark_as_advanced(TWEEK14_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT TWEEK14_ROOT_DIR)
|
|
||||||
set(TWEEK14_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${TWEEK14_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(TWEEK14_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(TWEEK14_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(TWEEK14_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(TWEEK14)
|
|
||||||
|
|
||||||
# Dependency
|
|
||||||
if(NOT VPR22_FOUND)
|
|
||||||
find_package(VPR22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(TWEEK14
|
|
||||||
DEFAULT_MSG
|
|
||||||
TWEEK14_LIBRARY
|
|
||||||
TWEEK14_INCLUDE_DIR
|
|
||||||
VPR22_FOUND
|
|
||||||
VPR22_LIBRARIES
|
|
||||||
VPR22_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(TWEEK14_FOUND)
|
|
||||||
set(_DEPS ${VPR22_LIBRARIES})
|
|
||||||
|
|
||||||
set(TWEEK14_INCLUDE_DIRS ${TWEEK14_INCLUDE_DIR})
|
|
||||||
list(APPEND TWEEK14_INCLUDE_DIRS ${VPR22_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
clean_directory_list(TWEEK14_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER30_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(TWEEK14 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(TWEEK14_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(TWEEK14_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(TWEEK14_LIBRARY_RELEASE
|
|
||||||
TWEEK14_LIBRARY_DEBUG
|
|
||||||
TWEEK14_INCLUDE_DIR)
|
|
||||||
@@ -1,276 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(_HUMAN "VPR 2.0")
|
|
||||||
set(_RELEASE_NAMES vpr-2_0 libvpr-2_0)
|
|
||||||
set(_DEBUG_NAMES vpr_d-2_0 libvpr_d-2_0)
|
|
||||||
set(_DIR vpr-2.0)
|
|
||||||
set(_HEADER vpr/vpr.h)
|
|
||||||
set(_FP_PKG_NAME vpr)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(VPR20_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_extra_libs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VPR20_ROOT_DIR
|
|
||||||
"${VPR20_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VPR")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(VPR20_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT VPR20_ROOT_DIR)
|
|
||||||
set(VPR20_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${VPR20_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(VPR20_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(VPR20_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(VPR20_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(VPR20)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
set(_deps_libs)
|
|
||||||
set(_deps_includes)
|
|
||||||
set(_deps_check)
|
|
||||||
if(COMMAND cmake_policy)
|
|
||||||
cmake_policy(SET CMP0011 NEW)
|
|
||||||
cmake_policy(SET CMP0012 NEW)
|
|
||||||
endif()
|
|
||||||
if((NOT "${Boost_FOUND}")
|
|
||||||
OR (NOT "${Boost_FILESYSTEM_FOUND}")
|
|
||||||
OR (NOT "${Boost_SIGNALS_FOUND}")
|
|
||||||
OR (Boost_VERSION GREATER 103401 AND NOT Boost_SYSTEM_FOUND))
|
|
||||||
if(VPR20_LIBRARY_RELEASE)
|
|
||||||
# Find Boost in the same place as VPR
|
|
||||||
get_filename_component(VPR20_LIBRARY_DIR
|
|
||||||
${VPR20_LIBRARY_RELEASE}
|
|
||||||
PATH)
|
|
||||||
set(BOOST_ROOT ${VPR20_LIBRARY_DIR}/../)
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
# VR Juggler 2.2.1 binaries for Mac are built against single-threaded boost.
|
|
||||||
set(Boost_USE_STATIC_LIBS ON)
|
|
||||||
#set(Boost_USE_MULTITHREADED OFF)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_package(Boost
|
|
||||||
1.33.1
|
|
||||||
${_FIND_FLAGS}
|
|
||||||
COMPONENTS
|
|
||||||
filesystem
|
|
||||||
signals)
|
|
||||||
|
|
||||||
mark_as_advanced(Boost_LIB_DIAGNOSTIC_DEFINITIONS)
|
|
||||||
|
|
||||||
if(WIN32 AND NOT Boost_FOUND)
|
|
||||||
if(NOT VPR20_FIND_QUIETLY)
|
|
||||||
message(STATUS
|
|
||||||
"Searching for Boost using forced '-vc80' override...")
|
|
||||||
endif()
|
|
||||||
set(Boost_COMPILER "-vc80")
|
|
||||||
find_package(Boost
|
|
||||||
1.33.1
|
|
||||||
${_FIND_FLAGS}
|
|
||||||
COMPONENTS
|
|
||||||
filesystem
|
|
||||||
signals)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(Boost_VERSION GREATER 103401)
|
|
||||||
find_package(Boost
|
|
||||||
${_FIND_FLAGS}
|
|
||||||
COMPONENTS
|
|
||||||
filesystem
|
|
||||||
system
|
|
||||||
signals)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND
|
|
||||||
_deps_libs
|
|
||||||
${Boost_FILESYSTEM_LIBRARY}
|
|
||||||
${Boost_SYSTEM_LIBRARY}
|
|
||||||
${Boost_SIGNALS_LIBRARY})
|
|
||||||
list(APPEND _deps_includes ${Boost_INCLUDE_DIRS})
|
|
||||||
list(APPEND
|
|
||||||
_deps_check
|
|
||||||
Boost_FILESYSTEM_LIBRARY
|
|
||||||
Boost_SIGNALS_LIBRARY
|
|
||||||
Boost_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(NOT CPPDOM_FOUND)
|
|
||||||
find_package(CPPDOM ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND _deps_libs ${CPPDOM_LIBRARIES})
|
|
||||||
list(APPEND _deps_includes ${CPPDOM_INCLUDE_DIRS})
|
|
||||||
list(APPEND _deps_check CPPDOM_LIBRARIES CPPDOM_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(UNIX AND NOT WIN32)
|
|
||||||
if(NOT THREADS_FOUND)
|
|
||||||
find_package(Threads ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND _deps_check THREADS_FOUND)
|
|
||||||
list(APPEND _deps_libs ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
|
|
||||||
if(NOT APPLE)
|
|
||||||
find_library(VPR20_libuuid_LIBRARY NAMES uuid)
|
|
||||||
mark_as_advanced(VPR20_libuuid_LIBRARY)
|
|
||||||
list(APPEND _deps_check VPR20_libuuid_LIBRARY)
|
|
||||||
list(APPEND _deps_libs ${VPR20_libuuid_LIBRARY})
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
find_library(VPR20_libnspr4_LIBRARY
|
|
||||||
NAMES
|
|
||||||
nspr4
|
|
||||||
libnspr4
|
|
||||||
HINTS
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} NSPR4 library full path")
|
|
||||||
|
|
||||||
find_library(VPR20_libplc4_LIBRARY
|
|
||||||
NAMES
|
|
||||||
plc4
|
|
||||||
libplc4
|
|
||||||
HINTS
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} PLC4 library full path")
|
|
||||||
mark_as_advanced(VPR20_libnspr4_LIBRARY VPR20_libplc4_LIBRARY)
|
|
||||||
list(APPEND _deps_check VPR20_libnspr4_LIBRARY VPR20_libplc4_LIBRARY)
|
|
||||||
list(APPEND
|
|
||||||
_deps_libs
|
|
||||||
${VPR20_libnspr4_LIBRARY}
|
|
||||||
${VPR20_libplc4_LIBRARY})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VPR20
|
|
||||||
DEFAULT_MSG
|
|
||||||
VPR20_LIBRARY
|
|
||||||
VPR20_INCLUDE_DIR
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
if(VPR20_FOUND)
|
|
||||||
|
|
||||||
set(VPR20_INCLUDE_DIRS "${VPR20_INCLUDE_DIR}" ${_deps_includes})
|
|
||||||
|
|
||||||
clean_directory_list(VPR20_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER22_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(VPR20 ${_deps_libs})
|
|
||||||
else()
|
|
||||||
clean_library_list(VPR20_LIBRARIES ${VPR20_LIBRARY} ${_deps_libs})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VPR20_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VPR20_LIBRARY_RELEASE
|
|
||||||
VPR20_LIBRARY_DEBUG
|
|
||||||
VPR20_INCLUDE_DIR)
|
|
||||||
@@ -1,232 +0,0 @@
|
|||||||
# - 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>
|
|
||||||
|
|
||||||
set(_HUMAN "VPR 2.2")
|
|
||||||
set(_FP_PKG_NAME vpr)
|
|
||||||
set(_RELEASE_NAMES)
|
|
||||||
set(_DEBUG_NAMES)
|
|
||||||
foreach(VER 2_2 2_2_0 2_2_1 2_2_2)
|
|
||||||
list(APPEND _RELEASE_NAMES ${_FP_PKG_NAME}-${VER})
|
|
||||||
list(APPEND _DEBUG_NAMES ${_FP_PKG_NAME}_d-${VER})
|
|
||||||
endforeach()
|
|
||||||
set(_DIR vpr-2.2)
|
|
||||||
set(_HEADER vpr/vpr.h)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(VPR22_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_extra_libs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VPR22_ROOT_DIR
|
|
||||||
"${VPR22_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VPR")
|
|
||||||
if(DEFINED VRJUGGLER30_ROOT_DIR)
|
|
||||||
mark_as_advanced(VPR22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT VPR22_ROOT_DIR)
|
|
||||||
set(VPR22_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${VPR22_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(VPR22_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(VPR22_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(VPR22_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(VPR22)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
set(_deps_libs)
|
|
||||||
set(_deps_includes)
|
|
||||||
set(_deps_check)
|
|
||||||
if(COMMAND cmake_policy)
|
|
||||||
cmake_policy(SET CMP0011 NEW)
|
|
||||||
cmake_policy(SET CMP0012 NEW)
|
|
||||||
endif()
|
|
||||||
if((NOT Boost_FOUND)
|
|
||||||
OR (NOT Boost_FILESYSTEM_FOUND)
|
|
||||||
OR (NOT Boost_SIGNALS_FOUND)
|
|
||||||
OR (NOT Boost_SYSTEM_FOUND)
|
|
||||||
OR (NOT Boost_PROGRAM_OPTIONS_FOUND)
|
|
||||||
OR (NOT Boost_DATE_TIME_FOUND)
|
|
||||||
OR (NOT Boost_REGEX_FOUND))
|
|
||||||
if(VPR22_LIBRARY_RELEASE)
|
|
||||||
# Find Boost in the same place as VPR
|
|
||||||
get_filename_component(VPR22_LIBRARY_DIR
|
|
||||||
${VPR22_LIBRARY_RELEASE}
|
|
||||||
PATH)
|
|
||||||
set(BOOST_ROOT ${VPR22_LIBRARY_DIR}/../)
|
|
||||||
|
|
||||||
find_package(Boost
|
|
||||||
1.40.0
|
|
||||||
${_FIND_FLAGS}
|
|
||||||
COMPONENTS
|
|
||||||
filesystem
|
|
||||||
system
|
|
||||||
signals
|
|
||||||
program_options
|
|
||||||
date_time
|
|
||||||
regex)
|
|
||||||
|
|
||||||
mark_as_advanced(Boost_LIB_DIAGNOSTIC_DEFINITIONS)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND
|
|
||||||
_deps_libs
|
|
||||||
${Boost_FILESYSTEM_LIBRARY}
|
|
||||||
${Boost_SYSTEM_LIBRARY}
|
|
||||||
${Boost_SIGNALS_LIBRARY}
|
|
||||||
${Boost_PROGRAM_OPTIONS_LIBRARY}
|
|
||||||
${Boost_DATE_TIME_LIBRARY}
|
|
||||||
${Boost_REGEX_LIBRARY})
|
|
||||||
list(APPEND _deps_includes ${Boost_INCLUDE_DIRS})
|
|
||||||
list(APPEND
|
|
||||||
_deps_check
|
|
||||||
Boost_FILESYSTEM_LIBRARY
|
|
||||||
Boost_SYSTEM_LIBRARY
|
|
||||||
Boost_SIGNALS_LIBRARY
|
|
||||||
Boost_PROGRAM_OPTIONS_LIBRARY
|
|
||||||
Boost_DATE_TIME_LIBRARY
|
|
||||||
Boost_REGEX_LIBRARY
|
|
||||||
Boost_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(NOT CPPDOM_FOUND)
|
|
||||||
find_package(CPPDOM ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND _deps_libs ${CPPDOM_LIBRARIES})
|
|
||||||
list(APPEND _deps_includes ${CPPDOM_INCLUDE_DIRS})
|
|
||||||
list(APPEND _deps_check CPPDOM_LIBRARIES CPPDOM_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(UNIX AND NOT WIN32)
|
|
||||||
if(NOT THREADS_FOUND)
|
|
||||||
find_package(Threads ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND _deps_check THREADS_FOUND)
|
|
||||||
list(APPEND _deps_libs ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
|
|
||||||
if(NOT APPLE)
|
|
||||||
find_library(VPR22_libuuid_LIBRARY NAMES uuid)
|
|
||||||
mark_as_advanced(VPR22_libuuid_LIBRARY)
|
|
||||||
if(VPR22_libuuid_LIBRARY)
|
|
||||||
list(APPEND _deps_libs ${VPR22_libuuid_LIBRARY})
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VPR22
|
|
||||||
DEFAULT_MSG
|
|
||||||
VPR22_LIBRARY
|
|
||||||
VPR22_INCLUDE_DIR
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
if(VPR22_FOUND)
|
|
||||||
|
|
||||||
set(VPR22_INCLUDE_DIRS ${VPR22_INCLUDE_DIR} ${_deps_includes})
|
|
||||||
|
|
||||||
clean_directory_list(VPR22_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER30_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(VPR22 ${_deps_libs})
|
|
||||||
else()
|
|
||||||
clean_library_list(VPR22_LIBRARIES ${VPR22_LIBRARY} ${_deps_libs})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VPR22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VPR22_LIBRARY_RELEASE
|
|
||||||
VPR22_LIBRARY_DEBUG
|
|
||||||
VPR22_INCLUDE_DIR)
|
|
||||||
@@ -1,304 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(ListCombinations)
|
|
||||||
include(CheckVersion)
|
|
||||||
include(ListFilter)
|
|
||||||
|
|
||||||
set(VPS_ROOT_DIR
|
|
||||||
"${VPS_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VPS")
|
|
||||||
|
|
||||||
# Try the config file mode.
|
|
||||||
find_package(VPS QUIET NO_MODULE)
|
|
||||||
if(VPS_FOUND)
|
|
||||||
mark_as_advanced(VPS_DIR VPS_ROOT_DIR)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT BITS)
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(BITS 64)
|
|
||||||
else()
|
|
||||||
set(BITS 32)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_vpslibnames)
|
|
||||||
set(_grviewerlibnames)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Cray MTA(Multi-Threaded Architecture) family: CMake build not tested
|
|
||||||
if("${CMAKE_SYSTEM_NAME}" STREQUAL "MTX")
|
|
||||||
set(VPS_PLATFORM MTX)
|
|
||||||
set(_VPS_FLAGS_32 "-pl all.pl -par")
|
|
||||||
set(_VPS_FLAGS_64 "-pl all.pl -par")
|
|
||||||
###
|
|
||||||
# Linux
|
|
||||||
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
|
|
||||||
set(VPS_PLATFORM LINUX)
|
|
||||||
set(_VPS_FLAGS_32 "-O2 -Wno-write-strings")
|
|
||||||
set(_VPS_FLAGS_64 "-m64 -O3 -ffast-math -funroll-all-loops -Wno-write-strings")
|
|
||||||
|
|
||||||
###
|
|
||||||
# IBM-AIX: CMake build not tested
|
|
||||||
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "AIX")
|
|
||||||
set(VPS_PLATFORM AIX)
|
|
||||||
set(_VPS_FLAGS_32 "-q32")
|
|
||||||
set(_VPS_FLAGS_64 "-q64")
|
|
||||||
|
|
||||||
###
|
|
||||||
# HP-UX: CMake build not tested
|
|
||||||
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "HP-UX")
|
|
||||||
set(VPS_PLATFORM HPUX)
|
|
||||||
set(_VPS_FLAGS_32 "-O")
|
|
||||||
|
|
||||||
###
|
|
||||||
# SunOS: CMake build not tested
|
|
||||||
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "SunOS")
|
|
||||||
set(VPS_PLATFORM SOLARIS)
|
|
||||||
set(_VPS_FLAGS_32 "-O")
|
|
||||||
|
|
||||||
###
|
|
||||||
# IRIX: CMake build not tested
|
|
||||||
elseif("${CMAKE_SYSTEM_NAME}" MATCHES "IRIX")
|
|
||||||
set(VPS_PLATFORM IRIX)
|
|
||||||
set(_VPS_FLAGS_32 "-O2 -OPT")
|
|
||||||
set(_VPS_FLAGS_64 "-64 -O2 -OPT")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Mac OS X
|
|
||||||
elseif(APPLE AND "${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
|
|
||||||
set(VPS_PLATFORM MACOSX)
|
|
||||||
set(_VPS_FLAGS_32 "-O2 -lm -lobjc -lstdc++ -Wno-write-strings")
|
|
||||||
set(_VPS_FLAGS_64 "-m64 -O3 -ffast-math -funroll-all-loops -lm -lobjc -lstdc++ -Wno-write-strings")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Windows
|
|
||||||
elseif(WIN32)
|
|
||||||
set(VPS_PLATFORM WINDOWS)
|
|
||||||
set(_VPS_FLAGS_32 "-O2")
|
|
||||||
set(_VPS_FLAGS_64 "-O2")
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
set(DEFS_32 -D_CRT_SECURE_NO_DEPRECATE)
|
|
||||||
set(DEFS_64 -D_CRT_SECURE_NO_DEPRECATE)
|
|
||||||
if(MSVC60)
|
|
||||||
set(VPS_CRT "VC6")
|
|
||||||
elseif(MSVC70)
|
|
||||||
set(VPS_CRT "VC7")
|
|
||||||
elseif(MSVC71)
|
|
||||||
set(VPS_CRT "VC71")
|
|
||||||
elseif(MSVC80)
|
|
||||||
set(VPS_CRT "VC8")
|
|
||||||
elseif(MSVC90)
|
|
||||||
set(VPS_CRT "VC9")
|
|
||||||
elseif(MSVC10)
|
|
||||||
set(VPS_CRT "VC10")
|
|
||||||
else()
|
|
||||||
set(VPS_CRT "VC")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32 AND MSVC)
|
|
||||||
set(PLATFORM win${BITS})
|
|
||||||
set(_threadsuffix Mt)
|
|
||||||
if(MSVC71)
|
|
||||||
set(VC_VER vc71)
|
|
||||||
set(VC_VER_LONG vc71)
|
|
||||||
elseif(MSVC80)
|
|
||||||
set(VC_SHORT VC8)
|
|
||||||
set(VC_LONG MSVC80)
|
|
||||||
elseif(MSVC90)
|
|
||||||
set(VC_SHORT VC9)
|
|
||||||
set(VC_LONG MSVC90)
|
|
||||||
endif()
|
|
||||||
list(APPEND
|
|
||||||
_vpslibnames
|
|
||||||
"Vps${VC_SHORT}_${BITS}"
|
|
||||||
"Vps${VC_SHORT}_${BITS}${_threadsuffix}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND _vpslibnames "Vps${VPS_PLATFORM}${VPS_CRT}_${BITS}")
|
|
||||||
list(APPEND
|
|
||||||
_grviewerlibnames
|
|
||||||
"Viewer"
|
|
||||||
"GrViewer${VPS_PLATFORM}${VPS_CRT}_${BITS}")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure VPS
|
|
||||||
###
|
|
||||||
|
|
||||||
set(_incsearchdirs)
|
|
||||||
set(_libsearchdirs)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
program_files_glob(_dirs "/VPS*/")
|
|
||||||
program_files_glob(_dirs2 "/VPS/*/")
|
|
||||||
list(APPEND _dirs ${_dirs2})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list_combinations(_libsearchdirs
|
|
||||||
PREFIXES
|
|
||||||
"${VPS_ROOT_DIR}"
|
|
||||||
"${_dirs}"
|
|
||||||
SUFFIXES
|
|
||||||
"/lib"
|
|
||||||
"/Viewer")
|
|
||||||
list_combinations(_libsearchdirs2
|
|
||||||
PREFIXES
|
|
||||||
${_libsearchdirs}
|
|
||||||
SUFFIXES
|
|
||||||
"/Release"
|
|
||||||
"/RelWithDebInfo"
|
|
||||||
"/MinSizeRel"
|
|
||||||
"/Debug")
|
|
||||||
clean_directory_list(_libsearchdirs ${_libsearchdirs2})
|
|
||||||
|
|
||||||
list_combinations(_incsearchdirs
|
|
||||||
PREFIXES
|
|
||||||
"${VPS_ROOT_DIR}"
|
|
||||||
"${_dirs}"
|
|
||||||
SUFFIXES
|
|
||||||
"/include"
|
|
||||||
"/include/vps"
|
|
||||||
"/src"
|
|
||||||
"/../src"
|
|
||||||
"/Viewer"
|
|
||||||
"/../Viewer")
|
|
||||||
clean_directory_list(_incsearchdirs)
|
|
||||||
|
|
||||||
# If a version was specified, the least we can do is remove any directories
|
|
||||||
# from our search that contain too low of versions
|
|
||||||
if(VPS_FIND_VERSION)
|
|
||||||
|
|
||||||
set(_badversions)
|
|
||||||
foreach(_dir ${_libsearchdirs})
|
|
||||||
string(REGEX MATCH "([0-9]).([0-9]).([0-9])" _ver "${_dir}")
|
|
||||||
if(_ver)
|
|
||||||
string(REGEX
|
|
||||||
REPLACE
|
|
||||||
"([0-9]).([0-9]).([0-9])"
|
|
||||||
"\\1.\\2.\\3"
|
|
||||||
_verstd
|
|
||||||
"${_ver}")
|
|
||||||
check_version(_result VPS "${_verstd}")
|
|
||||||
if(NOT _result)
|
|
||||||
list(APPEND _badversions "${_verstd}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
foreach(_badver ${_badversions})
|
|
||||||
list_filter_out(_libsearchdirs ${_badver} ${_libsearchdirs})
|
|
||||||
list_filter_out(_incsearchdirs ${_badver} ${_incsearchdirs})
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
if(_libsearchdirs)
|
|
||||||
list(SORT _libsearchdirs)
|
|
||||||
list(REVERSE _libsearchdirs)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_incsearchdirs)
|
|
||||||
list(SORT _incsearchdirs)
|
|
||||||
list(REVERSE _incsearchdirs)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(VPS_vps_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_vpslibnames}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
LP
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs}
|
|
||||||
PATHS
|
|
||||||
${VPS_ROOT_DIR}
|
|
||||||
${VPS_ROOT_DIR}/src
|
|
||||||
${VPS_ROOT_DIR}/lib)
|
|
||||||
|
|
||||||
find_path(VPS_vps_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
Vps.h
|
|
||||||
HINTS
|
|
||||||
${_incsearchdirs}
|
|
||||||
PATHS
|
|
||||||
${VPS_ROOT_DIR}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include
|
|
||||||
include/vps
|
|
||||||
src)
|
|
||||||
|
|
||||||
find_library(VPS_grviewer_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_grviewerlibnames}
|
|
||||||
HINTS
|
|
||||||
${_libsearchdirs}
|
|
||||||
PATHS
|
|
||||||
${VPS_ROOT_DIR}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
Viewer)
|
|
||||||
|
|
||||||
find_path(VPS_grviewer_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
grViewerLib.h
|
|
||||||
HINTS
|
|
||||||
${_incsearchdirs}
|
|
||||||
PATHS
|
|
||||||
${VPS_ROOT_DIR}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include
|
|
||||||
include/vps
|
|
||||||
Viewer)
|
|
||||||
|
|
||||||
mark_as_advanced(VPS_vps_LIBRARY
|
|
||||||
VPS_vps_INCLUDE_DIR
|
|
||||||
VPS_grviewer_LIBRARY
|
|
||||||
VPS_grviewer_INCLUDE_DIR)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VPS
|
|
||||||
DEFAULT_MSG
|
|
||||||
VPS_vps_LIBRARY
|
|
||||||
VPS_vps_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(VPS_FOUND)
|
|
||||||
set(VPS_vps_INCLUDE_DIRS "${VPS_vps_INCLUDE_DIR}")
|
|
||||||
set(VPS_INCLUDE_DIRS "${VPS_vps_INCLUDE_DIR}")
|
|
||||||
set(VPS_grviewer_INCLUDE_DIRS
|
|
||||||
"${VPS_vps_INCLUDE_DIR}"
|
|
||||||
"${VPS_grviewer_INCLUDE_DIR}")
|
|
||||||
set(VPS_LIBRARIES "${VPS_vps_LIBRARY}")
|
|
||||||
set(VPS_grviewer_LIBRARIES
|
|
||||||
"${VPS_vps_LIBRARY}"
|
|
||||||
"${VPS_grviewer_LIBRARY}")
|
|
||||||
mark_as_advanced(VPS_ROOT_DIR VPS_DIR)
|
|
||||||
endif()
|
|
||||||
@@ -1,210 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "VR Juggler 2.2 Core")
|
|
||||||
set(_RELEASE_NAMES vrj-2_2 libvrj-2_2)
|
|
||||||
set(_DEBUG_NAMES vrj_d-2_2 libvrj_d-2_2)
|
|
||||||
set(_DIR vrjuggler-2.2)
|
|
||||||
set(_HEADER vrj/Kernel/Kernel.h)
|
|
||||||
set(_FP_PKG_NAME vrjuggler)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(VRJ22_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_extra_libs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJ22_ROOT_DIR
|
|
||||||
"${VRJ22_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VRJ")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(VRJ22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT VRJ22_ROOT_DIR)
|
|
||||||
set(VRJ22_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${VRJ22_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(VRJ22_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(VRJ22_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(VRJ22_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(VRJ22)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
if(NOT JCCL12_FOUND)
|
|
||||||
find_package(JCCL12 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT GADGETEER12_FOUND)
|
|
||||||
find_package(Gadgeteer12 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT VPR20_FOUND)
|
|
||||||
find_package(VPR20 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT SONIX12_FOUND)
|
|
||||||
find_package(Sonix12 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
if(NOT X11_FOUND)
|
|
||||||
find_package(X11 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
set(_CHECK_EXTRAS
|
|
||||||
X11_FOUND
|
|
||||||
X11_X11_LIB
|
|
||||||
X11_ICE_LIB
|
|
||||||
X11_SM_LIB
|
|
||||||
X11_INCLUDE_DIR)
|
|
||||||
endif()
|
|
||||||
if(UNIX AND NOT WIN32)
|
|
||||||
find_library(VRJ22_libm_LIBRARY m)
|
|
||||||
mark_as_advanced(VRJ22_libm_LIBRARY)
|
|
||||||
list(APPEND _CHECK_EXTRAS VRJ22_libm_LIBRARY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRJ22
|
|
||||||
DEFAULT_MSG
|
|
||||||
VRJ22_LIBRARY
|
|
||||||
VRJ22_INCLUDE_DIR
|
|
||||||
JCCL12_FOUND
|
|
||||||
JCCL12_LIBRARIES
|
|
||||||
JCCL12_INCLUDE_DIR
|
|
||||||
GADGETEER12_FOUND
|
|
||||||
GADGETEER12_LIBRARIES
|
|
||||||
GADGETEER12_INCLUDE_DIR
|
|
||||||
VPR20_FOUND
|
|
||||||
VPR20_LIBRARIES
|
|
||||||
VPR20_INCLUDE_DIR
|
|
||||||
SONIX12_FOUND
|
|
||||||
SONIX12_LIBRARIES
|
|
||||||
SONIX12_INCLUDE_DIR
|
|
||||||
${_CHECK_EXTRAS})
|
|
||||||
|
|
||||||
if(VRJ22_FOUND)
|
|
||||||
set(_DEPS
|
|
||||||
${JCCL12_LIBRARIES}
|
|
||||||
${GADGETEER12_LIBRARIES}
|
|
||||||
${VPR20_LIBRARIES}
|
|
||||||
${SONIX12_LIBRARIES})
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
list(APPEND _DEPS ${X11_X11_LIB} ${X11_ICE_LIB} ${X11_SM_LIB})
|
|
||||||
endif()
|
|
||||||
if(UNIX AND NOT WIN32)
|
|
||||||
list(APPEND _DEPS ${VRJ22_libm_LIBRARY})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJ22_INCLUDE_DIRS "${VRJ22_INCLUDE_DIR}")
|
|
||||||
list(APPEND
|
|
||||||
VRJ22_INCLUDE_DIRS
|
|
||||||
${JCCL12_INCLUDE_DIRS}
|
|
||||||
${GADGETEER12_INCLUDE_DIRS}
|
|
||||||
${VPR20_INCLUDE_DIRS}
|
|
||||||
${SONIX12_INCLUDE_DIRS})
|
|
||||||
clean_directory_list(VRJ22_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER22_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(VRJ22 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(VRJ22_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJ22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJ22_LIBRARY_RELEASE
|
|
||||||
VRJ22_LIBRARY_DEBUG
|
|
||||||
VRJ22_INCLUDE_DIR)
|
|
||||||
@@ -1,216 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "VR Juggler 3.0 Core")
|
|
||||||
set(_FP_PKG_NAME vrjuggler)
|
|
||||||
set(_RELEASE_NAMES)
|
|
||||||
set(_DEBUG_NAMES)
|
|
||||||
foreach(VER 3_0 3_0_0 3_0_1 3_0_2)
|
|
||||||
list(APPEND _RELEASE_NAMES vrj-${VER})
|
|
||||||
list(APPEND _DEBUG_NAMES vrj_d-${VER})
|
|
||||||
endforeach()
|
|
||||||
set(_DIR vrjuggler-3.0)
|
|
||||||
set(_HEADER vrj/Kernel/Kernel.h)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(VRJ30_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_include_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_extra_libs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJ30_ROOT_DIR
|
|
||||||
"${VRJ30_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VRJ")
|
|
||||||
if(DEFINED VRJUGGLER30_ROOT_DIR)
|
|
||||||
mark_as_advanced(VRJ30_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT VRJ30_ROOT_DIR)
|
|
||||||
set(VRJ30_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${VRJ30_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_path(VRJ30_INCLUDE_DIR
|
|
||||||
${_HEADER}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_DIR}
|
|
||||||
include/${_DIR}
|
|
||||||
include/
|
|
||||||
DOC
|
|
||||||
"Path to ${_HUMAN} includes root")
|
|
||||||
|
|
||||||
find_library(VRJ30_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(VRJ30_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(VRJ30)
|
|
||||||
|
|
||||||
# Dependencies
|
|
||||||
if(NOT JCCL14_FOUND)
|
|
||||||
find_package(JCCL14 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT GADGETEER20_FOUND)
|
|
||||||
find_package(Gadgeteer20 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT VPR22_FOUND)
|
|
||||||
find_package(VPR22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT SONIX14_FOUND)
|
|
||||||
find_package(Sonix14 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
if(NOT X11_FOUND)
|
|
||||||
find_package(X11 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
set(_CHECK_EXTRAS
|
|
||||||
X11_FOUND
|
|
||||||
X11_X11_LIB
|
|
||||||
X11_ICE_LIB
|
|
||||||
X11_SM_LIB
|
|
||||||
X11_INCLUDE_DIR)
|
|
||||||
endif()
|
|
||||||
if(UNIX AND NOT WIN32)
|
|
||||||
find_library(VRJ30_libm_LIBRARY m)
|
|
||||||
mark_as_advanced(VRJ30_libm_LIBRARY)
|
|
||||||
list(APPEND _CHECK_EXTRAS VRJ30_libm_LIBRARY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRJ30
|
|
||||||
DEFAULT_MSG
|
|
||||||
VRJ30_LIBRARY
|
|
||||||
VRJ30_INCLUDE_DIR
|
|
||||||
JCCL14_FOUND
|
|
||||||
JCCL14_LIBRARIES
|
|
||||||
JCCL14_INCLUDE_DIR
|
|
||||||
GADGETEER20_FOUND
|
|
||||||
GADGETEER20_LIBRARIES
|
|
||||||
GADGETEER20_INCLUDE_DIR
|
|
||||||
VPR22_FOUND
|
|
||||||
VPR22_LIBRARIES
|
|
||||||
VPR22_INCLUDE_DIR
|
|
||||||
SONIX14_FOUND
|
|
||||||
SONIX14_LIBRARIES
|
|
||||||
SONIX14_INCLUDE_DIR
|
|
||||||
${_CHECK_EXTRAS})
|
|
||||||
|
|
||||||
if(VRJ30_FOUND)
|
|
||||||
set(_DEPS
|
|
||||||
${JCCL14_LIBRARIES}
|
|
||||||
${GADGETEER20_LIBRARIES}
|
|
||||||
${VPR22_LIBRARIES}
|
|
||||||
${SONIX14_LIBRARIES})
|
|
||||||
if(UNIX AND NOT APPLE AND NOT WIN32)
|
|
||||||
list(APPEND _DEPS ${X11_X11_LIB} ${X11_ICE_LIB} ${X11_SM_LIB})
|
|
||||||
endif()
|
|
||||||
if(UNIX AND NOT WIN32)
|
|
||||||
list(APPEND _DEPS ${VRJ30_libm_LIBRARY})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJ30_INCLUDE_DIRS ${VRJ30_INCLUDE_DIR})
|
|
||||||
list(APPEND
|
|
||||||
VRJ30_INCLUDE_DIRS
|
|
||||||
${JCCL14_INCLUDE_DIRS}
|
|
||||||
${GADGETEER20_INCLUDE_DIRS}
|
|
||||||
${VPR22_INCLUDE_DIRS}
|
|
||||||
${SONIX14_INCLUDE_DIRS})
|
|
||||||
clean_directory_list(VRJ30_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
if(VRJUGGLER30_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(VRJ30 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(VRJ30_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJ30_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJ30_LIBRARY_RELEASE
|
|
||||||
VRJ30_LIBRARY_DEBUG
|
|
||||||
VRJ30_INCLUDE_DIR)
|
|
||||||
@@ -1,161 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "VR Juggler 2.2 OpenGL Core")
|
|
||||||
set(_RELEASE_NAMES vrj_ogl-2_2 libvrj_ogl-2_2)
|
|
||||||
set(_DEBUG_NAMES vrj_ogl_d-2_2 libvrj_ogl_d-2_2)
|
|
||||||
set(_DIR vrjuggler-2.2)
|
|
||||||
set(_FP_PKG_NAME vrjuggler-opengl)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(VRJOGL22_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_names(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJOGL22_ROOT_DIR
|
|
||||||
"${VRJOGL22_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VRJOGL")
|
|
||||||
if(DEFINED VRJUGGLER22_ROOT_DIR)
|
|
||||||
mark_as_advanced(VRJOGL22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT VRJOGL22_ROOT_DIR)
|
|
||||||
set(VRJOGL22_ROOT_DIR "${VRJUGGLER22_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${VRJOGL22_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_library(VRJOGL22_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(VRJOGL22_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(VRJOGL22)
|
|
||||||
|
|
||||||
# Dependency
|
|
||||||
if(NOT VRJ22_FOUND)
|
|
||||||
find_package(VRJ22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT OPENGL_FOUND)
|
|
||||||
find_package(OpenGL ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
set(VRJOGL22_AppKit_LIBRARY
|
|
||||||
"-framework AppKit"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"AppKit framework for OSX")
|
|
||||||
set(VRJOGL22_Cocoa_LIBRARY
|
|
||||||
"-framework Cocoa"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"Cocoa framework for OSX")
|
|
||||||
mark_as_advanced(VRJOGL22_AppKit_LIBRARY VRJOGL22_Cocoa_LIBRARY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRJOGL22
|
|
||||||
DEFAULT_MSG
|
|
||||||
VRJOGL22_LIBRARY
|
|
||||||
VRJ22_FOUND
|
|
||||||
VRJ22_LIBRARIES
|
|
||||||
VRJ22_INCLUDE_DIRS
|
|
||||||
OPENGL_FOUND
|
|
||||||
OPENGL_LIBRARIES)
|
|
||||||
|
|
||||||
if(VRJOGL22_FOUND)
|
|
||||||
set(_DEPS ${VRJ22_LIBRARIES} ${OPENGL_LIBRARIES})
|
|
||||||
if(APPLE)
|
|
||||||
list(APPEND
|
|
||||||
_DEPS
|
|
||||||
${VRJOGL22_AppKit_LIBRARY}
|
|
||||||
${VRJOGL22_Cocoa_LIBRARY})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJOGL22_INCLUDE_DIRS ${VRJ22_INCLUDE_DIRS} ${OPENGL_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
if(VRJUGGLER22_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(VRJOGL22 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(VRJOGL22_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJOGL22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJOGL22_LIBRARY_RELEASE VRJOGL22_LIBRARY_DEBUG)
|
|
||||||
@@ -1,162 +0,0 @@
|
|||||||
# - 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>
|
|
||||||
|
|
||||||
|
|
||||||
set(_HUMAN "VR Juggler 3.0 OpenGL Core")
|
|
||||||
set(_FP_PKG_NAME vrjuggler-opengl)
|
|
||||||
set(_RELEASE_NAMES)
|
|
||||||
set(_DEBUG_NAMES)
|
|
||||||
foreach(VER 3_0 3_0_0 3_0_1 3_0_2)
|
|
||||||
list(APPEND _RELEASE_NAMES vrj_ogl-${VER})
|
|
||||||
list(APPEND _DEBUG_NAMES vrj_ogl_d-${VER})
|
|
||||||
endforeach()
|
|
||||||
set(_DIR vrjuggler-3.0)
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
include(CreateImportedTarget)
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
|
|
||||||
if(VRJOGL30_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Try flagpoll.
|
|
||||||
find_package(Flagpoll QUIET)
|
|
||||||
|
|
||||||
if(FLAGPOLL)
|
|
||||||
flagpoll_get_library_dirs(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
flagpoll_get_library_names(${_FP_PKG_NAME} NO_DEPS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJOGL30_ROOT_DIR
|
|
||||||
"${VRJOGL30_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VRJOGL")
|
|
||||||
if(DEFINED VRJUGGLER30_ROOT_DIR)
|
|
||||||
mark_as_advanced(VRJOGL30_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
if(NOT VRJOGL30_ROOT_DIR)
|
|
||||||
set(VRJOGL30_ROOT_DIR "${VRJUGGLER30_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_ROOT_DIR "${VRJOGL30_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_library(VRJOGL30_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
${_RELEASE_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} release library full path")
|
|
||||||
|
|
||||||
find_library(VRJOGL30_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
${_DEBUG_NAMES}
|
|
||||||
HINTS
|
|
||||||
"${_ROOT_DIR}"
|
|
||||||
${${_FP_PKG_NAME}_FLAGPOLL_LIBRARY_DIRS}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_VRJ_LIBDSUFFIXES}
|
|
||||||
DOC
|
|
||||||
"${_HUMAN} debug library full path")
|
|
||||||
|
|
||||||
select_library_configurations(VRJOGL30)
|
|
||||||
|
|
||||||
# Dependency
|
|
||||||
if(NOT VRJ30_FOUND)
|
|
||||||
find_package(VRJ30 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT OPENGL_FOUND)
|
|
||||||
find_package(OpenGL ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
set(VRJOGL30_AppKit_LIBRARY
|
|
||||||
"-framework AppKit"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"AppKit framework for OSX")
|
|
||||||
set(VRJOGL30_Cocoa_LIBRARY
|
|
||||||
"-framework Cocoa"
|
|
||||||
CACHE
|
|
||||||
STRING
|
|
||||||
"Cocoa framework for OSX")
|
|
||||||
mark_as_advanced(VRJOGL30_AppKit_LIBRARY VRJOGL30_Cocoa_LIBRARY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRJOGL30
|
|
||||||
DEFAULT_MSG
|
|
||||||
VRJOGL30_LIBRARY
|
|
||||||
VRJ30_FOUND
|
|
||||||
VRJ30_LIBRARIES
|
|
||||||
VRJ30_INCLUDE_DIRS
|
|
||||||
OPENGL_FOUND
|
|
||||||
OPENGL_LIBRARIES)
|
|
||||||
|
|
||||||
if(VRJOGL30_FOUND)
|
|
||||||
set(_DEPS ${VRJ30_LIBRARIES} ${OPENGL_LIBRARIES})
|
|
||||||
if(APPLE)
|
|
||||||
list(APPEND
|
|
||||||
_DEPS
|
|
||||||
${VRJOGL30_AppKit_LIBRARY}
|
|
||||||
${VRJOGL30_Cocoa_LIBRARY})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJOGL30_INCLUDE_DIRS ${VRJ30_INCLUDE_DIRS} ${OPENGL_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
if(VRJUGGLER30_CREATE_IMPORTED_TARGETS)
|
|
||||||
create_imported_target(VRJOGL30 ${_DEPS})
|
|
||||||
else()
|
|
||||||
clean_library_list(VRJOGL30_LIBRARIES ${_DEPS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJOGL30_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJOGL30_LIBRARY_RELEASE VRJOGL30_LIBRARY_DEBUG)
|
|
||||||
@@ -1,198 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
include(FindPackageMessage)
|
|
||||||
|
|
||||||
if(NOT VRJUGGLER_ROOT_DIR)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{VJ_BASE_DIR}" VRJUGGLER_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJUGGLER_ROOT_DIR
|
|
||||||
"${VRJUGGLER_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Additional root directory to search for VR Juggler and its dependencies.")
|
|
||||||
if(NOT VRJUGGLER_ROOT_DIR)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{VJ_BASE_DIR}" VRJUGGLER30_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Default required components
|
|
||||||
if(NOT VRJuggler_FIND_COMPONENTS)
|
|
||||||
set(VRJuggler_FIND_COMPONENTS vrjogl)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRJuggler30_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJUGGLER_FIND_22 TRUE)
|
|
||||||
set(VRJUGGLER_FIND_30 TRUE)
|
|
||||||
if(VRJuggler_FIND_VERSION)
|
|
||||||
if(VRJuggler_FIND_VERSION_EXACT)
|
|
||||||
if(VRJuggler_FIND_VERSION MATCHES "2.2" OR VRJuggler_FIND_VERSION MATCHES "22")
|
|
||||||
set(VRJUGGLER_FIND_30 FALSE)
|
|
||||||
elseif(VRJuggler_FIND_VERSION MATCHES "3.0" OR VRJuggler_FIND_VERSION MATCHES "30")
|
|
||||||
set(VRJUGGLER_FIND_22 FALSE)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
if(VRJuggler_FIND_VERSION MATCHES "3.0" OR VRJuggler_FIND_VERSION MATCHES "30")
|
|
||||||
set(VRJUGGLER_FIND_22 FALSE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRJUGGLER_FIND_30)
|
|
||||||
if(NOT VRJUGGLER30_ROOT_DIR)
|
|
||||||
set(VRJUGGLER30_ROOT_DIR ${VRJUGGLER_ROOT_DIR})
|
|
||||||
endif()
|
|
||||||
find_package(VRJuggler30 COMPONENTS ${VRJuggler_FIND_COMPONENTS})
|
|
||||||
if(VRJUGGLER30_FOUND)
|
|
||||||
set(VRJUGGLER_FOUND TRUE)
|
|
||||||
|
|
||||||
set(VRJUGGLER_LIBRARIES ${VRJUGGLER30_LIBRARIES})
|
|
||||||
set(VRJUGGLER_INCLUDE_DIRS ${VRJUGGLER30_INCLUDE_DIRS})
|
|
||||||
set(VRJUGGLER_LIBRARY_DIRS ${VRJUGGLER30_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
set(VRJUGGLER_ENVIRONMENT ${VRJUGGLER30_ENVIRONMENT})
|
|
||||||
set(VRJUGGLER_RUNTIME_LIBRARY_DIRS ${VRJUGGLER30_RUNTIME_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
set(VRJUGGLER_CXX_FLAGS ${VRJUGGLER30_CXX_FLAGS})
|
|
||||||
set(VRJUGGLER_DEFINITIONS ${VRJUGGLER30_DEFINITIONS})
|
|
||||||
set(VRJUGGLER_BUNDLE_PLUGINS ${VRJUGGLER30_BUNDLE_PLUGINS})
|
|
||||||
set(VRJUGGLER_VJ_BASE_DIR ${VRJUGGLER30_VJ_BASE_DIR})
|
|
||||||
set(VRJUGGLER_VERSION 3.0)
|
|
||||||
|
|
||||||
macro(install_vrjuggler_data_files prefix)
|
|
||||||
install_vrjuggler30_data_files("${prefix}" ${ARGN})
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(install_vrjuggler_plugins prefix varForFilenames)
|
|
||||||
install_vrjuggler30_plugins("${prefix}" ${varForFilenames} ${ARGN})
|
|
||||||
endmacro()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRJUGGLER_FIND_22 AND (NOT VRJUGGLER_FOUND))
|
|
||||||
|
|
||||||
if(NOT VRJUGGLER22_ROOT_DIR)
|
|
||||||
set(VRJUGGLER22_ROOT_DIR ${VRJUGGLER_ROOT_DIR})
|
|
||||||
endif()
|
|
||||||
find_package(VRJuggler22 COMPONENTS ${VRJuggler_FIND_COMPONENTS})
|
|
||||||
if(VRJUGGLER22_FOUND)
|
|
||||||
set(VRJUGGLER_FOUND TRUE)
|
|
||||||
|
|
||||||
set(VRJUGGLER_LIBRARIES ${VRJUGGLER22_LIBRARIES})
|
|
||||||
set(VRJUGGLER_INCLUDE_DIRS ${VRJUGGLER22_INCLUDE_DIRS})
|
|
||||||
set(VRJUGGLER_LIBRARY_DIRS ${VRJUGGLER22_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
set(VRJUGGLER_ENVIRONMENT ${VRJUGGLER22_ENVIRONMENT})
|
|
||||||
set(VRJUGGLER_RUNTIME_LIBRARY_DIRS ${VRJUGGLER22_RUNTIME_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
set(VRJUGGLER_CXX_FLAGS ${VRJUGGLER22_CXX_FLAGS})
|
|
||||||
set(VRJUGGLER_DEFINITIONS ${VRJUGGLER22_DEFINITIONS})
|
|
||||||
set(VRJUGGLER_BUNDLE_PLUGINS ${VRJUGGLER22_BUNDLE_PLUGINS})
|
|
||||||
set(VRJUGGLER_VJ_BASE_DIR ${VRJUGGLER22_VJ_BASE_DIR})
|
|
||||||
set(VRJUGGLER_VERSION 2.2)
|
|
||||||
|
|
||||||
macro(install_vrjuggler_data_files prefix)
|
|
||||||
install_vrjuggler22_data_files("${prefix}" ${ARGN})
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(install_vrjuggler_plugins prefix varForFilenames)
|
|
||||||
install_vrjuggler22_plugins("${prefix}" ${varForFilenames} ${ARGN})
|
|
||||||
endmacro()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRJuggler
|
|
||||||
DEFAULT_MSG
|
|
||||||
VRJUGGLER_VERSION
|
|
||||||
VRJUGGLER_LIBRARIES
|
|
||||||
VRJUGGLER_FOUND)
|
|
||||||
|
|
||||||
if(VRJUGGLER_FOUND)
|
|
||||||
mark_as_advanced(VRJUGGLER_ROOT_DIR)
|
|
||||||
|
|
||||||
# Set generic component variables, like VPR_LIBRARIES
|
|
||||||
if(VRJUGGLER_VERSION VERSION_EQUAL 2.2)
|
|
||||||
set(_components VRJ22 VRJOGL22 VPR20 TWEEK12 SONIX12 JCCL12)
|
|
||||||
else()
|
|
||||||
set(_components VRJ30 VRJOGL30 VPR22 TWEEK14 SONIX14 JCCL14)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(comp ${_components})
|
|
||||||
string(LENGTH "${comp}" len)
|
|
||||||
math(EXPR complen "${len} - 2")
|
|
||||||
string(SUBSTRING "${comp}" 0 ${complen} compshort)
|
|
||||||
set(${compshort}_LIBRARIES ${${comp}_LIBRARIES})
|
|
||||||
set(${compshort}_INCLUDE_DIRS ${${comp}_INCLUDE_DIRS})
|
|
||||||
set(${compshort}_LIBRARY_DIRS ${${comp}_LIBRARY_DIRS})
|
|
||||||
set(${compshort}_CXX_FLAGS ${${comp}_CXX_FLAGS})
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
@@ -1,503 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
include(FindPackageMessage)
|
|
||||||
|
|
||||||
set(VRJUGGLER22_ROOT_DIR
|
|
||||||
"${VRJUGGLER22_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Additional root directory to search for VR Juggler and its dependencies.")
|
|
||||||
if(NOT VRJUGGLER22_ROOT_DIR)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{VJ_BASE_DIR}" VRJUGGLER22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Default required components
|
|
||||||
if(NOT VRJuggler22_FIND_COMPONENTS)
|
|
||||||
set(VRJuggler22_FIND_COMPONENTS vrjogl22)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRJuggler22_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJUGGLER22_SUBMODULES
|
|
||||||
VRJ22
|
|
||||||
VRJOGL22
|
|
||||||
Gadgeteer12
|
|
||||||
JCCL12
|
|
||||||
VPR20
|
|
||||||
Sonix12
|
|
||||||
Tweek12)
|
|
||||||
string(TOUPPER "${VRJUGGLER22_SUBMODULES}" VRJUGGLER22_SUBMODULES_UC)
|
|
||||||
string(TOUPPER
|
|
||||||
"${VRJuggler22_FIND_COMPONENTS}"
|
|
||||||
VRJUGGLER22_FIND_COMPONENTS_UC)
|
|
||||||
|
|
||||||
# Turn a potentially messy components list into a nice one with versions.
|
|
||||||
set(VRJUGGLER22_REQUESTED_COMPONENTS)
|
|
||||||
foreach(VRJUGGLER22_LONG_NAME ${VRJUGGLER22_SUBMODULES_UC})
|
|
||||||
# Look at requested components
|
|
||||||
foreach(VRJUGGLER22_REQUEST ${VRJUGGLER22_FIND_COMPONENTS_UC})
|
|
||||||
string(REGEX
|
|
||||||
MATCH
|
|
||||||
"${VRJUGGLER22_REQUEST}"
|
|
||||||
VRJUGGLER22_MATCHING
|
|
||||||
"${VRJUGGLER22_LONG_NAME}")
|
|
||||||
if(VRJUGGLER22_MATCHING)
|
|
||||||
list(APPEND
|
|
||||||
VRJUGGLER22_REQUESTED_COMPONENTS
|
|
||||||
${VRJUGGLER22_LONG_NAME})
|
|
||||||
list(APPEND
|
|
||||||
VRJUGGLER22_COMPONENTS_FOUND
|
|
||||||
${VRJUGGLER22_LONG_NAME}_FOUND)
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(VRJUGGLER22_REQUESTED_COMPONENTS)
|
|
||||||
list(REMOVE_DUPLICATES VRJUGGLER22_REQUESTED_COMPONENTS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRJUGGLER22_COMPONENTS_FOUND)
|
|
||||||
list(REMOVE_DUPLICATES VRJUGGLER22_COMPONENTS_FOUND)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_VRJ_LIBSUFFIXES lib64 lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES
|
|
||||||
debug
|
|
||||||
lib64/x86_64/debug
|
|
||||||
lib64/debug
|
|
||||||
lib64
|
|
||||||
lib/x86_64/debug
|
|
||||||
lib/debug
|
|
||||||
lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES_ONLY
|
|
||||||
debug
|
|
||||||
lib64/x86_64/debug
|
|
||||||
lib64/debug
|
|
||||||
lib/x86_64/debug
|
|
||||||
lib/debug)
|
|
||||||
else()
|
|
||||||
set(_VRJ_LIBSUFFIXES lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES debug lib/i686/debug lib/debug lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES_ONLY debug lib/i686/debug lib/debug)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT VRJuggler22_FIND_QUIETLY
|
|
||||||
AND NOT VRJUGGLER22_FOUND
|
|
||||||
AND NOT "${_VRJUGGLER22_SEARCH_COMPONENTS}" STREQUAL "${VRJUGGLER22_REQUESTED_COMPONENTS}")
|
|
||||||
message(STATUS
|
|
||||||
"Searching for these requested VR Juggler 2.2 components and their dependencies: ${VRJUGGLER22_REQUESTED_COMPONENTS}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find components
|
|
||||||
if("${VRJUGGLER22_REQUESTED_COMPONENTS}" MATCHES "VRJOGL22" AND NOT VRJOGL22_FOUND)
|
|
||||||
find_package(VRJOGL22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER22_REQUESTED_COMPONENTS}" MATCHES "VRJ22" AND NOT VRJ22_FOUND)
|
|
||||||
find_package(VRJ22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER22_REQUESTED_COMPONENTS}" MATCHES "JCCL12" AND NOT JCCL12_FOUND)
|
|
||||||
find_package(JCCL22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER22_REQUESTED_COMPONENTS}" MATCHES "GADGETEER12" AND NOT GADGETEER12_FOUND)
|
|
||||||
find_package(Gadgeteer12 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER22_REQUESTED_COMPONENTS}" MATCHES "SONIX12" AND NOT SONIX12_FOUND)
|
|
||||||
find_package(Sonix12 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER22_REQUESTED_COMPONENTS}" MATCHES "TWEEK12" AND NOT TWEEK12_FOUND)
|
|
||||||
find_package(Tweek12 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER22_REQUESTED_COMPONENTS}" MATCHES "VPR20" AND NOT VPR20_FOUND)
|
|
||||||
find_package(VPR20 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRJuggler22
|
|
||||||
DEFAULT_MSG
|
|
||||||
${VRJUGGLER22_COMPONENTS_FOUND})
|
|
||||||
|
|
||||||
if(VRJUGGLER22_FOUND)
|
|
||||||
foreach(VRJUGGLER22_REQUEST ${VRJUGGLER22_REQUESTED_COMPONENTS})
|
|
||||||
list(APPEND VRJUGGLER22_LIBRARIES ${${VRJUGGLER22_REQUEST}_LIBRARIES})
|
|
||||||
list(APPEND
|
|
||||||
VRJUGGLER22_INCLUDE_DIRS
|
|
||||||
${${VRJUGGLER22_REQUEST}_INCLUDE_DIRS})
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
clean_library_list(VRJUGGLER22_LIBRARIES)
|
|
||||||
|
|
||||||
clean_directory_list(VRJUGGLER22_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
set(_vjbase)
|
|
||||||
set(_vjbaseclean)
|
|
||||||
foreach(_lib
|
|
||||||
${VPR20_LIBRARY}
|
|
||||||
${VRJ22_LIBRARY}
|
|
||||||
${VRJOGL22_LIBRARY}
|
|
||||||
${JCCL12_LIBRARY}
|
|
||||||
${GADGETEER12_LIBRARY})
|
|
||||||
get_filename_component(_libpath "${_lib}" PATH)
|
|
||||||
get_filename_component(_abspath "${_libpath}/.." ABSOLUTE)
|
|
||||||
list(APPEND _vjbase "${_abspath}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
clean_directory_list(_vjbase)
|
|
||||||
|
|
||||||
set(_vrj22_have_base_dir NO)
|
|
||||||
list(LENGTH _vjbase _vjbaselen)
|
|
||||||
if("${_vjbaselen}" EQUAL 1 AND NOT VRJUGGLER22_VJ_BASE_DIR)
|
|
||||||
list(GET _vjbase 0 VRJUGGLER22_VJ_BASE_DIR)
|
|
||||||
mark_as_advanced(VRJUGGLER22_VJ_BASE_DIR)
|
|
||||||
if(NOT VRJUGGLER22_VJ_BASE_DIR STREQUAL _vrj22_base_dir)
|
|
||||||
unset(VRJUGGLER22_VJ_CFG_DIR)
|
|
||||||
endif()
|
|
||||||
set(_vrj22_have_base_dir YES)
|
|
||||||
else()
|
|
||||||
list(GET _vjbase 0 _calculated_base_dir)
|
|
||||||
if(NOT
|
|
||||||
"${_calculated_base_dir}"
|
|
||||||
STREQUAL
|
|
||||||
"${VRJUGGLER22_VJ_BASE_DIR}")
|
|
||||||
message("It looks like you might be mixing VR Juggler versions... ${_vjbaselen} ${_vjbase}")
|
|
||||||
message("If you are, fix your libraries then remove the VRJUGGLER22_VJ_BASE_DIR variable in CMake, then configure again")
|
|
||||||
message("If you aren't, set the VRJUGGLER22_VJ_BASE_DIR variable to the desired VJ_BASE_DIR to use when running")
|
|
||||||
else()
|
|
||||||
if(NOT VRJUGGLER22_VJ_BASE_DIR STREQUAL _vrj22_base_dir)
|
|
||||||
unset(VRJUGGLER22_VJ_CFG_DIR)
|
|
||||||
endif()
|
|
||||||
set(_vrj22_have_base_dir YES)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_vrj22_base_dir "${VRJUGGLER22_VJ_BASE_DIR}")
|
|
||||||
set(_vrj22_base_dir "${_vrj22_base_dir}" CACHE INTERNAL "" FORCE)
|
|
||||||
|
|
||||||
if(_vrj22_have_base_dir)
|
|
||||||
find_path(VRJUGGLER22_VJ_CFG_DIR
|
|
||||||
standalone.jconf
|
|
||||||
PATHS
|
|
||||||
${VRJUGGLER22_VJ_BASE_DIR}/share/vrjuggler-2.2/data/configFiles
|
|
||||||
${VRJUGGLER22_VJ_BASE_DIR}/share/vrjuggler/data/configFiles
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
mark_as_advanced(VRJUGGLER22_VJ_CFG_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJUGGLER22_VJ_BASE_DIR
|
|
||||||
"${VRJUGGLER22_VJ_BASE_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Base directory to use as VJ_BASE_DIR when running your app."
|
|
||||||
FORCE)
|
|
||||||
set(VRJUGGLER22_ENVIRONMENT
|
|
||||||
"VJ_BASE_DIR=${VRJUGGLER22_VJ_BASE_DIR}"
|
|
||||||
"JCCL_BASE_DIR=${VRJUGGLER22_VJ_BASE_DIR}"
|
|
||||||
"SONIX_BASE_DIR=${VRJUGGLER22_VJ_BASE_DIR}"
|
|
||||||
"TWEEK_BASE_DIR=${VRJUGGLER22_VJ_BASE_DIR}"
|
|
||||||
"VJ_CFG_DIR=${VRJUGGLER22_VJ_CFG_DIR}")
|
|
||||||
|
|
||||||
include(GetDirectoryList)
|
|
||||||
|
|
||||||
get_directory_list(VRJUGGLER22_RUNTIME_LIBRARY_DIRS
|
|
||||||
${VRJUGGLER22_LIBRARIES})
|
|
||||||
if(WIN32)
|
|
||||||
foreach(dir ${VRJUGGLER22_RUNTIME_LIBRARY_DIRS})
|
|
||||||
list(APPEND VRJUGGLER22_RUNTIME_LIBRARY_DIRS "${dir}/../bin")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
# Needed to make linking against boost work with 2.2.1 binaries - rp20091022
|
|
||||||
# BOOST_ALL_DYN_LINK
|
|
||||||
set(VRJUGGLER22_DEFINITIONS
|
|
||||||
"-DBOOST_ALL_DYN_LINK"
|
|
||||||
"-DCPPDOM_DYN_LINK"
|
|
||||||
"-DCPPDOM_AUTO_LINK")
|
|
||||||
|
|
||||||
# Disable these annoying warnings
|
|
||||||
# 4275: non dll-interface class used as base for dll-interface class
|
|
||||||
# 4251: needs to have dll-interface to be used by clients of class
|
|
||||||
# 4100: unused parameter
|
|
||||||
# 4512: assignment operator could not be generated
|
|
||||||
# 4127: (Not currently disabled) conditional expression in loop evaluates to constant
|
|
||||||
|
|
||||||
set(VRJUGGLER22_CXX_FLAGS "/wd4275 /wd4251 /wd4100 /wd4512")
|
|
||||||
elseif(CMAKE_COMPILER_IS_GNUCXX)
|
|
||||||
# Silence annoying warnings about deprecated hash_map.
|
|
||||||
set(VRJUGGLER22_CXX_FLAGS "-Wno-deprecated")
|
|
||||||
|
|
||||||
set(VRJUGGLER22_DEFINITIONS "")
|
|
||||||
endif()
|
|
||||||
set(VRJUGGLER22_CXX_FLAGS
|
|
||||||
"${VRJUGGLER22_CXX_FLAGS} ${CPPDOM_CXX_FLAGS}")
|
|
||||||
|
|
||||||
set(_VRJUGGLER22_SEARCH_COMPONENTS
|
|
||||||
"${VRJUGGLER22_REQUESTED_COMPONENTS}"
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
"Requested components, used as a flag.")
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
set(_plugin_dirs)
|
|
||||||
foreach(_libdir ${VRJUGGLER22_RUNTIME_LIBRARY_DIRS})
|
|
||||||
# Find directories of Gadgeteer plugins and drivers
|
|
||||||
if(EXISTS "${_libdir}/gadgeteer")
|
|
||||||
list(APPEND
|
|
||||||
_plugin_dirs
|
|
||||||
"${_libdir}/gadgeteer/drivers"
|
|
||||||
"${_libdir}/gadgeteer/plugins")
|
|
||||||
elseif(EXISTS "${_libdir}/gadgeteer-1.2")
|
|
||||||
list(APPEND
|
|
||||||
_plugin_dirs
|
|
||||||
"${_libdir}/gadgeteer-1.2/drivers"
|
|
||||||
"${_libdir}/gadgeteer-1.2/plugins")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find directories of Sonix plugins
|
|
||||||
if(EXISTS "${_libdir}/sonix")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix/plugins/dbg")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix/plugins/opt")
|
|
||||||
elseif(EXISTS "${_libdir}/sonix-1.2")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix-1.2/plugins/dbg")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix-1.2/plugins/opt")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Grab the actual plugins
|
|
||||||
foreach(_libdir ${_plugin_dirs})
|
|
||||||
if(EXISTS "${_libdir}")
|
|
||||||
list(APPEND VRJUGGLER22_RUNTIME_LIBRARY_DIRS "${_libdir}")
|
|
||||||
file(GLOB _plugins "${_libdir}/*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
||||||
list(APPEND VRJUGGLER22_BUNDLE_PLUGINS ${_plugins})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJUGGLER22_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJUGGLER22_DEFINITIONS)
|
|
||||||
|
|
||||||
function(install_vrjuggler22_data_files prefix)
|
|
||||||
set(base "${VRJUGGLER22_VJ_CFG_DIR}/..")
|
|
||||||
get_filename_component(base "${base}" ABSOLUTE)
|
|
||||||
file(RELATIVE_PATH reldest "${VRJUGGLER22_VJ_BASE_DIR}" "${base}")
|
|
||||||
if(prefix STREQUAL "" OR prefix STREQUAL "." OR prefix STREQUAL "./")
|
|
||||||
set(DEST "${reldest}")
|
|
||||||
else()
|
|
||||||
set(DEST "${prefix}/${reldest}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# configFiles *.jconf
|
|
||||||
file(GLOB
|
|
||||||
_vj_config_files
|
|
||||||
"${base}/configFiles/*.jconf")
|
|
||||||
install(FILES ${_vj_config_files} DESTINATION "${DEST}/configFiles/")
|
|
||||||
|
|
||||||
# definitions *.jdef
|
|
||||||
file(GLOB
|
|
||||||
_vj_defs_files
|
|
||||||
"${base}/definitions/*.jdef")
|
|
||||||
install(FILES ${_vj_defs_files} DESTINATION "${DEST}/definitions/")
|
|
||||||
|
|
||||||
# models *.flt
|
|
||||||
file(GLOB
|
|
||||||
_vj_model_files
|
|
||||||
"${base}/models/*.flt")
|
|
||||||
install(FILES ${_vj_model_files} DESTINATION "${DEST}/models/")
|
|
||||||
|
|
||||||
# sounds *.wav
|
|
||||||
file(GLOB
|
|
||||||
_vj_sound_files
|
|
||||||
"${base}/sounds/*.wav")
|
|
||||||
install(FILES ${_vj_sound_files} DESTINATION "${DEST}/sounds/")
|
|
||||||
|
|
||||||
# calibration.table - needed?
|
|
||||||
file(GLOB
|
|
||||||
_vj_config_files
|
|
||||||
"${base}/configFiles/*.jconf")
|
|
||||||
install(FILES "${base}/calibration.table" DESTINATION "${DEST}")
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(install_vrjuggler22_plugins prefix varForFilenames)
|
|
||||||
set(DEST "${prefix}")
|
|
||||||
|
|
||||||
set(out)
|
|
||||||
foreach(plugin ${VRJUGGLER22_BUNDLE_PLUGINS})
|
|
||||||
get_filename_component(full "${plugin}" ABSOLUTE)
|
|
||||||
file(RELATIVE_PATH relloc "${VRJUGGLER22_VJ_BASE_DIR}" "${full}")
|
|
||||||
set(filedest "${DEST}/${relloc}")
|
|
||||||
get_filename_component(path "${filedest}" PATH)
|
|
||||||
list(APPEND out "${filedest}")
|
|
||||||
install(FILES "${full}" DESTINATION "${path}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
set(${varForFilenames} ${out} PARENT_SCOPE)
|
|
||||||
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(get_vrjuggler_bundle_sources _target_sources)
|
|
||||||
if(APPLE)
|
|
||||||
set(_bundledir "${VRJUGGLER22_VJ_CFG_DIR}/../bundle")
|
|
||||||
get_filename_component(_bundledir "${_bundledir}" ABSOLUTE)
|
|
||||||
|
|
||||||
set(_vj_base_dir .)
|
|
||||||
set(_vj_data_dir ${vj_base_dir}/share/vrjuggler-2.2)
|
|
||||||
|
|
||||||
# Append Mac-specific sources to source list
|
|
||||||
set(_vj_bundle_src
|
|
||||||
${_bundledir}/vrjuggler.icns
|
|
||||||
${_bundledir}/vrjuggler.plist
|
|
||||||
${_bundledir}/en.lproj/MainMenu.nib/classes.nib
|
|
||||||
${_bundledir}/MainMenu.nib/info.nib
|
|
||||||
${_bundledir}/MainMenu.nib/keyedobjects.nib)
|
|
||||||
|
|
||||||
message(STATUS "vjbundlesrc: ${_vj_bundle_src}")
|
|
||||||
set(${_target_sources}
|
|
||||||
${${_target_sources}}
|
|
||||||
${_vj_bundle_src}
|
|
||||||
PARENT_SCOPE)
|
|
||||||
|
|
||||||
# Set destination of nib files
|
|
||||||
set_source_files_properties(${_bundledir}/MainMenu.nib/classes.nib
|
|
||||||
${_bundledir}/MainMenu.nib/info.nib
|
|
||||||
${_bundledir}/MainMenu.nib/keyedobjects.nib
|
|
||||||
PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION
|
|
||||||
Resources/en.lproj/MainMenu.nib/)
|
|
||||||
|
|
||||||
# Set destination of Resources
|
|
||||||
set_source_files_properties(${_bundledir}/vrjuggler.icns
|
|
||||||
${_bundledir}/vrjuggler.plist
|
|
||||||
PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION
|
|
||||||
Resources/)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
get_filename_component(_vrjuggler22moddir
|
|
||||||
${CMAKE_CURRENT_LIST_FILE}
|
|
||||||
PATH)
|
|
||||||
function(fixup_vrjuggler_app_bundle
|
|
||||||
_target
|
|
||||||
_targetInstallDest
|
|
||||||
_extralibs
|
|
||||||
_libdirs)
|
|
||||||
|
|
||||||
if(NOT VRJUGGLER22_FOUND)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(PACKAGE_DIR ${_vrjuggler22moddir}/package)
|
|
||||||
set(MACOSX_PACKAGE_DIR ${PACKAGE_DIR}/macosx)
|
|
||||||
|
|
||||||
set(TARGET_LOCATION
|
|
||||||
"${_targetInstallDest}/${_target}${CMAKE_EXECUTABLE_SUFFIX}")
|
|
||||||
if(APPLE)
|
|
||||||
set(TARGET_LOCATION "${TARGET_LOCATION}.app")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set_target_properties(${_target}
|
|
||||||
PROPERTIES
|
|
||||||
MACOSX_BUNDLE_INFO_PLIST
|
|
||||||
${MACOSX_PACKAGE_DIR}/VRJuggler22BundleInfo.plist.in
|
|
||||||
MACOSX_BUNDLE_ICON_FILE
|
|
||||||
vrjuggler.icns
|
|
||||||
MACOSX_BUNDLE_INFO_STRING
|
|
||||||
"${PROJECT_NAME} (VR Juggler Application) version ${CPACK_PACKAGE_VERSION}, created by ${CPACK_PACKAGE_VENDOR}"
|
|
||||||
MACOSX_BUNDLE_GUI_IDENTIFIER
|
|
||||||
org.vrjuggler.${PROJECT_NAME}
|
|
||||||
MACOSX_BUNDLE_SHORT_VERSION_STRING
|
|
||||||
${CPACK_PACKAGE_VERSION}
|
|
||||||
MACOSX_BUNDLE_BUNDLE_VERSION
|
|
||||||
${CPACK_PACKAGE_VERSION})
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
list(APPEND _libdirs "${VRJUGGLER22_VJ_BASE_DIR}/bin")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(BUNDLE_LIBS ${_extralibs})
|
|
||||||
set(BUNDLE_LIB_DIRS "${VRJUGGLER22_VJ_BASE_DIR}" ${_libdirs})
|
|
||||||
|
|
||||||
configure_file(${PACKAGE_DIR}/fixupbundle.cmake.in
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/${_target}-fixupbundle-juggler.cmake
|
|
||||||
@ONLY)
|
|
||||||
install(SCRIPT
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${_target}-fixupbundle-juggler.cmake")
|
|
||||||
endfunction()
|
|
||||||
@@ -1,524 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
include(CleanLibraryList)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
include(FindPackageMessage)
|
|
||||||
|
|
||||||
set(VRJUGGLER30_ROOT_DIR
|
|
||||||
"${VRJUGGLER30_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Additional root directory to search for VR Juggler and its dependencies.")
|
|
||||||
if(NOT VRJUGGLER30_ROOT_DIR)
|
|
||||||
file(TO_CMAKE_PATH "$ENV{VJ_BASE_DIR}" VRJUGGLER30_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Default required components
|
|
||||||
if(NOT VRJuggler30_FIND_COMPONENTS)
|
|
||||||
set(VRJuggler30_FIND_COMPONENTS vrjogl30)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRJuggler30_FIND_QUIETLY)
|
|
||||||
set(_FIND_FLAGS "QUIET")
|
|
||||||
else()
|
|
||||||
set(_FIND_FLAGS "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJUGGLER30_SUBMODULES
|
|
||||||
VRJ30
|
|
||||||
VRJOGL30
|
|
||||||
Gadgeteer20
|
|
||||||
JCCL14
|
|
||||||
VPR22
|
|
||||||
Sonix14
|
|
||||||
Tweek14)
|
|
||||||
string(TOUPPER "${VRJUGGLER30_SUBMODULES}" VRJUGGLER30_SUBMODULES_UC)
|
|
||||||
string(TOUPPER
|
|
||||||
"${VRJuggler30_FIND_COMPONENTS}"
|
|
||||||
VRJUGGLER30_FIND_COMPONENTS_UC)
|
|
||||||
|
|
||||||
# Turn a potentially messy components list into a nice one with versions.
|
|
||||||
set(VRJUGGLER30_REQUESTED_COMPONENTS)
|
|
||||||
foreach(VRJUGGLER30_LONG_NAME ${VRJUGGLER30_SUBMODULES_UC})
|
|
||||||
# Look at requested components
|
|
||||||
foreach(VRJUGGLER30_REQUEST ${VRJUGGLER30_FIND_COMPONENTS_UC})
|
|
||||||
string(REGEX
|
|
||||||
MATCH
|
|
||||||
"${VRJUGGLER30_REQUEST}"
|
|
||||||
VRJUGGLER30_MATCHING
|
|
||||||
"${VRJUGGLER30_LONG_NAME}")
|
|
||||||
if(VRJUGGLER30_MATCHING)
|
|
||||||
list(APPEND
|
|
||||||
VRJUGGLER30_REQUESTED_COMPONENTS
|
|
||||||
${VRJUGGLER30_LONG_NAME})
|
|
||||||
list(APPEND
|
|
||||||
VRJUGGLER30_COMPONENTS_FOUND
|
|
||||||
${VRJUGGLER30_LONG_NAME}_FOUND)
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(VRJUGGLER30_REQUESTED_COMPONENTS)
|
|
||||||
list(REMOVE_DUPLICATES VRJUGGLER30_REQUESTED_COMPONENTS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRJUGGLER30_COMPONENTS_FOUND)
|
|
||||||
list(REMOVE_DUPLICATES VRJUGGLER30_COMPONENTS_FOUND)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_VRJ_LIBSUFFIXES lib64 lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES
|
|
||||||
debug
|
|
||||||
lib64/x86_64/debug
|
|
||||||
lib64/debug
|
|
||||||
lib64
|
|
||||||
lib/x86_64/debug
|
|
||||||
lib/debug
|
|
||||||
lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES_ONLY
|
|
||||||
debug
|
|
||||||
lib64/x86_64/debug
|
|
||||||
lib64/debug
|
|
||||||
lib/x86_64/debug
|
|
||||||
lib/debug)
|
|
||||||
else()
|
|
||||||
set(_VRJ_LIBSUFFIXES lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES debug lib/i686/debug lib/debug lib)
|
|
||||||
set(_VRJ_LIBDSUFFIXES_ONLY debug lib/i686/debug lib/debug)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT VRJUGGLER30_FIND_QUIETLY
|
|
||||||
AND NOT VRJUGGLER30_FOUND
|
|
||||||
AND NOT "${_VRJUGGLER30_SEARCH_COMPONENTS}" STREQUAL "${VRJUGGLER30_REQUESTED_COMPONENTS}")
|
|
||||||
message(STATUS
|
|
||||||
"Searching for these requested VR Juggler 3.0 components and their dependencies: ${VRJUGGLER30_REQUESTED_COMPONENTS}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find components
|
|
||||||
if("${VRJUGGLER30_REQUESTED_COMPONENTS}" MATCHES "VRJOGL30" AND NOT VRJOGL30_FOUND)
|
|
||||||
find_package(VRJOGL30 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER30_REQUESTED_COMPONENTS}" MATCHES "VRJ30" AND NOT VRJ30_FOUND)
|
|
||||||
find_package(VRJ30 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER30_REQUESTED_COMPONENTS}" MATCHES "JCCL14" AND NOT JCCL14_FOUND)
|
|
||||||
find_package(JCCL14 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER30_REQUESTED_COMPONENTS}" MATCHES "GADGETEER20" AND NOT GADGETEER20_FOUND)
|
|
||||||
find_package(Gadgeteer20 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER30_REQUESTED_COMPONENTS}" MATCHES "SONIX14" AND NOT SONIX14_FOUND)
|
|
||||||
find_package(Sonix14 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER30_REQUESTED_COMPONENTS}" MATCHES "TWEEK14" AND NOT TWEEK14_FOUND)
|
|
||||||
find_package(Tweek14 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${VRJUGGLER30_REQUESTED_COMPONENTS}" MATCHES "VPR22" AND NOT VPR22_FOUND)
|
|
||||||
find_package(VPR22 ${_FIND_FLAGS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRJuggler30
|
|
||||||
DEFAULT_MSG
|
|
||||||
${VRJUGGLER30_COMPONENTS_FOUND})
|
|
||||||
|
|
||||||
if(VRJUGGLER30_FOUND)
|
|
||||||
foreach(VRJUGGLER30_REQUEST ${VRJUGGLER30_REQUESTED_COMPONENTS})
|
|
||||||
list(APPEND VRJUGGLER30_LIBRARIES ${${VRJUGGLER30_REQUEST}_LIBRARIES})
|
|
||||||
list(APPEND
|
|
||||||
VRJUGGLER30_INCLUDE_DIRS
|
|
||||||
${${VRJUGGLER30_REQUEST}_INCLUDE_DIRS})
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
clean_library_list(VRJUGGLER30_LIBRARIES)
|
|
||||||
|
|
||||||
clean_directory_list(VRJUGGLER30_INCLUDE_DIRS)
|
|
||||||
|
|
||||||
set(_vjbase)
|
|
||||||
set(_vjbaseclean)
|
|
||||||
foreach(_lib ${VPR22_LIBRARY} ${VRJ30_LIBRARY} ${VRJOGL30_LIBRARY} ${JCCL14_LIBRARY} ${GADGETEER20_LIBRARY})
|
|
||||||
get_filename_component(_libpath "${_lib}" PATH)
|
|
||||||
get_filename_component(_abspath "${_libpath}/.." ABSOLUTE)
|
|
||||||
list(APPEND _vjbase "${_abspath}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
clean_directory_list(_vjbase)
|
|
||||||
|
|
||||||
set(_vrj30_have_base_dir NO)
|
|
||||||
list(LENGTH _vjbase _vjbaselen)
|
|
||||||
if("${_vjbaselen}" EQUAL 1 AND NOT VRJUGGLER30_VJ_BASE_DIR)
|
|
||||||
list(GET _vjbase 0 VRJUGGLER30_VJ_BASE_DIR)
|
|
||||||
mark_as_advanced(VRJUGGLER30_VJ_BASE_DIR)
|
|
||||||
if(NOT VRJUGGLER30_VJ_BASE_DIR STREQUAL _vrj30_base_dir)
|
|
||||||
unset(VRJUGGLER30_VJ_CFG_DIR)
|
|
||||||
endif()
|
|
||||||
set(_vrj30_have_base_dir YES)
|
|
||||||
else()
|
|
||||||
list(GET _vjbase 0 _calculated_base_dir)
|
|
||||||
if(NOT
|
|
||||||
"${_calculated_base_dir}"
|
|
||||||
STREQUAL
|
|
||||||
"${VRJUGGLER30_VJ_BASE_DIR}")
|
|
||||||
message("It looks like you might be mixing VR Juggler versions... ${_vjbaselen} ${_vjbase}")
|
|
||||||
message("If you are, fix your libraries then remove the VRJUGGLER30_VJ_BASE_DIR variable in CMake, then configure again")
|
|
||||||
message("If you aren't, set the VRJUGGLER30_VJ_BASE_DIR variable to the desired VJ_BASE_DIR to use when running")
|
|
||||||
else()
|
|
||||||
if(NOT VRJUGGLER30_VJ_BASE_DIR STREQUAL _vrj30_base_dir)
|
|
||||||
unset(VRJUGGLER30_VJ_CFG_DIR)
|
|
||||||
endif()
|
|
||||||
set(_vrj30_have_base_dir YES)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_vrj30_base_dir "${VRJUGGLER30_VJ_BASE_DIR}")
|
|
||||||
set(_vrj30_base_dir "${_vrj30_base_dir}" CACHE INTERNAL "" FORCE)
|
|
||||||
|
|
||||||
if(_vrj30_have_base_dir)
|
|
||||||
find_path(VRJUGGLER30_VJ_CFG_DIR
|
|
||||||
standalone.jconf
|
|
||||||
PATHS
|
|
||||||
${VRJUGGLER30_VJ_BASE_DIR}/share/vrjuggler-3.0/data/configFiles
|
|
||||||
${VRJUGGLER30_VJ_BASE_DIR}/share/vrjuggler/data/configFiles
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
mark_as_advanced(VRJUGGLER30_VJ_CFG_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(VRJUGGLER30_VJ_BASE_DIR
|
|
||||||
"${VRJUGGLER30_VJ_BASE_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Base directory to use as VJ_BASE_DIR when running your app."
|
|
||||||
FORCE)
|
|
||||||
set(VRJUGGLER30_ENVIRONMENT
|
|
||||||
"VJ_BASE_DIR=${VRJUGGLER30_VJ_BASE_DIR}"
|
|
||||||
"JCCL_BASE_DIR=${VRJUGGLER30_VJ_BASE_DIR}"
|
|
||||||
"SONIX_BASE_DIR=${VRJUGGLER30_VJ_BASE_DIR}"
|
|
||||||
"TWEEK_BASE_DIR=${VRJUGGLER30_VJ_BASE_DIR}"
|
|
||||||
"VJ_CFG_DIR=${VRJUGGLER30_VJ_CFG_DIR}")
|
|
||||||
|
|
||||||
include(GetDirectoryList)
|
|
||||||
|
|
||||||
get_directory_list(VRJUGGLER30_RUNTIME_LIBRARY_DIRS
|
|
||||||
${VRJUGGLER30_LIBRARIES})
|
|
||||||
if(WIN32)
|
|
||||||
foreach(dir ${VRJUGGLER30_RUNTIME_LIBRARY_DIRS})
|
|
||||||
list(APPEND VRJUGGLER30_RUNTIME_LIBRARY_DIRS "${dir}/../bin")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
# BOOST_ALL_DYN_LINK
|
|
||||||
set(VRJUGGLER30_DEFINITIONS
|
|
||||||
"-DBOOST_ALL_DYN_LINK"
|
|
||||||
"-DCPPDOM_DYN_LINK"
|
|
||||||
"-DCPPDOM_AUTO_LINK")
|
|
||||||
|
|
||||||
# Disable these annoying warnings
|
|
||||||
# 4275: non dll-interface class used as base for dll-interface class
|
|
||||||
# 4251: needs to have dll-interface to be used by clients of class
|
|
||||||
# 4100: unused parameter
|
|
||||||
# 4512: assignment operator could not be generated
|
|
||||||
# 4127: (Not currently disabled) conditional expression in loop evaluates to constant
|
|
||||||
|
|
||||||
set(VRJUGGLER30_CXX_FLAGS "/wd4275 /wd4251 /wd4100 /wd4512")
|
|
||||||
elseif(CMAKE_COMPILER_IS_GNUCXX)
|
|
||||||
# Silence annoying warnings about deprecated hash_map.
|
|
||||||
set(VRJUGGLER30_CXX_FLAGS "-Wno-deprecated")
|
|
||||||
|
|
||||||
set(VRJUGGLER30_DEFINITIONS "")
|
|
||||||
endif()
|
|
||||||
set(VRJUGGLER30_CXX_FLAGS
|
|
||||||
"${VRJUGGLER30_CXX_FLAGS} ${CPPDOM_CXX_FLAGS}")
|
|
||||||
|
|
||||||
set(_VRJUGGLER30_SEARCH_COMPONENTS
|
|
||||||
"${VRJUGGLER30_REQUESTED_COMPONENTS}"
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
"Requested components, used as a flag.")
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
set(_plugin_dirs)
|
|
||||||
foreach(_libdir ${VRJUGGLER30_RUNTIME_LIBRARY_DIRS})
|
|
||||||
# Find directories of Gadgeteer plugins and drivers
|
|
||||||
if(EXISTS "${_libdir}/gadgeteer")
|
|
||||||
list(APPEND
|
|
||||||
_plugin_dirs
|
|
||||||
"${_libdir}/gadgeteer/drivers"
|
|
||||||
"${_libdir}/gadgeteer/plugins")
|
|
||||||
elseif(EXISTS "${_libdir}/gadgeteer-1.4")
|
|
||||||
list(APPEND
|
|
||||||
_plugin_dirs
|
|
||||||
"${_libdir}/gadgeteer-1.4/drivers"
|
|
||||||
"${_libdir}/gadgeteer-1.4/plugins")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find directories of Sonix plugins
|
|
||||||
if(EXISTS "${_libdir}/sonix")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix/plugins/dbg")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix/plugins/opt")
|
|
||||||
elseif(EXISTS "${_libdir}/sonix-1.4")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix-1.4/plugins/dbg")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/sonix-1.4/plugins/opt")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find directories of JCCL plugins
|
|
||||||
if(EXISTS "${_libdir}/jccl/plugins")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/jccl/plugins")
|
|
||||||
elseif(EXISTS "${_libdir}/jccl-1.4/plugins")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/jccl-1.4/plugins")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Find directories of VR Juggler plugins
|
|
||||||
if(EXISTS "${_libdir}/vrjuggler/plugins")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/vrjuggler/plugins")
|
|
||||||
elseif(EXISTS "${_libdir}/vrjuggler-3.0/plugins")
|
|
||||||
list(APPEND _plugin_dirs "${_libdir}/vrjuggler-3.0/plugins")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Grab the actual plugins
|
|
||||||
foreach(_libdir ${_plugin_dirs})
|
|
||||||
if(EXISTS "${_libdir}")
|
|
||||||
list(APPEND VRJUGGLER30_RUNTIME_LIBRARY_DIRS "${_libdir}")
|
|
||||||
file(GLOB _plugins "${_libdir}/*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
||||||
foreach(_plugin ${_plugins})
|
|
||||||
if("${_plugin}" MATCHES "_d${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
||||||
list(APPEND VRJUGGLER30_BUNDLE_PLUGINS_DEBUG ${_plugin})
|
|
||||||
else()
|
|
||||||
list(APPEND VRJUGGLER30_BUNDLE_PLUGINS ${_plugin})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJUGGLER30_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRJUGGLER30_DEFINITIONS)
|
|
||||||
|
|
||||||
function(install_vrjuggler30_data_files prefix)
|
|
||||||
set(base "${VRJUGGLER30_VJ_CFG_DIR}/..")
|
|
||||||
get_filename_component(base "${base}" ABSOLUTE)
|
|
||||||
file(RELATIVE_PATH reldest "${VRJUGGLER30_VJ_BASE_DIR}" "${base}")
|
|
||||||
if(prefix STREQUAL "" OR prefix STREQUAL "." OR prefix STREQUAL "./")
|
|
||||||
set(DEST "${reldest}")
|
|
||||||
else()
|
|
||||||
set(DEST "${prefix}/${reldest}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# configFiles *.jconf
|
|
||||||
file(GLOB
|
|
||||||
_vj_config_files
|
|
||||||
"${base}/configFiles/*.jconf")
|
|
||||||
install(FILES ${_vj_config_files} DESTINATION "${DEST}/configFiles/")
|
|
||||||
|
|
||||||
# definitions *.jdef
|
|
||||||
file(GLOB
|
|
||||||
_vj_defs_files
|
|
||||||
"${base}/definitions/*.jdef")
|
|
||||||
install(FILES ${_vj_defs_files} DESTINATION "${DEST}/definitions/")
|
|
||||||
|
|
||||||
# models *.flt
|
|
||||||
file(GLOB
|
|
||||||
_vj_model_files
|
|
||||||
"${base}/models/*.flt")
|
|
||||||
install(FILES ${_vj_model_files} DESTINATION "${DEST}/models/")
|
|
||||||
|
|
||||||
# sounds *.wav
|
|
||||||
file(GLOB
|
|
||||||
_vj_sound_files
|
|
||||||
"${base}/sounds/*.wav")
|
|
||||||
install(FILES ${_vj_sound_files} DESTINATION "${DEST}/sounds/")
|
|
||||||
|
|
||||||
# calibration.table - needed?
|
|
||||||
file(GLOB
|
|
||||||
_vj_config_files
|
|
||||||
"${base}/configFiles/*.jconf")
|
|
||||||
install(FILES "${base}/calibration.table" DESTINATION "${DEST}")
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
macro(_vrjuggler30_plugin_install _VAR)
|
|
||||||
foreach(plugin ${${_VAR}})
|
|
||||||
get_filename_component(full "${plugin}" ABSOLUTE)
|
|
||||||
file(RELATIVE_PATH relloc "${VRJUGGLER30_VJ_BASE_DIR}" "${full}")
|
|
||||||
set(filedest "${DEST}/${relloc}")
|
|
||||||
get_filename_component(path "${filedest}" PATH)
|
|
||||||
list(APPEND out "${filedest}")
|
|
||||||
install(FILES "${full}" DESTINATION "${path}" ${ARGN})
|
|
||||||
endforeach()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
function(install_vrjuggler30_plugins prefix varForFilenames)
|
|
||||||
set(DEST "${prefix}")
|
|
||||||
|
|
||||||
set(out)
|
|
||||||
_vrjuggler30_plugin_install(VRJUGGLER30_BUNDLE_PLUGINS)
|
|
||||||
_vrjuggler30_plugin_install(VRJUGGLER30_BUNDLE_PLUGINS_DEBUG CONFIGURATIONS DEBUG)
|
|
||||||
set(${varForFilenames} ${out} PARENT_SCOPE)
|
|
||||||
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(get_vrjuggler_bundle_sources _target_sources)
|
|
||||||
if(APPLE)
|
|
||||||
set(_bundledir "${VRJUGGLER30_VJ_CFG_DIR}/../bundle")
|
|
||||||
get_filename_component(_bundledir "${_bundledir}" ABSOLUTE)
|
|
||||||
|
|
||||||
set(_vj_base_dir .)
|
|
||||||
set(_vj_data_dir ${vj_base_dir}/share/vrjuggler-3.0)
|
|
||||||
|
|
||||||
# Append Mac-specific sources to source list
|
|
||||||
set(_vj_bundle_src
|
|
||||||
${_bundledir}/vrjuggler.icns
|
|
||||||
${_bundledir}/vrjuggler.plist
|
|
||||||
${_bundledir}/en.lproj/MainMenu.nib/classes.nib
|
|
||||||
${_bundledir}/MainMenu.nib/info.nib
|
|
||||||
${_bundledir}/MainMenu.nib/keyedobjects.nib)
|
|
||||||
|
|
||||||
message(STATUS "vjbundlesrc: ${_vj_bundle_src}")
|
|
||||||
set(${_target_sources}
|
|
||||||
${${_target_sources}}
|
|
||||||
${_vj_bundle_src}
|
|
||||||
PARENT_SCOPE)
|
|
||||||
|
|
||||||
# Set destination of nib files
|
|
||||||
set_source_files_properties(${_bundledir}/MainMenu.nib/classes.nib
|
|
||||||
${_bundledir}/MainMenu.nib/info.nib
|
|
||||||
${_bundledir}/MainMenu.nib/keyedobjects.nib
|
|
||||||
PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION
|
|
||||||
Resources/en.lproj/MainMenu.nib/)
|
|
||||||
|
|
||||||
# Set destination of Resources
|
|
||||||
set_source_files_properties(${_bundledir}/vrjuggler.icns
|
|
||||||
${_bundledir}/vrjuggler.plist
|
|
||||||
PROPERTIES
|
|
||||||
MACOSX_PACKAGE_LOCATION
|
|
||||||
Resources/)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
get_filename_component(_vrjuggler30moddir
|
|
||||||
${CMAKE_CURRENT_LIST_FILE}
|
|
||||||
PATH)
|
|
||||||
function(fixup_vrjuggler_app_bundle
|
|
||||||
_target
|
|
||||||
_targetInstallDest
|
|
||||||
_extralibs
|
|
||||||
_libdirs)
|
|
||||||
|
|
||||||
if(NOT VRJUGGLER30_FOUND)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
set(PACKAGE_DIR ${_vrjuggler30moddir}/package)
|
|
||||||
set(MACOSX_PACKAGE_DIR ${PACKAGE_DIR}/macosx)
|
|
||||||
|
|
||||||
set(TARGET_LOCATION
|
|
||||||
"${_targetInstallDest}/${_target}${CMAKE_EXECUTABLE_SUFFIX}")
|
|
||||||
if(APPLE)
|
|
||||||
set(TARGET_LOCATION "${TARGET_LOCATION}.app")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set_target_properties(${_target}
|
|
||||||
PROPERTIES
|
|
||||||
MACOSX_BUNDLE_INFO_PLIST
|
|
||||||
${MACOSX_PACKAGE_DIR}/VRJuggler30BundleInfo.plist.in
|
|
||||||
MACOSX_BUNDLE_ICON_FILE
|
|
||||||
vrjuggler.icns
|
|
||||||
MACOSX_BUNDLE_INFO_STRING
|
|
||||||
"${PROJECT_NAME} (VR Juggler Application) version ${CPACK_PACKAGE_VERSION}, created by ${CPACK_PACKAGE_VENDOR}"
|
|
||||||
MACOSX_BUNDLE_GUI_IDENTIFIER
|
|
||||||
org.vrjuggler.${PROJECT_NAME}
|
|
||||||
MACOSX_BUNDLE_SHORT_VERSION_STRING
|
|
||||||
${CPACK_PACKAGE_VERSION}
|
|
||||||
MACOSX_BUNDLE_BUNDLE_VERSION
|
|
||||||
${CPACK_PACKAGE_VERSION})
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
list(APPEND _libdirs "${VRJUGGLER30_VJ_BASE_DIR}/bin")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(BUNDLE_LIBS ${_extralibs})
|
|
||||||
set(BUNDLE_LIB_DIRS "${VRJUGGLER30_VJ_BASE_DIR}" ${_libdirs})
|
|
||||||
|
|
||||||
configure_file(${PACKAGE_DIR}/fixupbundle.cmake.in
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/${_target}-fixupbundle-juggler.cmake
|
|
||||||
@ONLY)
|
|
||||||
install(SCRIPT
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/${_target}-fixupbundle-juggler.cmake")
|
|
||||||
endfunction()
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(VRPN_ROOT_DIR
|
|
||||||
"${VRPN_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for VRPN")
|
|
||||||
|
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" MATCHES "8")
|
|
||||||
set(_libsuffixes lib64 lib)
|
|
||||||
|
|
||||||
# 64-bit dir: only set on win64
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramW6432}" _progfiles)
|
|
||||||
else()
|
|
||||||
set(_libsuffixes lib)
|
|
||||||
if(NOT "$ENV{ProgramFiles(x86)}" STREQUAL "")
|
|
||||||
# 32-bit dir: only set on win64
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles(x86)}" _progfiles)
|
|
||||||
else()
|
|
||||||
# 32-bit dir on win32, useless to us on win64
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles}" _progfiles)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure VRPN
|
|
||||||
###
|
|
||||||
|
|
||||||
find_path(VRPN_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
vrpn_Connection.h
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include
|
|
||||||
include/vrpn
|
|
||||||
HINTS
|
|
||||||
"${VRPN_ROOT_DIR}"
|
|
||||||
PATHS
|
|
||||||
"${_progfiles}/VRPN")
|
|
||||||
|
|
||||||
find_library(VRPN_LIBRARY
|
|
||||||
NAMES
|
|
||||||
vrpn
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_libsuffixes}
|
|
||||||
HINTS
|
|
||||||
"${VRPN_ROOT_DIR}"
|
|
||||||
PATHS
|
|
||||||
"${_progfiles}/VRPN")
|
|
||||||
|
|
||||||
find_library(VRPN_SERVER_LIBRARY
|
|
||||||
NAMES
|
|
||||||
vrpnserver
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_libsuffixes}
|
|
||||||
HINTS
|
|
||||||
"${VRPN_ROOT_DIR}"
|
|
||||||
PATHS
|
|
||||||
"${_progfiles}/VRPN")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Dependencies
|
|
||||||
###
|
|
||||||
set(_deps_libs)
|
|
||||||
set(_deps_includes)
|
|
||||||
set(_deps_check)
|
|
||||||
|
|
||||||
find_package(quatlib)
|
|
||||||
list(APPEND _deps_libs ${QUATLIB_LIBRARIES})
|
|
||||||
list(APPEND _deps_includes ${QUATLIB_INCLUDE_DIRS})
|
|
||||||
list(APPEND _deps_check QUATLIB_FOUND)
|
|
||||||
|
|
||||||
if(NOT WIN32)
|
|
||||||
find_package(Threads)
|
|
||||||
list(APPEND _deps_libs ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
list(APPEND _deps_check CMAKE_HAVE_THREADS_LIBRARY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VRPN
|
|
||||||
DEFAULT_MSG
|
|
||||||
VRPN_LIBRARY
|
|
||||||
VRPN_INCLUDE_DIR
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
if(VRPN_FOUND)
|
|
||||||
set(VRPN_INCLUDE_DIRS "${VRPN_INCLUDE_DIR}" ${_deps_includes})
|
|
||||||
set(VRPN_LIBRARIES "${VRPN_LIBRARY}" ${_deps_libs})
|
|
||||||
set(VRPN_SERVER_LIBRARIES "${VRPN_SERVER_LIBRARY}" ${_deps_libs})
|
|
||||||
|
|
||||||
if(VRPN_LIBRARY)
|
|
||||||
set(VRPN_CLIENT_DEFINITIONS -DVRPN_CLIENT_ONLY)
|
|
||||||
else()
|
|
||||||
unset(VRPN_CLIENT_DEFINITIONS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(VRPN_LIBRARY AND NOT VRPN_SERVER_LIBRARY)
|
|
||||||
set(VRPN_DEFINITIONS -DVRPN_CLIENT_ONLY)
|
|
||||||
else()
|
|
||||||
unset(VRPN_DEFINITIONS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRPN_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VRPN_LIBRARY VRPN_SERVER_LIBRARY VRPN_INCLUDE_DIR)
|
|
||||||
@@ -1,94 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(VIEWPOINT_ROOT_DIR
|
|
||||||
"${VIEWPOINT_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to search for Arrington Research ViewPoint EyeTracker SDK")
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_LIBSUFFIXES /lib64 /lib)
|
|
||||||
else()
|
|
||||||
set(_LIBSUFFIXES /lib)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(VIEWPOINT_LIBRARY
|
|
||||||
NAMES
|
|
||||||
VPX_InterApp
|
|
||||||
PATHS
|
|
||||||
"${VIEWPOINT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"${_LIBSUFFIXES}")
|
|
||||||
|
|
||||||
get_filename_component(_libdir "${VIEWPOINT_LIBRARY}" PATH)
|
|
||||||
|
|
||||||
find_path(VIEWPOINT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
vpx.h
|
|
||||||
HINTS
|
|
||||||
"${_libdir}"
|
|
||||||
PATHS
|
|
||||||
"${VIEWPOINT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include/)
|
|
||||||
|
|
||||||
set(_deps_check)
|
|
||||||
if(WIN32)
|
|
||||||
find_file(VIEWPOINT_RUNTIME_LIBRARY
|
|
||||||
NAMES
|
|
||||||
VPX_InterApp.dll
|
|
||||||
HINTS
|
|
||||||
"${_libdir}")
|
|
||||||
|
|
||||||
set(VIEWPOINT_RUNTIME_LIBRARIES "${VIEWPOINT_RUNTIME_LIBRARY}")
|
|
||||||
get_filename_component(VIEWPOINT_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${VIEWPOINT_RUNTIME_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
list(APPEND _deps_check VIEWPOINT_RUNTIME_LIBRARY)
|
|
||||||
else()
|
|
||||||
get_filename_component(VIEWPOINT_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${VIEWPOINT_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(ViewPoint
|
|
||||||
DEFAULT_MSG
|
|
||||||
VIEWPOINT_LIBRARY
|
|
||||||
VIEWPOINT_INCLUDE_DIR
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
if(VIEWPOINT_FOUND)
|
|
||||||
set(VIEWPOINT_LIBRARIES "${VIEWPOINT_LIBRARY}")
|
|
||||||
set(VIEWPOINT_INCLUDE_DIRS "${VIEWPOINT_INCLUDE_DIR}")
|
|
||||||
mark_as_advanced(VIEWPOINT_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VIEWPOINT_INCLUDE_DIR
|
|
||||||
VIEWPOINT_LIBRARY
|
|
||||||
VIEWPOINT_RUNTIME_LIBRARY)
|
|
||||||
@@ -1,93 +0,0 @@
|
|||||||
# - 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
|
|
||||||
|
|
||||||
set(VIRTUOSEAPI_ROOT_DIR
|
|
||||||
"${VIRTUOSEAPI_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for VirtuoseAPI")
|
|
||||||
|
|
||||||
set(_dirs)
|
|
||||||
if(WIN32)
|
|
||||||
include(ProgramFilesGlob)
|
|
||||||
program_files_fallback_glob(_dirs "/VirtuoseAPI_v*/")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(VIRTUOSEAPI_INCLUDE_DIR
|
|
||||||
virtuoseAPI.h
|
|
||||||
VirtuoseAPI.h
|
|
||||||
PATHS
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${VIRTUOSEAPI_ROOT_DIR}")
|
|
||||||
|
|
||||||
set(_suffixes)
|
|
||||||
if(WIN32)
|
|
||||||
set(_lib_name virtuoseDLL)
|
|
||||||
set(_runtime_name virtuoseAPI.dll)
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
||||||
set(_suffixes win64)
|
|
||||||
else()
|
|
||||||
set(_suffixes win32)
|
|
||||||
endif()
|
|
||||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|
||||||
set(_lib_name virtuose)
|
|
||||||
set(_runtime_name virtuoseAPI.so)
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
||||||
set(_suffixes linux-64b)
|
|
||||||
else()
|
|
||||||
set(_suffixes linux linux-2.6)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_suffixes)
|
|
||||||
find_library(VIRTUOSEAPI_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_lib_name}
|
|
||||||
PATHS
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${VIRTUOSEAPI_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_suffixes})
|
|
||||||
find_file(VIRTUOSEAPI_RUNTIME_LIBRARY
|
|
||||||
NAMES
|
|
||||||
${_runtime_name}
|
|
||||||
PATHS
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${VIRTUOSEAPI_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_suffixes})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VirtuoseAPI
|
|
||||||
DEFAULT_MSG
|
|
||||||
VIRTUOSEAPI_LIBRARY
|
|
||||||
VIRTUOSEAPI_RUNTIME_LIBRARY
|
|
||||||
VIRTUOSEAPI_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(VIRTUOSEAPI_FOUND)
|
|
||||||
set(VIRTUOSEAPI_LIBRARIES "${VIRTUOSEAPI_LIBRARY}")
|
|
||||||
set(VIRTUOSEAPI_RUNTIME_LIBRARIES "${VIRTUOSEAPI_RUNTIME_LIBRARY}")
|
|
||||||
set(VIRTUOSEAPI_INCLUDE_DIRS "${VIRTUOSEAPI_INCLUDE_DIR}")
|
|
||||||
get_filename_component(VIRTUOSEAPI_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${VIRTUOSEAPI_RUNTIME_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
|
|
||||||
mark_as_advanced(VIRTUOSEAPI_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VIRTUOSEAPI_LIBRARY
|
|
||||||
VIRTUOSEAPI_RUNTIME_LIBRARY
|
|
||||||
VIRTUOSEAPI_INCLUDE_DIR)
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
# - 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
|
|
||||||
|
|
||||||
set(VIRTUOSEVPP_ROOT_DIR
|
|
||||||
"${VIRTUOSEVPP_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for VirtuoseAPI VPP wrapper")
|
|
||||||
|
|
||||||
find_package(VirtuoseAPI)
|
|
||||||
|
|
||||||
find_path(VIRTUOSEVPP_INCLUDE_DIR
|
|
||||||
vpp.h
|
|
||||||
PATHS
|
|
||||||
${_dirs}
|
|
||||||
HINTS
|
|
||||||
"${VIRTUOSEVPP_ROOT_DIR}")
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(VirtuoseVPP
|
|
||||||
DEFAULT_MSG
|
|
||||||
VIRTUOSEVPP_INCLUDE_DIR
|
|
||||||
VIRTUOSEAPI_LIBRARY
|
|
||||||
VIRTUOSEAPI_RUNTIME_LIBRARIES
|
|
||||||
VIRTUOSEAPI_RUNTIME_LIBRARY_DIRS
|
|
||||||
VIRTUOSEAPI_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(VIRTUOSEVPP_FOUND)
|
|
||||||
set(VIRTUOSEVPP_LIBRARIES "${VIRTUOSEAPI_LIBRARY}")
|
|
||||||
set(VIRTUOSEVPP_INCLUDE_DIRS
|
|
||||||
"${VIRTUOSEAPI_INCLUDE_DIR}"
|
|
||||||
"${VIRTUOSEVPP_INCLUDE_DIR}")
|
|
||||||
set(VIRTUOSEVPP_RUNTIME_LIBRARIES "${VIRTUOSEAPI_RUNTIME_LIBRARIES}")
|
|
||||||
set(VIRTUOSEVPP_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${VIRTUOSEAPI_RUNTIME_LIBRARY_DIRS}")
|
|
||||||
|
|
||||||
mark_as_advanced(VIRTUOSEVPP_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(VIRTUOSEVPP_INCLUDE_DIR)
|
|
||||||
@@ -1,79 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(WIISCAAT_ROOT_DIR
|
|
||||||
"${WIISCAAT_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for Wii SCAAT module")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Prereq: tag
|
|
||||||
###
|
|
||||||
if(NOT TOONTAG_ROOT_DIR)
|
|
||||||
set(TOONTAG_ROOT_DIR "${WIISCAAT_ROOT_DIR}")
|
|
||||||
endif()
|
|
||||||
find_package(TooNtag QUIET)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure tag
|
|
||||||
###
|
|
||||||
find_path(WIISCAAT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
HeadCollection.h
|
|
||||||
HINTS
|
|
||||||
"${WIISCAAT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
mark_as_advanced(WIISCAAT_INCLUDE_DIR)
|
|
||||||
|
|
||||||
find_library(WIISCAAT_LIBRARY
|
|
||||||
NAMES
|
|
||||||
wiiscaattracker
|
|
||||||
HINTS
|
|
||||||
"${WIISCAAT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
lib64)
|
|
||||||
mark_as_advanced(WIISCAAT_LIBRARY)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(WiiSCAAT
|
|
||||||
DEFAULT_MSG
|
|
||||||
WIISCAAT_LIBRARY
|
|
||||||
WIISCAAT_INCLUDE_DIR
|
|
||||||
TOONTAG_FOUND)
|
|
||||||
|
|
||||||
if(WIISCAAT_FOUND)
|
|
||||||
set(WIISCAAT_INCLUDE_DIRS
|
|
||||||
"${WIISCAAT_INCLUDE_DIR}"
|
|
||||||
${TOONTAG_INCLUDE_DIRS})
|
|
||||||
set(WIISCAAT_LIBRARIES "${WIISCAAT_LIBRARY}" ${TOONTAG_LIBRARIES})
|
|
||||||
mark_as_advanced(WIISCAAT_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
@@ -1,99 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(WIIUSE_ROOT_DIR
|
|
||||||
"${WIIUSE_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to search for WiiUse")
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_LIBSUFFIXES /lib64 /lib)
|
|
||||||
else()
|
|
||||||
set(_LIBSUFFIXES /lib)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(WIIUSE_LIBRARY
|
|
||||||
NAMES
|
|
||||||
wiiuse
|
|
||||||
PATHS
|
|
||||||
"${WIIUSE_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"${_LIBSUFFIXES}")
|
|
||||||
|
|
||||||
get_filename_component(_libdir "${WIIUSE_LIBRARY}" PATH)
|
|
||||||
|
|
||||||
find_path(WIIUSE_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
wiiuse.h
|
|
||||||
HINTS
|
|
||||||
"${_libdir}"
|
|
||||||
"${_libdir}/.."
|
|
||||||
PATHS
|
|
||||||
"${WIIUSE_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include/)
|
|
||||||
|
|
||||||
set(_deps_check)
|
|
||||||
if(WIN32)
|
|
||||||
find_file(WIIUSE_RUNTIME_LIBRARY
|
|
||||||
NAMES
|
|
||||||
wiiuse.dll
|
|
||||||
HINTS
|
|
||||||
"${_libdir}"
|
|
||||||
"${_libdir}/.."
|
|
||||||
PATH_SUFFIXES
|
|
||||||
bin)
|
|
||||||
|
|
||||||
set(WIIUSE_RUNTIME_LIBRARIES "${WIIUSE_RUNTIME_LIBRARY}")
|
|
||||||
get_filename_component(WIIUSE_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${WIIUSE_RUNTIME_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
list(APPEND _deps_check WIIUSE_RUNTIME_LIBRARY)
|
|
||||||
else()
|
|
||||||
set(WIIUSE_RUNTIME_LIBRARY "${WIIUSE_LIBRARY}")
|
|
||||||
set(WIIUSE_RUNTIME_LIBRARIES "${WIIUSE_RUNTIME_LIBRARY}")
|
|
||||||
get_filename_component(WIIUSE_RUNTIME_LIBRARY_DIRS
|
|
||||||
"${WIIUSE_LIBRARY}"
|
|
||||||
PATH)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(WiiUse
|
|
||||||
DEFAULT_MSG
|
|
||||||
WIIUSE_LIBRARY
|
|
||||||
WIIUSE_INCLUDE_DIR
|
|
||||||
${_deps_check})
|
|
||||||
|
|
||||||
if(WIIUSE_FOUND)
|
|
||||||
set(WIIUSE_LIBRARIES "${WIIUSE_LIBRARY}")
|
|
||||||
set(WIIUSE_INCLUDE_DIRS "${WIIUSE_INCLUDE_DIR}")
|
|
||||||
mark_as_advanced(WIIUSE_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(WIIUSE_INCLUDE_DIR
|
|
||||||
WIIUSE_LIBRARY
|
|
||||||
WIIUSE_RUNTIME_LIBRARY)
|
|
||||||
@@ -1,163 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(NOT WIN32)
|
|
||||||
find_package_handle_standard_args(WinHID
|
|
||||||
"Skipping search for Windows HID on non-Windows platform"
|
|
||||||
WIN32)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
if(MSVC)
|
|
||||||
if( (NOT WINHID_ROOT_DIR) AND (NOT ENV{DDKROOT} STREQUAL "") )
|
|
||||||
set(WINHID_ROOT_DIR "$ENV{DDKROOT}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
set(WINHID_ROOT_DIR
|
|
||||||
"${WINHID_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to search")
|
|
||||||
|
|
||||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
|
||||||
set(_arch amd64)
|
|
||||||
else()
|
|
||||||
set(_arch i386)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
include(PrefixListGlob)
|
|
||||||
include(CleanDirectoryList)
|
|
||||||
prefix_list_glob(_prefixed
|
|
||||||
"*/"
|
|
||||||
"$ENV{SYSTEMDRIVE}/WinDDK/"
|
|
||||||
"c:/WinDDK/")
|
|
||||||
clean_directory_list(_prefixed)
|
|
||||||
find_library(WINHID_LIBRARY
|
|
||||||
NAMES
|
|
||||||
hid
|
|
||||||
libhid
|
|
||||||
HINTS
|
|
||||||
"${WINHID_ROOT_DIR}"
|
|
||||||
${_prefixed}
|
|
||||||
PATH_SUFFIXES
|
|
||||||
"lib/w2k/${_arch}" # Win2k min requirement
|
|
||||||
"lib/wxp/${_arch}" # WinXP min requirement
|
|
||||||
"lib/wnet/${_arch}" # Win Server 2003 min requirement
|
|
||||||
"lib/wlh/${_arch}" # Win Vista ("Long Horn") min requirement
|
|
||||||
"lib/win7/${_arch}" # Win 7 min requirement
|
|
||||||
)
|
|
||||||
# Might want to look close to the library first for the includes.
|
|
||||||
get_filename_component(_libdir "${WINHID_LIBRARY}" PATH)
|
|
||||||
get_filename_component(_basedir "${_libdir}/../../.." ABSOLUTE)
|
|
||||||
|
|
||||||
find_path(WINHID_CRT_INCLUDE_DIR # otherwise you get weird compile errors
|
|
||||||
NAMES
|
|
||||||
stdio.h
|
|
||||||
HINTS
|
|
||||||
"${_basedir}"
|
|
||||||
PATHS
|
|
||||||
"${WINHID_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
inc/crt
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
find_path(WINHID_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
hidsdi.h
|
|
||||||
HINTS
|
|
||||||
"${_basedir}"
|
|
||||||
PATHS
|
|
||||||
"${WINHID_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
inc/ddk
|
|
||||||
inc/api
|
|
||||||
inc/w2k
|
|
||||||
inc/wxp
|
|
||||||
inc/wnet)
|
|
||||||
else()
|
|
||||||
find_library(WINHID_LIBRARY
|
|
||||||
NAMES
|
|
||||||
libhid
|
|
||||||
HINTS
|
|
||||||
"${WINHID_ROOT_DIR}"
|
|
||||||
/mingw
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
lib/w32api)
|
|
||||||
find_path(WINHID_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
hidsdi.h
|
|
||||||
PATHS
|
|
||||||
"${WINHID_ROOT_DIR}"
|
|
||||||
/mingw
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include/w32api/ddk
|
|
||||||
include/ddk
|
|
||||||
ddk)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(WinHID
|
|
||||||
DEFAULT_MSG
|
|
||||||
WINHID_LIBRARY
|
|
||||||
WINHID_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(WINHID_FOUND)
|
|
||||||
if(MSVC)
|
|
||||||
set(_winreq "Unknown")
|
|
||||||
if(WINHID_LIBRARY MATCHES "lib/w2k")
|
|
||||||
set(_winreq "Windows 2000")
|
|
||||||
elseif(WINHID_LIBRARY MATCHES "lib/wxp")
|
|
||||||
set(_winreq "Windows XP")
|
|
||||||
elseif(WINHID_LIBRARY MATCHES "lib/wnet")
|
|
||||||
set(_winreq "Windows Server 2003")
|
|
||||||
elseif(WINHID_LIBRARY MATCHES "lib/wlh")
|
|
||||||
set(_winreq "Windows Vista")
|
|
||||||
elseif(WINHID_LIBRARY MATCHES "lib/win7")
|
|
||||||
set(_winreq "Windows 7")
|
|
||||||
endif()
|
|
||||||
if(NOT "${WINHID_MIN_WINDOWS_VER}" STREQUAL "${_winreq}")
|
|
||||||
if(NOT WinHID_FIND_QUIETLY)
|
|
||||||
message(STATUS
|
|
||||||
"Linking against WINHID_LIBRARY will enforce this minimum version: ${_winreq}")
|
|
||||||
endif()
|
|
||||||
set(WINHID_MIN_WINDOWS_VER "${_winreq}" CACHE INTERNAL "" FORCE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(WINHID_INCLUDE_DIRS
|
|
||||||
"${WINHID_CRT_INCLUDE_DIR}"
|
|
||||||
"${WINHID_INCLUDE_DIR}")
|
|
||||||
else()
|
|
||||||
set(WINHID_INCLUDE_DIRS
|
|
||||||
"${WINHID_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
set(WINHID_LIBRARIES "${WINHID_LIBRARY}")
|
|
||||||
mark_as_advanced(WINHID_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(WINHID_INCLUDE_DIR
|
|
||||||
WINHID_CRT_INCLUDE_DIR
|
|
||||||
WINHID_LIBRARY)
|
|
||||||
@@ -1,163 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(_preferred_sdk_dirs)
|
|
||||||
set(_win_sdk_dirs)
|
|
||||||
set(_win_sdk_versanddirs)
|
|
||||||
if(MSVC_VERSION GREATER 1310) # Newer than VS .NET/VS Toolkit 2003
|
|
||||||
|
|
||||||
# Environment variable for SDK dir
|
|
||||||
if(EXISTS "$ENV{WindowsSDKDir}" AND (NOT "$ENV{WindowsSDKDir}" STREQUAL ""))
|
|
||||||
message(STATUS "Got $ENV{WindowsSDKDir} - Windows/Platform SDK directories: ${_win_sdk_dirs}")
|
|
||||||
list(APPEND _preferred_sdk_dirs "$ENV{WindowsSDKDir}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC_VERSION LESS 1600)
|
|
||||||
# Per-user current Windows SDK for VS2005/2008
|
|
||||||
get_filename_component(_sdkdir
|
|
||||||
"[HKEY_CURRENT_USER\\Software\\Microsoft\\Microsoft SDKs\\Windows;CurrentInstallFolder]"
|
|
||||||
ABSOLUTE)
|
|
||||||
if(EXISTS "${_sdkdir}")
|
|
||||||
list(APPEND _preferred_sdk_dirs "${_sdkdir}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# System-wide current Windows SDK for VS2005/2008
|
|
||||||
get_filename_component(_sdkdir
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows;CurrentInstallFolder]"
|
|
||||||
ABSOLUTE)
|
|
||||||
if(EXISTS "${_sdkdir}")
|
|
||||||
list(APPEND _preferred_sdk_dirs "${_sdkdir}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(_winsdkver v8.0A v7.1 v7.0A v6.1 v6.0A v6.0)
|
|
||||||
get_filename_component(_sdkdir
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\${_winsdkver};InstallationFolder]"
|
|
||||||
ABSOLUTE)
|
|
||||||
if(EXISTS "${_sdkdir}")
|
|
||||||
list(APPEND _win_sdk_dirs "${_sdkdir}")
|
|
||||||
list(APPEND
|
|
||||||
_win_sdk_versanddirs
|
|
||||||
"Windows SDK ${_winsdkver}"
|
|
||||||
"${_sdkdir}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
if(MSVC_VERSION GREATER 1200)
|
|
||||||
foreach(_platformsdkinfo
|
|
||||||
"D2FF9F89-8AA2-4373-8A31-C838BF4DBBE1_Microsoft Platform SDK for Windows Server 2003 R2"
|
|
||||||
"8F9E5EF3-A9A5-491B-A889-C58EFFECE8B3_Microsoft Platform SDK for Windows Server 2003 SP1")
|
|
||||||
string(SUBSTRING "${_platformsdkinfo}" 0 36 _platformsdkguid)
|
|
||||||
string(SUBSTRING "${_platformsdkinfo}" 37 -1 _platformsdkname)
|
|
||||||
get_filename_component(_sdkdir
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MicrosoftSDK\\InstalledSDKs\\${_platformsdkguid};Install Dir]"
|
|
||||||
ABSOLUTE)
|
|
||||||
if(EXISTS "${_sdkdir}")
|
|
||||||
list(APPEND _win_sdk_dirs "${_sdkdir}")
|
|
||||||
list(APPEND _win_sdk_versanddirs "${_platformsdkname}" "${_sdkdir}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
get_filename_component(_sdkdir
|
|
||||||
"[HKEY_CURRENT_USER\\Software\\Microsoft\\MicrosoftSDK\\InstalledSDKs\\${_platformsdkguid};Install Dir]"
|
|
||||||
ABSOLUTE)
|
|
||||||
if(EXISTS "${_sdkdir}")
|
|
||||||
list(APPEND _win_sdk_dirs "${_sdkdir}")
|
|
||||||
list(APPEND _win_sdk_versanddirs "${_platformsdkname}" "${_sdkdir}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(_win_sdk_versanddirs
|
|
||||||
"${_win_sdk_versanddirs}"
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
"mapping between windows sdk version locations and names"
|
|
||||||
FORCE)
|
|
||||||
|
|
||||||
function(windowssdk_name_lookup _dir _outvar)
|
|
||||||
list(FIND _win_sdk_versanddirs "${_dir}" _diridx)
|
|
||||||
math(EXPR _nameidx "${_diridx} - 1")
|
|
||||||
if(${_nameidx} GREATER -1)
|
|
||||||
list(GET _win_sdk_versanddirs ${_nameidx} _sdkname)
|
|
||||||
else()
|
|
||||||
set(_sdkname "NOTFOUND")
|
|
||||||
endif()
|
|
||||||
set(${_outvar} "${_sdkname}" PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
if(_win_sdk_dirs)
|
|
||||||
# Remove duplicates
|
|
||||||
list(REMOVE_DUPLICATES _win_sdk_dirs)
|
|
||||||
list(GET _win_sdk_dirs 0 WINDOWSSDK_LATEST_DIR)
|
|
||||||
windowssdk_name_lookup("${WINDOWSSDK_LATEST_DIR}"
|
|
||||||
WINDOWSSDK_LATEST_NAME)
|
|
||||||
set(WINDOWSSDK_DIRS ${_win_sdk_dirs})
|
|
||||||
endif()
|
|
||||||
if(_preferred_sdk_dirs)
|
|
||||||
list(GET _preferred_sdk_dirs 0 WINDOWSSDK_PREFERRED_DIR)
|
|
||||||
windowssdk_name_lookup("${WINDOWSSDK_LATEST_DIR}"
|
|
||||||
WINDOWSSDK_PREFERRED_NAME)
|
|
||||||
set(WINDOWSSDK_PREFERRED_FIRST_DIRS
|
|
||||||
${_preferred_sdk_dirs}
|
|
||||||
${_win_sdk_dirs})
|
|
||||||
list(REMOVE_DUPLICATES WINDOWSSDK_PREFERRED_FIRST_DIRS)
|
|
||||||
set(WINDOWSSDK_FOUND_PREFERENCE ON)
|
|
||||||
|
|
||||||
# In case a preferred dir was found that isn't found otherwise
|
|
||||||
#set(WINDOWSSDK_DIRS ${WINDOWSSDK_DIRS} ${WINDOWSSDK_PREFERRED_FIRST_DIRS})
|
|
||||||
#list(REMOVE_DUPLICATES WINDOWSSDK_DIRS)
|
|
||||||
else()
|
|
||||||
set(WINDOWSSDK_PREFERRED_DIR "${WINDOWSSDK_LATEST_DIR}")
|
|
||||||
set(WINDOWSSDK_PREFERRED_NAME "${WINDOWSSDK_LATEST_NAME}")
|
|
||||||
set(WINDOWSSDK_PREFERRED_FIRST_DIRS ${WINDOWSSDK_DIRS})
|
|
||||||
set(WINDOWSSDK_FOUND_PREFERENCE OFF)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(WindowsSDK
|
|
||||||
"No compatible version of the Windows SDK or Platform SDK found."
|
|
||||||
WINDOWSSDK_DIRS)
|
|
||||||
|
|
||||||
if(WINDOWSSDK_FOUND)
|
|
||||||
if(NOT _winsdk_remembered_dirs STREQUAL WINDOWSSDK_DIRS)
|
|
||||||
set(_winsdk_remembered_dirs
|
|
||||||
"${WINDOWSSDK_DIRS}"
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
""
|
|
||||||
FORCE)
|
|
||||||
if(NOT WindowsSDK_FIND_QUIETLY)
|
|
||||||
foreach(_sdkdir ${WINDOWSSDK_DIRS})
|
|
||||||
windowssdk_name_lookup("${_sdkdir}" _sdkname)
|
|
||||||
message(STATUS " - Found ${_sdkname} at ${_sdkdir}")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(ARGP_ROOT_DIR
|
|
||||||
"${ARGP_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for ARGP library")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure ARGP
|
|
||||||
###
|
|
||||||
set(_check ARGP_INCLUDE_DIR)
|
|
||||||
|
|
||||||
find_path(ARGP_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
argp.h
|
|
||||||
HINTS
|
|
||||||
"${ARGP_ROOT_DIR}"
|
|
||||||
PATHS
|
|
||||||
/usr/local
|
|
||||||
/opt/local
|
|
||||||
/sw)
|
|
||||||
mark_as_advanced(ARGP_INCLUDE_DIR)
|
|
||||||
|
|
||||||
include(CheckFunctionExists)
|
|
||||||
check_function_exists(argp_parse ARGP_BUILTIN)
|
|
||||||
|
|
||||||
if(NOT ARGP_BUILTIN)
|
|
||||||
find_library(ARGP_LIBRARY
|
|
||||||
NAMES
|
|
||||||
argp
|
|
||||||
HINTS
|
|
||||||
"${ARGP_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib
|
|
||||||
lib64
|
|
||||||
PATHS
|
|
||||||
/usr/local
|
|
||||||
/opt/local
|
|
||||||
/sw)
|
|
||||||
list(APPEND _check ARGP_LIBRARY)
|
|
||||||
mark_as_advanced(ARGP_LIBRARY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(argp
|
|
||||||
DEFAULT_MSG
|
|
||||||
${_check})
|
|
||||||
|
|
||||||
if(ARGP_FOUND)
|
|
||||||
set(ARGP_INCLUDE_DIRS "${ARGP_INCLUDE_DIR}")
|
|
||||||
set(ARGP_LIBRARIES "${ARGP_LIBRARY}")
|
|
||||||
mark_as_advanced(ARGP_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
@@ -1,167 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "${CPPCHECK_ROOT_DIR}" CPPCHECK_ROOT_DIR)
|
|
||||||
set(CPPCHECK_ROOT_DIR
|
|
||||||
"${CPPCHECK_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for cppcheck")
|
|
||||||
|
|
||||||
# cppcheck app bundles on Mac OS X are GUI, we want command line only
|
|
||||||
set(_oldappbundlesetting ${CMAKE_FIND_APPBUNDLE})
|
|
||||||
set(CMAKE_FIND_APPBUNDLE NEVER)
|
|
||||||
|
|
||||||
if(CPPCHECK_EXECUTABLE AND NOT EXISTS "${CPPCHECK_EXECUTABLE}")
|
|
||||||
set(CPPCHECK_EXECUTABLE "notfound" CACHE PATH FORCE "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# If we have a custom path, look there first.
|
|
||||||
if(CPPCHECK_ROOT_DIR)
|
|
||||||
find_program(CPPCHECK_EXECUTABLE
|
|
||||||
NAMES
|
|
||||||
cppcheck
|
|
||||||
cli
|
|
||||||
PATHS
|
|
||||||
"${CPPCHECK_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
cli
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_program(CPPCHECK_EXECUTABLE NAMES cppcheck)
|
|
||||||
|
|
||||||
# Restore original setting for appbundle finding
|
|
||||||
set(CMAKE_FIND_APPBUNDLE ${_oldappbundlesetting})
|
|
||||||
|
|
||||||
# Find out where our test file is
|
|
||||||
get_filename_component(_cppcheckmoddir ${CMAKE_CURRENT_LIST_FILE} PATH)
|
|
||||||
set(_cppcheckdummyfile "${_cppcheckmoddir}/Findcppcheck.cpp")
|
|
||||||
if(NOT EXISTS "${_cppcheckdummyfile}")
|
|
||||||
message(FATAL_ERROR
|
|
||||||
"Missing file ${_cppcheckdummyfile} - should be alongside Findcppcheck.cmake, can be found at https://github.com/rpavlik/cmake-modules")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
function(_cppcheck_test_arg _resultvar _arg)
|
|
||||||
if(NOT CPPCHECK_EXECUTABLE)
|
|
||||||
set(${_resultvar} NO)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
execute_process(COMMAND
|
|
||||||
"${CPPCHECK_EXECUTABLE}"
|
|
||||||
"${_arg}"
|
|
||||||
"--quiet"
|
|
||||||
"${_cppcheckdummyfile}"
|
|
||||||
RESULT_VARIABLE
|
|
||||||
_cppcheck_result
|
|
||||||
OUTPUT_QUIET
|
|
||||||
ERROR_QUIET)
|
|
||||||
if("${_cppcheck_result}" EQUAL 0)
|
|
||||||
set(${_resultvar} YES PARENT_SCOPE)
|
|
||||||
else()
|
|
||||||
set(${_resultvar} NO PARENT_SCOPE)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
function(_cppcheck_set_arg_var _argvar _arg)
|
|
||||||
if("${${_argvar}}" STREQUAL "")
|
|
||||||
_cppcheck_test_arg(_cppcheck_arg "${_arg}")
|
|
||||||
if(_cppcheck_arg)
|
|
||||||
set(${_argvar} "${_arg}" PARENT_SCOPE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
if(CPPCHECK_EXECUTABLE)
|
|
||||||
|
|
||||||
# Check for the two types of command line arguments by just trying them
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_STYLE_ARG "--enable=style")
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_STYLE_ARG "--style")
|
|
||||||
if("${CPPCHECK_STYLE_ARG}" STREQUAL "--enable=style")
|
|
||||||
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_UNUSEDFUNC_ARG
|
|
||||||
"--enable=unusedFunctions")
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_INFORMATION_ARG "--enable=information")
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_MISSINGINCLUDE_ARG
|
|
||||||
"--enable=missingInclude")
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_POSIX_ARG "--enable=posix")
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG
|
|
||||||
"--enable=possibleError")
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG "--enable=all")
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
set(CPPCHECK_TEMPLATE_ARG --template vs)
|
|
||||||
set(CPPCHECK_FAIL_REGULAR_EXPRESSION "[(]error[)]")
|
|
||||||
set(CPPCHECK_WARN_REGULAR_EXPRESSION "[(]style[)]")
|
|
||||||
elseif(CMAKE_COMPILER_IS_GNUCXX)
|
|
||||||
set(CPPCHECK_TEMPLATE_ARG --template gcc)
|
|
||||||
set(CPPCHECK_FAIL_REGULAR_EXPRESSION " error: ")
|
|
||||||
set(CPPCHECK_WARN_REGULAR_EXPRESSION " style: ")
|
|
||||||
else()
|
|
||||||
set(CPPCHECK_TEMPLATE_ARG --template gcc)
|
|
||||||
set(CPPCHECK_FAIL_REGULAR_EXPRESSION " error: ")
|
|
||||||
set(CPPCHECK_WARN_REGULAR_EXPRESSION " style: ")
|
|
||||||
endif()
|
|
||||||
elseif("${CPPCHECK_STYLE_ARG}" STREQUAL "--style")
|
|
||||||
# Old arguments
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_UNUSEDFUNC_ARG "--unused-functions")
|
|
||||||
_cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG "--all")
|
|
||||||
set(CPPCHECK_FAIL_REGULAR_EXPRESSION "error:")
|
|
||||||
set(CPPCHECK_WARN_REGULAR_EXPRESSION "[(]style[)]")
|
|
||||||
else()
|
|
||||||
# No idea - some other issue must be getting in the way
|
|
||||||
message(STATUS
|
|
||||||
"WARNING: Can't detect whether CPPCHECK wants new or old-style arguments!")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CPPCHECK_QUIET_ARG "--quiet")
|
|
||||||
set(CPPCHECK_INCLUDEPATH_ARG "-I")
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CPPCHECK_ALL
|
|
||||||
"${CPPCHECK_EXECUTABLE} ${CPPCHECK_POSSIBLEERROR_ARG} ${CPPCHECK_UNUSEDFUNC_ARG} ${CPPCHECK_STYLE_ARG} ${CPPCHECK_QUIET_ARG} ${CPPCHECK_INCLUDEPATH_ARG} some/include/path")
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(cppcheck
|
|
||||||
DEFAULT_MSG
|
|
||||||
CPPCHECK_ALL
|
|
||||||
CPPCHECK_EXECUTABLE
|
|
||||||
CPPCHECK_POSSIBLEERROR_ARG
|
|
||||||
CPPCHECK_UNUSEDFUNC_ARG
|
|
||||||
CPPCHECK_STYLE_ARG
|
|
||||||
CPPCHECK_INCLUDEPATH_ARG
|
|
||||||
CPPCHECK_QUIET_ARG)
|
|
||||||
|
|
||||||
if(CPPCHECK_FOUND OR CPPCHECK_MARK_AS_ADVANCED)
|
|
||||||
mark_as_advanced(CPPCHECK_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(CPPCHECK_EXECUTABLE)
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
/**
|
|
||||||
* \file Findcppcheck.cpp
|
|
||||||
* \brief Dummy C++ source file used by CMake module Findcppcheck.cmake
|
|
||||||
*
|
|
||||||
* \author
|
|
||||||
* Ryan Pavlik, 2009-2010
|
|
||||||
* <rpavlik@iastate.edu>
|
|
||||||
* http://academic.cleardefinition.com/
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
int main(int argc, char* argv[]) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(CPPUNIT_ROOT_DIR
|
|
||||||
"${CPPUNIT_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to search")
|
|
||||||
|
|
||||||
find_library(CPPUNIT_LIBRARY_RELEASE
|
|
||||||
NAMES
|
|
||||||
cppunit
|
|
||||||
HINTS
|
|
||||||
"${CPPUNIT_ROOT_DIR}")
|
|
||||||
|
|
||||||
find_library(CPPUNIT_LIBRARY_DEBUG
|
|
||||||
NAMES
|
|
||||||
cppunitd
|
|
||||||
HINTS
|
|
||||||
"${CPPUNIT_ROOT_DIR}")
|
|
||||||
|
|
||||||
include(SelectLibraryConfigurations)
|
|
||||||
select_library_configurations(CPPUNIT)
|
|
||||||
|
|
||||||
# Might want to look close to the library first for the includes.
|
|
||||||
get_filename_component(_libdir "${CPPUNIT_LIBRARY_RELEASE}" PATH)
|
|
||||||
|
|
||||||
find_path(CPPUNIT_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
cppunit/TestCase.h
|
|
||||||
HINTS
|
|
||||||
"${_libdir}/.."
|
|
||||||
PATHS
|
|
||||||
"${CPPUNIT_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include/)
|
|
||||||
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(cppunit
|
|
||||||
DEFAULT_MSG
|
|
||||||
CPPUNIT_LIBRARY
|
|
||||||
CPPUNIT_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(CPPUNIT_FOUND)
|
|
||||||
set(CPPUNIT_LIBRARIES ${CPPUNIT_LIBRARY} ${CMAKE_DL_LIBS})
|
|
||||||
set(CPPUNIT_INCLUDE_DIRS "${CPPUNIT_INCLUDE_DIR}")
|
|
||||||
mark_as_advanced(CPPUNIT_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(CPPUNIT_INCLUDE_DIR
|
|
||||||
CPPUNIT_LIBRARY_RELEASE
|
|
||||||
CPPUNIT_LIBRARY_DEBUG)
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
find_package(CUDA QUIET)
|
|
||||||
|
|
||||||
|
|
||||||
file(TO_CMAKE_PATH "${CUDA_SDK_ROOT_DIR}/C/common" CUTIL_ROOT_DIR)
|
|
||||||
|
|
||||||
if(NOT EXISTS "${CUTIL_ROOT_DIR}/src/cutil.cpp")
|
|
||||||
set(CUDA_SDK_ROOT_DIR
|
|
||||||
SDKDIR-NOTFOUND
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"NVIDIA GPU Computing SDK dir"
|
|
||||||
FORCE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(cutil
|
|
||||||
DEFAULT_MSG
|
|
||||||
CUDA_SDK_ROOT_DIR
|
|
||||||
CUDA_FOUND)
|
|
||||||
|
|
||||||
if(CUTIL_FOUND)
|
|
||||||
get_filename_component(_moddir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
||||||
add_subdirectory("${_moddir}/nested_targets/cutil")
|
|
||||||
|
|
||||||
|
|
||||||
function(install_cutil dest)
|
|
||||||
install(TARGETS cutil
|
|
||||||
RUNTIME DESTINATION "${dest}"
|
|
||||||
LIBRARY DESTINATION "${dest}")
|
|
||||||
endfunction()
|
|
||||||
else()
|
|
||||||
function(install_cutil)
|
|
||||||
message(FATAL_ERROR "Can't install cutil - didn't find it!")
|
|
||||||
endfunction()
|
|
||||||
endif()
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
|
|
||||||
set(DB2PDF_ROOT_DIR
|
|
||||||
"${DB2PDF_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Directory to start our search in")
|
|
||||||
|
|
||||||
find_program(DB2PDF_COMMAND
|
|
||||||
NAMES
|
|
||||||
db2pdf
|
|
||||||
HINTS
|
|
||||||
"${DB2PDF_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
bin)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(db2pdf DEFAULT_MSG DB2PDF_COMMAND)
|
|
||||||
|
|
||||||
if(DB2PDF_FOUND)
|
|
||||||
mark_as_advanced(DB2PDF_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(DB2PDF_COMMAND)
|
|
||||||
|
|
||||||
function(docbook_to_pdf _outvar)
|
|
||||||
set(INPUT ${ARGN})
|
|
||||||
set(_out)
|
|
||||||
set(_outname)
|
|
||||||
|
|
||||||
foreach(_file ${INPUT})
|
|
||||||
get_filename_component(_base "${_file}" NAME_WE)
|
|
||||||
set(_outname "${CMAKE_CURRENT_BINARY_DIR}/${_base}.pdf")
|
|
||||||
list(APPEND _out "${_outname}")
|
|
||||||
if(DB2PDF_COMMAND)
|
|
||||||
add_custom_command(OUTPUT
|
|
||||||
"${_outname}"
|
|
||||||
COMMAND
|
|
||||||
${DB2PDF_COMMAND}
|
|
||||||
-o
|
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}"
|
|
||||||
"${_file}"
|
|
||||||
WORKING_DIRECTORY
|
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
MAIN_DEPENDENCY
|
|
||||||
"${_file}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
set(${_outvar} ${_out} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
set(OSGLUA_ROOT_DIR
|
|
||||||
"${OSGLUA_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Path to search for osgLua")
|
|
||||||
|
|
||||||
###
|
|
||||||
# Dependencies
|
|
||||||
###
|
|
||||||
find_package(Lua51 QUIET)
|
|
||||||
|
|
||||||
###
|
|
||||||
# Configure Luabind
|
|
||||||
###
|
|
||||||
find_path(OSGLUA_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
osgLua/Script
|
|
||||||
HINTS
|
|
||||||
"${OSGLUA_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include)
|
|
||||||
mark_as_advanced(OSGLUA_INCLUDE_DIR)
|
|
||||||
|
|
||||||
find_library(OSGLUA_LIBRARY
|
|
||||||
NAMES
|
|
||||||
osgLua
|
|
||||||
HINTS
|
|
||||||
"${OSGLUA_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
lib64
|
|
||||||
lib)
|
|
||||||
mark_as_advanced(OSGLUA_LIBRARY)
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(osgLua
|
|
||||||
DEFAULT_MSG
|
|
||||||
OSGLUA_LIBRARY
|
|
||||||
OSGLUA_INCLUDE_DIR
|
|
||||||
LUA_LIBRARIES
|
|
||||||
LUA_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(OSGLUA_FOUND)
|
|
||||||
set(OSGLUA_INCLUDE_DIRS "${OSGLUA_INCLUDE_DIR}" "${LUA_INCLUDE_DIR}")
|
|
||||||
set(OSGLUA_LIBRARIES "${OSGLUA_LIBRARY}" ${LUA_LIBRARIES})
|
|
||||||
mark_as_advanced(OSGLUA_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
@@ -1,99 +0,0 @@
|
|||||||
# - 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)
|
|
||||||
|
|
||||||
if(TARGET quat)
|
|
||||||
# Look for the header file.
|
|
||||||
find_path(QUATLIB_INCLUDE_DIR NAMES quat.h
|
|
||||||
PATHS ${quatlib_SOURCE_DIR})
|
|
||||||
|
|
||||||
set(QUATLIB_LIBRARY "quat")
|
|
||||||
|
|
||||||
else()
|
|
||||||
set(QUATLIB_ROOT_DIR
|
|
||||||
"${QUATLIB_ROOT_DIR}"
|
|
||||||
CACHE
|
|
||||||
PATH
|
|
||||||
"Root directory to search for quatlib")
|
|
||||||
if(DEFINED VRPN_ROOT_DIR AND NOT QUATLIB_ROOT_DIR)
|
|
||||||
set(QUATLIB_ROOT_DIR "${VRPN_ROOT_DIR}")
|
|
||||||
mark_as_advanced(QUATLIB_ROOT_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" MATCHES "8")
|
|
||||||
set(_libsuffixes lib64 lib)
|
|
||||||
|
|
||||||
# 64-bit dir: only set on win64
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramW6432}" _progfiles)
|
|
||||||
else()
|
|
||||||
set(_libsuffixes lib)
|
|
||||||
if(NOT "$ENV{ProgramFiles(x86)}" STREQUAL "")
|
|
||||||
# 32-bit dir: only set on win64
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles(x86)}" _progfiles)
|
|
||||||
else()
|
|
||||||
# 32-bit dir on win32, useless to us on win64
|
|
||||||
file(TO_CMAKE_PATH "$ENV{ProgramFiles}" _progfiles)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Look for the header file.
|
|
||||||
find_path(QUATLIB_INCLUDE_DIR
|
|
||||||
NAMES
|
|
||||||
quat.h
|
|
||||||
HINTS
|
|
||||||
"${QUATLIB_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
include
|
|
||||||
PATHS
|
|
||||||
"${_progfiles}/VRPN"
|
|
||||||
"${_progfiles}/quatlib")
|
|
||||||
|
|
||||||
# Look for the library.
|
|
||||||
find_library(QUATLIB_LIBRARY
|
|
||||||
NAMES
|
|
||||||
quat.lib
|
|
||||||
libquat.a
|
|
||||||
HINTS
|
|
||||||
"${QUATLIB_ROOT_DIR}"
|
|
||||||
PATH_SUFFIXES
|
|
||||||
${_libsuffixes}
|
|
||||||
PATHS
|
|
||||||
"${_progfiles}/VRPN"
|
|
||||||
"${_progfiles}/quatlib")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set QUATLIB_FOUND to TRUE if
|
|
||||||
# all listed variables are TRUE
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(quatlib
|
|
||||||
DEFAULT_MSG
|
|
||||||
QUATLIB_LIBRARY
|
|
||||||
QUATLIB_INCLUDE_DIR)
|
|
||||||
|
|
||||||
if(QUATLIB_FOUND)
|
|
||||||
set(QUATLIB_LIBRARIES ${QUATLIB_LIBRARY})
|
|
||||||
if(NOT WIN32)
|
|
||||||
list(APPEND QUATLIB_LIBRARIES m)
|
|
||||||
endif()
|
|
||||||
set(QUATLIB_INCLUDE_DIRS ${QUATLIB_INCLUDE_DIR})
|
|
||||||
|
|
||||||
mark_as_advanced(QUATLIB_ROOT_DIR)
|
|
||||||
else()
|
|
||||||
set(QUATLIB_LIBRARIES)
|
|
||||||
set(QUATLIB_INCLUDE_DIRS)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(QUATLIB_LIBRARY QUATLIB_INCLUDE_DIR)
|
|
||||||
@@ -1,173 +0,0 @@
|
|||||||
# - Set a number of variables to indicate things about the current CPU and OS
|
|
||||||
#
|
|
||||||
# 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)
|
|
||||||
#
|
|
||||||
|
|
||||||
|
|
||||||
if(__get_cpu_details)
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
set(__get_cpu_details YES)
|
|
||||||
|
|
||||||
function(get_cpu_details)
|
|
||||||
option(CPUDETAILS_VERBOSE
|
|
||||||
"Should we display results of the CPU info check?"
|
|
||||||
NO)
|
|
||||||
mark_as_advanced(CPUDETAILS_VERBOSE)
|
|
||||||
|
|
||||||
###
|
|
||||||
# CPU_INTEL
|
|
||||||
|
|
||||||
if("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "x86_64" OR "${CMAKE_SYSTEM_PROCESSOR}" MATCHES "i[3456]86")
|
|
||||||
set(CPU_INTEL YES)
|
|
||||||
elseif(APPLE)
|
|
||||||
# Mac Intel boxes return i386 in 10.5 - so assume this is a PPC
|
|
||||||
set(CPU_INTEL NO)
|
|
||||||
else()
|
|
||||||
# TODO: Assuming yes in case of doubt - probably not a great idea
|
|
||||||
set(CPU_INTEL YES)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CPU_INTEL
|
|
||||||
${CPU_INTEL}
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
"Intel x86 or x86_64 architecture machine?")
|
|
||||||
|
|
||||||
###
|
|
||||||
# CPU_EXE_64BIT/32BIT
|
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
||||||
set(CPU_EXE_64BIT ON)
|
|
||||||
set(CPU_EXE_32BIT OFF)
|
|
||||||
else()
|
|
||||||
set(CPU_EXE_64BIT OFF)
|
|
||||||
set(CPU_EXE_32BIT ON)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
###
|
|
||||||
# CPU_HAS_SSE/SSE2/SSE3/SSSE3/SSE4.1/SSE4.2
|
|
||||||
if(CPU_INTEL)
|
|
||||||
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|
||||||
# Use /proc/cpuinfo to find this out.
|
|
||||||
file(STRINGS "/proc/cpuinfo" _cpuinfo)
|
|
||||||
if(_cpuinfo MATCHES "(sse)|(xmm)")
|
|
||||||
set(CPU_HAS_SSE YES)
|
|
||||||
else()
|
|
||||||
set(CPU_HAS_SSE NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_cpuinfo MATCHES "(sse2)|(xmm2)")
|
|
||||||
set(CPU_HAS_SSE2 YES)
|
|
||||||
else()
|
|
||||||
set(CPU_HAS_SSE2 NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_cpuinfo MATCHES "(sse3)|(xmm3)")
|
|
||||||
set(CPU_HAS_SSE3 YES)
|
|
||||||
else()
|
|
||||||
set(CPU_HAS_SSE3 NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_cpuinfo MATCHES "ssse3")
|
|
||||||
set(CPU_HAS_SSSE3 YES)
|
|
||||||
else()
|
|
||||||
set(CPU_HAS_SSSE3 NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_cpuinfo MATCHES "(sse4_1)|(xmm4_1)")
|
|
||||||
set(CPU_HAS_SSE4_1 YES)
|
|
||||||
else()
|
|
||||||
set(CPU_HAS_SSE4_1 NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(_cpuinfo MATCHES "(sse4_2)|(xmm4_2)")
|
|
||||||
set(CPU_HAS_SSE4_2 YES)
|
|
||||||
else()
|
|
||||||
set(CPU_HAS_SSE4_2 NO)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
elseif(APPLE)
|
|
||||||
# Mac OS X Intel requires SSE3
|
|
||||||
set(CPU_HAS_SSE YES)
|
|
||||||
set(CPU_HAS_SSE2 YES)
|
|
||||||
set(CPU_HAS_SSE3 YES)
|
|
||||||
set(CPU_HAS_SSSE3 NO)
|
|
||||||
set(CPU_HAS_SSE4_1 NO)
|
|
||||||
set(CPU_HAS_SSE4_2 NO)
|
|
||||||
elseif(WIN32)
|
|
||||||
if(CPU_EXE_64BIT)
|
|
||||||
#TODO: Assume only common-denominator for 64-bit machines,
|
|
||||||
# since I don't know how to check.
|
|
||||||
set(CPU_HAS_SSE YES)
|
|
||||||
set(CPU_HAS_SSE2 YES)
|
|
||||||
set(CPU_HAS_SSE3 NO)
|
|
||||||
set(CPU_HAS_SSSE3 NO)
|
|
||||||
set(CPU_HAS_SSE4_1 NO)
|
|
||||||
set(CPU_HAS_SSE4_2 NO)
|
|
||||||
else()
|
|
||||||
#TODO: Assume no SSE, since I don't know how to check.
|
|
||||||
set(CPU_HAS_SSE NO)
|
|
||||||
set(CPU_HAS_SSE2 NO)
|
|
||||||
set(CPU_HAS_SSE3 NO)
|
|
||||||
set(CPU_HAS_SSSE3 NO)
|
|
||||||
set(CPU_HAS_SSE4_1 NO)
|
|
||||||
set(CPU_HAS_SSE4_2 NO)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CPU_INTEL
|
|
||||||
${CPU_INTEL}
|
|
||||||
CACHE
|
|
||||||
INTERNAL
|
|
||||||
"Intel x86 or x86_64 architecture machine?")
|
|
||||||
|
|
||||||
foreach(_var
|
|
||||||
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)
|
|
||||||
set(${_var} ${${_var}} CACHE INTERNAL "")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
if(CPUDETAILS_VERBOSE)
|
|
||||||
foreach(_var
|
|
||||||
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)
|
|
||||||
get_property(_help CACHE ${_var} PROPERTY HELPSTRING)
|
|
||||||
message(STATUS "[get_cpu_details] ${_var} (${_help}): ${${_var}}")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user