5.1. Platform description
Preinstalled configuration file rdd.def has samples to choose platform components: compiler, operating system, hardware architecture. In the guide above they were used by the string:
[id] rdd_prf_id = any, amd64, gcc, linux
Each listed platform component includes its options, stored in rdd.conf.d/. You may modify the values of these options and therefore describe your platform.
Create sample description and change the compiler. Option any_tch_cc would be changed for that.
[id] any_tch_cc = mycc rdd_prf_id = any, amd64, linuxWord gcc was removed from the list of configuration words, as we have set up our own compiler and the properties of gcc do not apply to our config anymore.
The following core options are available to describe platform.
Generic options:
- any_prof_core
- Platform marker in build paths. For example, if the option has the value amd64, then building for this configuration will generate content paths, containing directory amd64/.
- any_tch_cc
- C compiler.
- any_tch_cxx
- C++ compiler.
- any_os
- Generic OS name.
- any_autoconf_os
- The name of the OS in autoconf system.
- any_arch_family
- Name of the processor family (like arm, x86).
- any_arch_endian
- Byte order in memory: little or big.
- any_arch_capacity
- Capacity of pointers: 32, 64.
The samples of platform descriptions are available in rdd.conf.d/build.conf file.
Options with your data you may store directly in id section:
[id] any_tch_cc = clang any_prof_core = musl rdd_prf_id = any, amd64, linux
It is possible to create your own data section and include it inside id:
[id] rdd_prf_id = any, amd64, linux, musl [musl] any_tch_cc = clang any_prof_core = musl
Afterwards the build keeps the old parameters:
any do id xz-5.2.5But new data will be used, including information on musl.
We replaced data with concert only to toolchain in the example above. The example with exchange of two data words:
[id] rdd_prf_id = any, amd64, haiku [haiku] any_tch_cc = clang-haiku any_os = haiku any_prof_core = haiku
Current section mentions only the most essential options, describing the platform.
The description of all options, available for configs, is listed in any-conf(7).