Files
obs-studio/plugins/coreaudio-encoder/cmake/legacy.cmake
PatTheMav 349372b3b3 cmake: Add changes for CMake build framework 3.0
New code path only taken if OBS_CMAKE_VERSION is set to 3.0.0 or
greater, old functionality remains unchanged.
2023-03-26 18:20:38 -04:00

49 lines
1.4 KiB
CMake

project(coreaudio-encoder)
if(OS_WINDOWS)
option(ENABLE_COREAUDIO_ENCODER "Enable building with CoreAudio encoder (Windows)" ON)
if(NOT ENABLE_COREAUDIO_ENCODER)
obs_status(DISABLED "coreaudio-encoder")
return()
endif()
endif()
add_library(coreaudio-encoder MODULE)
add_library(OBS::coreaudio-encoder ALIAS coreaudio-encoder)
target_sources(coreaudio-encoder PRIVATE encoder.cpp)
set_target_properties(
coreaudio-encoder
PROPERTIES OUTPUT_NAME "coreaudio-encoder"
FOLDER "plugins"
PREFIX "")
target_compile_features(coreaudio-encoder PRIVATE cxx_std_11)
target_link_libraries(coreaudio-encoder PRIVATE OBS::libobs)
if(OS_MACOS)
find_library(COREFOUNDATION CoreFoundation)
find_library(COREAUDIO CoreAudio)
find_library(AUDIOTOOLBOX AudioToolbox)
mark_as_advanced(AUDIOTOOLBOX COREAUDIO COREFOUNDATION)
target_link_libraries(coreaudio-encoder PRIVATE ${COREFOUNDATION} ${COREAUDIO} ${AUDIOTOOLBOX})
elseif(OS_WINDOWS)
if(MINGW)
set_source_files_properties(encoder.cpp PROPERTIES COMPILE_FLAGS -Wno-multichar)
endif()
target_compile_definitions(coreaudio-encoder PRIVATE UNICODE _UNICODE)
set(MODULE_DESCRIPTION "OBS CoreAudio encoder")
configure_file(${CMAKE_SOURCE_DIR}/cmake/bundle/windows/obs-module.rc.in coreaudio-encoder.rc)
target_sources(coreaudio-encoder PRIVATE coreaudio-encoder.rc windows-imports.h)
endif()
setup_plugin_target(coreaudio-encoder)