Skip to content

test(kpm): verify macOS integration tests + examples build with ffi-backend after #117 #119

@kalwalt

Description

@kalwalt

Status

Verify and close. This issue captures an open question, not a confirmed bug.

Background

During PR #117 work, the macOS CI runner produced linker errors when building integration tests (tests/nft_pipeline) and the generate_patt example with the FFI backend enabled:

```
clang: error: linker command failed with exit code 1
```

The specific note shown was `ld: library 'stdc++' not found` — caused by `build.rs` unconditionally linking `libstdc++` on all non-MSVC targets, but macOS uses LLVM's `libc++`.

PR #117 (commit `92b2f82`) fixed `build.rs` to select the platform-appropriate C++ stdlib:
```rust
if target.contains("apple") {
println!("cargo:rustc-link-lib=c++");
} else {
println!("cargo:rustc-link-lib=stdc++");
}
```

What's unverified

After the libc++ fix, the dual-mode CI step in #117 was scoped to `--lib` so we never re-ran integration tests / example builds on macOS. They might:

  • (a) Now build and pass — the libc++ fix was sufficient
  • (b) Still fail with a different error — there's a separate macOS-specific issue underneath

Suggested verification

On a macOS runner (or local M-series Mac):

```bash

Integration test builds + runs

cargo test -p webarkitlib-rs --test nft_pipeline --features ffi-backend
cargo test -p webarkitlib-rs --test kpm_regression --features ffi-backend

Example build

cargo build --example generate_patt --features ffi-backend
```

Resolution

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions