-
Notifications
You must be signed in to change notification settings - Fork 6
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
CMake support #15
base: master
Are you sure you want to change the base?
CMake support #15
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wow, looks amazing. Thanks!
I know CMake is extremely popular and I am thankful for this contribution.
However, there is also a partial commitment here. I know nothing of CMake. I use it by necessity only but I am much more comfortable with the original GNU Make.
I am not sure I will be able to maintain the CMake support. I hope you will be able to help with this if this breaks in the future. Even if not, I am thankful.
Having said that, please see my comments and see what can be done.
6878501
to
ee4ca95
Compare
Nice! include(FetchContent)
find_package(facil.io 0.8.0)
if (NOT facil.io_FOUND)
FetchContent_Declare(facil.io GIT_REPOSITORY https://github.com/facil-io/cstl.git
GIT_TAG master)
FetchContent_GetProperties(facil.io)
FetchContent_MakeAvailable(facil.io)
endif()
add_executable(myserver src/main.c)
target_link_libraries(myserver PRIVATE facil.io::facil.io) |
05d27aa
to
b219e44
Compare
I left a bunch of drive-by comments. I don't know if that's annoying, or helpful, or perhaps a bit of both. :-) I see some other potential improvements. If the comments are more helpful than annoying, let me know and I'll take a closer look. Btw, just to be clear: I'm knowledgeable about CMake, but I'm certainly not an expert. |
No worries! Also, I'm no expert. But thank you for your suggestions. |
What I'd suggest, if you're interested, is that we talk some things through first. I was leaving comments as I was reading from top to bottom; I have more, and continuing to leave them one by one might really tip the scales from "helpful" to "annoying." If that makes sense, email might be better, to reduce noise here? But I'm OK either way. I really am only a day into looking at this, so a question for @boazsegev: my impression, given the compile-time configurability, is that this is really meant to be a compile-time library. Am I off the mark? Also, what's the correct name for this project — |
For Windows need fix
|
Hi @michaellenaghan , Thanks for the comments and the questions.
In general, the CSTL is a header library that has a lot of compile time options and a nice toolset for creating commonly used types and containers... ... but there's also a bunch of sane defaults that allow the use of the compiled
The compiled library is the facil.io framework (I would call it The facil.io is the website, that's where the v.0.8.x will go. |
43af317
to
54e3a88
Compare
Hi @boazsegev , |
The Windows issue will need to refactor the code before we can proceed. |
6bb41f2
to
2a80f6c
Compare
@boazsegev, I have removed Windows tests on CI. |
Hi @boazsegev ,
Build library with options to build tests and examples.
Need improvement yet to build all examples and tests.
Msys2/clang64, has patchwork block.
see: https://github.com/kassane/cstl/actions/runs/6139216577/job/16656901085#step:5:75