Commit graph

26 commits

Author SHA1 Message Date
Ben Wiederhake
f067fb0aef Travis: Switch to Ubuntu Focal 2020-09-14 11:40:48 +02:00
Andreas Kling
638790c9a4 Travis: Fix wrong path to Meta/check-symbols.sh 2020-09-06 23:49:19 +02:00
Itamar
1c20e684f3 Travis: Run script that checks for forbidden symbols in LibC
check-symbols.sh fails the build if undefined __cx_guard_* symbols are
found in  LibC.

This will help us catch port breakage sooner.
2020-09-06 21:36:36 +02:00
Ben Wiederhake
735b0d05d3 Travis: Automatically test ALL debug code
This avoids silly problems like broken debug code. When debugging, I don't first
want to have to debug the debug code! :P

With all debug options enabled, `test-js` outputs 858081 lines. This is too much
for Travis, so we need to throw the debug output away on Travis. Note that
this still preserves information like *which* test failed, as well as the
precise error message.
2020-08-30 09:43:49 +02:00
Ben Wiederhake
8d680dd1ad Meta: Lint for duplicate endpoint IDs
We currently have 16 endpoints. The IDs are typed by a human at creation time.
This check will detect with we ever use an endpoint ID twice.

Since the large irrelevant directories are ignored, this should be quick enough.
2020-08-15 20:48:52 +02:00
Ben Wiederhake
0df9ddf604 Travis: Don't use Python 2, clarify reason of reinstall
This removes the dependency on the dead language python2.

Also, when we upgrade the base linux image (in 2020 or maybe 2021?),
this entire thing can hopefully be removed.
2020-08-15 16:49:09 +02:00
Ben Wiederhake
32158c45e4 Travis: Extra safety, build Serenity in parallel
This won't have much impact, because it's *only* Serenity that will be built
in parallel. This should save about a minute.
2020-08-02 18:50:28 +02:00
Ben Wiederhake
8aa6b13caa Meta: Ensure that icons and other resources remain non-executable 2020-07-29 01:34:22 +02:00
Ben Wiederhake
c6c9679cfc Travis: Show cache sizes before upload
Uploading the cache takes several minutes. This gives us a handy way to tell
which parts the worst culprits are.

The Toolchain cache seems to be the worst offender by far, because the binary
size nearly doubled when we upgraded from gcc9 to gcc10.
2020-07-29 01:24:24 +02:00
Peter Elliott
52ab2cead4 Meta: Cache ccache on travis-ci 2020-07-27 00:06:24 +02:00
Matthew Olsson
cf537311e4 test-js: Remove run-tests.sh
The shell script is no longer necessary -- simply run "test-js" from
inside Serenity, or $SERENITY_ROOT/Build/Meta/Lagom/test-js from the
host.
2020-07-06 23:40:35 +02:00
AnotherTest
b6853a118a Meta: Show the outputs of failing tests in travis 2020-07-04 10:49:48 +02:00
Linus Groh
54835689c9 Travis: Limit notifications to SerenityOS/serenity repo 2020-06-25 21:11:01 +02:00
Emanuele Torre
937d0be762 Meta: Add a script check the presence of "#pragma once" in header files
.. and make travis run it.

I renamed check-license-headers.sh to check-style.sh and expanded it so
that it now also checks for the presence of "#pragma once" in .h files.

It also checks the presence of a (single) blank line above and below the
"#pragma once" line.

I also added "#pragma once" to all the files that need it: even the ones
we are not check.
I also added/removed blank lines in order to make the script not fail.

I also ran clang-format on the files I modified.
2020-05-29 07:59:45 +02:00
Sergey Bugaev
450a2a0f9c Build: Switch to CMake :^)
Closes https://github.com/SerenityOS/serenity/issues/2080
2020-05-14 20:15:18 +02:00
Linus Groh
358694567f Meta: Add script to enforce license headers & run it on Travis 2020-05-09 23:55:58 +02:00
Linus Groh
660fd04063 Meta: Build Lagom js and run LibJS tests on Travis 2020-04-20 22:44:13 +02:00
Ben Wiederhake
36ba0a35ee Travis: Cache toolchain
This should give a significant boost to Travis speeds, because most of the
compile time is spent building the toolchain over and over again.
However, the toolchain (or libc or libm) changes only rarely,
so most rebuilds can skip this step.

The hashing has been put into a separate file to keep it
as decoupled as possible from BuiltIt.sh.
2020-03-08 14:09:08 +01:00
Nicolas Van Bossuyt
12504b52d2
CI: Update .travis.yml (#1334)
According to the Travis build config validation, the `sudo` key does
nothing and `os` should be specified.
2020-03-02 06:26:34 +01:00
Shannon Booth
084e67f267 Meta: Integrate Shellcheck into Travis
lint-shell-scripts searches over the repository looking for shell
scripts. On those found, shellcheck is run against them. If any linting
fails print those warnings and exit with a non-zero exit code.

Run this script automatically in Travis.
2020-02-10 10:46:25 +01:00
Andreas Kling
70865e5a5d Travis: We don't have UseIt.sh anymore :^) 2019-12-21 00:19:49 +01:00
Andreas Kling
14a228a6f8 Meta: Let's try giving Travis some valid YAML this time.. 2019-09-04 11:45:43 +02:00
Andreas Kling
6126edcd75 Meta: Try showing the commit subject in IRC notifications
Hopefully I got the travis-ci notifications syntax right!
2019-09-03 22:18:11 +02:00
Andreas Kling
26956db5ac Travis: Try to install a modern C++ compiler for host compilations.
It seems like the newest Ubuntu supported by Travis is 16.04. The bundled
gcc is unable to compile the trendy and modern Serenity code, so let's try
to install a newer GCC on the CI bot. :^)
2019-07-10 22:03:46 +02:00
Andreas Kling
59dae9a766 Make sure the CI has qemu-utils installed. 2019-06-04 16:38:14 +02:00
Robin Burchell
a942fa2ed3 Add .travis.yml 2019-05-28 17:04:09 +02:00