releng-tool¶
releng-tool aims to provide a way for developers to tailor the building of multiple software components to help prepare packages for desired runtime environments (e.g. cross-platform portable packages, embedded targets, etc.). When building a package, assets may be located in multiple locations and may require various methods to extract, build and more. releng-tool allows developers to define a set of packages, specifying where resources should be fetched from, how packages should be extracted and the processes for patching, configuring, building and installing each package for a target sysroot.
The structure of a package depends on the specific project. The simplest type is a script-based package, where users can define custom scripts for various stages. A package does not need to handle every stage. Helper package types are available (e.g. Autotools, Cargo, CMake, Make, Meson, various Python types and SCons) for projects using common build systems.
While releng-tool assists in configuring and building projects, it does not aim to provide a perfect sandbox for the process. Users are responsible for defining the compilers/toolchains used and managing the interaction between the staging/target area with the host system.
- Requirements
- Installation
- Getting started
- User guides
- Arguments
- Global actions
- Package actions
- Option arguments
--assets-dir <dir>--cache-dir <dir>--config <file>--debug--debug-extended--development [<mode>],-D [<mode>]--dl-dir <dir>--force,-F--help,-h--images-dir <dir>--jobs <jobs>,-j <jobs>--local-sources [[<pkg>:]<dir>],-L [[<pkg>:]<dir>]--nocolorout--only-mirror--out-dir <dir>--profile [<profile>],-P [<profile>]--relaxed-args--root-dir <dir>--sbom-format <fmt>--quirk <quirk-id>--verbose,-V--version--werror,-Werror
- Variable injection
- Configuration
- Environment variables
- Common
BUILD_DIRCACHE_DIRDL_DIRHOST_BIN_DIRHOST_DIRHOST_INCLUDE_DIRHOST_LIB_DIRHOST_SHARE_DIRIMAGES_DIRLICENSE_DIRNJOBSNJOBSCONFOUTPUT_DIRPKG_BUILD_BASE_DIRPKG_BUILD_DIRPKG_BUILD_OUTPUT_DIRPKG_CACHE_DIRPKG_CACHE_FILEPKG_DEFDIRPKG_DEVMODEPKG_INTERNALPKG_LOCALSRCSPKG_NAMEPKG_REVISIONPKG_SITEPKG_VERSIONPREFIXPREFIXED_HOST_DIRPREFIXED_STAGING_DIRPREFIXED_TARGET_DIRRELENG_CLEANRELENG_DEBUGRELENG_DEVMODERELENG_DISTCLEANRELENG_EXECRELENG_FORCERELENG_LOCALSRCSRELENG_MRPROPERRELENG_PROFILESRELENG_REBUILDRELENG_RECONFIGURERELENG_REINSTALLRELENG_SCRIPTRELENG_SCRIPT_DIRRELENG_TARGET_PKGRELENG_VERBOSERELENG_VERSIONROOT_DIRSTAGING_BIN_DIRSTAGING_DIRSTAGING_INCLUDE_DIRSTAGING_LIB_DIRSTAGING_SHARE_DIRSYMBOLS_DIRTARGET_BIN_DIRTARGET_DIRTARGET_INCLUDE_DIRTARGET_LIB_DIRTARGET_SHARE_DIR
- Package-specific variables
- Script-only variables
- Other variables
- Common
- Packages
- Overview
- Topics
- Common options
- Advanced options
LIBFOO_BUILD_SUBDIRLIBFOO_DEVMODE_IGNORE_CACHELIBFOO_DEVMODE_REVISIONLIBFOO_EXTENSIONLIBFOO_EXTERNALLIBFOO_EXTOPTLIBFOO_EXTRACT_TYPELIBFOO_FETCH_OPTSLIBFOO_FIXED_JOBSLIBFOO_GIT_CONFIGLIBFOO_GIT_DEPTHLIBFOO_GIT_REFSPECSLIBFOO_GIT_SUBMODULESLIBFOO_GIT_VERIFY_REVISIONLIBFOO_HOST_PROVIDESLIBFOO_INTERNALLIBFOO_NO_EXTRACTIONLIBFOO_PATCH_SUBDIRLIBFOO_PREFIXLIBFOO_REMOTE_CONFIGLIBFOO_REMOTE_SCRIPTSLIBFOO_REVISIONLIBFOO_STRIP_COUNTLIBFOO_VCS_TYPE
- System-specific options
- Bootstrapping
- Post-processing
- Site definitions
- Hash file
- ASCII armor
- Script package (default)
- Autotools package
- Cargo package
- CMake package
- Make package
- Meson package
- Python package
LIBFOO_BUILD_DEFSLIBFOO_BUILD_ENVLIBFOO_BUILD_OPTSLIBFOO_ENVLIBFOO_INSTALL_DEFSLIBFOO_INSTALL_ENVLIBFOO_INSTALL_OPTSLIBFOO_PYTHON_DIST_PATHLIBFOO_PYTHON_INSTALLER_INTERPRETERLIBFOO_PYTHON_INSTALLER_LAUNCHER_KINDLIBFOO_PYTHON_INSTALLER_SCHEMELIBFOO_PYTHON_INTERPRETERLIBFOO_PYTHON_SETUP_TYPE
- SCons package
- Deprecated options
- Post-processing
- Script helpers
- Available functions
debug()err()hint()log()note()releng_cat()releng_copy()releng_copy_into()releng_env()releng_execute()releng_execute_rv()releng_exists()releng_exit()releng_expand()releng_include()releng_join()releng_ls()releng_mkdir()releng_move()releng_move_into()releng_path()releng_remove()releng_symlink()releng_require_version()releng_tmpdir()releng_touch()releng_wd()success()verbose()warn()
- Available variables
- Importing helpers
- Available functions
- Licenses
- Tips
- Advanced
- Patching
- Internal/external packages
- Development mode
- Local-sources mode
- Profiles
- Configuration overrides
- Quirks
- Command line quirks
- Configuration-driven quirks
- Available quirks
- releng.bzr.certifi
- releng.cmake.disable_direct_includes
- releng.cmake.disable_parallel_option
- releng.disable_devmode_ignore_cache
- releng.disable_local_site_warn
- releng.disable_prerequisites_check
- releng.disable_remote_configs
- releng.disable_remote_scripts
- releng.disable_spdx_check
- releng.disable_verbose_patch
- releng.git.no_depth
- releng.git.no_quick_fetch
- releng.git.replicate_cache
- releng.log.execute_args
- releng.log.execute_env
- releng.stats.no_pdf
- Extensions
- Arguments
- Examples
- Requesting help
- Contributor guide