+# Cluster demo support.
+# ATM mapviewer is required for navigation map viewing when doing cluster
+# demos with the older navigation application.
+MAPVIEWER = "${@bb.utils.contains("PREFERRED_PROVIDER_virtual/navigation", "navigation", "mapviewer", "",d)}"
+CLUSTER_SUPPORT = "${@bb.utils.contains("DISTRO_FEATURES", "agl-cluster-demo-support", "${MAPVIEWER} cluster-demo-network-config", "",d)}"
+
+# Preload poi API key for demo if requested, and potentially maps for older
+# navigation application if it is configured.
+DEMO_MAPS_LOCALE ?= "uk"
+DEMO_PRELOAD_MAPS = "${@bb.utils.contains("PREFERRED_PROVIDER_virtual/navigation", "navigation", " navigation-maps-${DEMO_MAPS_LOCALE}", "",d)}"
+DEMO_PRELOAD = "${@bb.utils.contains("DISTRO_FEATURES", "agl-demo-preload", " ${DEMO_PRELOAD_MAPS} poiapp-api-key", "",d)}"
+
+# Hook for demo platform configuration
+# ATM, only used to disable btwilink module on M3ULCB + Kingfisher by default,
+# setting DEMO_ENABLE_BTWILINK to "true" in local.conf / site.conf re-enables.
+DEMO_ENABLE_BTWILINK ?= ""
+DEMO_PLATFORM_CONF = ""
+DEMO_PLATFORM_CONF_append_m3ulcb = "${@bb.utils.contains("DEMO_ENABLE_BTWILINK", "true", "", " btwilink-disable-conf", d)}"
+