Write configuration marker files for cache invalidation. Args: only_missing: If True, only write markers that don't exist yet (migration path). If False, write all markers unconditionally (after meson setup). verb: Display verb for log messages ("Saved" or
(
*,
build_mode_marker: Path,
build_mode: str,
thin_archive_marker: Path,
use_thin_archives: bool,
debug_marker: Path,
debug: bool,
check_marker: Path,
check: bool,
source_files_marker: Path,
current_source_hash: str,
current_source_files: list[str],
src_files_marker: Path,
current_src_hash: str,
test_files_marker: Path,
current_test_hash: str,
compiler_version_marker: Path,
current_compiler_version: str,
zccache_version_marker: Optional[Path] = None,
current_zccache_version: Optional[str] = None,
enable_examples_marker: Optional[Path] = None,
enable_examples: Optional[bool] = None,
enable_unit_tests_marker: Optional[Path] = None,
enable_unit_tests: Optional[bool] = None,
only_missing: bool = False,
verb: str = "Saved",
)
| 66 | |
| 67 | |
| 68 | def _write_configuration_markers( |
| 69 | *, |
| 70 | build_mode_marker: Path, |
| 71 | build_mode: str, |
| 72 | thin_archive_marker: Path, |
| 73 | use_thin_archives: bool, |
| 74 | debug_marker: Path, |
| 75 | debug: bool, |
| 76 | check_marker: Path, |
| 77 | check: bool, |
| 78 | source_files_marker: Path, |
| 79 | current_source_hash: str, |
| 80 | current_source_files: list[str], |
| 81 | src_files_marker: Path, |
| 82 | current_src_hash: str, |
| 83 | test_files_marker: Path, |
| 84 | current_test_hash: str, |
| 85 | compiler_version_marker: Path, |
| 86 | current_compiler_version: str, |
| 87 | zccache_version_marker: Optional[Path] = None, |
| 88 | current_zccache_version: Optional[str] = None, |
| 89 | enable_examples_marker: Optional[Path] = None, |
| 90 | enable_examples: Optional[bool] = None, |
| 91 | enable_unit_tests_marker: Optional[Path] = None, |
| 92 | enable_unit_tests: Optional[bool] = None, |
| 93 | only_missing: bool = False, |
| 94 | verb: str = "Saved", |
| 95 | ) -> None: |
| 96 | """Write configuration marker files for cache invalidation. |
| 97 | |
| 98 | Args: |
| 99 | only_missing: If True, only write markers that don't exist yet (migration path). |
| 100 | If False, write all markers unconditionally (after meson setup). |
| 101 | verb: Display verb for log messages ("Saved" or "Created"). |
| 102 | """ |
| 103 | markers: list[tuple[Path, str, str]] = [ |
| 104 | (build_mode_marker, build_mode, f"build_mode: {build_mode}"), |
| 105 | ( |
| 106 | thin_archive_marker, |
| 107 | str(use_thin_archives), |
| 108 | f"thin archive: {use_thin_archives}", |
| 109 | ), |
| 110 | (debug_marker, str(debug), f"debug: {debug}"), |
| 111 | (check_marker, str(check), f"check: {check}"), |
| 112 | ( |
| 113 | compiler_version_marker, |
| 114 | current_compiler_version, |
| 115 | f"compiler version: {current_compiler_version}", |
| 116 | ), |
| 117 | ] |
| 118 | |
| 119 | # Add optional zccache version marker |
| 120 | if zccache_version_marker is not None and current_zccache_version is not None: |
| 121 | markers.append( |
| 122 | ( |
| 123 | zccache_version_marker, |
| 124 | current_zccache_version, |
| 125 | f"zccache version: {current_zccache_version}", |
no test coverage detected