1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-29 02:57:44 +00:00

Ladybird/Meta: Convert to CMake build

This commit is contained in:
Andrew Kaster 2022-07-04 05:45:18 -06:00 committed by Andrew Kaster
parent da19b78dea
commit 74fda4aff5
7 changed files with 177 additions and 43 deletions

51
Ladybird/README.md Normal file
View file

@ -0,0 +1,51 @@
# Ladybird Web Browser
The Ladybird Web Browser is a browser using the SerenityOS LibWeb engine with a QT GUI.
## Build Prerequisites
QT6 development packages and a c++20-enabled compiler are required. On Debian/Ubuntu required packages include, but are not limited to:
```
sudo apt install build-essential cmake ninja-build qt6-base-dev qt6-tools-dev-tools
```
For the c++ compiler, gcc-11 or clang-13 are required at a minimum for c++20 support.
For Ubuntu 20.04 and above, ensure that the QT6 Wayland packages are available:
```
sudo apt install qt6-wayland
```
## Build steps
Basic workflow, using serenity source dir cloned from github:
```
cmake -GNinja -B Build
cmake --build Build
ninja -C Build run
```
Advanced workflow, using pre-existing serenity checkout.
If you previously didn't set SERENITY_SOURCE_DIR, probably want to blast the Build directory before doing this:
```
cmake -GNinja -B Build -DSERENITY_SOURCE_DIR=/path/to/serenity
ninja -C Build run
```
To automatically run in gdb:
```
ninja -C Build debug
```
To run without ninja rule:
```
# or your existing serenity checkout /path/to/serenity
export SERENITY_SOURCE_DIR=${PWD}/Build/serenity
./Build/ladybird
```