Improve CMake and build for LibOVR;

This commit is contained in:
bjorn 2018-09-11 15:47:03 -07:00
parent 72158f103a
commit 09a67949ed
2 changed files with 18 additions and 3 deletions

View File

@ -225,10 +225,23 @@ if(NOT EMSCRIPTEN)
) )
endif() endif()
# Oculus # Oculus SDK
if (NOT EMSCRIPTEN AND LOVR_OCULUS_PATH) if (NOT EMSCRIPTEN AND LOVR_OCULUS_PATH)
if(CMAKE_BUILD_TYPE STREQUAL "Release")
set(OCULUS_BUILD_TYPE "Release")
else()
set(OCULUS_BUILD_TYPE "Debug")
endif()
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(OCULUS_ARCH "x64")
else()
set(OCULUS_ARCH "Win32")
endif()
add_definitions(-DUSE_OCULUS)
include_directories("${LOVR_OCULUS_PATH}/LibOVR/Include") include_directories("${LOVR_OCULUS_PATH}/LibOVR/Include")
link_directories("${LOVR_OCULUS_PATH}/LibOVR/Lib/Windows/Win32/Debug/VS2017") link_directories("${LOVR_OCULUS_PATH}/LibOVR/Lib/Windows/${OCULUS_ARCH}/${OCULUS_BUILD_TYPE}/VS2017")
set(LOVR_OCULUS LibOVR) set(LOVR_OCULUS LibOVR)
endif() endif()
@ -334,7 +347,7 @@ if(EMSCRIPTEN)
else() else()
set(LOVR_SRC ${LOVR_SRC} src/headset/openvr.c) set(LOVR_SRC ${LOVR_SRC} src/headset/openvr.c)
if (LOVR_OCULUS_PATH) if(LOVR_OCULUS_PATH)
set(LOVR_SRC ${LOVR_SRC} src/headset/oculus.c) set(LOVR_SRC ${LOVR_SRC} src/headset/oculus.c)
endif() endif()
endif() endif()

View File

@ -14,7 +14,9 @@ void lovrHeadsetInit(HeadsetDriver* drivers, int count, float offset, int msaa)
switch (drivers[i]) { switch (drivers[i]) {
case DRIVER_FAKE: interface = &lovrHeadsetFakeDriver; break; case DRIVER_FAKE: interface = &lovrHeadsetFakeDriver; break;
#ifndef EMSCRIPTEN #ifndef EMSCRIPTEN
#ifdef USE_OCULUS
case DRIVER_OCULUS: interface = &lovrHeadsetOculusDriver; break; case DRIVER_OCULUS: interface = &lovrHeadsetOculusDriver; break;
#endif
case DRIVER_OPENVR: interface = &lovrHeadsetOpenVRDriver; break; case DRIVER_OPENVR: interface = &lovrHeadsetOpenVRDriver; break;
#else #else
case DRIVER_WEBVR: interface = &lovrHeadsetWebVRDriver; break; case DRIVER_WEBVR: interface = &lovrHeadsetWebVRDriver; break;