New upstream version 21.0.2+dfsg1

This commit is contained in:
Sebastian Ramacher 2018-02-19 20:54:37 +01:00
parent 1f1bbb3518
commit baafb6325b
706 changed files with 49633 additions and 5044 deletions

View file

@ -19,6 +19,15 @@ hr "Moving CEF out to preserve linking"
mv ./rundir/RelWithDebInfo/obs-plugins/CEF.app ./
mv ./rundir/RelWithDebInfo/obs-plugins/obs-browser.so ./
# Move obslua
hr "Moving OBS LUA"
mv ./rundir/RelWithDebInfo/data/obs-scripting/obslua.so ./rundir/RelWithDebInfo/bin/
# Move obspython
# hr "Moving OBS Python"
# mv ./rundir/RelWithDebInfo/data/obs-scripting/_obspython.so ./rundir/RelWithDebInfo/bin/
# mv ./rundir/RelWithDebInfo/data/obs-scripting/obspython.py ./rundir/RelWithDebInfo/bin/
# Package everything into a nice .app
hr "Packaging .app"
STABLE=false
@ -47,8 +56,10 @@ security unlock-keychain -p mysecretpassword build.keychain
security set-keychain-settings -t 3600 -u build.keychain
hr "Importing certs into keychain"
security import ./Certificates.p12 -k build.keychain -T /usr/bin/productsign -P ""
# macOS 10.12+
security set-key-partition-list -S apple-tool:,apple: -s -k mysecretpassword build.keychain
hr "Signing Package"
productsign --sign 'Developer ID Installer: Hugh Bailey (2MMRE5MTB8)' ./OBS.pkg ./$FILENAME
productsign --sign 2MMRE5MTB8 ./OBS.pkg ./$FILENAME
# Move to the folder that travis uses to upload artifacts from
hr "Moving package to nightly folder for distribution"

View file

@ -3,4 +3,9 @@ export PATH=/usr/local/opt/ccache/libexec:$PATH
mkdir build
cd build
cmake -DENABLE_SPARKLE_UPDATER=ON -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 -DDepsPath=/tmp/obsdeps -DVLCPath=$PWD/../../vlc-master -DBUILD_BROWSER=ON -DCEF_ROOT_DIR=$PWD/../../cef_binary_${CEF_BUILD_VERSION}_macosx64 ..
cmake -DENABLE_SPARKLE_UPDATER=ON \
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.10 \
-DDepsPath=/tmp/obsdeps \
-DVLCPath=$PWD/../../vlc-master \
-DBUILD_BROWSER=ON \
-DCEF_ROOT_DIR=$PWD/../../cef_binary_${CEF_BUILD_VERSION}_macosx64 ..

View file

@ -1,12 +1,18 @@
#!/bin/sh
set -ex
sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next -y
sudo apt-get -qq update
sudo apt-get install -y \
build-essential \
checkinstall \
cmake \
libasound2-dev \
libavcodec-ffmpeg-dev \
libavdevice-ffmpeg-dev \
libavfilter-ffmpeg-dev \
libavformat-ffmpeg-dev \
libavutil-ffmpeg-dev \
libcurl4-openssl-dev \
libfdk-aac-dev \
libfontconfig-dev \
@ -14,9 +20,12 @@ sudo apt-get install -y \
libgl1-mesa-dev \
libjack-jackd2-dev \
libjansson-dev \
libluajit-5.1-dev \
libpulse-dev \
libqt5x11extras5-dev \
libspeexdsp-dev \
libswresample-ffmpeg-dev \
libswscale-ffmpeg-dev \
libudev-dev \
libv4l-dev \
libvlc-dev \
@ -27,14 +36,6 @@ sudo apt-get install -y \
libxcomposite-dev \
libxinerama-dev \
pkg-config \
python3-dev \
qtbase5-dev \
yasm \
zlib1g-dev
# FFmpeg
cd ..
git clone --depth 1 git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
./configure --enable-shared
make -j2
sudo make install
swig

View file

@ -17,7 +17,7 @@ sudo installer -pkg ./Packages.pkg -target /
brew update
#Base OBS Deps and ccache
brew install qt5 jack speexdsp ccache
brew install qt5 jack speexdsp ccache swig
export PATH=/usr/local/opt/ccache/libexec:$PATH
ccache -s || echo "CCache is not available."
@ -40,6 +40,8 @@ sudo cp -R ./sparkle/Sparkle.framework /Library/Frameworks/Sparkle.framework
wget --retry-connrefused --waitretry=1 https://obs-nightly.s3-us-west-2.amazonaws.com/cef_binary_${CEF_BUILD_VERSION}_macosx64.tar.bz2
tar -xf ./cef_binary_${CEF_BUILD_VERSION}_macosx64.tar.bz2
cd ./cef_binary_${CEF_BUILD_VERSION}_macosx64
# remove a broken test
sed -i '.orig' '/add_subdirectory(tests\/ceftests)/d' ./CMakeLists.txt
mkdir build
cd ./build
cmake -DCMAKE_CXX_FLAGS="-std=c++11 -stdlib=libc++" -DCMAKE_EXE_LINKER_FLAGS="-std=c++11 -stdlib=libc++" -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 ..

View file

@ -1,22 +1,22 @@
#!/usr/bin/env python
candidate_paths = "bin obs-plugins data".split()
plist_path = "../cmake/osxbundle/Info.plist"
icon_path = "../cmake/osxbundle/obs.icns"
run_path = "../cmake/osxbundle/obslaunch.sh"
#not copied
blacklist = """/usr /System""".split()
#copied
whitelist = """/usr/local""".split()
#
#
#
from sys import argv
from glob import glob
from subprocess import check_output, call
@ -33,7 +33,7 @@ def _str_to_bool(s):
raise ValueError('Need bool; got %r' % s)
return {'true': True, 'false': False}[s.lower()]
def add_boolean_argument(parser, name, default=False):
def add_boolean_argument(parser, name, default=False):
"""Add a boolean argument to an ArgumentParser instance."""
group = parser.add_mutually_exclusive_group()
group.add_argument(
@ -58,14 +58,14 @@ def cmd(cmd):
return subprocess.check_output(shlex.split(cmd)).rstrip('\r\n')
LibTarget = namedtuple("LibTarget", ("path", "external", "copy_as"))
inspect = list()
inspected = set()
build_path = args.dir
build_path = build_path.replace("\\ ", " ")
def add(name, external=False, copy_as=None):
if external and copy_as is None:
copy_as = name.split("/")[-1]
@ -93,7 +93,7 @@ for i in candidate_paths:
rel_path = path[len(build_path)+1:]
print(repr(path), repr(rel_path))
add(rel_path)
def add_plugins(path, replace):
for img in glob(path.replace(
"lib/QtCore.framework/Versions/5/QtCore",
@ -114,13 +114,14 @@ while inspect:
continue
out = check_output("{0}otool -L '{1}'".format(args.prefix, path), shell=True,
universal_newlines=True)
if "QtCore" in path:
add_plugins(path, "platforms")
add_plugins(path, "imageformats")
add_plugins(path, "accessible")
add_plugins(path, "styles")
for line in out.split("\n")[1:]:
new = line.strip().split(" (")[0]
if '@' in new and "sparkle.framework" in new.lower():
@ -197,6 +198,8 @@ for path, external, copy_as in inspected:
filename = path
rpath = ""
if external:
if copy_as == "Python":
continue
id_ = "-id '@rpath/%s'"%copy_as
filename = prefix + "bin/" +copy_as
rpath = "-add_rpath @loader_path/ -add_rpath @executable_path/"
@ -214,7 +217,7 @@ for path, external, copy_as in inspected:
print(filename)
rpath = "-add_rpath '@loader_path/{}/'".format(ospath.relpath("bin/", ospath.dirname(filename)))
filename = prefix + filename
cmd = "{0}install_name_tool {1} {2} {3} '{4}'".format(args.prefix, changes, id_, rpath, filename)
call(cmd, shell=True)

View file

@ -1,5 +1,15 @@
#!/usr/bin/env bash
exists()
{
command -v "$1" >/dev/null 2>&1
}
if ! exists nasm; then
echo "nasm not found. Try brew install nasm"
exit
fi
CURDIR=$(pwd)
# the temp directory
@ -22,6 +32,7 @@ DEPS_DEST=$WORK_DIR/obsdeps
mkdir $DEPS_DEST
mkdir $DEPS_DEST/bin
mkdir $DEPS_DEST/include
mkdir $DEPS_DEST/lib
# OSX COMPAT
export MACOSX_DEPLOYMENT_TARGET=10.9
@ -80,6 +91,7 @@ cd $WORK_DIR
# x264
git clone git://git.videolan.org/x264.git
cd ./x264
git checkout origin/stable
mkdir build
cd ./build
../configure --extra-ldflags="-mmacosx-version-min=10.9" --enable-static --prefix="/tmp/obsdeps"
@ -117,12 +129,22 @@ unzip ./n3.2.2.zip
cd ./FFmpeg-n3.2.2
mkdir build
cd ./build
../configure --extra-ldflags="-mmacosx-version-min=10.9" --enable-shared --disable-static --shlibdir="/tmp/obsdeps/bin" --enable-gpl --disable-doc --enable-libx264 --enable-libopus --enable-libvorbis --enable-libvpx
../configure --extra-ldflags="-mmacosx-version-min=10.9" --enable-shared --disable-static --shlibdir="/tmp/obsdeps/bin" --enable-gpl --disable-doc --enable-libx264 --enable-libopus --enable-libvorbis --enable-libvpx --disable-outdev=sdl
make -j 12
find . -name \*.dylib -exec cp \{\} $DEPS_DEST/bin/ \;
rsync -avh --include="*/" --include="*.h" --exclude="*" ../* $DEPS_DEST/include/
rsync -avh --include="*/" --include="*.h" --exclude="*" ./* $DEPS_DEST/include/
#luajit
curl -L -O https://luajit.org/download/LuaJIT-2.0.5.tar.gz
tar -xf LuaJIT-2.0.5.tar.gz
cd LuaJIT-2.0.5
make PREFIX=/tmp/obsdeps
make PREFIX=/tmp/obsdeps install
find /tmp/obsdeps/lib -name libluajit\*.dylib -exec cp \{\} $DEPS_DEST/lib/ \;
rsync -avh --include="*/" --include="*.h" --exclude="*" src/* $DEPS_DEST/include/
make PREFIX=/tmp/obsdeps uninstall
cd $WORK_DIR
tar -czf osx-deps.tar.gz obsdeps