install_devilutionx.sh 889 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #!/bin/bash
  2. # fail if any commands fails
  3. set -e
  4. # debug log
  5. #set -x
  6. # Set superuser privileges command if not set
  7. if [[ -z $su ]]; then
  8. export su="sudo"
  9. fi
  10. $su apt-get install -y cmake g++ libsdl2-dev libsodium-dev libpng-dev libbz2-dev
  11. application=devilutionX
  12. repository=https://github.com/diasurgical/devilutionX.git
  13. export compile=
  14. mkdir -p ~/src
  15. cd ~/src || return
  16. if [ ! -d $application ]; then
  17. git clone $repository
  18. cd $application || return
  19. export compile=true
  20. else
  21. cd $application || return
  22. #git pull
  23. pwd
  24. git fetch
  25. LOCAL=$(git rev-parse HEAD)
  26. REMOTE=$(git rev-parse @{u})
  27. if [ ! $LOCAL = $REMOTE ]; then
  28. pwd
  29. echo "Need to pull"
  30. git pull
  31. export compile=true
  32. fi
  33. fi
  34. if [ "$compile" = "true" ]; then
  35. cd ~/src/$application || return
  36. cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release
  37. cmake --build build -j "$(getconf _NPROCESSORS_ONLN)"
  38. fi