Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support x86 PerformanceAPI #19

Merged
merged 4 commits into from
Oct 26, 2023
Merged

Conversation

PaulDance
Copy link
Contributor

Dear maintainers,

The current version of the -sys crate does not allow for linking against the x86 variant of the underlying PerformanceAPI. It would be useful though, as it is an officially-supported target architecture.

This PR therefore adds it by doing the following:

  • Checked that the headers did not need an update: nothing changed since the last one.
  • Update the x64 library files.
  • Add the x86 library files.
  • Add support for linking against these in the build script.
  • Check that everything compiles under both i686-pc-windows-msvc and x86_64-pc-windows-msvc.
  • Run both the example and the tests compiled for i686-pc-windows-msvc under an x86_64 Windows machine successfully.
  • Add partial CI support for the new x86 target. It remains to see if that works.

I am aware that GitHub Actions do not offer means to select any other architecture than x86_64, therefore meaning that this new support would not be fully tested. I included some on a best-effort basis however.

Cheers,
Paul.

Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
@PaulDance PaulDance requested a review from repi as a code owner October 23, 2023 12:11
@repi
Copy link
Contributor

repi commented Oct 23, 2023

thanks, out of curiosity what type of application is it you need i686-pc-windows-msvc for?

in general we don't support that in our crates as don't have any end users using 32-bit Windows as at least for games we've built haven't supported 32-bit for the last 13 years or so

@PaulDance
Copy link
Contributor Author

This is for a security product. Sadly, clients often run some really old systems. Supporting them is therefore important to us.

@repi
Copy link
Contributor

repi commented Oct 23, 2023

ah that makes sense, will take a look at the PR, doesn't seem it should be too hard to maintain support in for this crate

Copy link
Contributor

@repi repi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

verified the prebuilt binaries are identical to the ones Superluminal distribute in latest stable version. let's merge this!

@repi repi merged commit 27df772 into EmbarkStudios:main Oct 26, 2023
8 checks passed
@PaulDance
Copy link
Contributor Author

Thanks!
❤️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants