build 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #!/bin/bash
  2. BUILD_DIRECTORY="build"
  3. CONFIGURATION=Release
  4. if [[ -z $TRAVIS_XCODE_WORKSPACE ]]; then
  5. echo "Error: \$TRAVIS_XCODE_WORKSPACE is not set."
  6. exit 1
  7. fi
  8. if [[ -z $TRAVIS_XCODE_SCHEME ]]; then
  9. echo "Error: \$TRAVIS_XCODE_SCHEME is not set!"
  10. exit 1
  11. fi
  12. if [[ -z $XCODE_ACTION ]]; then
  13. echo "Error: \$XCODE_ACTION is not set!"
  14. exit 1
  15. fi
  16. if [[ -z $XCODE_SDK ]]; then
  17. echo "Error: \$XCODE_SDK is not set!"
  18. exit 1
  19. fi
  20. if [[ -z $XCODE_DESTINATION ]]; then
  21. echo "Error: \$XCODE_DESTINATION is not set!"
  22. exit 1
  23. fi
  24. set -o pipefail
  25. xcodebuild $XCODE_ACTION \
  26. -workspace "$TRAVIS_XCODE_WORKSPACE" \
  27. -scheme "$TRAVIS_XCODE_SCHEME" \
  28. -sdk "$XCODE_SDK" \
  29. -destination "$XCODE_DESTINATION" \
  30. -derivedDataPath "${BUILD_DIRECTORY}" \
  31. -configuration $CONFIGURATION \
  32. ENABLE_TESTABILITY=YES \
  33. GCC_GENERATE_DEBUGGING_SYMBOLS=NO \
  34. RUN_CLANG_STATIC_ANALYZER=NO | xcpretty
  35. result=$?
  36. if [ "$result" -ne 0 ]; then
  37. exit $result
  38. fi
  39. # Compile code in playgrounds
  40. if [[ $XCODE_SDK = "macosx" ]]; then
  41. echo "SDK is $XCODE_SDK, validating playground..."
  42. . script/validate-playground.sh
  43. fi