deps: Update CMakeLists.txt for dependencies
parent
b667fb3eff
commit
dba1041034
|
@ -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()
|
||||||
|
|
|
@ -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")
|
||||||
|
|
|
@ -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)
|
|
||||||
|
|
|
@ -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)
|
|
||||||
|
|
|
@ -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
|
@ -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)
|
||||||
|
|
|
@ -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})
|
|
||||||
|
|
|
@ -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")
|
||||||
|
|
|
@ -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)
|
|
||||||
|
|
|
@ -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)
|
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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)
|
Loading…
Reference in New Issue