Commit graph

223 commits

Author SHA1 Message Date
pentarctagon
ea4d85a06e Running the translations is short, so do them through scons and cmake. 2018-04-27 16:00:04 -05:00
pentarctagon
33ad6be326 Adds a c++17 build using the pre-release Ubuntu 18.04.
Though given 00d87f8fe4 I would say this is better than nothing.
2018-04-17 02:36:14 -05:00
pentarctagon
1bb5fdf283 Add using dockerfiles based on the LTS and BRANCH env vars
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.
2018-03-30 12:08:56 +03:00
pentarctagon
376f2e9dbe Explicitly set osx_image for osx+scons job.
This is the current default, and even though the job uses scons this also sets the osx version to use.  Therefore it's better to set it explicitly in case the default changes at some point.
2018-03-24 15:38:05 -05:00
pentarctagon
503e921d2f Set travis use c++14. 2018-03-18 18:54:24 +02:00
Charles Dang
471c9e876a Addressed a large chunk of the whitespace issues from #2613
[ci skip]
2018-03-09 11:37:00 +11:00
pentarctagon
ee51afa128 Moves the build-cache directory to be under $HOME.
Moving it out of the same directory as the git repository means that the object files won't be copied into the temporary docker container when it's being created.
2018-03-08 15:40:05 +02:00
pentarctagon
abf93216ac Don't source steps/script.sh.
Travis runs all commands in .travis.yml in its own wrapper script, so by sourcing steps/script.sh and then using exit explicitly, it resulted in the entire travis wrapper immediately terminating.  With steps/script.sh no longer sourced, using exit works as expected again, and only exits steps/script.sh rather than quitting everything. Another solution, should sourcing steps/script.sh become necessary, is to use return instead of exit.

With that addressed, it's then possible to re-add printing the ccache statistics after the build ends while also making sure that the script exits with the return code of the xcodebuild/cmake+make command rather than the return code of the ccache statistics commands.
2018-03-04 15:48:00 -06:00
pentarctagon
ea06cdc63a Move the logic for the install and script steps into their own files.
Also merges the before_install and install steps.
2018-03-02 13:55:22 -06:00
pentarctagon
4bccc19ebc Move docker_run.sh into utils/travis/ 2018-03-02 13:55:22 -06:00
pentarctagon
b71f7cdc3c Moves the ccache clang wrapper scripts to utils/travis/.
Also clears the ccache statistics after printing them. This means the hit/miss count will be shown per run, rather than cumulatively.
2018-02-24 10:56:05 -06:00
pentarctagon
2151ed6be1 Enable use of ccache for xcode build.
Also sets it to use clang rather than gcc.
2018-02-23 17:51:08 -06:00
pentarctagon
98a788e805 Touch-up for xcode build. 2018-02-20 07:45:18 -06:00
Sofartin
893674d483 Add Xcode Travis build 2018-02-19 16:10:13 -05:00
pentarctagon
ee1a56a04a Use ccache with cmake on travis.
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.
2018-02-17 03:16:32 -06:00
Jyrki Vesterinen
1d47c23efe Revert "Enable LTO by default."
This reverts commit 44f567c6a3.

Enabling LTO by default causes too many problems, inclusing build
failures for @doofus-01 and link failures with Clang for me.

Players and packagers can still amanually enable LTO in case it
works fine for them.
2018-02-12 08:11:50 +02:00
Gunter Labes
8ddef4b902 Add missing quotes and use env variable
[ci skip]
2018-02-09 18:22:43 +01:00
pentarctagon
3cbf4aa40c Enables travis to cache scons' build/ directory.
Scons makes this simple - all the object files are placed in build/release/, and the build/sconsign.dblite file keeps track of the md5 sum of each file built. This then means all that's necessary to prevent scons from doing a full rebuild each time is to cache the build/ directory.

Keep in mind however, that this does not make the actual compiling faster, it just means that most of the time fewer things will need to be compiled. Any change that would trigger a rebuild of most or all of the source files will still take just as long as before.
2018-02-10 02:05:26 +11:00
Jyrki Vesterinen
f40a4966bc Travis CI: enable C++ unit tests
The tests should be able to run in Docker, and now when they are no longer
failing, we can enable them.
2018-02-03 12:17:53 +02:00
pentarctagon
44f567c6a3 Enable LTO by default.
LTO for Windows is disabled for now, as TDM-GCC does not work well with it.
LTO for Travis is also disabled, due to the extra time linking with LTO takes.
2018-02-02 17:56:07 +11:00
soliton-
c3e9e816e9 Fix shell injection
Also quote some variable expansions that weren't and fix some unnecessary bashism.
2017-12-03 14:30:24 -06:00
pentarctagon
10ca22e863 Use Docker Hub to get an image with pre-installed dependencies. 2017-12-01 21:04:05 -06:00
pentarctagon
9dcf25452b Re-add unit tests to docker runs. 2017-12-01 21:04:05 -06:00
pentarctagon
376fc8961b Have travis used a ubuntu 16.04 docker image. 2017-12-01 21:04:05 -06:00
pentarctagon
7ff30491fe Make strict builds consistent between scons and cmake 2017-11-24 15:00:01 -06:00
Gregory A Lundberg
bf8758afde Tell Travis about Boost unit test name change 2017-11-06 13:43:18 -06:00
Jyrki Vesterinen
939ec05ab1 Travis CI: globally disable C++ unit tests
The tests haven't been run for a couple of months.
The test executable crashes on startup with the error message

Xlib: extension "RANDR" missing on display ":99.0".

After ten attempts, the test wrapper just gives up and returns success.

So, let's not even pretend that we have C++ unit tests running in Travis.
We just don't. Explicitly disabling the tests makes it more clear.
2017-10-23 21:03:57 +03:00
Alexander van Gessel
0c3627ef34 Workaround for https://github.com/travis-ci/travis-ci/issues/8317
Found by charlemagnelasse.
2017-09-08 17:11:27 +02:00
Celtic Minstrel
c9191c9812 Add OpenSSL's libcrypto as a dependency
This also removes the included SHA1 and MD5 implementations
in favour of those from OpenSSL.

Thanks to @jyrkive for helping to get the CMake build working and
ensuring the game still compiles with OpenSSL 1.1.0.
(The SHA_xxx() aliases were removed in OpenSSL 1.1.0.)
2017-05-12 15:57:13 -04:00
gfgtdf
2858578504 remove 'allow_failures' from c++14 build
this was intially added brecause it didnt compile whne it was added.
2017-04-30 20:53:46 +11:00
Jyrki Vesterinen
eb61ca0673 Remove some test output that I no longer need 2016-12-23 16:12:26 +02:00
Jyrki Vesterinen
66a6e036e3 Travis CI, CMake builds: print full log if the build fails 2016-12-22 23:30:22 +02:00
Jyrki Vesterinen
55a57d5397 Turn on MP test in Travis CI 2016-11-26 01:10:57 +02:00
Charles Dang
291a751720 Temporarily disable MP tests until they're fixed 2016-11-13 22:23:21 +11:00
Celtic Minstrel
6247f104a3 fixup! Travis: Don't run tests for OSX build 2016-11-13 00:51:49 -05:00
Celtic Minstrel
882ded047e fixup! Travis: Don't run tests for OSX build 2016-11-13 00:44:15 -05:00
Celtic Minstrel
8cc9e35dc0 Travis: Don't run tests for OSX build 2016-11-12 23:28:20 -05:00
Celtic Minstrel
217a6e91f7 Travis: Install OSX dependencies
Also restrict environment and compiler for OSX build
2016-11-12 15:20:04 -05:00
Celtic Minstrel
bc7c66d9f0 Travis: Wrap entire install script in travis_wait
Using travis_wait inside the install script doesn't
have the desired effect of increasing the timeout duration.
2016-11-11 20:07:58 -05:00
Celtic Minstrel
de11d7f88a Travis: Add OSX build 2016-11-11 18:22:21 -05:00
Celtic Minstrel
9322f90b3a Split Travis dependency installation into a shell script
This is a prerequisite for getting an OSX build working,
since a different package manager is used there.
2016-11-11 17:41:04 -05:00
Ignacio R. Morelle
a767859421 travis: Conditionally install either cmake or scons as needed 2016-10-25 00:16:55 -03:00
Ignacio R. Morelle
00d00ccffc travis: We don't use SDL_net anymore 2016-10-24 05:53:19 -03:00
Ignacio R. Morelle
74d2559a14 travis: Pull libvorbis-dev which was previously pulled by SDL_mixer 1.2 2016-10-24 05:52:36 -03:00
Ignacio R. Morelle
8b004d6ab7 travis: Don't install legacy SDL 1.2 libraries 2016-10-24 05:41:58 -03:00
Ignacio R. Morelle
f6d6f9545c Revert "travis: Enable ccache support"
This reverts commit 2b12dd8e42.
2016-10-16 06:24:24 -03:00
Ignacio R. Morelle
2b12dd8e42 travis: Enable ccache support
This should halve build times in the best case, and only seems to expose
one GCC warning-related issue that will be addressed by the next commit.
Actual build times will continue to vary wildly based on the kind of
changes people push and the build's I/O-bound nature triggering the
limitations inherent to shared hosting services.
2016-10-16 05:04:27 -03:00
Celtic Minstrel
8e8cbfb5d2 Fix for Travis compiling C file with g++/clang++ 2016-09-08 16:28:30 -04:00
Celtic Minstrel
414ef85309 Travis: Stop using GCC 4.7 2016-08-08 23:28:46 -04:00
Andreas Löf
9e6cba5cfd Remove clang -O0 target from travis 2016-06-04 10:15:37 +12:00