From 64efcd155d169fd3b9c94f76de64bc8db0e27ebd Mon Sep 17 00:00:00 2001 From: PatTheMav Date: Thu, 7 Jul 2022 13:28:12 +0200 Subject: [PATCH] obs-scripting: Fix swig runtime header generation for macOS Due to swig using a hardcoded swig library path in self-compiled variants, we need to pass our custom swig library path with every invocation of swig on macOS. CMake's `add_custom_command` function does _not_ inherit the environment variables used during configuration, hence why it needs to be passed explicitly on invocation. Usage of CMake's "-E env" command module should allow for cross-platform compatible invocation. --- deps/obs-scripting/CMakeLists.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/deps/obs-scripting/CMakeLists.txt b/deps/obs-scripting/CMakeLists.txt index 8d4102b34..93188cb4c 100644 --- a/deps/obs-scripting/CMakeLists.txt +++ b/deps/obs-scripting/CMakeLists.txt @@ -95,7 +95,8 @@ if(TARGET Luajit::Luajit) OUTPUT swig/swigluarun.h WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} PRE_BUILD - COMMAND ${SWIG_EXECUTABLE} -lua -external-runtime swig/swigluarun.h + COMMAND ${CMAKE_COMMAND} -E env "SWIG_LIB=${SWIG_DIR}" ${SWIG_EXECUTABLE} + -lua -external-runtime swig/swigluarun.h COMMENT "obs-scripting - generating Luajit SWIG interface headers") set_source_files_properties(swig/swigluarun.h PROPERTIES GENERATED ON) @@ -124,7 +125,8 @@ if(TARGET Python::Python) OUTPUT swig/swigpyrun.h WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} PRE_BUILD - COMMAND ${SWIG_EXECUTABLE} -python -external-runtime swig/swigpyrun.h + COMMAND ${CMAKE_COMMAND} -E env "SWIG_LIB=${SWIG_DIR}" ${SWIG_EXECUTABLE} + -python -external-runtime swig/swigpyrun.h COMMENT "obs-scripting - generating Python 3 SWIG interface headers") set_source_files_properties(swig/swigpyrun.h PROPERTIES GENERATED ON)