0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 04:42:18 +02:00
obs-studio/libobs-opengl/CMakeLists.txt
Georges Basile Stavracas Neto 83ae6f6f43 libobs-opengl: Rename gl-x11.c to gl-x11-glx.c
This is in preparation for the future abstraction layer (gl-x11-*)
and also to match the actual name of the windowing system. When
running under X11, we can glue OpenGL through GLX or EGL, so the
new file name matches that now.
2021-02-01 19:03:14 -03:00

102 lines
2.0 KiB
CMake

project(libobs-opengl)
find_package(OpenGL REQUIRED)
include_directories(${OPENGL_INCLUDE_DIR})
add_definitions(-DLIBOBS_EXPORTS)
if(WIN32)
set(MODULE_DESCRIPTION "OBS Library OpenGL wrapper")
configure_file(${CMAKE_SOURCE_DIR}/cmake/winrc/obs-module.rc.in libobs-opengl.rc)
set(libobs-opengl_PLATFORM_SOURCES
gl-windows.c
libobs-opengl.rc)
elseif(APPLE)
set(libobs-opengl_PLATFORM_SOURCES
gl-cocoa.m)
find_library(COCOA Cocoa)
include_directories(${COCOA})
mark_as_advanced(COCOA)
find_library(IOSURF IOSurface)
include_directories(${IOSURF})
mark_as_advanced(${IOSURF})
set(libobs-opengl_PLATFORM_DEPS
${COCOA}
${IOSURF}
${OPENGL_gl_LIBRARY})
else() #This needs to change to be more specific to get ready for Wayland
find_package(XCB COMPONENTS XCB REQUIRED)
find_package(X11_XCB REQUIRED)
include_directories(
${XCB_INCLUDE_DIRS}
${X11_XCB_INCLUDE_DIRS})
add_definitions(
${XCB_DEFINITIONS}
${X11_XCB_DEFINITIONS})
set(libobs-opengl_PLATFORM_DEPS
${XCB_LIBRARIES}
${X11_XCB_LIBRARIES})
set(libobs-opengl_PLATFORM_SOURCES
gl-x11-glx.c)
endif()
set(libobs-opengl_SOURCES
${libobs-opengl_PLATFORM_SOURCES}
gl-helpers.c
gl-indexbuffer.c
gl-shader.c
gl-shaderparser.c
gl-stagesurf.c
gl-subsystem.c
gl-texture2d.c
gl-texture3d.c
gl-texturecube.c
gl-vertexbuffer.c
gl-zstencil.c)
set(libobs-opengl_HEADERS
gl-helpers.h
gl-shaderparser.h
gl-subsystem.h)
if(WIN32 OR APPLE)
add_library(libobs-opengl MODULE
${libobs-opengl_SOURCES}
${libobs-opengl_HEADERS})
else()
add_library(libobs-opengl SHARED
${libobs-opengl_SOURCES}
${libobs-opengl_HEADERS})
endif()
if(WIN32 OR APPLE)
set_target_properties(libobs-opengl
PROPERTIES
FOLDER "core"
OUTPUT_NAME libobs-opengl
PREFIX "")
else()
set_target_properties(libobs-opengl
PROPERTIES
FOLDER "core"
OUTPUT_NAME obs-opengl
VERSION 0.0
SOVERSION 0
)
endif()
target_link_libraries(libobs-opengl
libobs
glad
${libobs-opengl_PLATFORM_DEPS})
install_obs_core(libobs-opengl)