/
githubmirror
/
obs-studio
Обзор
Документация
Войти
/
githubmirror
/
obs-studio
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
shared/obs-scripting/cmake/python.cmake
54 строки
2 KB
PatTheMav
cmake: Fix frontend feature flag mismatch
05 июн 2026, 23:00
05 июн 2026, 23:00
35c7a5a
Код
Авторство
О чём код?
option(ENABLE_SCRIPTING_PYTHON "Enable Python scripting support" ON) if(ENABLE_SCRIPTING_PYTHON) add_subdirectory(obspython) if(OS_WINDOWS) find_package(Python 3.8...<3.11 REQUIRED Interpreter Development) elseif(OS_LINUX OR OS_FREEBSD OR OS_OPENBSD) find_package(Python 3.8 REQUIRED Interpreter Development) else() find_package(Python 3.8...<3.12 REQUIRED Interpreter Development) endif() add_custom_command( OUTPUT swig/swigpyrun.h WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} PRE_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory swig COMMAND ${CMAKE_COMMAND} -E env "SWIG_LIB=${SWIG_DIR}" ${SWIG_EXECUTABLE} -python $<$<PLATFORM_ID:Windows,Darwin>:-py3-stable-abi> -external-runtime swig/swigpyrun.h COMMENT "obs-scripting - generating Python 3 SWIG interface headers" ) set_source_files_properties(swig/swigpyrun.h PROPERTIES GENERATED TRUE) target_sources( obs-scripting PRIVATE $<$<BOOL:${ENABLE_FRONTEND}>:obs-scripting-python-frontend.c> $<$<PLATFORM_ID:Windows,Darwin>:obs-scripting-python-import.c> obs-scripting-python-import.h obs-scripting-python.c obs-scripting-python.h swig/swigpyrun.h ) target_compile_definitions( obs-scripting PRIVATE ENABLE_SCRIPTING PYTHON_LIB="$<TARGET_LINKER_FILE_NAME:Python::Python>" PUBLIC Python_FOUND ) target_include_directories( obs-scripting PRIVATE "$<$<PLATFORM_ID:Windows,Darwin>:$<TARGET_PROPERTY:Python::Python,INTERFACE_INCLUDE_DIRECTORIES>>" ) target_link_libraries(obs-scripting PRIVATE $<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD>:Python::Python>) target_link_options(obs-scripting PRIVATE $<$<PLATFORM_ID:Darwin>:LINKER:-undefined,dynamic_lookup>) else() target_disable_feature(obs-scripting "Python scripting support") endif()