any-conf – set of configuration options of any(1) engine.
Description
To view configuration data without building, datardd(1) may be used.
datardd amd64
To view constructed executable shell script (or dump) with all input data prepared, dumprdd(1) may be used.
dumprdd amd64
Path to constructed executable script for current package is available inside shell code in variable DUMP.
Options
- any_base_dir and any_rdd_root, which are properly initialised with rdd(1) variable;
- any_abs_path, which contains set of predefined known to work absolute paths.
Options any_root_*, any_engine_* are engine related and are much more obscure, then the rest ones. Their description is separated to own subsection. That options are unlikely needed for general user. Refer to image_setup_paths(3) and pkg_install(3) for in-depth description of any_root_* area.
- any_abs_path
-
PATH
inside containerised build environment is reset to predefined value.
This option keeps the start entry for that value. Resulting path is expanded
with several more entries, any_inner_path
keeps them.
Resetting is done to ensure needed PATH
is at the state as expected
by sandbox host environment.
When environment is considered as non-containered (automatically or explicitly with the option any_bool_sandbox=0), any_abs_path is not used.
Default value is: /usr/bin:/bin:/usr/sbin:/sbin - any_admin_groupid, any_admin_userid
-
Primary group id and user id, respectively.
That is used in containerised environment when switching between general and privileged user.
- any_arch
-
Detailed cpu architecture for binaries.
Possible examples are armv7,
power6,
ultrasparc3.
Initialises variable ANYARCH. - any_arch_capacity
-
Capacity of binaries: 32
or 64.
Initialises variable ANYARCHCAP. - any_arch_flags
-
Architecture-dependent flags for compiler at compiling stage to generate correct code
for chosen architecture.
Initialises variable ARCH_FLAGS. - any_arch_endian
-
Endianness of binaries: little
or big.
Initialises variable ANYARCHENDIAN. - any_arch_family
-
Generalised binary architecture. Possible examples are arm,
power,
sparc.
Initialises variable ANYARCHMODE. - any_arch_ldflags
-
Architecture-dependent flags for compiler at linking stage to generate correct code
for chosen architecture.
Initialises variable ARCH_LDFLAGS. - any_base_dir
-
Option to contain the root directory, where engine is extracted.
Current implementation relies on the value of /
for containerised environment.
Initialises variable BASEDIR. - any_base_inner_version
-
Integer positive number, which is added to inner version of a package,
when it is calculated automatically inside fetch_dev(3).
Used to rise the inner versions centrally, but with remaining dynamic part.
Initialises variable base_INNER_VERSION. - any_bool_autobpi
-
If set to 1,
variable BPI
is calculated by first two major numbers of the version.
For example, for version 1.2.3
the value of BPI
will be 1.2.
Unset by default.
Initialises variable BPI. - any_bool_loaddump
-
Option is generated inside engine unlike all others.
If set to 1,
option marks, that current process is launched from the shell dump.
That means further loading dumps of other packages is forbidden to avoid recursion.
It can be used as command line option as well to forbid nested dump loads.
- any_bool_sandbox
-
If set to 1,
environment is considered as sandboxed.
If set otherwise, it is considered the opposite.
If it is not set, container status is defined automatically.
Initialises variable base_SANDBOX. - any_builddir_keep
-
If set to 1,
interface fetch_build_remove(3)
will not remove build directory.
- any_context_save
-
If set to 0,
interface root_save_context(3)
will not save a tar file
with the context, provided by the current package for other packages. Unset by default.
- any_dev_src_dir
-
Location of development sources, or sources with changes for the package.
Such sources are expected to be kept in version control system (git, mercury, cvs)
and engine module is required for its support.
Initialises variable ANYDEVSRCDIR. - any_dev_src_version
-
Space separated list of possible versions for development sources to use.
If the version in remote repository exists as given in option entry, it is used.
If not, check is repeated for next entry.
- any_dump
-
Explicit location of dump file (constructed shell script) with build context.
The option is not set by default.
When it is empty, dump location is calculated, basing on rdd_atom_dumpdir
variable.
Initialises variable DUMP. - any_host_arch
-
Architecture of the host platform.
Initialises variable HOSTARCH. - any_host_update
-
If not set, stops the work of admin_host
interface, so host environment
will not be modified automatically during the build. Unset by default.
- any_image_exec
-
Holds directories with executable files inside packages.
Directories are relative to values from any_program_prefix.
Initialises variable image_TRACKED_EXEC_DIRS.
Default value is: bin sbin
- any_image_libs
-
Holds directories with library files inside packages.
Directories are relative to values from any_program_prefix.
Initialises variable image_TRACKED_LIB_DIRS.
Default value is: lib
- any_image_remove
-
Holds files to remove automatically from binary packages.
Filename templates are supported.
File sets are separated with comma, for example:
any_image_remove = *.la, *.lo, .packlist
Default value is: *.la. - any_inner_paths
-
Space separated list of relative paths, which are prepended to PATH
variable
for the build environment (both in container or not).
Default value is: rrr/bin - any_list_all
-
List of all packages, available for the build.
It is used by methods, which gather build tree by dependencies.
Assigned with all.src
by default, like rdd_list_entry.
If option is not set, the value of rdd_list_entry
is taken.
- any_list_required
-
Option provides the opportunity to define explicitly set of packages,
which needs to operate with.
The set is independent from current value of rdd_list_entry.
Format is the same as in rdd_list_entry
and lsrdd(1):
whether file with a list or direct string with packages, separated by comma.
Unset by default. If it is unset, rdd_list_entry used at its place. - any_local_src_hashing
-
If set to 1,
turns on the hashing by first letter of local sources names.
The storage scheme without hashing:
- a_package
- abb_package
- c_package
- a/a_package
- a/abb_package
- c/c_package
- any_make_opts
-
The options for make(1)
command, passed through amake
interface.
The most often usage is options for parallel make launch.
Initialises variable MAKEOPTS. - any_meta_dir
-
Location of METADIR
in working directory.
Initialises variable METADIR. - any_morebuild_cflags, any_morebuild_cxxflags, any_morebuild_ldflags
-
Additional compile-time C, compile-time C++ and link-time flags, respectively.
These can be used to add custom flags to ENGINE_*
series,
besides the engine-generated values. That series of variables is added automatically
to build strings for appropriate code and search paths.
Options are not set by default.
Initialise variables ENGINE_CFLAGS, ENGINE_CXXFLAGS, ENGINE_LDFLAGS. - any_opt_flags
-
The options for compiler optimisations. They refer to code performance, not to its correctness.
Initialises variable OPT_FLAGS. - any_opt_ldflags
-
The options for linker optimisations.
Initialises variable OPT_LDFLAGS. - any_os
-
The operation system of target packages.
Initialises variable ANYOS. - any_out_basedir
-
The former absolute path to the working directory out of container.
Used for user diagnostic. Generated by any-do(1)
and not set manually.
Initialises variable out_BASEDIR. - any_pack_list
-
One more option to keep lists of packages.
That one is used in package and release methods.
Unset by default.
- any_prof_core, any_prof_postfix, any_prof_prefix
-
Components of build profile, text identificator of the build tree inside working directory.
That identificator is available as APROFILE
in shell.
Profile is part of the paths like
build/image/APROFILE/
or build/pool/APROFILE/.
That means changing the profile name leads to independent build tree.
So the options with profile name should be included in that sections,
which mean incompatibility: they declare new ABI, operation system or binary architecture.
For example, config sections for mips
and sparc
should set up unique profiles,
as packages for them are needed to be built separately from each other.
Three different options to name profiles are used for the capability to add prefixes or postfixes to already existing profile name. Thus the build will be separated, but visually will be related with the parent. For example, dataword cap64 may include any_prof_postfix=64. If generic architectures mips or arm have the profile ids as mips and arm, with additional dataword mips,cap64 and arm,cap64 they have new build profiles mips64 and arm64. At the same time cap64 is universal: it may be added equally to all other datawords.
Initialise variable APROFILE. - any_profile_engine
-
Space separated list of directories for modular inclusion.
Included engine modules end with .sh
extension.
Default value is: any/include local/include - any_profile_lib
-
Space separated list of directories for modular inclusion of library code.
The code must not change because of API variables changing. Therefore it is not reincluded
second time when shell dumps of other packages are loaded into current context.
That allows to speed up dump loading.
The required condition is always done when library code contains only methods.
Included library engine modules end with .sh
extension.
Default value is: any/lib local/lib - any_program_linguas
-
Space separated list of language codes.
May be used to reduce internationalisation texts to selected minimum.
Initialises variable LINGUAS. - any_program_prefix
-
Essential prefix to locate programs inside install tree.
Used in build interfaces like aconf.
Examples are /usr
or /usr/pkg.
Default value is: /usr
Initialises variable PREFIX. - any_program_prefix_list
-
Space separated list of prefixes, used among all programs in distro project.
Used when all packages are not configured for single prefix.
First entry from the list is used for PREFIX,
if one is not set.
The option is used for engine-related compilation flags: for each entry of the list
search path for headers and libraries inside ROOT
with that prefix is added.
Initialises variables PREFIX_LIST, PREFIX, ROOT_CFLAGS, ROOT_LDFLAGS, ROOT_DIRS. - any_program_subfs
-
Additional root path inside D,
so that compiler deals with
$ROOT$SUBFS
instead of simple $ROOT.
This is needed for packages, configured to something like /opt/prog/usr
(where /opt/usr
would be SUBFS).
Empty by default.
Initialises variable SUBFS. - any_rdd_root
-
Reserved for future use.
- any_release_dir
-
Directory for final built release material (whatever should it be).
When option is not set, value release
for RELEASEDIR
is taken.
Initialises variable RELEASEDIR. - any_release_id
-
Short text identificator of the release files.
It is used in inner versions of binary packages to identify the release they belong to:
slack14.2,
debian9.
Initialises variable RELEASE. - any_release_version
-
Full version of the release to write down in changelog:
Debian-9.0,
Slackware-14.2.
Initialises variable RELEASE_VERSION. - any_remote_src_hashing
-
If set to 1,
turns on the hashing by first letter of development sources names.
That suggests sources are kept at remote server by hashing scheme.
See description of any_local_src_hashing.
- any_src_dir
-
Directory with original package sources: they are taken as is from here.
Patches or modifications are applied on top of them later.
Default value is: ports/srcstatic
Initialises variable ANYSRCDIR. - any_static_patch_dir
-
Directory with plain patches, kept separately from ports.
This is one of possible patch sources.
Default value is: ports/patch
Initialises variable static_PATCHDIR. - any_static_root
-
If set to 1,
the work with ROOT
moves to static mode without dependencies handling:
single ROOT
directory is created for all packages, and pkg_root(3)
of each one mirrors its files into that general directory.
Files of entire ROOT
are available to the package while its building
instead of materials of dedicated packages, requested by DEPEND.
Unset by default.
Initialises variables static_ROOT, ROOT. - any_tch_cc, any_tch_ccld, any_tch_cxx, any_tch_cxxld
-
Elements of C and C++ toolchain: C compiler, C link string, C++ compiler, C++ link string.
Initialise variables PLAIN_CC, PLAIN_CXX, PLAIN_CCLD, PLAIN_CXXLD, PLAIN_CPP, CC, CXX, CCLD, CXXLD, CPP.[any_tch_host_cc, any_tch_host_ccld, any_tch_host_cxx, any_tch_host_cxxld] Elements of C and C++ toolchain in host environment. When no cross-compiling is used, host toolchain equals to the main toolchain and host series of options is not needed.
Initialise variables HOST_CC, HOST_CXX, HOST_CCLD, HOST_CXXLD, HOST_CPP. - any_util_root
-
Option with the name of utility to create root-owned materials,
when running as general user.
- any_write_root
-
Base directory to write everything during the work of any(1),
possibly excluding the release production.
Default value is: build
Options of engine tuning
- any_engine_dump
-
Scheme of work with multiple dumps. The scheme defines how dump of a new (non-current)
package will be got when its context is needed. Available ones are:
- plain
- heavy
- crooked
heavy scheme generates new dump with dumprdd(1).
crooked scheme relies on dump, created beforehand. - any_root_exec_editable
-
Space separated list of file types, which should be automatically edited
by image_setup_paths(3)
inside pkg_install(3).
That method aims to remove all inclusion of build-related paths, such as ROOT,
from installable files. File type is defined by file(1)
with the call of:
file -b --mime-type filename
Default value is: text/ application/xml application/x-shellscript inode/symlink - any_root_exec_name_template
-
Space separated list of templates for find(1)
to determine names of executable
non-binary scripts, which should be installed to ROOT
as real copies
(instead of symlinks) and edited to work from that directory.
The scripts are searched in prefixes from PREFIX_LIST,
concatenated with each entry of root_TRACKED_BIN_DIRS
(according option any_root_tracked_bin_dirs).
For example, when PREFIX_LIST contains /usr and /usr/local, and root_TRACKED_BIN_DIRS contains bin and sbin, search for executables will go in /usr/bin/, /usr/sbin/, /usr/local/bin/, /usr/local/sbin/.
Default value is: *-config *-config-* - any_root_textbuild_files
-
Space separated list of templates for grep(1)
to determine names of text files,
which should be installed to ROOT
as real copies (instead of symlinks)
and edited to work from that directory.
The files are searched in prefixes from PREFIX_LIST,
concatenated with each entry
from root_TRACKED_DIRS
(according option any_root_tracked_dirs).
For example, when PREFIX_LIST contains /usr and /usr/local, and root_TRACKED_DIRS contains lib and include, search for files will go in /usr/lib/, /usr/include/, /usr/local/lib/, /usr/local/include/.
By default .pc files are edited: they are part of pkg-config(1) scheme to provide information about includes and libraries. Search template in default value is regular expression instead of simple text.
Default value is: \.pc$
Initialises variable root_TEXTBUILD_FILES. - any_root_tracked_bin_dirs
-
Space separated list of directories, where executable files for ROOT
edit
are searched. See any_root_exec_name_template
description.
Default value is: bin
Initialises variable root_TRACKED_BIN_DIRS. - any_root_tracked_dirs
-
Space separated list of directories, where simple text files for ROOT
edit
are searched. See any_root_textbuild_files
description.
Default value is: lib include
Initialises variable root_TRACKED_DIRS.