Squashed 'cmake/' changes from b0d0a58..cac13f1

cac13f1 Add CMakePackageConfigHelpers as a backported module from 2.8.10
44e17a5 Update help
92f9405 Add FindDirectShow from VRPN
a93bf46 Update FindVRPN
edf459d clean up some modules
0bf8b53 Update documentation/help
900ae37 Improvements to findcppdom
bcdd5ed Adrienne timecode generator finder
fc14864 IDLJ finder/script
5fa91d4 Finder for windows/platform SDK
835a160 Add module to find perl modules: pass them as components
7dc76c3 cleanup
38e2a0d Create a doc_open target to open html docs
e8de008 Improved directx finding
787900c Conditionally use libuuid for VPR22
1c73e35 Add a helper error message to findcppcheck.
9e8b357 Generate, rather than enumerate, juggler lib names.
d42ae48 Add another compiler flag for warnings.
911f522 Just a little cleanup.
a466ea5 Update help
30af184 Add two new scripts written for VR Juggler
09ccc48 Update VR Juggler finders for 3.0.1
f9a5b86 VR JuggLua is no longer unreleased research software - ditch the scary warning.
1adb75e Update GetGitRevisionDescription to handle new submodules a little better.
187b7b2 Add new FindViewPoint
d1ec683 Enhance FindOpenHaptics to handle 3.1
de68fc0 Restore some tabs that went missing
feb11f6 Improve GHOST finder.
b922e06 Update help
7ff9c53 Run cmake-bulk-decrufter.
0873f79 Merge branch 'jscasallas/master'
e2ec7cd Add helpful comment about use as submodule
2a42dc5 Simplify FindQVRPN.
8ddcb84 Windows compatibility for the pull request just merged
4fcc618 Merge pull request #6 from phire/cmake-modules
fa1ef4c Add additional versions of cppdom and gmtl.
7db0714 Regenerate help
39c0f2f Add find directinput
d2e2a74 Update copyright year
5c05172 Update module help
5b62638 Rename to UseMarkdown and add rename feature
f92055a Add markdown scripts (finding and targets)
00cefbe GetGitRevisionDescription: Search parent dirs for .git/
0fb259a New module: FindQVRPN.cmake
9616f6e Find jccl and vrjuggler plugins, and split between debug and release
4856978 Set WIIUSE_RUNTIME_LIBRARY in Wiiuse even not on Windows
d94b209 make FindWinHID work on MinGW.
4c110cb Fix copy-pasteo in findcppunit
8be460a fix doc typo
6a78da3 Handle other compilers better by using compiler ID
a90f87b Use compiler behavior, not identity, to decide what warning flags to use
f03d7a8 Properly check the various arguments to cppcheck rather than assume based on a few tests.
d3ffd8a get git revision more robustly
1fb0e41 update ghost fake stl to simplify header
6fbe007 No more checking the stdc++ version for openhaptics
db11bb9 make sure we actually link against HDU/HLU nested targets!
a6580e9 remove unused variables in test file
f4a26c5 update copyright
16a6266 fix dcubed nested target
ca5cd7a mark luac item as advanced
f131cbe actually use the jttk root dir specified
501dbb2 improve dcubed include dirs
ae8764f improve splitting osg plugins into debug and release

git-subtree-dir: cmake
git-subtree-split: cac13f1c3225555cec9ae06a1ba47baa8c90442a
This commit is contained in:
Ryan Pavlik
2012-12-12 11:27:56 -06:00
parent e65c4ef077
commit dd2c7e902a
62 changed files with 3122 additions and 366 deletions

244
FindDirectX.cmake Normal file
View File

@@ -0,0 +1,244 @@
# - 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)