setup_linux 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. autoload -Uz log_error log_status log_info mkcd
  2. if (( ! ${+project_root} )) {
  3. log_error "'project_root' not set. Please set before running ${0}."
  4. return 2
  5. }
  6. if (( ! ${+target} )) {
  7. log_error "'target' not set. Please set before running ${0}."
  8. return 2
  9. }
  10. pushd ${project_root}
  11. typeset -g QT_VERSION
  12. local -a apt_args=(
  13. ${CI:+-y}
  14. --no-install-recommends
  15. )
  16. if (( _loglevel == 0 )) apt_args+=(--quiet)
  17. if (( ! (${skips[(Ie)all]} + ${skips[(Ie)deps]}) )) {
  18. log_group 'Installing obs-studio build dependencies...'
  19. local suffix
  20. if [[ ${CPUTYPE} != "${target##*-}" ]] {
  21. local -A arch_mappings=(
  22. aarch64 arm64
  23. x86_64 amd64
  24. )
  25. suffix=":${arch_mappings[${target##*-}]}"
  26. sudo apt-get install ${apt_args} gcc-${${target##*-}//_/-}-linux-gnu g++-${${target##*-}//_/-}-linux-gnu
  27. }
  28. sudo apt-get install ${apt_args} \
  29. build-essential \
  30. libgles2-mesa-dev \
  31. libobs-dev${suffix}
  32. local -a _qt_packages=()
  33. if (( QT_VERSION == 5 )) {
  34. _qt_packages+=(
  35. qtbase5-dev${suffix}
  36. libqt5svg5-dev${suffix}
  37. qtbase5-private-dev${suffix}
  38. libqt5x11extras5-dev${suffix}
  39. )
  40. } else {
  41. _qt_packages+=(
  42. qt6-base-dev${suffix}
  43. libqt6svg6-dev${suffix}
  44. qt6-base-private-dev${suffix}
  45. )
  46. }
  47. sudo apt-get install ${apt_args} ${_qt_packages}
  48. log_group
  49. }