|
20 | 20 |
|
21 | 21 | ROOT = Path(__file__).resolve().parents[1] |
22 | 22 | INVENTORY = ROOT / 'test/conformance/http3/full-gates.json' |
| 23 | +# Generated Makefiles need GNU make; FreeBSD's default `make` is BSD |
| 24 | +# make, so prefer gmake where it exists and fall back to `make`. |
| 25 | +MAKE = shutil.which('gmake') or 'make' |
23 | 26 | OFF_SUITES = '''http3_frame http3_settings http3_connection http3_headers http3_exchange |
24 | 27 | http3_streaming http3_cancellation http3_qpack http3_qpack_scheduling http3_drain |
25 | 28 | http3_fuzz_replay qpack_primitives qpack_field_section qpack_dynamic_table |
@@ -374,10 +377,10 @@ def build_configuration(build, tls, sanitized): |
374 | 377 |
|
375 | 378 | def native_stage(build, suites, directory, fixtures=False): |
376 | 379 | directory.mkdir(mode=0o700) |
377 | | - commands = [checked(['make', '-j4', '-C', build / 'src'], ROOT, directory / 'build')] |
| 380 | + commands = [checked([MAKE, '-j4', '-C', build / 'src'], ROOT, directory / 'build')] |
378 | 381 | targets = suites + (['http3_udp_fixture', 'http3_semantic_parity_fixture', 'quic_interop_endpoint'] if fixtures else []) |
379 | 382 | selection = [name + '=' + ' '.join(targets) for name in ('TESTS', 'check_PROGRAMS', 'noinst_PROGRAMS')] |
380 | | - commands.append(checked(['make', '-j4', '-C', build / 'test', *selection, *targets], ROOT, directory / 'test-build')) |
| 383 | + commands.append(checked([MAKE, '-j4', '-C', build / 'test', *selection, *targets], ROOT, directory / 'test-build')) |
381 | 384 | results = run_native_suites(build, suites, directory / 'tests') |
382 | 385 | results['commands'] = commands |
383 | 386 | tls = '#define NATIVE_V3_TLS' in (build / 'config.h').read_text() |
|
0 commit comments