.travis.yml 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. language: android
  2. before_script:
  3. - mkdir deploy
  4. matrix:
  5. fast_finish: true
  6. include:
  7. - os: linux
  8. env: TARGET=Linux
  9. dist: trusty
  10. language: c
  11. addons:
  12. apt:
  13. packages:
  14. - libsdl2-dev
  15. - libfltk1.3-dev
  16. - gzip
  17. script:
  18. - cd unix
  19. - make
  20. - gzip sdlpal
  21. - mv sdlpal.gz ../deploy/sdlpal-linux.gz
  22. - make clean
  23. - make check
  24. - cd ..
  25. - os: linux
  26. env: TARGET=MinGW32
  27. dist: trusty
  28. language: c
  29. addons:
  30. apt:
  31. packages:
  32. - binutils-mingw-w64-i686
  33. - gcc-mingw-w64-i686
  34. - g++-mingw-w64-i686
  35. - zip
  36. before_install:
  37. - cd win32
  38. - wget http://libsdl.org/release/SDL2-devel-2.0.5-mingw.tar.gz
  39. - tar xvf SDL2-devel-2.0.5-mingw.tar.gz
  40. - sed -i "s@/usr/local/cross-tools@$(pwd)/SDL2-2.0.5@g" SDL2-2.0.5/i686-w64-mingw32/bin/sdl2-config
  41. - export PATH=$(pwd)/SDL2-2.0.5/i686-w64-mingw32/bin:$PATH
  42. - cd ..
  43. script:
  44. - cd win32
  45. - make HOST=i686-w64-mingw32-
  46. - i686-w64-mingw32-strip sdlpal.exe
  47. - zip sdlpal-mingw32.zip sdlpal.exe
  48. - mv sdlpal-mingw32.zip ../deploy/
  49. - cd ..
  50. - os: linux
  51. env: TARGET=Android NDK_VERSION=r13b TERM=dumb
  52. android:
  53. components:
  54. - platform-tools
  55. - tools
  56. - build-tools-25.0.3
  57. - android-25
  58. - extra-android-m2repository
  59. jdk: oraclejdk8
  60. before_install:
  61. - wget http://dl.google.com/android/repository/android-ndk-$NDK_VERSION-linux-x86_64.zip
  62. - unzip android-ndk-$NDK_VERSION-linux-x86_64.zip > /dev/null
  63. - export ANDROID_NDK_HOME=`pwd`/android-ndk-$NDK_VERSION
  64. - export PATH=${PATH}:${ANDROID_NDK_HOME}
  65. script:
  66. - cd android
  67. - ./gradlew assembleRelease
  68. - cd ..
  69. - jarsigner -storetype pkcs12 -keystore winrt/SDLPal.UWP/SDLPal_TemporaryKey.pfx -sigalg SHA1withRSA -digestalg SHA1 -signedjar deploy/sdlpal-release.apk -storepass "" android/app/build/outputs/apk/app-release-unsigned.apk 5f85e55b-6e81-4b08-ac2d-c51f3dae22ae
  70. - os: osx
  71. osx_image: xcode8.3
  72. env: TARGET=iOS
  73. language: c
  74. script:
  75. - cd ios/SDLPal
  76. - pod install
  77. - xcodebuild -workspace SDLPal.xcworkspace -scheme SDLPal ONLY_ACTIVE_ARCH=NO CODE_SIGNING_ALLOWED=NO -configuration Release CONFIGURATION_BUILD_DIR=/tmp/sdlpal-build
  78. - mkdir -p Payload
  79. - mv /tmp/sdlpal-build/SDLPal.app Payload
  80. - zip ../../deploy/sdlpal-impactor.ipa -r Payload
  81. - cd ../..
  82. - os: osx
  83. osx_image: xcode8.3
  84. env: TARGET=macOS
  85. language: c
  86. script:
  87. - cd macos
  88. - xcodebuild -project Pal.xcodeproj -configuration Release
  89. - hdiutil create -srcfolder build/Release/Pal.app -volname "SDLPal" ../deploy/sdlpal-macos.dmg
  90. - #xcodebuild test -scheme PalTests #disabled since always fail in travis-ci
  91. - cd ..
  92. deploy:
  93. provider: releases
  94. api_key:
  95. secure: FFV8UBcz6GkeSoGRbrL9tnTpVqXoFjFK2QtW0Ml8YvvqaHhxOaIWs2nAabOGsW1mJop/QlpuUNw1TfLl7TokcUDgOHrFRdC8hVY7K1uSWMnt7m4ZRPatVybIkzgrnItHlnMrL4uJK2xXb6Jc5+cSrU5jRMcmTZjaOKLTBwF97+6AgqpdmKUCVYZJzQYg0Jn9GfaL1EOGl7ISt/VEgi/tKFzJvJVxJBU3NuKyxXlfEwkTiSOFuGoD5qWDjCE+aGxTR6RQefsADPIDfeU3TJHTJE/ORGy9gl+Y41JgU0Bfgipcqg1RSwNclclmxgi8lo/XNUiZAMTyQrXjByBWcvYovk+H4h9mbvJlrVSjI8Wxb5ICcYkhDVkNxtEXX7AsIk4yHiNTi1MAW0qJJKinaFxLmK2U3LGEK3DudXl/0eVRoQATmRcXLdBQezISt2CWpTktCxlQmtz/GsoHv0PcWdkJYL4qbbRrBRFj9++VjlnCI124YZnbVjC3+jtWN1Zluxynj0GDBY3r7EdLWWKZo5XnygPOZ8+uaTMYfqmTvQWPc5GRRRdVJowQFQhb48hzKyWYqsf8eyS3VuZ9b/DwES3dutOaX7sIL9Vkg3DlQYOEz938MB4VbTGizUUrBbrIP4Kz/+WOZ9pxM9X+qsgMYkw8FvHqn2TvCWxPDCgqq3zUWig=
  96. file_glob: true
  97. file: deploy/*
  98. skip_cleanup: true
  99. overwrite: true
  100. on:
  101. all_branches: true
  102. tags: true
  103. notifications:
  104. webhooks:
  105. urls:
  106. - https://webhooks.gitter.im/e/922838d6727e919df50e
  107. on_success: always # options: [always|never|change] default: always
  108. on_failure: always # options: [always|never|change] default: always
  109. on_start: never # options: [always|never|change] default: always