-
Notifications
You must be signed in to change notification settings - Fork 6.6k
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
[spglib] Add a new port #39493
[spglib] Add a new port #39493
Conversation
Regarding "Contribution License Agreement" I am unclear on what is being targeted there? Is it solely the commits on this repo, or are they referring to the package's source code being packaged? |
44f0246
to
da4de0e
Compare
I am not a lawyer but my understanding is that it applies to your contributions to the repo. Please feel free to click 'ready for review' if you accept the CLA and fix build failures. |
@microsoft-github-policy-service agree |
64ef927
to
5b6013d
Compare
e92dcee
to
eae8651
Compare
usage:
When testing usage, the following error occurs:
test.cpp#include <iostream> #include "spglib.h" CMakeLists.txtcmake_minimum_required (VERSION 3.8) |
Modern CMake design is to use Regarding fortran. This is disabled, you should only link to |
32c55b3
to
d85e36a
Compare
The usage test passed on
|
Did you copy the whole block literally to |
Yes, I tested the following two ways separately:
|
Should I separate the blocks a bit there, maybe like:
I believe this point is valuable to document because not all projects are |
Your FetchContent implementation may be excellent, but that approach really doesn't integrate well with vcpkg's effort to control version, configuration and ABI. Simply remove the section which is unrelated to the vcpgk port. |
Signed-off-by: Cristian Le <[email protected]>
What I am trying to say is that it does integrate. I encourage you to try it out, particularly see the instructions here and look at the build directory and the presence/absence of |
It integrate well with CMake but not with vcpkg IMO. vcpkg makes an installation plan for installing dependencies for the top-level manifest (or command line), considering triplets, features, registries, overlay ports, version constraints. This determines which "spglib" to use. If the user project chooses, or falls back to, FetchContent, it is likely to result in another version and configuration than the one used by ports, and other than defined in the top-level manifest. The result may fail at build time or at runtime, in obvious or subtle ways. |
Setting |
find_package
calls are REQUIRED, are satisfied byvcpkg.json
's declared dependencies, or disabled with CMAKE_DISABLE_FIND_PACKAGE_Xxx.vcpkg.json
matches what upstream says.vcpkg.json
matches what upstream says../vcpkg x-add-version --all
and committing the result.This is the first time researching vcpkg packaging, I would appreciate any feedback and suggestions that would need to be upstreamed. I do not have a vcpkg setup so I am relying a bit on the CI system. If there is some setup for packagers either for CI/CD in upstream or containerfiles setup, it would help immensely.