deps: Update CMakeLists.txt for dependencies

master
PatTheMav 2021-11-29 22:02:23 +01:00
parent b667fb3eff
commit dba1041034
No known key found for this signature in database
GPG Key ID: CEFD5D83C12A66B3
13 changed files with 809 additions and 941 deletions

38
deps/CMakeLists.txt vendored
View File

@ -1,39 +1,27 @@
if(OS_WINDOWS)
if(NOT MINGW)
add_subdirectory(w32-pthreads)
endif()
add_subdirectory(ipc-util)
if(NOT MINGW)
add_subdirectory(w32-pthreads)
add_subdirectory(blake2)
add_subdirectory(lzma)
endif()
add_subdirectory(glad)
add_subdirectory(ipc-util)
if(BUILD_LIBFF)
add_subdirectory(libff)
endif()
add_subdirectory(media-playback)
add_subdirectory(file-updater)
add_subdirectory(obs-scripting)
add_subdirectory(opts-parser)
if(WIN32)
add_subdirectory(blake2)
add_subdirectory(lzma)
endif()
add_subdirectory(libcaption)
# Use bundled jansson version as fallback
find_package(Jansson 2.5 QUIET)
if(NOT TARGET Jansson::Jansson)
message(STATUS "OBS: Jansson >=2.5 not found, building bundled version")
if(NOT JANSSON_FOUND)
message(STATUS "Jansson >=2.5 not found, building bundled version")
add_subdirectory(jansson)
set(OBS_JANSSON_IMPORT "jansson" CACHE INTERNAL "Internal var")
set(OBS_JANSSON_INCLUDE_DIRS "" CACHE INTERNAL "Internal var")
add_subdirectory(jansson)
add_library(Jansson::Jansson ALIAS jansson)
else()
message(STATUS "Using system Jansson library")
set(OBS_JANSSON_IMPORT "${JANSSON_LIBRARIES}" CACHE INTERNAL "Internal var")
set(OBS_JANSSON_INCLUDE_DIRS "${JANSSON_INCLUDE_DIRS}" CACHE INTERNAL "Internal var")
message(STATUS "OBS: OBS-Studio - Using system Jansson library")
endif()

View File

@ -1,33 +1,18 @@
cmake_minimum_required(VERSION 3.2)
project(blake2)
set(BLAKE2_INCLUDE_DIR
"${CMAKE_CURRENT_SOURCE_DIR}/src"
CACHE PATH "blake2 include path")
add_library(blake2 STATIC)
add_library(OBS::blake2 ALIAS blake2)
include_directories(
${LIBblake2_INCLUDE_DIRS}
src
)
target_sources(blake2 PRIVATE src/blake2b-ref.c src/blake2.h src/blake2-impl.h)
if(WIN32)
if(MSVC)
add_compile_options($<IF:$<CONFIG:Debug>,/MTd,/MT> /Zl)
endif()
add_definitions(
-Dinline=_inline
-Drestrict=__restrict)
target_include_directories(blake2 PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/src)
if(OS_WINDOWS)
if(MSVC)
target_compile_options(blake2 PRIVATE "$<IF:$<CONFIG:Debug>,/MTd,/MT>" /Zl)
endif()
target_compile_definitions(blake2 PRIVATE inline=_inline restrict=__restrict)
endif()
set(blake2_SOURCES
src/blake2b-ref.c)
set(blake2_HEADERS
src/blake2.h
src/blake2-impl.h)
add_library(blake2 STATIC
${blake2_SOURCES}
${blake2_HEADERS})
set_target_properties(blake2 PROPERTIES FOLDER "deps")

View File

@ -1,31 +1,17 @@
project(file-updater)
find_package(Libcurl REQUIRED)
find_package(CURL REQUIRED)
include_directories(${LIBCURL_INCLUDE_DIRS})
add_library(file-updater INTERFACE)
add_library(OBS::file-updater ALIAS file-updater)
if(WIN32 AND NOT MINGW)
include_directories(../w32-pthreads)
set(file-updater_PLATFORM_DEPS
w32-pthreads)
target_sources(file-updater INTERFACE file-updater/file-updater.c
file-updater/file-updater.h)
target_link_libraries(file-updater INTERFACE CURL::libcurl)
target_include_directories(file-updater INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
if(OS_WINDOWS AND NOT MINGW)
target_link_libraries(file-updater INTERFACE OBS::w32-pthreads)
endif()
set(file-updater_HEADERS
file-updater/file-updater.h)
set(file-updater_SOURCES
file-updater/file-updater.c)
add_library(file-updater STATIC
${file-updater_SOURCES}
${file-updater_HEADERS})
target_include_directories(file-updater
PUBLIC .)
target_link_libraries(file-updater
${LIBCURL_LIBRARIES}
${file-updater_PLATFORM_DEPS}
libobs)
set_target_properties(file-updater PROPERTIES
FOLDER "deps"
POSITION_INDEPENDENT_CODE ON)

View File

@ -1,76 +1,51 @@
project(glad)
find_package(OpenGL)
find_package(OpenGL REQUIRED)
add_library(glad SHARED)
add_library(OBS::obsglad ALIAS glad)
target_sources(glad PRIVATE src/glad.c include/glad/glad.h)
target_include_directories(glad PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_compile_definitions(glad PRIVATE GLAD_GLAPI_EXPORT_BUILD)
target_link_libraries(glad PUBLIC OpenGL::GL)
set_target_properties(
glad
PROPERTIES OUTPUT_NAME obsglad
FOLDER "deps"
VERSION "${OBS_VERSION_MAJOR}"
SOVERSION "1")
if(OS_WINDOWS)
set(MODULE_DESCRIPTION "Glad OpenGL Loading Library")
configure_file(${CMAKE_SOURCE_DIR}/cmake/bundle/windows/obs-module.rc.in
obsglad.rc)
target_sources(glad PRIVATE src/glad_wgl.c include/glad/glad_wgl.h obsglad.rc)
elseif(OS_POSIX AND NOT OS_MACOS)
find_package(OpenGL REQUIRED)
find_package(X11 REQUIRED)
target_link_libraries(glad PRIVATE X11::X11)
target_sources(glad PRIVATE src/glad_glx.c include/glad/glad_glx.h)
if(TARGET OpenGL::EGL)
target_sources(glad PRIVATE src/glad_egl.c include/glad/glad_egl.h)
target_link_libraries(glad PRIVATE OpenGL::EGL)
endif()
if(NOT WIN32 AND NOT APPLE)
find_package(X11 REQUIRED)
find_package(EGL REQUIRED)
endif()
set(glad_SOURCES
src/glad.c
include/glad/glad.h)
if(WIN32)
set(MODULE_DESCRIPTION "Glad OpenGL Loading Library")
configure_file(${CMAKE_SOURCE_DIR}/cmake/winrc/obs-module.rc.in obsglad.rc)
set(glad_PLATFORM_SOURCES
src/glad_wgl.c
include/glad/glad_wgl.h
obsglad.rc)
elseif(NOT APPLE)
set(glad_PLATFORM_SOURCES
src/glad_egl.c
src/glad_glx.c
include/glad/glad_egl.h
include/glad/glad_glx.h)
endif()
set(glad_include_dirs
PRIVATE ${OPENGL_INCLUDE_DIR})
if (UNIX AND NOT APPLE)
list (APPEND glad_include_dirs
PRIVATE
${X11_X11_INCLUDE_PATH}
${EGL_INCLUDE_DIRS})
endif()
add_library(glad SHARED
${glad_SOURCES}
${glad_PLATFORM_SOURCES})
set_target_properties(glad PROPERTIES
FOLDER "deps"
OUTPUT_NAME obsglad
VERSION "0"
SOVERSION "0"
POSITION_INDEPENDENT_CODE ON)
target_include_directories(glad
PUBLIC include
${glad_include_dirs})
target_compile_definitions(glad
PRIVATE GLAD_GLAPI_EXPORT_BUILD)
if(NOT MSVC)
target_compile_options(glad
PRIVATE -DPIC -fvisibility=hidden)
target_compile_options(glad PRIVATE -fvisibility=hidden)
endif()
if(NOT WIN32 AND NOT APPLE)
set(glad_PLATFORM_DEPS
${X11_X11_LIB}
${EGL_LIBRARIES})
# only link to libdl on linux
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set(glad_PLATFORM_DEPS
${glad_PLATFORM_DEPS}
-ldl)
endif()
endif()
target_link_libraries(glad
${glad_PLATFORM_DEPS}
${OPENGL_gl_LIBRARY})
install_obs_core(glad)
setup_binary_target(glad)

View File

@ -1,37 +1,23 @@
# TODO: Add posix support
if(NOT WIN32)
return()
endif()
project(ipc-util)
set(ipc-util_HEADERS
ipc-util/pipe.h)
add_library(ipc-util STATIC)
add_library(OBS::ipc-util ALIAS ipc-util)
if(WIN32)
set(ipc-util_HEADERS
${ipc-util_HEADERS}
ipc-util/pipe-windows.h)
set(ipc-util_SOURCES
ipc-util/pipe-windows.c)
target_sources(ipc-util PRIVATE ipc-util/pipe.h)
set_target_properties(ipc-util PROPERTIES FOLDER "deps"
POSITION_INDEPENDENT_CODE ON)
target_include_directories(ipc-util PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
if(OS_WINDOWS)
if(MSVC)
target_compile_options(ipc-util PRIVATE "$<IF:$<CONFIG:Debug>,/MTd,/MT>"
/Zl)
endif()
target_sources(ipc-util PRIVATE ipc-util/pipe-windows.c
ipc-util/pipe-windows.h)
else()
set(ipc-util_HEADERS
${ipc-util_HEADERS}
ipc-util/pipe-posix.h)
set(ipc-util_SOURCES
ipc-util/pipe-posix.c)
target_sources(ipc-util PRIVATE ipc-util/pipe-posix.c ipc-util/pipe-posic.h)
endif()
if(MSVC)
add_compile_options($<IF:$<CONFIG:Debug>,/MTd,/MT> /Zl)
endif()
add_library(ipc-util STATIC
${ipc-util_SOURCES}
${ipc-util_HEADERS})
set_target_properties(ipc-util PROPERTIES
FOLDER "deps"
POSITION_INDEPENDENT_CODE ON)
target_include_directories(ipc-util
PUBLIC .)
target_link_libraries(ipc-util)

File diff suppressed because it is too large Load Diff

View File

@ -1,41 +1,40 @@
cmake_minimum_required(VERSION 2.8.12)
project(libcaption)
add_definitions(-D__STDC_CONSTANT_MACROS)
if (WIN32)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
endif()
if (UNIX AND NOT APPLE)
add_compile_options("-fPIC")
endif()
add_library(caption STATIC)
add_library(OBS::caption ALIAS caption)
# Don't need to prefix local includes with "caption/*"
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/caption)
target_sources(
caption
PRIVATE src/caption.c
src/utf8.c
caption/utf8.h
src/srt.c
src/scc.c
caption/scc.h
src/mpeg.c
caption/mpeg.h
src/cea708.c
caption/cea708.h
src/xds.c
src/eia608.c
caption/eia608.h
src/eia608_from_utf8.c
src/eia608_charmap.c
caption/eia608_charmap.h
PUBLIC caption/caption.h)
set(CAPTION_SOURCES
src/utf8.c
src/srt.c
src/scc.c
src/mpeg.c
src/cea708.c
src/xds.c
src/caption.c
src/eia608_charmap.c
src/eia608_from_utf8.c
src/eia608.c
)
target_compile_definitions(
caption PRIVATE __STDC_CONSTANT_MACROS
"$<$<BOOL:${OS_WINDOWS}>:_CRT_SECURE_NO_WARNINGS>")
set(CAPTION_HEADERS
caption/utf8.h
caption/scc.h
caption/mpeg.h
caption/cea708.h
caption/eia608.h
caption/caption.h
caption/eia608_charmap.h
)
target_include_directories(
caption
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/caption
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
add_library(caption STATIC ${CAPTION_SOURCES})
set_target_properties(caption PROPERTIES
FOLDER "deps"
POSITION_INDEPENDENT_CODE ON)
set_target_properties(
caption
PROPERTIES FOLDER "deps"
VERSION "0"
SOVERSION "0"
POSITION_INDEPENDENT_CODE ON)

View File

@ -1,61 +1,57 @@
cmake_minimum_required (VERSION 2.8.12)
project (libff)
cmake_minimum_required(VERSION 2.8.12)
project(libff)
find_package(FFmpeg REQUIRED
COMPONENTS avcodec avfilter avdevice avutil swscale avformat swresample)
find_package(
FFmpeg REQUIRED
COMPONENTS avcodec
avfilter
avdevice
avutil
swscale
avformat
swresample)
include_directories(${FFMPEG_INCLUDE_DIRS})
if(WIN32 AND NOT MINGW)
include_directories(../w32-pthreads)
add_definitions(-Dinline=__inline)
include_directories(../w32-pthreads)
add_definitions(-Dinline=__inline)
endif(WIN32 AND NOT MINGW)
set(libff_HEADERS
libff/ff-callbacks.h
libff/ff-circular-queue.h
libff/ff-clock.h
libff/ff-frame.h
libff/ff-packet-queue.h
libff/ff-threading.h
libff/ff-timer.h
libff/ff-util.h
#
libff/ff-demuxer.h
#
libff/ff-decoder.h)
libff/ff-callbacks.h
libff/ff-circular-queue.h
libff/ff-clock.h
libff/ff-frame.h
libff/ff-packet-queue.h
libff/ff-threading.h
libff/ff-timer.h
libff/ff-util.h
libff/ff-demuxer.h
libff/ff-decoder.h)
set(libff_SOURCES
libff/ff-callbacks.c
libff/ff-circular-queue.c
libff/ff-clock.c
libff/ff-packet-queue.c
libff/ff-timer.c
libff/ff-util.c
#
libff/ff-demuxer.c
#
libff/ff-decoder.c
libff/ff-audio-decoder.c
libff/ff-video-decoder.c)
libff/ff-callbacks.c
libff/ff-circular-queue.c
libff/ff-clock.c
libff/ff-packet-queue.c
libff/ff-timer.c
libff/ff-util.c
libff/ff-demuxer.c
libff/ff-decoder.c
libff/ff-audio-decoder.c
libff/ff-video-decoder.c)
if (WIN32)
list(APPEND libff_SOURCES
libff/ff-threading-windows.c)
if(WIN32)
list(APPEND libff_SOURCES libff/ff-threading-windows.c)
else(WIN32)
list(APPEND libff_SOURCES
libff/ff-threading-posix.c)
list(APPEND libff_SOURCES libff/ff-threading-posix.c)
endif(WIN32)
add_library (libff STATIC
${libff_HEADERS}
${libff_SOURCES})
set_target_properties(libff PROPERTIES
FOLDER "deps"
POSITION_INDEPENDENT_CODE ON)
add_library(libff STATIC ${libff_HEADERS} ${libff_SOURCES})
set_target_properties(libff PROPERTIES FOLDER "deps" POSITION_INDEPENDENT_CODE
ON)
target_include_directories(libff
PUBLIC .)
target_include_directories(libff PUBLIC .)
target_link_libraries (libff
${FFMPEG_LIBRARIES})
target_link_libraries(libff ${FFMPEG_LIBRARIES})

View File

@ -1,148 +1,112 @@
cmake_minimum_required(VERSION 3.2)
project(lzma)
set(LIBLZMA_INCLUDE_DIRS
"${CMAKE_CURRENT_SOURCE_DIR}"
"${CMAKE_CURRENT_SOURCE_DIR}/liblzma/api"
CACHE PATH "lzma include path")
add_library(lzma STATIC)
add_library(OBS::lzma ALIAS lzma)
set(LIBLZMA_CONFIG
"${CMAKE_CURRENT_SOURCE_DIR}/config.h"
CACHE PATH "lzma config.h path")
target_sources(lzma PRIVATE config.h)
include_directories(
${LIBLZMA_INCLUDE_DIRS}
common
liblzma/api
liblzma/check
liblzma/common
liblzma/delta
liblzma/lz
liblzma/lzma
liblzma/rangecoder
liblzma/simple
)
target_sources(
lzma
PRIVATE liblzma/check/check.c liblzma/check/crc32_table.c
liblzma/check/crc32_fast.c liblzma/check/crc64_table.c
liblzma/check/crc64_fast.c liblzma/check/sha256.c)
add_definitions(
-DHAVE_CONFIG_H
-DTUKLIB_SYMBOL_PREFIX=lzma_)
target_sources(
lzma
PRIVATE liblzma/common/common.c
liblzma/common/block_util.c
liblzma/common/easy_preset.c
liblzma/common/filter_common.c
liblzma/common/hardware_physmem.c
liblzma/common/index.c
liblzma/common/stream_flags_common.c
liblzma/common/vli_size.c
liblzma/common/alone_encoder.c
liblzma/common/block_buffer_encoder.c
liblzma/common/block_encoder.c
liblzma/common/block_header_encoder.c
liblzma/common/easy_buffer_encoder.c
liblzma/common/easy_encoder.c
liblzma/common/easy_encoder_memusage.c
liblzma/common/filter_buffer_encoder.c
liblzma/common/filter_encoder.c
liblzma/common/filter_flags_encoder.c
liblzma/common/index_encoder.c
liblzma/common/stream_buffer_encoder.c
liblzma/common/stream_encoder.c
liblzma/common/stream_flags_encoder.c
liblzma/common/vli_encoder.c
liblzma/common/alone_decoder.c
liblzma/common/auto_decoder.c
liblzma/common/block_buffer_decoder.c
liblzma/common/block_decoder.c
liblzma/common/block_header_decoder.c
liblzma/common/easy_decoder_memusage.c
liblzma/common/filter_buffer_decoder.c
liblzma/common/filter_decoder.c
liblzma/common/filter_flags_decoder.c
liblzma/common/index_decoder.c
liblzma/common/index_hash.c
liblzma/common/stream_buffer_decoder.c
liblzma/common/stream_decoder.c
liblzma/common/stream_flags_decoder.c
liblzma/common/vli_decoder.c)
if(WIN32)
if(MSVC)
add_compile_options($<IF:$<CONFIG:Debug>,/MTd,/MT> /Zl)
add_compile_options("/wd4244")
add_compile_options("/wd4267")
endif()
add_definitions(
-Dinline=_inline
-Drestrict=__restrict)
target_sources(
lzma PRIVATE liblzma/delta/delta_common.c liblzma/delta/delta_encoder.c
liblzma/delta/delta_decoder.c)
target_sources(
lzma
PRIVATE liblzma/lzma/lzma_encoder.c
liblzma/lzma/lzma_encoder_presets.c
liblzma/lzma/lzma_encoder_optimum_fast.c
liblzma/lzma/lzma_encoder_optimum_normal.c
liblzma/lzma/fastpos_table.c
liblzma/lzma/lzma_decoder.c
liblzma/lzma/lzma2_encoder.c
liblzma/lzma/lzma2_decoder.c)
target_sources(lzma PRIVATE liblzma/lz/lz_encoder.c liblzma/lz/lz_encoder_mf.c
liblzma/lz/lz_decoder.c)
target_sources(lzma PRIVATE liblzma/rangecoder/price_table.c)
target_sources(
lzma
PRIVATE liblzma/simple/simple_coder.c
liblzma/simple/simple_encoder.c
liblzma/simple/simple_decoder.c
liblzma/simple/arm.c
liblzma/simple/armthumb.c
liblzma/simple/ia64.c
liblzma/simple/powerpc.c
liblzma/simple/sparc.c
liblzma/simple/x86.c)
target_compile_definitions(lzma PRIVATE HAVE_CONFIG_H
TUKLIB_SYMBOL_PREFIX=lzma_)
target_include_directories(
lzma
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/common
${CMAKE_CURRENT_SOURCE_DIR}/liblzma/check
${CMAKE_CURRENT_SOURCE_DIR}/liblzma/common
${CMAKE_CURRENT_SOURCE_DIR}/liblzma/delta
${CMAKE_CURRENT_SOURCE_DIR}/liblzma/lz
${CMAKE_CURRENT_SOURCE_DIR}/liblzma/lzma
${CMAKE_CURRENT_SOURCE_DIR}/liblzma/rangecoder
${CMAKE_CURRENT_SOURCE_DIR}/liblzma/simple
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/liblzma/api)
if(OS_WINDOWS)
if(MSVC)
target_compile_options(lzma PRIVATE "$<IF:$<CONFIG:Debug>,/MTd,/MT>" /Zl
/wd4244 /wd4267)
endif()
target_compile_definitions(lzma PRIVATE inline=_inline restrict=__restrict)
endif()
set(liblzma_check_SOURCES
liblzma/check/check.c)
list(APPEND liblzma_check_SOURCES
liblzma/check/crc32_table.c
liblzma/check/crc32_fast.c
liblzma/check/crc64_table.c
liblzma/check/crc64_fast.c
liblzma/check/sha256.c)
set(liblzma_common_SOURCES
liblzma/common/common.c
liblzma/common/block_util.c
liblzma/common/easy_preset.c
liblzma/common/filter_common.c
liblzma/common/hardware_physmem.c
liblzma/common/index.c
liblzma/common/stream_flags_common.c
liblzma/common/vli_size.c
liblzma/common/alone_encoder.c
liblzma/common/block_buffer_encoder.c
liblzma/common/block_encoder.c
liblzma/common/block_header_encoder.c
liblzma/common/easy_buffer_encoder.c
liblzma/common/easy_encoder.c
liblzma/common/easy_encoder_memusage.c
liblzma/common/filter_buffer_encoder.c
liblzma/common/filter_encoder.c
liblzma/common/filter_flags_encoder.c
liblzma/common/index_encoder.c
liblzma/common/stream_buffer_encoder.c
liblzma/common/stream_encoder.c
liblzma/common/stream_flags_encoder.c
liblzma/common/vli_encoder.c
liblzma/common/alone_decoder.c
liblzma/common/auto_decoder.c
liblzma/common/block_buffer_decoder.c
liblzma/common/block_decoder.c
liblzma/common/block_header_decoder.c
liblzma/common/easy_decoder_memusage.c
liblzma/common/filter_buffer_decoder.c
liblzma/common/filter_decoder.c
liblzma/common/filter_flags_decoder.c
liblzma/common/index_decoder.c
liblzma/common/index_hash.c
liblzma/common/stream_buffer_decoder.c
liblzma/common/stream_decoder.c
liblzma/common/stream_flags_decoder.c
liblzma/common/vli_decoder.c)
set(liblzma_delta_SOURCES
liblzma/delta/delta_common.c
liblzma/delta/delta_encoder.c
liblzma/delta/delta_decoder.c)
set(liblzma_lzma_SOURCES
liblzma/lzma/lzma_encoder.c
liblzma/lzma/lzma_encoder_presets.c
liblzma/lzma/lzma_encoder_optimum_fast.c
liblzma/lzma/lzma_encoder_optimum_normal.c
liblzma/lzma/fastpos_table.c
liblzma/lzma/lzma_decoder.c
liblzma/lzma/lzma2_encoder.c
liblzma/lzma/lzma2_decoder.c)
set(liblzma_lz_SOURCES
liblzma/lz/lz_encoder.c
liblzma/lz/lz_encoder_mf.c
liblzma/lz/lz_decoder.c)
set(liblzma_rangecoder_SOURCES
liblzma/rangecoder/price_table.c)
set(liblzma_simple_SOURCES
liblzma/simple/simple_coder.c
liblzma/simple/simple_encoder.c
liblzma/simple/simple_decoder.c
liblzma/simple/arm.c
liblzma/simple/armthumb.c
liblzma/simple/ia64.c
liblzma/simple/powerpc.c
liblzma/simple/sparc.c
liblzma/simple/x86.c)
if (WIN32)
SET_SOURCE_FILES_PROPERTIES(
${liblzma_check_SOURCES}
${liblzma_common_SOURCES}
${liblzma_delta_SOURCES}
${liblzma_lz_SOURCES}
${liblzma_lzma_SOURCES}
${liblzma_rangecoder_SOURCES}
${liblzma_simple_SOURCES}
PROPERTIES LANGUAGE C)
endif()
add_library(lzma STATIC
${liblzma_check_SOURCES}
${liblzma_common_SOURCES}
${liblzma_delta_SOURCES}
${liblzma_lz_SOURCES}
${liblzma_lzma_SOURCES}
${liblzma_rangecoder_SOURCES}
${liblzma_simple_SOURCES})
set_target_properties(lzma PROPERTIES FOLDER "deps")

View File

@ -1,39 +1,23 @@
project(media-playback)
find_package(FFmpeg REQUIRED
COMPONENTS avcodec avdevice avutil avformat)
option(ENABLE_SIMDE "Enable non-native SSE2 SIMD support" ON)
include_directories(
${CMAKE_SOURCE_DIR}/libobs
${FFMPEG_INCLUDE_DIRS}
)
find_package(FFmpeg REQUIRED COMPONENTS avcodec avdevice avutil avformat)
set(media-playback_HEADERS
media-playback/closest-format.h
media-playback/decode.h
media-playback/media.h
)
set(media-playback_SOURCES
media-playback/decode.c
media-playback/media.c
)
add_library(media-playback INTERFACE)
add_library(OBS::media-playback ALIAS media-playback)
add_library(media-playback STATIC
${media-playback_HEADERS}
${media-playback_SOURCES}
)
target_sources(
media-playback
INTERFACE media-playback/media.c media-playback/media.h
media-playback/decode.c media-playback/decode.h
media-playback/closest-format.h)
target_compile_options(media-playback
PUBLIC
${ARCH_SIMD_FLAGS})
target_link_libraries(media-playback INTERFACE FFmpeg::avcodec FFmpeg::avdevice
FFmpeg::avutil FFmpeg::avformat)
target_include_directories(media-playback
PUBLIC .
)
target_include_directories(media-playback INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(media-playback
${FFMPEG_LIBRARIES}
)
set_target_properties(media-playback PROPERTIES
FOLDER "deps"
POSITION_INDEPENDENT_CODE ON)
target_compile_options(media-playback INTERFACE ${ARCH_SIMD_FLAGS})
target_compile_definitions(media-playback INTERFACE ${ARCH_SIMD_DEFINES})

View File

@ -1,17 +1,10 @@
project(opts-parser)
set(opts-parser_SOURCES
opts-parser.c)
set(opts-parser_HEADERS
opts-parser.h)
add_library(opts-parser INTERFACE)
add_library(OBS::opts-parser ALIAS opts-parser)
add_library(opts-parser STATIC
${opts-parser_SOURCES}
${opts-parser_HEADERS})
target_include_directories(opts-parser
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(opts-parser
libobs)
set_target_properties(opts-parser PROPERTIES
FOLDER "deps"
POSITION_INDEPENDENT_CODE ON)
target_sources(opts-parser INTERFACE opts-parser.c opts-parser.h)
target_link_libraries(opts-parser INTERFACE OBS::libobs)
target_include_directories(opts-parser INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -1,30 +1,25 @@
project(w32-pthreads)
if(NOT WIN32)
return()
if(POLICY CMP0090)
cmake_policy(SET CMP0090 NEW)
endif()
project(w32-pthreads)
add_library(w32-pthreads SHARED)
add_library(OBS::w32-pthreads ALIAS w32-pthreads)
target_sources(w32-pthreads PRIVATE implement.h pthread.c pthread.h sched.h
semaphore.h w32-pthreads.rc)
set(MODULE_DESCRIPTION "POSIX Threads for Windows")
configure_file(${CMAKE_SOURCE_DIR}/cmake/winrc/obs-module.rc.in w32-pthreads.rc)
set(w32-pthreads_SOURCES
pthread.c
w32-pthreads.rc)
configure_file(${CMAKE_SOURCE_DIR}/cmake/bundle/windows/obs-module.rc.in
w32-pthreads.rc)
set(w32-pthreads_HEADERS
implement.h
pthread.h
sched.h
semaphore.h)
target_compile_definitions(w32-pthreads PRIVATE __CLEANUP_C PTW32_BUILD)
target_include_directories(
w32-pthreads PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>")
add_library(w32-pthreads SHARED
${w32-pthreads_SOURCES}
${w32-pthreads_HEADERS})
target_compile_definitions(w32-pthreads
PRIVATE __CLEANUP_C PTW32_BUILD)
target_include_directories(w32-pthreads
PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>")
target_link_libraries(w32-pthreads)
set_target_properties(w32-pthreads PROPERTIES FOLDER "deps")
install_obs_core(w32-pthreads EXPORT w32-pthreads)
setup_binary_target(w32-pthreads)
export_target(w32-pthreads)

View File

@ -0,0 +1,6 @@
@PACKAGE_INIT@
include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake")
check_required_components("@PROJECT_NAME@")
set(LIBOBS_LIBRARIES w32-pthreads)