Build System Overview

Features

The build system facilitates CMake capabilities to enable easy creation of customer application builds and to provide centralized build configuration and user settings.

  • Makefile / solution compilation incl. 3rd party components
  • Makefile / solution generation considering dependencies
  • Central module naming
  • Overridable project and user options (features)
  • Overridable build rules (compiler and tool-chain settings)
  • System detection (OS, CPU, GPU, Compiler, ...) considering cross compilation
  • Collection of available OS and GPU device packs
  • Code generation for build-dependent sources (e.g. configuration files)
  • Version validation
  • CMake Logging and Tracing

Build System Structure

CGI-Studio Build System Structure

The build system is a modular environment for CGI-Studio components, automatically detecting Candera, Courier and FeatStd libraries to provide easy application inclusion.

This information is outdated with the new cmake environment from CGIStudio 3.14 on

Filename(Foldername) Description
cgistudio_cmake_main.cmake Entry point, provides common information and constants
Defines CGI-Studio component "projects"
cgistudio_detection_inc.cmake Provides detection facilities for various components
cgistudio_cmake_variables.cmake CMake switch management, enables deprecating and overriding of CMake GUI variables
cgistudio_build_rules_cxx.cmake Provides build settings and compiler options
cgistudio_version_check_inc.cmake Provides version check facilities, used by e.g. CgiStudioCanderaConfigVersion
cgistudio_pclint_inc.cmake Provides PC-Lint related facilities, incl. PC-Lint related user settings