Lines Matching +full:runs +full:- +full:on
4 # SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
14 Then, test domains (groups of jobs, tests) are built based on predefined data
16 - domain name, can be used to run only specific tests via command-line;
17 - configuration building method, described in detail below;
18 - list of symbols passed to the configuration building method;
19 - commands to be run on each job (only build, build and test, or any other custom);
20 - optional list of symbols to be excluded from testing.
24 - ComplementaryDomain - build a job for each passed symbol by disabling a single
27 - ExclusiveDomain - build a job where, for each passed symbol, only this particular
29 any non-standard symbols to set/unset in EXCLUSIVE_GROUPS. These are usually not
30 direct dependencies, but rather non-trivial results of other configs missing. Then
33 - MBEDTLS_SHA512_C job turns off all hashes except SHA512. MBEDTLS_SSL_COOKIE_C
35 This is not a dependency on SHA512_C, but a result of an exclusive domain
37 'MBEDTLS_SHA512_C': ['-MBEDTLS_SSL_COOKIE_C'],
39 - DualDomain - combination of the two above - both complementary and exclusive domain
57 import scripts_path # pylint: disable=unused-import
60 class Colors: # pylint: disable=too-few-public-methods
155 """A job builds the library in a specific configuration and runs some tests."""
162 After setting the configuration, the job runs the programs specified by
204 env['MBEDTLS_TEST_CONFIGURATION'] += '-' + self.name
271 'MBEDTLS_SHA512_C': ['-MBEDTLS_SSL_COOKIE_C',
272 '-MBEDTLS_SSL_TLS_C'],
273 'MBEDTLS_ECP_DP_CURVE448_ENABLED': ['-MBEDTLS_ECDSA_C',
274 '-MBEDTLS_ECDSA_DETERMINISTIC',
275 '-MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED',
276 '-MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED',
277 '-MBEDTLS_ECJPAKE_C',
278 '-MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED'],
279 'MBEDTLS_ECP_DP_CURVE25519_ENABLED': ['-MBEDTLS_ECDSA_C',
280 '-MBEDTLS_ECDSA_DETERMINISTIC',
281 '-MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED',
282 '-MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED',
283 '-MBEDTLS_ECJPAKE_C',
284 '-MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED'],
285 'MBEDTLS_ARIA_C': ['-MBEDTLS_CMAC_C'],
286 'MBEDTLS_CAMELLIA_C': ['-MBEDTLS_CMAC_C'],
287 'MBEDTLS_CHACHA20_C': ['-MBEDTLS_CMAC_C', '-MBEDTLS_CCM_C', '-MBEDTLS_GCM_C'],
288 'MBEDTLS_DES_C': ['-MBEDTLS_CCM_C',
289 '-MBEDTLS_GCM_C',
290 '-MBEDTLS_SSL_TICKET_C',
291 '-MBEDTLS_SSL_CONTEXT_SERIALIZATION'],
297 unset = dep.startswith('-')
302 """For every option turned off config_settings, also turn off what depends on it.
310 class BaseDomain: # pylint: disable=too-few-public-methods, unused-argument
316 class ExclusiveDomain(BaseDomain): # pylint: disable=too-few-public-methods
317 """A domain consisting of a set of conceptually-equivalent settings.
324 Each job runs the specified commands.
342 class ComplementaryDomain(BaseDomain): # pylint: disable=too-few-public-methods
343 """A domain consisting of a set of loosely-related settings.
351 Each job runs the specified commands."""
362 class DualDomain(ExclusiveDomain, ComplementaryDomain): # pylint: disable=too-few-public-methods
368 class CipherInfo: # pylint: disable=too-few-public-methods
372 with open('include/mbedtls/cipher.h', encoding="utf-8") as fh:
387 build_command = [options.make_command, 'CFLAGS=-Werror -O2']
391 hash_symbols = self.config_symbols_matching(r'MBEDTLS_(MD|RIPEMD|SHA)[0-9]+_C\Z')
396 # Find cipher IDs (block permutations and stream ciphers --- chaining
415 # across various modules, but it depends on either SHA256 or SHA512.
484 # Restore the configuration, except in stop-on-error mode if there
508 parser.add_argument('--color', metavar='WHEN',
511 parser.add_argument('-c', '--config', metavar='FILE',
514 parser.add_argument('-C', '--directory', metavar='DIR',
517 parser.add_argument('-k', '--keep-going',
520 parser.add_argument('-e', '--no-keep-going',
523 parser.add_argument('--list-jobs',
526 parser.add_argument('--list-domains',
529 parser.add_argument('--make-command', metavar='CMD',
532 parser.add_argument('--unset-use-psa',
552 except Exception: # pylint: disable=broad-except