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

Meta: Add the ConfigureComponents utility

This adds a utility program which is essentially a command generator for
CMake. It reads the 'components.ini' file generated by CMake in the
build directory, prompts the user to select a build type and optionally
customize it, generates and runs a CMake command as well as 'ninja
clean' and 'rm -rf Root', which are needed to properly remove system
components.

The program uses whiptail(1) for user interaction.
This commit is contained in:
Max Wipfli 2021-06-20 14:54:45 +02:00 committed by Gunnar Beutner
parent 24c490c520
commit 2d71eaadcd
3 changed files with 387 additions and 0 deletions

View file

@ -89,6 +89,12 @@ add_custom_target(install-ports
USES_TERMINAL
)
add_custom_target(configure-components
COMMAND ConfigureComponents
DEPENDS ConfigureComponents
USES_TERMINAL
)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
@ -131,6 +137,7 @@ endif()
add_subdirectory(Userland/DevTools/IPCCompiler)
add_subdirectory(Userland/DevTools/StateMachineGenerator)
add_subdirectory(Userland/Libraries/LibWeb/CodeGenerators)
add_subdirectory(Meta/CMake/ConfigureComponents)
set(write_if_different ${CMAKE_SOURCE_DIR}/Meta/write-only-on-difference.sh)