Skip to content

[syscalls-cpp] Add new port #45996

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

Merged
merged 13 commits into from
Jun 18, 2025
Merged

Conversation

sapdragon
Copy link
Contributor

@sapdragon sapdragon commented Jun 14, 2025

This PR adds a new port for syscalls-cpp, a header-only C++ library for making direct syscalls on Windows x64. It uses a policy-based design for flexibility in memory allocation, stub generation, and syscall parsing.

  • Changes comply with the maintainer guide.
  • The name of the port matches an existing name for this component on https://repology.org/ if possible, and/or is strongly associated with that component on search engines. (N/A, new library)
  • Optional dependencies are resolved in exactly one way. For example, if the component is built with CMake, all find_package calls are REQUIRED, are satisfied by vcpkg.json's declared dependencies, or disabled with CMAKE_DISABLE_FIND_PACKAGE_Xxx. (N/A, no dependencies)
  • The versioning scheme in vcpkg.json matches what upstream says.
  • The license declaration in vcpkg.json matches what upstream says.
  • The installed as the "copyright" file matches what upstream says.
  • The source code of the component installed comes from an authoritative source.
  • The generated "usage text" is accurate. See adding-usage for context.
  • The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
  • Only one version is in the new port's versions file.
  • Only one version is added to each modified port's versions file.

@sapdragon
Copy link
Contributor Author

sapdragon commented Jun 14, 2025

@sapdragon please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.

@microsoft-github-policy-service agree [company="{your company}"]

Options:

  • (default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.
@microsoft-github-policy-service agree
  • (when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.
@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree

@LilyWangLL LilyWangLL added the category:new-port The issue is requesting a new library to be added; consider making a PR! label Jun 16, 2025
Copy link
Member

@BillyONeal BillyONeal left a comment

Choose a reason for hiding this comment

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

This appears to take names which are likely to conflict with other packages or users, like <crt.h> or <hash.h>. Can they be installed into a subdirectory instead?

@sapdragon
Copy link
Contributor Author

yes, the current version supports x86, I'll pull the port now and fix the file name collision

@sapdragon
Copy link
Contributor Author

@BillyONeal everything normal now

@LilyWangLL
Copy link
Contributor

Usage passed on x64-windows.

Copy link
Member

@BillyONeal BillyONeal left a comment

Choose a reason for hiding this comment

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

I agree with @LilyWangLL

@sapdragon
Copy link
Contributor Author

the tests failed even though nothing related to hashes was touched?

@sapdragon
Copy link
Contributor Author

fixed @BillyONeal

@BillyONeal BillyONeal changed the title [syscalls-cpp] Add new port at version 1.0.1 [syscalls-cpp] Add new port Jun 17, 2025
@BillyONeal BillyONeal requested a review from LilyWangLL June 17, 2025 22:31
@BillyONeal
Copy link
Member

@LilyWangLL Can you look at this again?

@LilyWangLL LilyWangLL added the info:reviewed Pull Request changes follow basic guidelines label Jun 18, 2025
@BillyONeal BillyONeal merged commit 4fc5d02 into microsoft:master Jun 18, 2025
18 checks passed
@BillyONeal
Copy link
Member

@sapdragon Thanks for the port! @LilyWangLL Thanks for the review!

talregev pushed a commit to talregev/vcpkg that referenced this pull request Aug 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:new-port The issue is requesting a new library to be added; consider making a PR! info:reviewed Pull Request changes follow basic guidelines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants