# resinator: Fix include directory detection when cross-compiling from certain host archs · gitcafe/zig

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

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

Visibility: public

Requested revision: 09f4e2d9d138d313b93ab10cbac1fee2a8f4e9f0

Requested commit: 09f4e2d9d138d313b93ab10cbac1fee2a8f4e9f0

Commit: 09f4e2d9d138d313b93ab10cbac1fee2a8f4e9f0

Tree: d7196125040c837e81959d4af2b7c375e74ec148

Author: Ryan Liptak

Committer: Ryan Liptak

## Message

```
resinator: Fix include directory detection when cross-compiling from certain host archs

Previously, resinator would use the host arch as the target arch when looking for windows-gnu include directories. However, Zig only thinks it can provide a libc for targets specified in the `std.zig.target.available_libcs` array, which only includes a few for windows-gnu. Therefore, when cross-compiling from a host architecture that doesn't have a windows-gnu target in the available_libcs list, resinator would fail to detect the MinGW include directories.

Now, the custom option `/:target` is passed to `zig rc` which is intended for the COFF object file target, but can be re-used for the include directory target as well. For the include directory target, resinator will convert the MachineType to the relevant arch, or fail if there is no  equivalent arch/no support for detecting the includes for the MachineType (currently 64-bit Itanium and EBC).

Fixes the `windows_resources` standalone test failing when the host is, for example, `riscv64-linux`.

```

## Parents

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

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