# RunCompareStep: implement new step · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/fd26c12469a3eda2c99cf58bf951b2223099b9ef)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: fd26c12469a3eda2c99cf58bf951b2223099b9ef

Requested commit: fd26c12469a3eda2c99cf58bf951b2223099b9ef

Commit: fd26c12469a3eda2c99cf58bf951b2223099b9ef

Tree: 3f0ce9d851c61395056e43564e75d59dfa3d4e9e

Author: Luuk de Gram

Committer: Luuk de Gram

## Message

```
RunCompareStep: implement new step

This creates a new step that can run foreign binaries when
emulation is enabled using options such as `enable_qemu`.
When an incompatible binary is found, the binary will not be executed.
This differs from `RunStep` which will always execute a binary,
regardless of the compatibility.

This is useful for usecases where the user wishes to allow for running the
binary on any supported platform either natively or through emulation,
but not generate an error when met with an incompatibility.
The above is useful when creating test cases that rely on running the binary
and optionally verifying its output.

The addition of this Step was generated by the need for our linker tests.
For that reason, a handy function was created on `CheckObjectStep` to ease
the setup for that.

```

## Parents

- [a8bfddfaeae4f48c044fd134aac1e977e6a161f8](https://git.cafe/gitcafe/zig/commit/a8bfddfaeae4f48c044fd134aac1e977e6a161f8?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/fd26c12469a3eda2c99cf58bf951b2223099b9ef?format=markdown)
