Apparently this is the last consumer of llvm/17 and it doesn't seem to
need it. On amd64 all tests pass with the diff below, the same test
fails on aarch64 with llvm 17 and llvm 18, so I don't think this is
a blocker.
Not sure if this change requires a test build of one of the chromiums.
I don't currently have access to a beefy enough machine to do this myself.
test test_wrap_static_fns ... FAILED
failures:
---- test_wrap_static_fns stdout ----
In path is ::: tests/expectations/tests/generated/wrap_static_fns
Out path is :::
/usr/ports/pobj/rust-bindgen-0.69.4/build-aarch64/target/release/build/bindgen-tests-7829d1aaa511ddb4/out/wrap_static_fns
thread 'test_wrap_static_fns' panicked at bindgen-tests/tests/tests.rs:660:10:
Failed to generate bindings: Codegen(Serialize { msg: "Cannot serialize type
kind Opaque", loc: "tests/headers/wrap-static-fns.h:63:56" })
stack backtrace:
0: 0x1247cb1210 -
<std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as
core::fmt::Display>::fmt::hf547466864cc70c9
1: 0x1247cee7dc - core::fmt::write::hcaa7796db5aa9bca
2: 0x1247cd28cc - std::io::Write::write_fmt::h1633e398a9373372
3: 0x1247cb1104 -
std::sys::backtrace::BacktraceLock::print::h4106fc81705c7a8d
4: 0x1247cc1744 -
std::panicking::default_hook::{{closure}}::h8f52df955cd8c13b
5: 0x1247cc1544 - std::panicking::default_hook::haf911d019667e488
6: 0x12479e3d50 - test::test_main::{{closure}}::h3f7dfbefc34e5786
7: 0x1247cc1d70 -
std::panicking::rust_panic_with_hook::h32488bea288c74dc
8: 0x1247cb164c -
std::panicking::begin_panic_handler::{{closure}}::h73a4b59a6837c893
9: 0x1247cb1474 -
std::sys::backtrace::__rust_end_short_backtrace::hf629708e8567acf5
10: 0x1247cc185c - rust_begin_unwind
11: 0x1247cf3ca4 - core::panicking::panic_fmt::h09632188a6b3ef41
12: 0x1247cf3ffc - core::result::unwrap_failed::h508c56a2a722bd66
13: 0x1247934278 -
core::ops::function::FnOnce::call_once::h88f52abb689a8bb9
14: 0x12479e87bc - test::__rust_begin_short_backtrace::ha01923d4b9b30ebc
15: 0x12479e894c - test::run_test_in_process::h290566f3ab970e06
16: 0x1247a0d560 -
std::sys::backtrace::__rust_begin_short_backtrace::hf25750de98ba0394
17: 0x12479f0d88 -
core::ops::function::FnOnce::call_once{{vtable.shim}}::h62ac8f60fa927bb5
18: 0x1247cb9004 -
std::sys::pal::unix::thread::Thread::new::thread_start::h7e62f47629a3a067
19: 0x165f2c8eb0 - _rthread_start
at /usr/src/lib/librthread/rthread.c:96:11
20: 0x16bf216864 - __tfork_thread
at
/usr/src/lib/libc/arch/aarch64/sys/tfork_thread.S:43
Here's the diff. And yes, it needs to be MAKE_ENV, not TEST_ENV.
Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/rust-bindgen/Makefile,v
diff -u -p -r1.1.1.1 Makefile
--- Makefile 13 Jun 2024 16:07:42 -0000 1.1.1.1
+++ Makefile 18 Feb 2025 07:10:07 -0000
@@ -3,6 +3,7 @@ COMMENT = automatically generates Rust F
GH_ACCOUNT = rust-lang
GH_PROJECT = rust-bindgen
GH_TAGNAME = v0.69.4
+REVISION = 0
CATEGORIES = devel
@@ -20,10 +21,10 @@ MODCARGO_INSTALL_TARGET_PATHS = bindgen-
CONFIGURE_STYLE = cargo
SEPARATE_BUILD = Yes
-TEST_DEPENDS += devel/llvm/17
+TEST_DEPENDS += devel/llvm/18
# for tests
-MAKE_ENV += LIBCLANG_PATH=${LOCALBASE}/llvm17/lib
+MAKE_ENV += LIBCLANG_PATH=${LOCALBASE}/llvm18/lib
post-install:
mv ${PREFIX}/bin/bindgen ${PREFIX}/libexec/rust-bindgen