build_kos_qemu_image()
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 ...)
The command creates a CMake target for building a solution image for QEMU.
Parameters:
NAME– 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_ENTITY– name of the executable file that will be used to start theEinitprogram.EXTRA_XDL_DIR– additional directories to include when building theEinitprogram.CONNECTIONS_CFG– path to theinit.yamlfile or init.yaml.in template.SECURITY_PSL– path to thesecurity.pslfile or security.psl.in template.KLOG_ENTITY– target for building theKlogsystem program, which is responsible for the security audit. If the target is not specified, the audit is not performed.QEMU_FLAGS– additional flags for running QEMU.IMAGE_BINARY_DIR_BIN– directory for the final image and other artifacts. It matchesCMAKE_CURRENT_BINARY_DIRby default.NO_AUTO_BLOB_CONTAINER– solution image will not include theBlobContainerprogram that is required for working with dynamic libraries in shared memory. For more details, refer to "Including the BlobContainer system program in a KasperskyOS-based solution".PACK_DEPS,PACK_DEPS_COPY_ONLY,PACK_DEPS_LIBS_PATH, andPACK_DEPS_COPY_TARGET– parameters that define the method used to add dynamic libraries to the solution image.IMAGE_FILES– 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>– 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".
Did you find this article helpful?
What can we do better?
Thank you for your feedback! You're helping us improve.
Thank you for your feedback! You're helping us improve.