INNER CODE UNIT · Python
_validate_defines_content
evpo/EncryptPad · configure.py:244
def _validate_defines_content(defines):
for key, value in defines.items():
if not re.match('^[0-9A-Za-z_]{3,30}$', key):
raise InternalError('Module defines key has invalid format: "%s"' % key)
if not re.match('^[0-9]{8}$', value):
raise InternalError('Module defines value has invalid format: "%s"' % value)
def cross_check(self, arch_info, cc_info, all_os_features):
for feat in set(flatten([o.split(',') for o in self.os_features])):
if feat not in all_os_features:
logging.error("Module %s uses an OS feature (%s) which no OS supports", self.infofile, feat)
for supp_cc in self.cc:
if supp_cc not in cc_info:
colon_idx = supp_cc.find(':')
# a versioned compiler dependency
if colon_idx > 0 and supp_cc[0:colon_idx] in cc_info: