1
0
Fork 0
mirror of https://github.com/bjornbytes/lovr.git synced 2024-07-03 04:53:35 +00:00

CMake: avoid include_directories;

This commit is contained in:
bjorn 2024-06-14 03:01:25 -07:00
parent 7663167aa8
commit 44f7ed6d28

View file

@ -91,7 +91,7 @@ endif()
if(LOVR_USE_GLFW AND NOT (EMSCRIPTEN OR ANDROID))
if(LOVR_SYSTEM_GLFW)
pkg_search_module(GLFW REQUIRED glfw3)
include_directories(${GLFW_INCLUDE_DIRS})
list(APPEND LOVR_INCLUDES ${GLFW_INCLUDE_DIRS})
set(LOVR_GLFW ${GLFW_LIBRARIES})
else()
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "")
@ -100,7 +100,7 @@ if(LOVR_USE_GLFW AND NOT (EMSCRIPTEN OR ANDROID))
set(GLFW_INSTALL OFF CACHE BOOL "")
set(BUILD_SHARED_LIBS ON CACHE BOOL "")
add_subdirectory(deps/glfw glfw)
include_directories(deps/glfw/include)
list(APPEND LOVR_INCLUDES deps/glfw/include)
set(LOVR_GLFW glfw ${GLFW_LIBRARIES})
endif()
unset(LIB_SUFFIX CACHE)
@ -110,7 +110,7 @@ endif()
if(LOVR_USE_LUAJIT AND NOT EMSCRIPTEN)
if(LOVR_SYSTEM_LUA)
pkg_search_module(LUAJIT REQUIRED luajit)
include_directories(${LUAJIT_INCLUDE_DIRS})
set(LOVR_LUA_INCLUDE ${LUAJIT_INCLUDE_DIRS})
set(LOVR_LUA ${LUAJIT_LIBRARIES})
else()
add_subdirectory(deps/luajit luajit)
@ -120,13 +120,13 @@ if(LOVR_USE_LUAJIT AND NOT EMSCRIPTEN)
target_compile_definitions(minilua PRIVATE _CRT_SECURE_NO_WARNINGS)
target_compile_definitions(buildvm PRIVATE _CRT_SECURE_NO_WARNINGS)
endif()
include_directories(deps/luajit/src ${CMAKE_BINARY_DIR}/luajit)
set(LOVR_LUA_INCLUDE deps/luajit/src ${CMAKE_BINARY_DIR}/luajit)
set(LOVR_LUA libluajit)
endif()
else()
if(LOVR_SYSTEM_LUA)
pkg_search_module(LUA REQUIRED lua)
include_directories(${LUA_INCLUDE_DIRS})
set(LOVR_LUA_INCLUDE ${LUA_INCLUDE_DIRS})
set(LOVR_LUA ${LUA_LIBRARIES})
else()
set(LUA_SRC
@ -139,7 +139,7 @@ else()
target_link_libraries(lua m)
target_link_libraries(lua dl)
target_compile_definitions(lua PRIVATE -DLUA_USE_DLOPEN)
include_directories(deps/lua)
set(LOVR_LUA_INCLUDE deps/lua)
set(LOVR_LUA lua)
endif()
endif()
@ -152,7 +152,7 @@ if(LOVR_ENABLE_DATA)
set(MSDFGEN_USE_VCPKG OFF CACHE BOOL "")
set(MSDFGEN_USE_CPP11 OFF CACHE BOOL "")
add_subdirectory(deps/msdfgen msdfgen)
include_directories(deps/msdfgen)
list(APPEND LOVR_INCLUDES deps/msdfgen)
set(LOVR_MSDF msdfgen-core)
if(APPLE)
set_target_properties(msdfgen-core PROPERTIES MACOSX_RPATH ON)
@ -186,26 +186,26 @@ if(LOVR_USE_GLSLANG)
if(NOT EMSCRIPTEN)
set(ENABLE_GLSLANG_BINARIES ON CACHE BOOL "")
endif()
include_directories(deps/glslang/glslang/Include deps/glslang/glslang/Public)
list(APPEND LOVR_INCLUDES deps/glslang/glslang/Include deps/glslang/glslang/Public)
add_subdirectory(deps/glslang glslang)
set(LOVR_GLSLANG glslang SPIRV glslang-default-resource-limits)
endif()
# Vulkan
if(LOVR_USE_VULKAN)
include_directories(deps/vulkan-headers/include)
list(APPEND LOVR_INCLUDES deps/vulkan-headers/include)
endif()
# OpenXR
if(LOVR_ENABLE_HEADSET AND LOVR_USE_OPENXR)
if(LOVR_SYSTEM_OPENXR AND NOT ANDROID)
pkg_search_module(OPENXR openxr REQUIRED)
include_directories(${OPENXR_INCLUDE_DIRS})
list(APPEND LOVR_INCLUDES ${OPENXR_INCLUDE_DIRS})
set(LOVR_OPENXR ${OPENXR_LIBRARIES})
else()
set(DYNAMIC_LOADER ON CACHE BOOL "")
set(BUILD_WITH_WAYLAND_HEADERS OFF CACHE BOOL "")
include_directories(deps/openxr/include)
list(APPEND LOVR_INCLUDES deps/openxr/include)
add_subdirectory(deps/openxr openxr)
set(LOVR_OPENXR openxr_loader)
endif()
@ -226,7 +226,7 @@ if(LOVR_USE_STEAM_AUDIO)
if(CMAKE_SIZEOF_VOID_P EQUAL 4) # Note: SteamAudio distributes 32 bit libs but wiring them up is very verbose
message(FATAL_ERROR "LOVR_USE_STEAM_AUDIO is not currently available on 32 bit builds")
endif()
include_directories("${LOVR_STEAM_AUDIO_PATH}/include")
list(APPEND LOVR_INCLUDES "${LOVR_STEAM_AUDIO_PATH}/include")
add_library(Phonon SHARED IMPORTED)
if(ANDROID)
set_target_properties(Phonon PROPERTIES IMPORTED_LOCATION "${LOVR_STEAM_AUDIO_PATH}/lib/Android/arm64/libphonon.so")
@ -249,7 +249,7 @@ if(LOVR_USE_OCULUS_AUDIO)
message(FATAL_ERROR "LOVR_USE_OCULUS_AUDIO requires the LOVR_OCULUS_AUDIO_PATH to be set to the location of the Oculus Spatializer Native (AudioSDK) folder")
endif()
include_directories("${LOVR_OCULUS_AUDIO_PATH}/Include")
list(APPEND LOVR_INCLUDES "${LOVR_OCULUS_AUDIO_PATH}/Include")
add_library(OculusAudio SHARED IMPORTED)
if(ANDROID)
@ -319,6 +319,8 @@ set_target_properties(lovr PROPERTIES C_STANDARD 11)
set_target_properties(lovr PROPERTIES C_STANDARD_REQUIRED ON)
target_include_directories(lovr PRIVATE
${LOVR_INCLUDES}
${LOVR_LUA_INCLUDE}
${CMAKE_CURRENT_SOURCE_DIR}/src
${CMAKE_CURRENT_SOURCE_DIR}/src/modules
${CMAKE_CURRENT_SOURCE_DIR}/src/lib/std
@ -618,6 +620,7 @@ if(NOT EMSCRIPTEN)
endif()
set_target_properties(${PLUGIN_TARGETS} PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/plugins/${PLUGIN}")
foreach(PLUGIN_TARGET ${PLUGIN_TARGETS})
target_include_directories(${PLUGIN_TARGET} PRIVATE ${LOVR_LUA_INCLUDE})
target_link_libraries(${PLUGIN_TARGET} ${LOVR_LUA})
endforeach()
list(APPEND ALL_PLUGIN_TARGETS ${PLUGIN_TARGETS})