Based on:
ba68d52aa135fff6d279e1486a70b6a1952fefa7
ef8fc9df939f8875d8c69ef41619c40a1287a352
ae332bf8b1a810ce255ee5207008f564371254ed
in the 1.14 branch.
Though given 00d87f8fe4078ffd84fcdc0d73fcc2104efef1e7 I would say this is better than nothing.
(cherry-picked from commit 33ad6be326c234b173d680ce34589464f88f8418)
This allows having multiple Dockerfile-base-* files without also needing to add a separate Dockerfile-travis-* file due to the FROM line changing.
(cherry-picked from commit 3f67c2fbf051aa9e322defb66c782477cd53b8bd)
This makes it simpler in the future to have branches that have dependencies that are different from master, rather than having a single image with all necessary dependencies installed, which may at some point end up not being possible to do.
(cherry-picked from commit 1bb5fdf2830515d33793c52f298d305bd12b5a60)
This replaces the custom python script which manipulated various files' mtime with ccache for allowing cmake builds to not need full recompiles every travis run.