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(blake2)
add_subdirectory(w32-pthreads) add_subdirectory(lzma)
endif() endif()
add_subdirectory(glad) add_subdirectory(glad)
add_subdirectory(ipc-util)
if(BUILD_LIBFF)
add_subdirectory(libff)
endif()
add_subdirectory(media-playback) add_subdirectory(media-playback)
add_subdirectory(file-updater) add_subdirectory(file-updater)
add_subdirectory(obs-scripting) add_subdirectory(obs-scripting)
add_subdirectory(opts-parser) add_subdirectory(opts-parser)
if(WIN32)
add_subdirectory(blake2)
add_subdirectory(lzma)
endif()
add_subdirectory(libcaption) add_subdirectory(libcaption)
# Use bundled jansson version as fallback
find_package(Jansson 2.5 QUIET) 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) add_subdirectory(jansson)
message(STATUS "Jansson >=2.5 not found, building bundled version") add_library(Jansson::Jansson ALIAS jansson)
add_subdirectory(jansson)
set(OBS_JANSSON_IMPORT "jansson" CACHE INTERNAL "Internal var")
set(OBS_JANSSON_INCLUDE_DIRS "" CACHE INTERNAL "Internal var")
else() else()
message(STATUS "Using system Jansson library") message(STATUS "OBS: OBS-Studio - 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")
endif() endif()

View File

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

View File

@ -1,31 +1,17 @@
project(file-updater) 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) target_sources(file-updater INTERFACE file-updater/file-updater.c
include_directories(../w32-pthreads) file-updater/file-updater.h)
set(file-updater_PLATFORM_DEPS
w32-pthreads) 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() 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) 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() 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) if(NOT MSVC)
target_compile_options(glad target_compile_options(glad PRIVATE -fvisibility=hidden)
PRIVATE -DPIC -fvisibility=hidden)
endif() endif()
if(NOT WIN32 AND NOT APPLE) setup_binary_target(glad)
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)

View File

@ -1,37 +1,23 @@
# TODO: Add posix support
if(NOT WIN32)
return()
endif()
project(ipc-util) project(ipc-util)
set(ipc-util_HEADERS add_library(ipc-util STATIC)
ipc-util/pipe.h) add_library(OBS::ipc-util ALIAS ipc-util)
if(WIN32) target_sources(ipc-util PRIVATE ipc-util/pipe.h)
set(ipc-util_HEADERS
${ipc-util_HEADERS} set_target_properties(ipc-util PROPERTIES FOLDER "deps"
ipc-util/pipe-windows.h) POSITION_INDEPENDENT_CODE ON)
set(ipc-util_SOURCES
ipc-util/pipe-windows.c) 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() else()
set(ipc-util_HEADERS target_sources(ipc-util PRIVATE ipc-util/pipe-posix.c ipc-util/pipe-posic.h)
${ipc-util_HEADERS}
ipc-util/pipe-posix.h)
set(ipc-util_SOURCES
ipc-util/pipe-posix.c)
endif() 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) project(libcaption)
add_definitions(-D__STDC_CONSTANT_MACROS)
if (WIN32)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
endif()
if (UNIX AND NOT APPLE) add_library(caption STATIC)
add_compile_options("-fPIC") add_library(OBS::caption ALIAS caption)
endif()
# Don't need to prefix local includes with "caption/*" target_sources(
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/caption) 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 target_compile_definitions(
src/utf8.c caption PRIVATE __STDC_CONSTANT_MACROS
src/srt.c "$<$<BOOL:${OS_WINDOWS}>:_CRT_SECURE_NO_WARNINGS>")
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
)
set(CAPTION_HEADERS target_include_directories(
caption/utf8.h caption
caption/scc.h PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/caption
caption/mpeg.h PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
caption/cea708.h
caption/eia608.h
caption/caption.h
caption/eia608_charmap.h
)
add_library(caption STATIC ${CAPTION_SOURCES}) set_target_properties(
set_target_properties(caption PROPERTIES caption
FOLDER "deps" PROPERTIES FOLDER "deps"
POSITION_INDEPENDENT_CODE ON) VERSION "0"
SOVERSION "0"
POSITION_INDEPENDENT_CODE ON)

View File

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

View File

@ -1,148 +1,112 @@
cmake_minimum_required(VERSION 3.2)
project(lzma) project(lzma)
set(LIBLZMA_INCLUDE_DIRS add_library(lzma STATIC)
"${CMAKE_CURRENT_SOURCE_DIR}" add_library(OBS::lzma ALIAS lzma)
"${CMAKE_CURRENT_SOURCE_DIR}/liblzma/api"
CACHE PATH "lzma include path")
set(LIBLZMA_CONFIG target_sources(lzma PRIVATE config.h)
"${CMAKE_CURRENT_SOURCE_DIR}/config.h"
CACHE PATH "lzma config.h path")
include_directories( target_sources(
${LIBLZMA_INCLUDE_DIRS} lzma
common PRIVATE liblzma/check/check.c liblzma/check/crc32_table.c
liblzma/api liblzma/check/crc32_fast.c liblzma/check/crc64_table.c
liblzma/check liblzma/check/crc64_fast.c liblzma/check/sha256.c)
liblzma/common
liblzma/delta
liblzma/lz
liblzma/lzma
liblzma/rangecoder
liblzma/simple
)
add_definitions( target_sources(
-DHAVE_CONFIG_H lzma
-DTUKLIB_SYMBOL_PREFIX=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) target_sources(
if(MSVC) lzma PRIVATE liblzma/delta/delta_common.c liblzma/delta/delta_encoder.c
add_compile_options($<IF:$<CONFIG:Debug>,/MTd,/MT> /Zl) liblzma/delta/delta_decoder.c)
add_compile_options("/wd4244")
add_compile_options("/wd4267") target_sources(
endif() lzma
add_definitions( PRIVATE liblzma/lzma/lzma_encoder.c
-Dinline=_inline liblzma/lzma/lzma_encoder_presets.c
-Drestrict=__restrict) 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() 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") set_target_properties(lzma PROPERTIES FOLDER "deps")

View File

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

View File

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

View File

@ -1,30 +1,25 @@
project(w32-pthreads) if(POLICY CMP0090)
cmake_policy(SET CMP0090 NEW)
if(NOT WIN32)
return()
endif() 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") set(MODULE_DESCRIPTION "POSIX Threads for Windows")
configure_file(${CMAKE_SOURCE_DIR}/cmake/winrc/obs-module.rc.in w32-pthreads.rc) configure_file(${CMAKE_SOURCE_DIR}/cmake/bundle/windows/obs-module.rc.in
set(w32-pthreads_SOURCES w32-pthreads.rc)
pthread.c
w32-pthreads.rc)
set(w32-pthreads_HEADERS target_compile_definitions(w32-pthreads PRIVATE __CLEANUP_C PTW32_BUILD)
implement.h
pthread.h target_include_directories(
sched.h w32-pthreads PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>")
semaphore.h)
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") 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)