mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 07:30:19 +00:00
9dd24991a8
Build/lagom only now.
64 lines
3.4 KiB
Markdown
64 lines
3.4 KiB
Markdown
## CLion Project Configuration
|
|
|
|
CLion can integrate with CMake to provide code comprehension features.
|
|
|
|
After opening the `ladybird` repository in CLion as a new project, the "`Open Project Wizard`" window will open, from here set the following fields:
|
|
|
|
(Assuming you use `Ninja` as the build system and configured the CMake build directory to `Build/lagom`)
|
|
|
|
`CMake Options`:
|
|
```
|
|
-DSERENITY_CACHE_DIR=$CMakeProjectDir$/Build/caches
|
|
-GNinja
|
|
```
|
|
|
|
`Build Directory`: `Build/lagom`
|
|
|
|
If you already have the project open, you can go to `File -> Settings -> Build, Execution, Deployment -> CMake` to find these options.
|
|
|
|
## Excluding Build Artifacts
|
|
|
|
Source files are copied to the `Build` directory during the build, if you do not exclude them from CLion indexing they will show up
|
|
in search results. This is often confusing, unintuitive, and can result in you losing changes you have made to files. To exclude
|
|
these files navigate to the `Project` tool window, right-click the `Build` folder and select `Mark Directory as | Excluded`.
|
|
|
|
## Include headers and source files for code insight
|
|
|
|
To get proper code insight mark the folders `AK` and `Userland` by right-clicking on them and selecting `Mark Directory as | Project Sources and Headers`.
|
|
|
|
A symptom of this not being configured correctly is CLion giving a warning for every single file:
|
|
> The file does not belong to any project target, code insight features might not work properly.
|
|
|
|
## Code Generation Settings
|
|
|
|
To make code generated by CLion match the SerenityOS coding style, import the `CLionCodeStyleSettings.xml` from this directory as code style scheme via
|
|
`Settings -> Editor -> Code Style -> C/C++ -> Scheme -> Cog icon -> Import Scheme...`
|
|
|
|
## Notes for WSL Users
|
|
|
|
### Toolchain
|
|
|
|
If the ladybird directory is on the WSL filesystem you need to configure the CLion toolchain to be WSL.
|
|
To set that up go to `File->Settings->Build, Execution, Deployment->Toolchains` and click on the `+` icon, then select WSL. In `Toolset` select the distribution you have the ladybird directory on.
|
|
|
|
### Terminal
|
|
|
|
It is possible to set the embedded terminal in CLion to the one that your WSL distribution provides.
|
|
This way you can build and run ladybird without leaving the IDE.
|
|
Note that following will only help if you don't use an X-window server to access qemu.
|
|
It is possible to install qemu natively on Windows and allow WSL to use it instead of installing qemu first on (wsl) linux and then use X server to launch ladybird inside of it.
|
|
Check the updated manual [here](BuildInstructionsWindows.md).
|
|
|
|
- Locate the terminal emulator for your linux distribution.
|
|
Open CMD with elevated privileges and cd to `C:/Program Files/WindowsApps/`.
|
|
The directory is usually hidden and requires additional privileges. You should be able to cd as administrator.
|
|
`dir` and look for your distribution in directory names. In case of Ubuntu, it starts with `CanonicalGroupLimited.Ubuntu20.04onWindows_2004.2020.424.0_x64`.
|
|
cd to it. The directory should contain the shell executable. In my case it's named `ubuntu2004.exe`.
|
|
Copy `absolute/path/to/ubuntu2004.exe`.
|
|
|
|
- Go to your IDE settings: `File->Settings->Tools->Terminal` and paste the path you just copied to `shell path`. Click OK.
|
|
|
|
- Close CLion and restart.
|
|
|
|
The default IDE terminal should now be changed to WSL, and now you can run `CLion/run.sh`.
|
|
You may also want to copy `ladybird/Meta/CLion/run.sh` to your project directory and run it from there, so that you don't have to fight with git every time you modify the script.
|