Import OEM build properties, if defined.
Certain products can define a list of system properties that should be delegated to the OEM. Since these properties may be ro.*, we give them first shot at defining. Also support blacklist of properties that should never be defined by build.prop, used to delegate to runtime fingerprint generation. Bug: 13367676 Change-Id: I3f00db732f485818205a7b76b31edbdc3a89aac0
This commit is contained in:
@@ -16,6 +16,9 @@
|
||||
|
||||
import sys
|
||||
|
||||
# Usage: post_process_props.py file.prop [blacklist_key, ...]
|
||||
# Blacklisted keys are removed from the property file, if present
|
||||
|
||||
# See PROP_VALUE_MAX system_properties.h.
|
||||
# PROP_VALUE_MAX in system_properties.h includes the termination NUL,
|
||||
# so we decrease it by 1 here.
|
||||
@@ -101,6 +104,10 @@ class PropFile:
|
||||
return
|
||||
self.lines.append(key + value)
|
||||
|
||||
def delete(self, name):
|
||||
key = name + "="
|
||||
self.lines = [ line for line in self.lines if not line.startswith(key) ]
|
||||
|
||||
def write(self, f):
|
||||
f.write("\n".join(self.lines))
|
||||
f.write("\n")
|
||||
@@ -124,6 +131,10 @@ def main(argv):
|
||||
if not validate(properties):
|
||||
sys.exit(1)
|
||||
|
||||
# Drop any blacklisted keys
|
||||
for key in argv[2:]:
|
||||
properties.delete(key)
|
||||
|
||||
f = open(filename, 'w+')
|
||||
properties.write(f)
|
||||
f.close()
|
||||
|
Reference in New Issue
Block a user