Skip to content

Instantly share code, notes, and snippets.

@saukijan
Created April 23, 2020 09:35
Show Gist options
  • Save saukijan/c8a8a7e153ed8e55e1f402c6a8f677c2 to your computer and use it in GitHub Desktop.
Save saukijan/c8a8a7e153ed8e55e1f402c6a8f677c2 to your computer and use it in GitHub Desktop.
Visual Studio Code Cmake Variants Config for open62541
buildType:
default: debug
choices:
debug:
short: debug
long: Builds the binaries with debugging hookups, tests and code instrumentation without any optimizations (-O0)
buildType: Debug
settings:
UA_DEBUG: True
UA_LOGLEVEL: 100
UA_BUILD_UNIT_TESTS: True
UA_ENABLE_COVERAGE: True
UA_ENABLE_DETERMINISTIC_RNG: True
UA_ENABLE_UNIT_TESTS_MEMCHECK: True
relWithDebInfo:
short: RelWithDebInfo
long: Builds the binaries with debugging information, but without any assertions, applies normal optimizations (-02)
buildType: RelWithDebInfo
release:
short: Rel
long: Builds the binaries without any debugging informtaion and no code assetions, applies high optimizations (-03)
buildType: Release
minSizeRel:
short: MinSizeRel
long: Builds the binaries without any debugging informtaion and no code assetions, applies high binary size optimizations (-0s)
buildType: MinSizeRel
historization:
default: Disable
description: Controls the building of historization plugin
choices:
Disable:
short: noHistory
long: Deactivates the historization plugin for building
settings:
UA_ENABLE_HISTORIZING: False
Standard:
short: Simple-History
long: Activates the historization plugin for building
settings:
UA_ENABLE_HISTORIZING: True
Expermental:
short: Expmntl-History
long: Activates the expermental historization plugin for building
settings:
UA_ENABLE_EXPERIMENTAL_HISTORIZING: True
subscription:
default: Standard
description: Controls the subscription service
choices:
Standard:
short: Subs
long: Activates the subscription service
settings:
UA_ENABLE_SUBSCRIPTIONS: True
Events:
short: Subs-And-Events
long: Activates the Subscription Events
settings:
UA_ENABLE_SUBSCRIPTIONS: True
UA_ENABLE_SUBSCRIPTIONS_EVENTS: True
Disable:
short: noSubs
long: Deactivates the subscription service
settings:
UA_ENABLE_SUBSCRIPTIONS: False
multithreading:
default: Singlethreaded
description: Controls if the binaries are built for multithreaded execution
choices:
Singlethreaded:
short: Singlethread
long: Builds the binaries without multithreading support
settings:
UA_ENABLE_MULTITHREADING: False
Multithreaded-Mutable:
short: Multithread
long: Builds the binaries with multithreading support
settings:
UA_ENABLE_MULTITHREADING: True
UA_ENABLE_IMMUTABLE_NODES: False
Multithreaded-Immutable:
short: Multithread-Immutable
long: Builds the binaries with multithreading support and immutable nodes
settings:
UA_ENABLE_MULTITHREADING: True
UA_ENABLE_IMMUTABLE_NODES: True
discovery:
default: Enable
description: Controls the Discovery Server
choices:
Enable:
short: LDS
long: Builds the Discovery Server
settings:
UA_ENABLE_DISCOVERY: True
multicast_discovery:
short: LDS-ME
long: Enables LDS-ME Multicast Support and Discovery service
settings:
UA_ENABLE_DISCOVERY: True
UA_ENABLE_DISCOVERY_MULTICAST: True
Disable:
short: noDiscovery
long: Doesnt builds the Discovery Server
settings:
UA_ENABLE_DISCOVERY: False
encription:
default: noEncription
description: Controls encription support
choices:
noEncription:
short: noEncript
long: Deactivates all encription support
settings:
UA_ENABLE_ENCRYPTION: False
mbedTLS:
short: mbedTLS
description: Activates Encription support using mbedTLS
settings:
UA_ENABLE_ENCRYPTION: True
UA_ENABLE_ENCRYPTION_MBEDTLS: True
openssl:
short: openssl
description: Activates Encription support using openssl
settings:
UA_ENABLE_ENCRYPTION: True
UA_ENABLE_ENCRYPTION_OPENSSL: True
pub_sub:
default: None
description: Controls Publish/Subscribe service set
choices:
None:
short: No-Pub/Sub
long: Disables Publish/Subscribe service set
settings:
UA_ENABLE_PUBSUB: False
overEthernet:
short: Eth-Pub/Sub
long: Enables Publish/Subscribe UADP over Ethernet
settings:
UA_ENABLE_PUBSUB: True
UA_ENABLE_PUBSUB_ETH_UADP: True
overEthernetXDP:
short: EthXDP-Pub/Sub
long: Enables Publish/Subscribe UADP over Ethernet using XDP
settings:
UA_ENABLE_PUBSUB: True
UA_ENABLE_PUBSUB_ETH_UADP_XDP: True
overEthernetETF:
short: EthETF-Pub/Sub
long: Enables Publish/Subscribe UADP over Ethernet using ETF
settings:
UA_ENABLE_PUBSUB: True
UA_ENABLE_PUBSUB_ETH_UADP_ETF: True
mqtt:
short: MQTT-Pub/Sub
long: Enable publish/subscribe with mqtt
settings:
UA_ENABLE_PUBSUB: True
UA_ENABLE_PUBSUB_MQTT: True
namespace_zero:
default: Reduced
description: Controlls Completeness of the generated namespace zero (minimal/reduced/full)
choices:
Minimal:
short: Minimal
long: Barebones namespace zero that is compatible with most clients. But this namespace 0 is so small that it does not pass the CTT (Conformance Testing Tools of the OPC Foundation)
settings:
UA_NAMESPACE_ZERO: "MINIMAL"
Reduced:
short: Reduced
long: Small namespace zero that passes the CTT.
settings:
UA_NAMESPACE_ZERO: "REDUCED"
Full:
short: Full
long: Full namespace zero generated from the official XML definitions.
settings:
UA_NAMESPACE_ZERO: "FULL"
micro_emb_profile:
short: micro_emb_profile
long: Builds CTT Compliant Micro Embedded Device Server Profile
settings:
UA_NAMESPACE_ZERO: "FULL"
UA_ENABLE_MICRO_EMB_DEV_PROFILE: True
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment