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

Add dependency manager #795

Open
artiomn opened this issue Jul 17, 2024 · 9 comments
Open

Add dependency manager #795

artiomn opened this issue Jul 17, 2024 · 9 comments

Comments

@artiomn
Copy link
Contributor

artiomn commented Jul 17, 2024

Currently only SIMDJSON is used as a submodule. But in the future there may be other dependencies (for example, a third-party HTTP server or exclude getopt from the codebase).
Submodules are very inconvenient, not very effective, and tie the project to a version control system, which should not be the case.

Probably better solution will be use dependency manager. CPM is lightweight and written in pure CMake.

@rdementi
Copy link
Contributor

rdementi commented Jul 19, 2024

a good idea. Will try it when we will have more dependencies to justify it and improve ROI

@artiomn
Copy link
Contributor Author

artiomn commented Jul 19, 2024

Besides CPM, there are Hunter and Conan.io .
But Conan.io in my opinion is not very convenient.
I didn't use Hunter, probably it's more flexible than CPM, but CPM written in pure CMake and mostly satisfies my requirements.

@artiomn
Copy link
Contributor Author

artiomn commented Jul 31, 2024

@rdementi, @opcm, which would you prefer to use?

@artiomn
Copy link
Contributor Author

artiomn commented Jul 31, 2024

I can try to integrate CPM, if you want.

@ogbrugge-work
Copy link
Contributor

@artiomn rdementi is supposed to be on vacation this week, don't make him work so hard ;-)

@artiomn
Copy link
Contributor Author

artiomn commented Aug 2, 2024

@artiomn rdementi is supposed to be on vacation this week, don't make him work so hard ;-)

Ok, I'm waiting. :-)

@rdementi
Copy link
Contributor

rdementi commented Aug 8, 2024

Thanks for volunteering!

I discussed it with @twillhal . Adding cmake/CPM.cmake would potentially require an internal review and approval. We will do it but unfortunately I can't give a timeline.

@artiomn
Copy link
Contributor Author

artiomn commented Aug 12, 2024

I can do this, if you approve this change.

@rdementi
Copy link
Contributor

rdementi commented Sep 16, 2024

adding CPM.cmake has been approved. It is now in the master branch: https://github.com/intel/pcm/blob/master/cmake/CPM.cmake

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

No branches or pull requests

3 participants