diff --git a/Documentation/BuildInstructions.md b/Documentation/BuildInstructions.md index 3d38c6d7dc..d3e7fa8970 100644 --- a/Documentation/BuildInstructions.md +++ b/Documentation/BuildInstructions.md @@ -41,6 +41,15 @@ Note that you might need additional dev packages in order to build QEMU on your sudo apt install libgtk-3-dev libpixman-1-dev libsdl2-dev libspice-server-dev ``` +#### CMake version 3.25.0 or later + +Serenity-specific patches were upstreamed to CMake in major version 3.25. To avoid carrying +patches to CMake, the minimum required CMake to build Serenity is set to that version. +If more patches are upstreamed to CMake, the minimum will be bumped again once that version releases. + +To accomodate distributions that do not ship bleeding-edge CMake versions, the build scripts will +attempt to build CMake from source if the version on your path is older than 3.25.x. + ### Windows If you're on Windows you can use WSL2 to build SerenityOS. Please have a look at the [Windows guide](BuildInstructionsWindows.md) diff --git a/Documentation/BuildInstructionsMacOS.md b/Documentation/BuildInstructionsMacOS.md index 6920179660..e1998cc0ba 100644 --- a/Documentation/BuildInstructionsMacOS.md +++ b/Documentation/BuildInstructionsMacOS.md @@ -43,3 +43,7 @@ overhead. Installing macfuse for the first time requires enabling its system extension in System Preferences and then restarting your machine. The output from installing macfuse with brew says this, but it's easy to miss. It's important to make sure that Xcode is not only installed but also accordingly updated, otherwise CMake will run into incompatibilities with GCC. + +Homebrew is known to ship bleeding edge CMake versions, but building CMake from source with homebrew +gcc or llvm may not work. If homebrew does not offer cmake 3.25.x+ on your platform, it may be neccessary +to manually run Toolchain/BuildCMake.sh with Apple clang from Xcode as the first compiler in your $PATH.