Page Summary
-
This document lists build variables used for configuring the Cobalt platform across different target environments.
-
Variables control aspects such as executable type, library sources (EGL/GLES), compiler options, and Starboard API version.
-
Developers can override default values to customize the build process for their specific platform needs.
-
Several variables are related to the integration of Starboard, an abstraction layer for platform services.
-
Variables related to V8, the JavaScript engine, determine features like pointer compression and WebAssembly support.
| Variables |
|---|
cobalt_licenses_platformSub-directory to copy license file to. The default value is "default". |
cobalt_platform_dependenciesList of platform-specific targets that get compiled into cobalt. The default value is []. |
cobalt_v8_emit_builtins_as_inline_asmSome compiler can not compile with raw assembly(.S files) and v8 converts asm to inline assembly for these platforms. The default value is false. |
final_executable_typeThe target type for executable targets. Allows changing the target type on platforms where the native code may require an additional packaging step (ex. Android). The default value is "shared_library". |
gl_typeThe source of EGL and GLES headers and libraries. Valid values (case and everything sensitive!):
|
gtest_target_typeThe target type for test targets. Allows changing the target type on platforms where the native code may require an additional packaging step (ex. Android). The default value is "shared_library". |
has_platform_targetsWhether the platform has platform-specific targets to depend on. The default value is false. |
loadable_module_configsTarget-specific configurations for loadable_module targets. The default value is []. |
nasm_existsEnables the nasm compiler to be used to compile .asm files. The default value is false. |
path_to_nasmWhere yasm can be found on the host device. The default value is "nasm". |
platform_tests_pathSet to the starboard_platform_tests target if the platform implements them. The default value is "". |
sabi_pathWhere the Starboard ABI file for this platform can be found. The default value is "starboard/sabi/default/sabi.json". |
sb_api_versionThe Starboard API version of the current build configuration. The default value is meant to be overridden by a Starboard ABI file. The default value is 18. |
sb_enable_benchmarkUsed to enable benchmarks. The default value is false. |
sb_enable_cpp17_auditEnables an NPLB audit of C++17 support. The default value is true. |
sb_enable_cpp20_auditEnables an NPLB audit of C++20 support. The default value is true. |
sb_enable_libEnables embedding Cobalt as a shared library within another app. This requires a 'lib' starboard implementation for the corresponding platform. The default value is false. |
sb_enable_opus_sseEnables optimizations on SSE compatible platforms. The default value is true. |
sb_evergreen_compatible_use_libunwindWhether to use the libunwind library on Evergreen compatible platform. The default value is false. |
sb_filter_based_playerUsed to indicate that the player is filter based. The default value is true. |
sb_has_unused_symbol_issueSet this to true if the modular toolchain linker doesn't strip all unused symbols and nplb fails to link. The default value is false. |
sb_libevent_methodThe event polling mechanism available on this platform to support libevent. Platforms may redefine to 'poll' if necessary. Other mechanisms, e.g. devpoll, kqueue, select, are not yet supported. The default value is "epoll". |
sb_static_contents_output_data_dirDirectory path to static contents' data. The default value is "/project_out_dir/content/data". |
sb_use_no_rttiWhether or not to disable run-time type information (adding no_rtti flag). The default value is false. |
source_set_configsTarget-specific configurations for source_set targets. The default value is []. |
starboard_level_final_executable_typeThe default value is "executable". |
starboard_level_gtest_target_typeThe default value is "executable". |
static_library_configsTarget-specific configurations for static_library targets. The default value is []. |
use_crashpadPlatforms can set this to false to avoid building and using a real crashpad implementation. If false, crashpad either won't be built or a stub implementation will be built and used. all Early Access Program platforms. The default value is true. |
v8_enable_pointer_compression_overrideSet to true to enable pointer compression for v8. The default value is true. |