Commit graph

2440 commits

Author SHA1 Message Date
pentarctagon
1ef1704fd9 Adds the opt/OPT option to scons/cmake.
Travis now also makes use of this to set the optimization level for the -O0 builds, rather than extra_flags_*.  This additionally fixes an issue where using -O0 in the release build with LTO resulted in the individual *.o files being compiled with -O0, but LTO then still linked with release's default -O3.

(cherry-picked from commit 63ff641662)
2018-10-07 03:19:35 +00:00
pentarctagon
17d921f434 Make the C++17 build fail on warnings.
(cherry-picked from commit dd4b525c40)
2018-10-07 03:19:25 +00:00
pentarctagon
a0adab3fcc Adds a c++17 build using the pre-release Ubuntu 18.04.
Though given 00d87f8fe4 I would say this is better than nothing.

(cherry-picked from commit 33ad6be326)
2018-10-07 03:19:24 +00:00
pentarctagon
83a2457dd8 Add a check to fail the job if compiling takes too long.
The intent behind this is that, if there most likely wouldn't be enough time left to complete the unit tests anyway, then just fail the job after compiling so the cache can be updated.  Otherwise, if the unit tests were run and the job timed out, then the cache would not be uploaded at all and the next time the job ran it would be from scratch again.

(cherry-picked from commit 5d970e40cd)
2018-10-07 03:19:14 +00:00
pentarctagon
b2cca08257 Allow setting a sanitizer to use.
Note: UBSan at least does seem to take a fairly significant amount of extra time to compile and run the WML tests with.

(cherry-picked from commit 92f74c39f6)
2018-10-07 03:19:14 +00:00
pentarctagon
a07b847181 Allow setting EXTRA_FLAGS_RELEASE to something other than -O0.
(cherry-picked from commit 2ed9d2c0c4)
2018-10-07 03:19:13 +00:00
pentarctagon
4bb16f25a7 Make LTO controllable via travis env variable.
(cherry-picked from commit 66caa190f6)
2018-10-07 03:19:13 +00:00
pentarctagon
f4c221216b Create travis dockerfile in the travis script step.
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 3f67c2fbf0)
2018-10-07 03:18:45 +00:00
pentarctagon
dcf2767a14 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.

(cherry-picked from commit 1bb5fdf283)
2018-10-07 03:18:37 +00:00
Wedge009
e1506f86bd 'moreso' isn't a word in any dialect of English.
[ci skip]

(cherry-picked from commit fb866c6d13)
2018-10-07 03:18:35 +00:00
pentarctagon
5e386ef43b Make UTF8 checks fail the build if they find anything.
Also fixes a comment typo in docker_run.sh.

(cherry-picked from commit c456d4b288)
2018-10-07 03:18:08 +00:00
pentarctagon
14089528e7 Removes a couple scripts that are not used.
utils/travis/install_deps.sh - no longer executes anything outside of the osx if block.
utils/travis/exit_wrapper.sh - I honestly don't know why this exists.
utils/travis/test_wrapper.sh - No longer used as of 7ca5a0df64.

(cherry-picked from commit 344b5c56b9)
2018-10-07 03:18:07 +00:00
pentarctagon
2e76d2fe40 Remove debugging symbols from Travis xcode build.
This removes the -g option from the xcode travis build, since debugging information isn't needed and the increased size was causing the cache to timeout when compressing and uploading it.  ccache max cache size is also decreased from 2 GBs to 200 MBs, which matches the linux+cmake builds.  Fixes #2670.

(cherry-picked from commit b801140344)
2018-10-07 03:18:06 +00:00
pentarctagon
7f0827b848 Stop hard-coding cmake's -std version.
Adds the CXX_STD variable which can be set.  Currently defaults to 14.  This also now makes cmake honor the CXXSTD env variable set on travis.

(cherry-picked from commit 983045718a)
2018-10-07 03:17:58 +00:00
Victor Sergienko
c2a56b403e Hide minor translations (<80%) from language selection menu. (#2552)
@CelticMinstrel suggests we only use non-campaign textdomains without manpages.
2018-03-13 22:51:36 -04:00
Charles Dang
beec27f778 pofix entries for 1340c005b3
[ci skip]

Forgot to include this in the above commit... >_>
2018-03-13 04:13:11 +11:00
Charles Dang
3a90f86674 Addressed more whitespace issues from #2613
[ci skip]
2018-03-12 03:48:59 +11:00
Charles Dang
950a156712 Addressed most of the remaining whitespace issues from #2613
[ci skip]
2018-03-11 14:59:37 +11:00
Iris Morelle
8442764435 Add script for creating a new campaignd instance
[ci skip]
2018-03-10 01:08:58 -03:00
Nobun
11d48f1639 help text fixes (#2617) 2018-03-09 20:31:05 +01:00
pentarctagon
02244aaa53 Make LTO controlled by a variable export in steps/install.sh.
Currently will remain disabled everywhere, but this allows for enabling LTO for optimized, non-xcode jobs just by changing the value of the LTO variable.
2018-03-08 15:40:05 +02: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
258b8b9bae Make docker_run.sh use 4 space indenting to match other shell scripts.
Also split apart the really long scons/cmake single lines
2018-03-08 15:40:05 +02:00
pentarctagon
900a159c8b Attempt to fix suspected race condition when running MP tests.
Currently the MP unit tests will randomly fail due to one of the two background wesnoth instances failing video initialization.  All unit tests require the display server to be initialized however, or they fail with the same error as the MP tests sometimes fail with.  However, the MP tests are the only tests to randomly fail due to video initialization, while for the same travis job the WML unit tests (which run before) and the boost unit tests (which run after) are still able to be successfully completed.

Therefore, the video initialization failures are not entirely random, and the MP tests are also the only tests that experience this failure while also being the only tests that have more than one instance of wesnoth running simultaneously.

tl;dr: the attempted solution here is to sleep for 5 seconds between starting background processes in the mp unit test script.

Also removes starting the display server prior outside of the docker container, since that's not needed anymore.
2018-03-05 15:49:46 +11: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
2a783b0df2 Fix for failed ccache builds being considered successful.
Travis looks at the return code of the final command run, and since printing the ccache statistics never fails, building would never be considered as failing. Manually calling exit also causes travis to treat the build as errored, since by sourcing the build it results in the entire travis wrapper shell exiting.
2018-03-03 16:46:06 -06:00
Wedge009
1a3a28c59c Re-attempting e4730ef1 (Minor corrections to Dunefolk and Two Brothers text) as per advice from @ivanovic.
[ci skip]
2018-03-04 00:41:35 +11:00
Nils Kneuper
8b80fa6635 add a word of caution that pofix.py does not alter source strings 2018-03-03 11:22:22 +01:00
Nils Kneuper
88e2da74af Revert "Minor corrections to Dunefolk and Two Brothers text."
This reverts commit e4730ef1bb.

The changes were never added to the config files and because of this
create "false fuzzy" strings.
2018-03-03 11:18:31 +01:00
pentarctagon
6f02d1bebb Make scons' mysql handling more normal. 2018-03-02 13:55:22 -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
Iris Morelle
c9eee2d351 Copyright/attribution update
[ci skip]
2018-02-16 20:03:24 -03:00
Wedge009
e4730ef1bb Minor corrections to Dunefolk and Two Brothers text.
[ci skip]
2018-02-10 02:50:51 +11:00
Matthias Krüger
a2168d2e24 codespell fixes to /src 2018-02-08 21:54:09 +11:00
Matthias Krüger
dc33cf7ceb pofix: add fixes of previous commits. 2018-02-06 23:03:06 +11:00
Charles Dang
fe23166a31 Updated pofix for ae33006
[ci skip]
2018-02-04 02:15:16 +11:00
josteph
6b703fd93c pofix: Update for HttT changes in previous commit. 2018-02-04 01:00:33 +11:00
josteph
e48964fa1b pofix: Add wesnoth-help fixes from previous commit. 2018-02-03 14:04:42 +11:00
Gregory A Lundberg
b5f76eff79
Bump copyright to 2018 2018-01-19 00:02:20 -06:00
Alexander van Gessel
c25bc555c4 Remove appveyor custom IRC notify script 2017-12-04 13:04:32 +11:00
Jyrki Vesterinen
72739c56a5 Revert ignoring MP test failures due to video init failure (2e5c5da003)
This code ended up ignoring *all* MP test failures, in particular the one
fixed in commit 11d7b9f0cf.

I'd test the code and fix it if I could, but unfortunately I can no longer
develop on GNU/Linux because of PC issues (which I mentioned in Discord).
Therefore I'm just reverting the entire change.
2017-11-29 21:34:03 +02:00
Nils Kneuper
6f9f1904fd fixed syntax error in pofix and "problem"
note: please do only enter "Part of the string", not the full strings.
The text in the po files is broken into parts and full strings, with
missing newlines, will not cause matches for the string.
2017-11-24 00:16:19 +01:00
sigurdfdragon
44f42b0fc5 Update pofix.py
For HttT S20b change.
2017-11-18 13:39:13 -05:00
Gregory A Lundberg
bf8758afde Tell Travis about Boost unit test name change 2017-11-06 13:43:18 -06:00
Alexander van Gessel
fc0674bcb6 Change *_RUNNING vars to string comparisons 2017-10-04 17:00:31 +02:00
Alexander van Gessel
fea609d309 Add missing break 2017-10-04 11:17:38 +02:00
Alexander van Gessel
2e5c5da003 MP test: treat failed init of SDL_video as a 'successful' test 2017-10-04 09:32:00 +02:00
Alexander van Gessel
7b3254964d Ensure that mp_test_executor exits 2017-10-04 09:12:32 +02:00