[ci package]
- When performing CI build for iOS platform, suppress all warnings. Non-CI build will still receive them.
- Automatically instruct Travis CI to do packaging when AngelScript or LuaScript API have changed.
Additionally, enhance iOS-specific Urho3D_universal custom target to perform initial check to see a rebuild is really necessary.
[ci package]
Travis-CI Ubuntu build environment requires additional software package to generate RPM package.
Travis-CI does not like iOS 64-bit build that generates >4MB log and kills the build process. Workaround by trying to rebuild universal binary quietly, hopefully the rebuild would not exceeds 10 minutes or otherwise Travis-CI would kill the process again for the other reason: no log activity. Finger cross.
- Prevent packaging from being accidentally invoked by a pull request or a commit on non-master branch.
- Generate documentation before packaging if it is not yet generated in previous step.
- When packaging for iOS platform, rebuild Urho3D library as Mach-O universal binary.
- When packaging for Linux platform, also invokes RPM and Debian CPack generators.
- Perform shallow clone when building site documentation to speed up cloning process.
- Perform unshallow pull when packaging so that 'git describe' gives correct commit count since last tag.
- Only perform packaging when all the previous steps are successful. Reduce chances of binary package with not up-to-date documentation.
- When packaging for iOS platform, generate the documentation quietly (no stdout but still stream error to stderr).
Due to git push failure from detached HEAD, the error log in Travis CI build contains GH_TOKEN for worker account. A new GH_TOKEN is now generated.
Enhance the script so that it does not spit out any output or error when pushing. The script still can rely on command exit status, however.
Also:
- Setup doxygen configuration on the fly to use minimal theme and to produce SVG instead of PNG.
- Change how the GH_TOKEN is supplied as the GIT version in Travis VM (Ubuntu) does not seem to read the credentials from file store correctly.
- Only generate site documentation after the CI build test has passed.
- Add Ubuntu PPA to install a more recent version of Doxygen.