From 936616a4c8943dc8ef26174b945f779a0a4d7cb3 Mon Sep 17 00:00:00 2001 From: Bastien Date: Wed, 19 Sep 2018 13:20:43 +0200 Subject: [PATCH] Add FindOpenHMD.cmake --- CMakeLists.txt | 4 ++-- cmake/Modules/FindOpenHMD.cmake | 24 ++++++++++++++++++++++++ examples/opengl/CMakeLists.txt | 2 +- 3 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 cmake/Modules/FindOpenHMD.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index c87d141..8603eb4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.1) project(Linux-VR-Compositor C) -set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/") +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/") set(CMAKE_CXX_VISIBILITY_PRESET hidden) set(CMAKE_VISIBILITY_INLINES_HIDDEN ON) @@ -13,7 +13,7 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -ansi -pedantic -Werror=implic option(ENABLE_XCB "Enable XCB" ON) find_package(OpenGL REQUIRED) -find_package(openhmd REQUIRED) +find_package(OpenHMD REQUIRED) add_library(lvrc include/lvrc.h src/lvrc.c src/lvrc_internal.h src/instance.c src/instance.h src/swapChain.c src/swapChain.h src/frame.c src/frame.h) diff --git a/cmake/Modules/FindOpenHMD.cmake b/cmake/Modules/FindOpenHMD.cmake new file mode 100644 index 0000000..2be9692 --- /dev/null +++ b/cmake/Modules/FindOpenHMD.cmake @@ -0,0 +1,24 @@ +# - Check for the presence of OpenHMD +# +# The following variables are set when OpenHMD is found: +# OpenHMD_FOUND = Set to true, if all components of OpenHMD have been found. +# OpenHMD_INCLUDE_DIR = Include path for the header files of OpenHMD +# OpenHMD_LIBRARY = Link these to use OpenHMD + +## ----------------------------------------------------------------------------- +## Check for the header files + +find_path(OpenHMD_INCLUDE_DIR openhmd.h PATHS /usr/local/include /usr/include /sw/include) +find_library(OpenHMD_LIBRARY openhmd PATHS /usr/local/lib /usr/lib /lib /sw/lib) + +if (OpenHMD_INCLUDE_DIR AND OpenHMD_LIBRARY) + set(OpenHMD_FOUND TRUE) +endif (OpenHMD_INCLUDE_DIR AND OpenHMD_LIBRARY) + +if (OpenHMD_FOUND AND NOT TARGET openhmd) + add_library(openhmd INTERFACE IMPORTED) + set_target_properties(openhmd PROPERTIES IMPORTED_LIBNAME "${OpenHMD_LIBRARY}") + set_target_properties(openhmd PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${OpenHMD_INCLUDE_DIR}") +endif(OpenHMD_FOUND AND NOT TARGET openhmd) + +mark_as_advanced(OpenHMD_FOUND OpenHMD_LIBRARY OpenHMD_INCLUDE_DIR) diff --git a/examples/opengl/CMakeLists.txt b/examples/opengl/CMakeLists.txt index 55db558..e34dded 100644 --- a/examples/opengl/CMakeLists.txt +++ b/examples/opengl/CMakeLists.txt @@ -1,7 +1,7 @@ project (openglexample C) find_package(OpenGL REQUIRED) -find_package(openhmd REQUIRED) +find_package(OpenHMD REQUIRED) add_executable(openglexample gl.c gl.h main.c)