mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 04:48:14 +00:00
Meta: Promote SERENITY_CACHE_DIR to a real option
We've had it as a secret option for long enough, let's make it more visible.
This commit is contained in:
parent
7a5cd7e5f4
commit
1d78e07f6b
5 changed files with 4 additions and 6 deletions
|
@ -67,6 +67,7 @@ There are some optional features that can be enabled during compilation that are
|
||||||
- `SERENITY_ARCH`: Specifies which architecture to build for. Currently supported options are `x86_64`.
|
- `SERENITY_ARCH`: Specifies which architecture to build for. Currently supported options are `x86_64`.
|
||||||
- `BUILD_<component>`: builds the specified component, e.g. `BUILD_HEARTS` (note: must be all caps). Check the components.ini file in your build directory for a list of available components. Make sure to run `ninja clean` and `rm -rf Build/x86_64/Root` after disabling components. These options can be easily configured by using the `ConfigureComponents` utility. See the [Component Configuration](#component-configuration) section below.
|
- `BUILD_<component>`: builds the specified component, e.g. `BUILD_HEARTS` (note: must be all caps). Check the components.ini file in your build directory for a list of available components. Make sure to run `ninja clean` and `rm -rf Build/x86_64/Root` after disabling components. These options can be easily configured by using the `ConfigureComponents` utility. See the [Component Configuration](#component-configuration) section below.
|
||||||
- `BUILD_EVERYTHING`: builds all optional components, overrides other `BUILD_<component>` flags when enabled
|
- `BUILD_EVERYTHING`: builds all optional components, overrides other `BUILD_<component>` flags when enabled
|
||||||
|
- `SERENITY_CACHE_DIR`: sets the location of a shared cache of downloaded files. Should not need to be set unless managing a distribution package.
|
||||||
|
|
||||||
Many parts of the SerenityOS codebase have debug functionality, mostly consisting of additional messages printed to the debug console. This is done via the `<component_name>_DEBUG` macros, which can be enabled individually at build time. They are listed in [this file](../Meta/CMake/all_the_debug_macros.cmake).
|
Many parts of the SerenityOS codebase have debug functionality, mostly consisting of additional messages printed to the debug console. This is done via the `<component_name>_DEBUG` macros, which can be enabled individually at build time. They are listed in [this file](../Meta/CMake/all_the_debug_macros.cmake).
|
||||||
|
|
||||||
|
|
|
@ -51,7 +51,7 @@ jobs:
|
||||||
os: '${{ parameters.os }}'
|
os: '${{ parameters.os }}'
|
||||||
arch: 'Lagom'
|
arch: 'Lagom'
|
||||||
toolchain: '$(toolchain)'
|
toolchain: '$(toolchain)'
|
||||||
download_cache_path: 'Meta/Lagom/Build'
|
download_cache_path: 'Meta/Lagom/caches'
|
||||||
serenity_ccache_path: '$(SERENITY_CCACHE_DIR)'
|
serenity_ccache_path: '$(SERENITY_CCACHE_DIR)'
|
||||||
with_remote_data_caches: true
|
with_remote_data_caches: true
|
||||||
${{ if eq(parameters.os, 'macOS') }}:
|
${{ if eq(parameters.os, 'macOS') }}:
|
||||||
|
|
|
@ -44,9 +44,6 @@ if(NOT SERENITY_TOOLCHAIN STREQUAL "GNU")
|
||||||
endif()
|
endif()
|
||||||
set(SERENITY_BUILD_DIR "${PROJECT_BINARY_DIR}/../${SERENITY_ARCH}${SERENITY_BUILD_DIR_SUFFIX}")
|
set(SERENITY_BUILD_DIR "${PROJECT_BINARY_DIR}/../${SERENITY_ARCH}${SERENITY_BUILD_DIR_SUFFIX}")
|
||||||
|
|
||||||
# Location to cache artifacts downloaded during the build.
|
|
||||||
file(REAL_PATH "${PROJECT_BINARY_DIR}/../caches" SERENITY_CACHE_DIR)
|
|
||||||
|
|
||||||
# Pkgconf incorrectly discards a sysroot if it doesn't match the start of the path to the
|
# Pkgconf incorrectly discards a sysroot if it doesn't match the start of the path to the
|
||||||
# library file. To avoid that, resolve our sysroot into an absolute and canonical path
|
# library file. To avoid that, resolve our sysroot into an absolute and canonical path
|
||||||
# that matches pkgconf's result for resolving the library file.
|
# that matches pkgconf's result for resolving the library file.
|
||||||
|
|
|
@ -24,3 +24,5 @@ serenity_option(HACKSTUDIO_BUILD OFF CACHE BOOL "Automatically enabled when buil
|
||||||
|
|
||||||
serenity_option(ENABLE_JAKT OFF CACHE BOOL "Enable building jakt files")
|
serenity_option(ENABLE_JAKT OFF CACHE BOOL "Enable building jakt files")
|
||||||
serenity_option(JAKT_SOURCE_DIR "" CACHE STRING "Pre-existing jakt language source directory")
|
serenity_option(JAKT_SOURCE_DIR "" CACHE STRING "Pre-existing jakt language source directory")
|
||||||
|
|
||||||
|
serenity_option(SERENITY_CACHE_DIR "${PROJECT_BINARY_DIR}/../caches" CACHE PATH "Location of shared cache of downloaded files")
|
||||||
|
|
|
@ -25,8 +25,6 @@ get_filename_component(
|
||||||
)
|
)
|
||||||
set(SerenityOS_SOURCE_DIR "${SERENITY_PROJECT_ROOT}" CACHE STRING "")
|
set(SerenityOS_SOURCE_DIR "${SERENITY_PROJECT_ROOT}" CACHE STRING "")
|
||||||
|
|
||||||
set(SERENITY_CACHE_DIR "${PROJECT_BINARY_DIR}" CACHE STRING "")
|
|
||||||
|
|
||||||
list(APPEND CMAKE_MODULE_PATH "${SERENITY_PROJECT_ROOT}/Meta/CMake")
|
list(APPEND CMAKE_MODULE_PATH "${SERENITY_PROJECT_ROOT}/Meta/CMake")
|
||||||
|
|
||||||
if(NOT COMMAND serenity_option)
|
if(NOT COMMAND serenity_option)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue