build_kos_qemu_image()
This command is declared in the file /opt/KasperskyOS-Community-Edition-<version>toolchain/share/cmake/Modules/platform/image.cmake.
build_kos_qemu_image(NAME ...)
This command creates a CMake target for building a solution image that can then be used to build the image for QEMU using make.
Parameters:
NAMEis the name of theCMaketarget for building a solution image. Required parameter.PERFCNT_KERNEL– use the kernel with performance counters if it is available in KasperskyOS Community Edition.EINIT_ENTITYis the name of the executable file that will be used to start theEinitprogram.EXTRA_XDL_DIRrefers to additional directories to include when building theEinitprogram.CONNECTIONS_CFGis the path to theinit.yamlfile or init.yaml.in template.SECURITY_PSLis the path to thesecurity.pslfile or security.psl.in template.KLOG_ENTITYis the target for building theKlogsystem program, which is responsible for the security audit. If the target is not specified, the audit is not performed.QEMU_FLAGSare additional flags for running QEMU.IMAGE_BINARY_DIR_BINis the directory for the final image and other artifacts. It matchesCMAKE_CURRENT_BINARY_DIRby default.IMAGE_FILESare the executable files of applications and system programs (except theEinitprogram) and any other files to be added to the ROMFS image.To add multiple applications or files, you can use multiple
IMAGE_FILESparameters.<path to files>are free parameters likeIMAGE_FILES.
Example call:
build_kos_qemu_image ( kos-qemu-image
EINIT_ENTITY EinitQemu
CONNECTIONS_CFG "src/init.yaml.in"
SECURITY_CFG "src/security.cfg.in"
IMAGE_FILES ${ENTITIES})
For an example of using this command, see the article titled "CMakeLists.txt files for building the Einit program".