install-dependencies-osx.sh 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. hr() {
  2. echo "───────────────────────────────────────────────────"
  3. echo $1
  4. echo "───────────────────────────────────────────────────"
  5. }
  6. # Exit if something fails
  7. set -e
  8. # Echo all commands before executing
  9. set -v
  10. if [[ $TRAVIS ]]; then
  11. git fetch --unshallow
  12. else
  13. /bin/bash -c "sudo xcode-select -s /Applications/Xcode_9.4.1.app/Contents/Developer"
  14. fi
  15. git fetch origin --tags
  16. # Leave obs-studio folder
  17. cd ../
  18. # Install Packages app so we can build a package later
  19. # http://s.sudre.free.fr/Software/Packages/about.html
  20. hr "Downloading Packages app"
  21. wget --quiet --retry-connrefused --waitretry=1 https://s3-us-west-2.amazonaws.com/obs-nightly/Packages.pkg
  22. sudo installer -pkg ./Packages.pkg -target /
  23. brew update
  24. #Base OBS Deps and ccache
  25. brew install jack speexdsp ccache mbedtls clang-format freetype fdk-aac
  26. brew install https://gist.githubusercontent.com/DDRBoxman/b3956fab6073335a4bf151db0dcbd4ad/raw/ed1342a8a86793ea8c10d8b4d712a654da121ace/qt.rb
  27. brew install https://gist.githubusercontent.com/DDRBoxman/4cada55c51803a2f963fa40ce55c9d3e/raw/572c67e908bfbc1bcb8c476ea77ea3935133f5b5/swig.rb
  28. pip install dmgbuild
  29. export PATH=/usr/local/opt/ccache/libexec:$PATH
  30. ccache -s || echo "CCache is not available."
  31. # Fetch and untar prebuilt OBS deps that are compatible with older versions of OSX
  32. hr "Downloading OBS deps"
  33. wget --quiet --retry-connrefused --waitretry=1 https://obs-nightly.s3.amazonaws.com/osx-deps-2018-08-09.tar.gz
  34. tar -xf ./osx-deps-2018-08-09.tar.gz -C /tmp
  35. # Fetch vlc codebase
  36. hr "Downloading VLC repo"
  37. wget --quiet --retry-connrefused --waitretry=1 https://downloads.videolan.org/vlc/3.0.4/vlc-3.0.4.tar.xz
  38. tar -xf vlc-3.0.4.tar.xz
  39. # Get sparkle
  40. hr "Downloading Sparkle framework"
  41. wget --quiet --retry-connrefused --waitretry=1 -O sparkle.tar.bz2 https://github.com/sparkle-project/Sparkle/releases/download/1.20.0/Sparkle-1.20.0.tar.bz2
  42. mkdir ./sparkle
  43. tar -xf ./sparkle.tar.bz2 -C ./sparkle
  44. sudo cp -R ./sparkle/Sparkle.framework /Library/Frameworks/Sparkle.framework
  45. # CEF Stuff
  46. hr "Downloading CEF"
  47. wget --quiet --retry-connrefused --waitretry=1 https://obs-nightly.s3-us-west-2.amazonaws.com/cef_binary_${CEF_BUILD_VERSION}_macosx64.tar.bz2
  48. tar -xf ./cef_binary_${CEF_BUILD_VERSION}_macosx64.tar.bz2
  49. cd ./cef_binary_${CEF_BUILD_VERSION}_macosx64
  50. # remove a broken test
  51. sed -i '.orig' '/add_subdirectory(tests\/ceftests)/d' ./CMakeLists.txt
  52. # target 10.11
  53. sed -i '.orig' s/\"10.9\"/\"10.11\"/ ./cmake/cef_variables.cmake
  54. mkdir build
  55. cd ./build
  56. cmake -DCMAKE_CXX_FLAGS="-std=c++11 -stdlib=libc++" -DCMAKE_EXE_LINKER_FLAGS="-std=c++11 -stdlib=libc++" -DCMAKE_OSX_DEPLOYMENT_TARGET=10.11 ..
  57. make -j4
  58. mkdir libcef_dll
  59. cd ../../