1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 02:37:36 +00:00

Travis: Update host GCC to version 10

This allows us to use the latest C++20 features in programs which we
compile and run as part of Lagom.
This commit is contained in:
Linus Groh 2020-10-31 21:17:30 +00:00 committed by Andreas Kling
parent 88307fcb59
commit 21912123c4
2 changed files with 9 additions and 2 deletions

View file

@ -24,9 +24,12 @@ notifications:
before_install:
- sudo apt-get update -qq
# These packages are already part of the Travis image:
#- sudo apt-get install -y g++-9 libstdc++-9-dev cmake shellcheck
#- sudo apt-get install -y cmake shellcheck
# Remove GCC 9 (installed by default) and replace it with GCC 10:
- sudo apt-get purge -y g++-9 libstdc++-9-dev
# These aren't:
- sudo apt-get install -y libmpfr-dev libmpc-dev libgmp-dev clang-format-10
- sudo apt-get install -y g++-10 libstdc++-10-dev libmpfr-dev libmpc-dev libgmp-dev clang-format-10
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 60 --slave /usr/bin/g++ g++ /usr/bin/g++-10
# If we ever do any qemu-emulation on Travis, we should re-enable this:
#- e2fsprogs qemu-system-i386 qemu-utils
- g++ --version

View file

@ -8,6 +8,10 @@ If you want to bring the comfortable Serenity classes with you to another system
*Lagom* is a Swedish word that means "just the right amount." ([Wikipedia](https://en.wikipedia.org/wiki/Lagom))
## Prerequisites
You'll need a compiler as capable as the one used for the toolchain - which might differ from the compiler you used *to compile* the toolchain. Check `GCC_VERSION` in [`BuildIt.sh`](../../Toolchain/BuildIt.sh).
## Fuzzing
Lagom can be used to fuzz parts of SerenityOS's code base. This requires buildling with `clang`, so it's convenient to use a different build directory for that. Run CMake like this: