Some properties are set as optional

Some properties that are designed to provide a safe default value are
explicitly set as optional using the 'a ?= b' syntax.

Bug: 117892318
Bug: 158735147
Test: m

Exempt-From-Owner-Approval: cherry-pick from master

Merged-In: Ie6a50ab7e0bcb210e282bc18e8c1daf412903f90
(cherry picked from commit dfb3937ce48009676f2ef62278393c934079c60b)
Change-Id: Ie6a50ab7e0bcb210e282bc18e8c1daf412903f90
diff --git a/target/product/aosp_product.mk b/target/product/aosp_product.mk
index f22c3a3..a3da1c9 100644
--- a/target/product/aosp_product.mk
+++ b/target/product/aosp_product.mk
@@ -23,9 +23,9 @@
 
 # Additional settings used in all AOSP builds
 PRODUCT_PRODUCT_PROPERTIES += \
-    ro.config.ringtone=Ring_Synth_04.ogg \
-    ro.config.notification_sound=pixiedust.ogg \
-    ro.com.android.dataroaming=true \
+    ro.config.ringtone?=Ring_Synth_04.ogg \
+    ro.config.notification_sound?=pixiedust.ogg \
+    ro.com.android.dataroaming?=true \
 
 # More AOSP packages
 PRODUCT_PACKAGES += \
diff --git a/target/product/full_base.mk b/target/product/full_base.mk
index dfb2204..64f61ff 100644
--- a/target/product/full_base.mk
+++ b/target/product/full_base.mk
@@ -43,8 +43,8 @@
 
 # Additional settings used in all AOSP builds
 PRODUCT_VENDOR_PROPERTIES := \
-    ro.config.ringtone=Ring_Synth_04.ogg \
-    ro.config.notification_sound=pixiedust.ogg
+    ro.config.ringtone?=Ring_Synth_04.ogg \
+    ro.config.notification_sound?=pixiedust.ogg
 
 # Put en_US first in the list, so make it default.
 PRODUCT_LOCALES := en_US
diff --git a/target/product/full_base_telephony.mk b/target/product/full_base_telephony.mk
index 5e18c05..d8a54cd 100644
--- a/target/product/full_base_telephony.mk
+++ b/target/product/full_base_telephony.mk
@@ -20,8 +20,8 @@
 # entirely appropriate to inherit from for on-device configurations.
 
 PRODUCT_VENDOR_PROPERTIES := \
-    keyguard.no_require_sim=true \
-    ro.com.android.dataroaming=true
+    keyguard.no_require_sim?=true \
+    ro.com.android.dataroaming?=true
 
 PRODUCT_COPY_FILES := \
     device/sample/etc/apns-full-conf.xml:system/etc/apns-conf.xml \
diff --git a/target/product/handheld_system.mk b/target/product/handheld_system.mk
index 22c817e..e2c91b6 100644
--- a/target/product/handheld_system.mk
+++ b/target/product/handheld_system.mk
@@ -84,6 +84,6 @@
     frameworks/av/media/libeffects/data/audio_effects.conf:system/etc/audio_effects.conf
 
 PRODUCT_VENDOR_PROPERTIES += \
-    ro.carrier=unknown \
-    ro.config.notification_sound=OnTheHunt.ogg \
-    ro.config.alarm_alert=Alarm_Classic.ogg
+    ro.carrier?=unknown \
+    ro.config.notification_sound?=OnTheHunt.ogg \
+    ro.config.alarm_alert?=Alarm_Classic.ogg
diff --git a/target/product/media_system.mk b/target/product/media_system.mk
index a3fafb3..7a2dd73 100644
--- a/target/product/media_system.mk
+++ b/target/product/media_system.mk
@@ -74,7 +74,7 @@
 # On userdebug builds, collect more tombstones by default.
 ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
 PRODUCT_VENDOR_PROPERTIES += \
-    tombstoned.max_tombstone_count=50
+    tombstoned.max_tombstone_count?=50
 endif
 
 PRODUCT_VENDOR_PROPERTIES += \