More recent NDK releases have their own CMake toolchain file.
Use it.
Also, download the NDK from github.com:dneto0/android-ndk.
That is a fork of the repo we used to use, but we have more
control over how long it stays stable.
The Travis-CI bot downloads a copy of the Android NDK. The source
we get it from recently updated to Android NDK r17b. However,
the android.toolchain.cmake file does not know how to parse the
Android native API level from that version of the NDK. So check
out the NDK r13b version that we were using until yesterday.
Fixes#1439
Pushing a commit to the master branch will trigger a build on
Travis. If the build is successful, the artifacts will be
collected and pushed to GitHub Releases, under the "master-tot"
release.
Also added known-good mechanism to fetch latest validated spirv-tools.
Also added -Od and -Os to disable optimizer and optimize for size.
Fetching spirv-tools is optional for both glsl and hlsl. Legalization
of hlsl is done by default if spirv-opt is present at cmake time.
Optimization for glsl is currently done through the option -Os.
Legalization testing is currently only done on four existing shaders.
A separate baseLegalResults directory holds those results. All previous
testing is done with the optimizer disabled.