|
@@ -278,7 +278,7 @@ configure_obs_build() {
|
|
|
-DDepsPath="/tmp/obsdeps" \
|
|
|
-DVLCPath="${DEPS_BUILD_DIR}/vlc-${VLC_VERSION:-${CI_VLC_VERSION}}" \
|
|
|
-DBUILD_BROWSER=ON \
|
|
|
- -DBROWSER_DEPLOY=ON \
|
|
|
+ -DBROWSER_LEGACY="$(test "${CEF_BUILD_VERSION:-${CI_CEF_VERSION}}" -le 3770 && echo "ON" || echo "OFF")" \
|
|
|
-DWITH_RTMPS=ON \
|
|
|
-DCEF_ROOT_DIR="${DEPS_BUILD_DIR}/cef_binary_${CEF_BUILD_VERSION:-${CI_CEF_VERSION}}_macosx64" \
|
|
|
-DCMAKE_BUILD_TYPE="${BUILD_CONFIG}" \
|
|
@@ -304,37 +304,49 @@ bundle_dylibs() {
|
|
|
hr "Bundle dylibs for macOS application"
|
|
|
|
|
|
step "Run dylibBundler.."
|
|
|
- ${CI_SCRIPTS}/app/dylibbundler -cd -of -a ./OBS.app -q -f \
|
|
|
- -s ./OBS.app/Contents/MacOS \
|
|
|
- -s "${DEPS_BUILD_DIR}/sparkle/Sparkle.framework" \
|
|
|
- -s ./rundir/${BUILD_CONFIG}/bin/ \
|
|
|
- -x ./OBS.app/Contents/PlugIns/coreaudio-encoder.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/decklink-ouput-ui.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/decklink-captions.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/frontend-tools.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/image-source.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/linux-jack.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/mac-avcapture.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/mac-capture.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/mac-decklink.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/mac-syphon.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/mac-vth264.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/mac-virtualcam.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-browser.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-browser-page \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-ffmpeg.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-filters.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-transitions.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-vst.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/rtmp-services.so \
|
|
|
- -x ./OBS.app/Contents/MacOS/obs-ffmpeg-mux \
|
|
|
- -x ./OBS.app/Contents/MacOS/obslua.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-x264.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/text-freetype2.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-libfdk.so \
|
|
|
- -x ./OBS.app/Contents/PlugIns/obs-outputs.so
|
|
|
- step "Move libobs-opengl to final destination"
|
|
|
|
|
|
+ BUNDLE_PLUGINS=(
|
|
|
+ ./OBS.app/Contents/PlugIns/coreaudio-encoder.so
|
|
|
+ ./OBS.app/Contents/PlugIns/decklink-ouput-ui.so
|
|
|
+ ./OBS.app/Contents/PlugIns/decklink-captions.so
|
|
|
+ ./OBS.app/Contents/PlugIns/frontend-tools.so
|
|
|
+ ./OBS.app/Contents/PlugIns/image-source.so
|
|
|
+ ./OBS.app/Contents/PlugIns/linux-jack.so
|
|
|
+ ./OBS.app/Contents/PlugIns/mac-avcapture.so
|
|
|
+ ./OBS.app/Contents/PlugIns/mac-capture.so
|
|
|
+ ./OBS.app/Contents/PlugIns/mac-decklink.so
|
|
|
+ ./OBS.app/Contents/PlugIns/mac-syphon.so
|
|
|
+ ./OBS.app/Contents/PlugIns/mac-vth264.so
|
|
|
+ ./OBS.app/Contents/PlugIns/mac-virtualcam.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-browser.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-ffmpeg.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-filters.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-transitions.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-vst.so
|
|
|
+ ./OBS.app/Contents/PlugIns/rtmp-services.so
|
|
|
+ ./OBS.app/Contents/MacOS/obs-ffmpeg-mux
|
|
|
+ ./OBS.app/Contents/MacOS/obslua.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-x264.so
|
|
|
+ ./OBS.app/Contents/PlugIns/text-freetype2.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-libfdk.so
|
|
|
+ ./OBS.app/Contents/PlugIns/obs-outputs.so
|
|
|
+ )
|
|
|
+ if ! [ "${CEF_BUILD_VERSION:-${CI_CEF_VERSION}}" -le 3770 ]; then
|
|
|
+ ${CI_SCRIPTS}/app/dylibbundler -cd -of -a ./OBS.app -q -f \
|
|
|
+ -s ./OBS.app/Contents/MacOS \
|
|
|
+ -s "${DEPS_BUILD_DIR}/sparkle/Sparkle.framework" \
|
|
|
+ -s ./rundir/${BUILD_CONFIG}/bin/ \
|
|
|
+ $(echo "${BUNDLE_PLUGINS[@]/#/-x }")
|
|
|
+ else
|
|
|
+ ${CI_SCRIPTS}/app/dylibbundler -cd -of -a ./OBS.app -q -f \
|
|
|
+ -s ./OBS.app/Contents/MacOS \
|
|
|
+ -s "${DEPS_BUILD_DIR}/sparkle/Sparkle.framework" \
|
|
|
+ -s ./rundir/${BUILD_CONFIG}/bin/ \
|
|
|
+ $(echo "${BUNDLE_PLUGINS[@]/#/-x }") \
|
|
|
+ -x ./OBS.app/Contents/PlugIns/obs-browser-page
|
|
|
+ fi
|
|
|
+
|
|
|
+ step "Move libobs-opengl to final destination"
|
|
|
if [ -f "./libobs-opengl/libobs-opengl.so" ]; then
|
|
|
cp ./libobs-opengl/libobs-opengl.so ./OBS.app/Contents/Frameworks
|
|
|
else
|
|
@@ -380,10 +392,17 @@ prepare_macos_bundle() {
|
|
|
mkdir -p OBS.app/Contents/MacOS
|
|
|
mkdir OBS.app/Contents/PlugIns
|
|
|
mkdir OBS.app/Contents/Resources
|
|
|
+ mkdir OBS.app/Contents/Frameworks
|
|
|
|
|
|
cp rundir/${BUILD_CONFIG}/bin/obs ./OBS.app/Contents/MacOS
|
|
|
cp rundir/${BUILD_CONFIG}/bin/obs-ffmpeg-mux ./OBS.app/Contents/MacOS
|
|
|
cp rundir/${BUILD_CONFIG}/bin/libobsglad.0.dylib ./OBS.app/Contents/MacOS
|
|
|
+ if ! [ "${CEF_BUILD_VERSION:-${CI_CEF_VERSION}}" -le 3770 ]; then
|
|
|
+ cp -R "rundir/${BUILD_CONFIG}/bin/OBS Helper.app" "./OBS.app/Contents/Frameworks/OBS Helper.app"
|
|
|
+ cp -R "rundir/${BUILD_CONFIG}/bin/OBS Helper (GPU).app" "./OBS.app/Contents/Frameworks/OBS Helper (GPU).app"
|
|
|
+ cp -R "rundir/${BUILD_CONFIG}/bin/OBS Helper (Plugin).app" "./OBS.app/Contents/Frameworks/OBS Helper (Plugin).app"
|
|
|
+ cp -R "rundir/${BUILD_CONFIG}/bin/OBS Helper (Renderer).app" "./OBS.app/Contents/Frameworks/OBS Helper (Renderer).app"
|
|
|
+ fi
|
|
|
cp -R rundir/${BUILD_CONFIG}/data ./OBS.app/Contents/Resources
|
|
|
cp ${CI_SCRIPTS}/app/AppIcon.icns ./OBS.app/Contents/Resources
|
|
|
cp -R rundir/${BUILD_CONFIG}/obs-plugins/ ./OBS.app/Contents/PlugIns
|
|
@@ -507,7 +526,10 @@ codesign_bundle() {
|
|
|
codesign --force --options runtime --sign "${CODESIGN_IDENT}" "./OBS.app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/libswiftshader_libEGL.dylib"
|
|
|
codesign --force --options runtime --sign "${CODESIGN_IDENT}" "./OBS.app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/libGLESv2.dylib"
|
|
|
codesign --force --options runtime --sign "${CODESIGN_IDENT}" "./OBS.app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/libswiftshader_libGLESv2.dylib"
|
|
|
- codesign --force --options runtime --sign "${CODESIGN_IDENT}" --deep "./OBS.app/Contents/Frameworks/Chromium Embedded Framework.framework"
|
|
|
+ if ! [ "${CEF_BUILD_VERSION:-${CI_CEF_VERSION}}" -le 3770 ]; then
|
|
|
+ codesign --force --options runtime --sign "${CODESIGN_IDENT}" "./OBS.app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/libvk_swiftshader.dylib"
|
|
|
+ fi
|
|
|
+
|
|
|
echo -n "${COLOR_RESET}"
|
|
|
|
|
|
step "Code-sign DAL Plugin..."
|
|
@@ -519,6 +541,17 @@ codesign_bundle() {
|
|
|
echo -n "${COLOR_ORANGE}"
|
|
|
codesign --force --options runtime --entitlements "${CI_SCRIPTS}/app/entitlements.plist" --sign "${CODESIGN_IDENT}" --deep ./OBS.app
|
|
|
echo -n "${COLOR_RESET}"
|
|
|
+
|
|
|
+ if ! [ "${CEF_BUILD_VERSION:-${CI_CEF_VERSION}}" -le 3770 ]; then
|
|
|
+ step "Code-sign CEF helper apps..."
|
|
|
+ echo -n "${COLOR_ORANGE}"
|
|
|
+ codesign --force --options runtime --sign "${CODESIGN_IDENT}" --deep "./OBS.app/Contents/Frameworks/OBS Helper.app"
|
|
|
+ codesign --force --options runtime --entitlements "${CI_SCRIPTS}/helpers/helper-gpu-entitlements.plist" --sign "${CODESIGN_IDENT}" --deep "./OBS.app/Contents/Frameworks/OBS Helper (GPU).app"
|
|
|
+ codesign --force --options runtime --entitlements "${CI_SCRIPTS}/helpers/helper-plugin-entitlements.plist" --sign "${CODESIGN_IDENT}" --deep "./OBS.app/Contents/Frameworks/OBS Helper (Plugin).app"
|
|
|
+ codesign --force --options runtime --entitlements "${CI_SCRIPTS}/helpers/helper-renderer-entitlements.plist" --sign "${CODESIGN_IDENT}" --deep "./OBS.app/Contents/Frameworks/OBS Helper (Renderer).app"
|
|
|
+ echo -n "${COLOR_RESET}"
|
|
|
+ fi
|
|
|
+
|
|
|
step "Check code-sign result..."
|
|
|
codesign -dvv ./OBS.app
|
|
|
}
|