# This file controls options to apply when configuring/building projects, and controls which projects are built in the first place. # List of all options: https://kde-builder.kde.org/en/configuration/conf-options-table.html config-version: 2 global: branch-group: kf6-qt6 # Finds and includes *KDE*-based dependencies into the build. This makes # it easier to ensure that you have all the projects needed, but the # dependencies are not very fine-grained so this can result in quite a few # projects being installed that you didn't need. include-dependencies: true source-dir: ~/kde/src # Directory for downloaded source code build-dir: ~/kde/build # Directory to build KDE into before installing install-dir: ~/kde/usr # Directory to install KDE software into # qt-install-dir: ~/kde/qt # Directory to install Qt if kde-builder supplies it log-dir: ~/kde/log # Directory to write logs into # python buildings never compile cmake-options: > -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_PYTHON_BINDINGS=OFF # kde-builder sets 2 options which is used in options like make-options or set-env # to help manage the number of compile jobs that happen during a build: # # 1. num-cores, which is just the number of detected CPU cores, and can be passed # to tools like make (needed for parallel build) or ninja (completely optional). # # 2. num-cores-low-mem, which is set to the largest value that appears safe for # particularly heavyweight projects based on total memory, intended for # projects like qtwebengine. num-cores: "auto" num-cores-low-mem: "auto" # Makes the built-from-source Plasma session accessible from the SDDM login screen. install-login-session: true # Stop the build process on the first failure. If set to false, when kde-builder # encounters a build failure, it will attempt to continue building other projects, # using libraries from the system in cases where they would otherwise be provided # by a project that has failed to build. # Unless your system has very up-to-date packages, this is probably not what you want. stop-on-failure: true # Use a flat folder layout under ~/kde/src and ~/kde/build # rather than nested directories directory-layout: flat # Use Ninja as cmake generator cmake-generator: Ninja # Build with LSP support for everything that supports it compile-commands-linking: true compile-commands-export: true # Generate .idea config files in project directories # Enable this if you want to use CLion for development generate-clion-project-config: true # Generate .vscode config files in project directories # Enable this if you want to use Visual Studio Code for development generate-vscode-project-config: false # Generate copy-pastable files for manual qtcreator config creation # Enable this if you want to use Qt Creator for development generate-qtcreator-project-config: false # Show a message when kde-builder detects it is outdated. check-self-updates: true # With base options set, the remainder of the file is used to define projects to build, in the # desired order, and set any project-specific options. # This line includes build configs that are provided in build-configs dir in repo-metadata. # https://invent.kde.org/sysadmin/repo-metadata/-/tree/master/build-configs # KDE Builder automatically updates repo-metadata, so you are always using an up-to-date configs. include ${build-configs-dir}/kde6.yaml: "" # =============================================================================================== # Starting from here, you can add your custom projects and override options for defined projects. # =============================================================================================== # To change options for projects that have already been defined, use an "override" node. # Example: # # override qt6-set: # branch: dev # # To define a project with some options, use "project" node. # Example: # # project some-app: # repository: https://github.com/YourUser/YourProject.git