ladybird/Meta
Andreas Kling c167bfd50a Meta: Make Rust FFI headers reproducible
Teach import_rust_crate() to track RustFFI.h as a real build output,
and teach the relevant Rust build scripts to rerun when their FFI
inputs change.

Also keep a copy of RustFFI.h in Cargo's own OUT_DIR and restore the
configured FFI output from that cached copy after cargo rustc runs.
This fixes the case where Ninja knows the header is missing, reruns
the custom command, and Cargo exits without rerunning build.rs
because the crate itself is already up to date.

When Cargo leaves multiple hashed build-script outputs behind, pick
the newest root-output before restoring RustFFI.h so we do not copy a
stale header after Rust-side API changes.

Finally, track the remaining Rust-side inputs that could leave build
artifacts stale: LibUnicode and LibJS now rerun build.rs when src/
changes, and the asmintgen rule now depends on Cargo.lock, the
BytecodeDef path dependency, and newly added Rust source files.
2026-03-31 15:59:04 +02:00
..
CMake Meta: Make Rust FFI headers reproducible 2026-03-31 15:59:04 +02:00
gn Everywhere: Abandon Swift adoption 2026-02-17 10:48:09 -05:00
Lagom LibWeb: Only allow ASFs in descriptor values if explicitly supported 2026-03-30 19:57:36 +01:00
check-debug-flags.sh Meta: Make check-debug-flags.sh runnable in Bash 3.2 2024-07-16 09:13:14 -06:00
check-flatpak.py Meta: Add missing vcpkg pinned versions 2026-02-23 18:30:40 +01:00
check-html-doctype.py Meta: Enforce doctypes on layout tests 2025-06-21 22:58:01 +02:00
check-idl-files.py Meta: Ensure that idl files link to draft specs 2026-03-25 16:02:04 +00:00
check-newlines-at-eof.py Everywhere: Abandon Swift adoption 2026-02-17 10:48:09 -05:00
check-png-sizes.sh Meta: Check PNG files in parallel and report paths 2026-02-23 13:45:04 +01:00
check-style.py Meta: Add 'present' to check style copyright regex and skip .rs files 2026-02-24 16:35:51 +01:00
configure-clangd.sh Meta: Fix build type assignment in clangd configuration script 2026-03-22 20:12:32 +01:00
debug.plist CMake: Add a command for codesigning with the get-task-allow entitlement 2024-07-02 16:57:51 -06:00
embed_as_string.py Meta: Always use UTF-8 encoding in embed_as_string.py 2026-02-23 11:21:09 +00:00
find_compiler.py Meta: Disallow using Homebrew's LLVM 21 on macOS for now 2026-02-19 09:32:12 +01:00
find_compiler.sh Meta: Migrate find_compiler.sh logic to a python script 2025-05-29 16:24:17 -04:00
gc-heap-explorer.html Meta: Simplify GC heap explorer's class list rendering 2026-03-01 21:50:51 +01:00
generate-dom-tree.py Meta+LibWeb: Use a code generator to create the media controls' DOM 2026-03-05 02:28:47 -06:00
generate-libjs-bytecode-def-derived.py LibJS: Improve bytecode executable dump format 2026-03-20 00:51:23 -05:00
generate-libwasm-spec-test.py Meta: Generate Wasm tests using wasm-tools instead of wabt 2025-12-12 19:12:53 +01:00
generate-libwasm-spec-test.sh Meta: Run the Wasm spec tests in CI 2021-05-27 17:28:41 +04:30
generate_encoding_indexes.py Meta: Build failure on Python 3.15 2026-02-01 11:53:16 +01:00
generate_public_suffix_data.py Meta: Build failure on Python 3.15 2026-02-01 11:53:16 +01:00
host_platform.py Meta: Do not run platform.libc_ver() on Windows 2026-01-07 16:16:40 -05:00
import-v8-regexp-tests.py Tests: Import V8 and WebKit regexp suites 2026-03-27 17:32:19 +01:00
import-webkit-regexp-tests.py Tests: Import V8 and WebKit regexp suites 2026-03-27 17:32:19 +01:00
import-wpt-test.py Meta+test-web: Support per-test .headers files 2026-02-19 14:58:09 +01:00
ladybird.py Everywhere: Abandon Swift adoption 2026-02-17 10:48:09 -05:00
libjs_bytecode_def.py LibJS: Generate C++ bytecode instruction classes from a definition file 2025-11-21 09:46:03 +01:00
lint-ci.sh Meta: Remove git diff check from cargo linters 2026-03-11 16:57:09 -04:00
lint-clang-format.py Meta: Switch to clang-format-21 as the standard formatter 2026-02-18 08:02:45 -05:00
lint-commit.sh Meta: Allow a couple of extra characters in long URLs in commit messages 2026-01-10 20:25:16 +01:00
lint-executable-resources.sh Tests: Prevent executable images or html files during lint 2024-10-25 09:00:52 +02:00
lint-gn.sh Meta: Make gn linter actually fail 2025-03-07 09:44:42 +01:00
lint-prettier.sh Meta+LibJS: Upgrade to prettier version 3.3.3 2024-11-06 15:10:27 -05:00
lint-python.sh Meta+CI: Enforce python linting with ruff 2025-06-09 11:25:14 -04:00
lint-shell-scripts.sh Meta: Make all pre-commit CI scripts work with Bash 3.2 2024-07-16 08:56:22 -06:00
refresh-ladybird-qtcreator.sh Meta: Add generated cpp-files to QtCreator project 2026-02-23 13:10:03 +01:00
shell_include.sh Meta: Remove unused function check_program_version_at_least 2025-12-01 13:02:53 +01:00
utils.py Meta: Add optional cwd argument to run_command helper 2025-06-11 11:54:52 -06:00
wasm_unimplemented_tests.txt LibWasm: Validate struct types and type section 2026-02-10 13:00:16 +01:00
watch_wpt_progress.sh Meta: Make WPT.sh run nproc/2 testrunners in parallel 2025-05-07 15:48:21 +01:00
wpt-bisect-helper.sh Meta: Add WPT.sh bisect for finding WPT regressions automatically 2025-07-17 10:51:12 +02:00
WPT.sh LibWeb+LibWebView+Services: Add a flag to enable experimental interfaces 2026-02-17 22:17:50 +01:00