obs-studio/deps/glad/CMakeLists.txt
PatTheMav aa137f0766 deps: Update CMake target source lists with alphabetic sorting
Also manually updates some CMake script files to make code more
readable.
2023-12-19 17:59:44 -05:00

34 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.22...3.25)
find_package(OpenGL REQUIRED)
add_library(obsglad OBJECT)
add_library(OBS::glad ALIAS obsglad)
if(OBS_CMAKE_VERSION VERSION_LESS 3.0.0)
add_library(OBS::obsglad ALIAS obsglad)
endif()
# cmake-format: off
target_sources(
obsglad
PRIVATE src/glad.c
$<$<PLATFORM_ID:Windows>:src/glad_wgl.c>
$<$<TARGET_EXISTS:OpenGL::EGL>:src/glad_egl.c>
$<$<TARGET_EXISTS:OpenGL::EGL>:include/EGL/eglplatform.h>
PUBLIC include/glad/glad.h
"$<$<PLATFORM_ID:Windows>:${CMAKE_CURRENT_SOURCE_DIR}/include/glad/glad_wgl.h>"
"$<$<TARGET_EXISTS:OpenGL::EGL>:${CMAKE_CURRENT_SOURCE_DIR}/include/glad/glad_egl.h>")
# cmake-format: on
target_compile_options(obsglad PRIVATE $<$<COMPILE_LANG_AND_ID:C,AppleClang,Clang>:-Wno-strict-prototypes>)
target_include_directories(obsglad PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
target_link_libraries(
obsglad
PRIVATE $<$<NOT:$<PLATFORM_ID:Windows,Darwin>>:${CMAKE_DL_LIBS}>
PUBLIC OpenGL::GL $<$<TARGET_EXISTS:OpenGL::EGL>:OpenGL::EGL>)
set_target_properties(obsglad PROPERTIES FOLDER deps POSITION_INDEPENDENT_CODE TRUE)