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

Figure out if we should remove CMake #164

Open
Martinsos opened this issue Oct 10, 2020 · 7 comments
Open

Figure out if we should remove CMake #164

Martinsos opened this issue Oct 10, 2020 · 7 comments

Comments

@Martinsos
Copy link
Owner

With Meson, we don't need CMake. However, it might be useful to have it, so people can more easily use Edlib in their CMake projects. On the other hand, that means we have to maintain it which is not great. So what do we do? I would gladly drop it, but I don't know what effect would it have on Edlib users.

This has been discussed here: #161 (comment) .

@ekg
Copy link

ekg commented Oct 10, 2020

I've found CMake useful. It is another thing to maintain, but it will help others who aren't using meson.

@cjw85
Copy link
Contributor

cjw85 commented Oct 11, 2020

For my money it should be kept. I'm unconvinced that meson is as popular as it's proponents sometimes claim, and or better or worse cmake is more the entrenched standard. (I just did a quick search for stats but couldn't find any).

@cjw85
Copy link
Contributor

cjw85 commented Oct 11, 2020

Not the most scientific experiment but grepping through bioconda recipes their are 497 occurences of "cmake" and only 31 of "meson". The meson hits appear to be exclusively PacBio related software.

@Martinsos
Copy link
Owner Author

Martinsos commented Oct 11, 2020

@ekg and @cjw85 thanks for pitching in!
What have you found CMake useful regarding, would you mind elaborating in more details? I am asking because I am wondering if Meson could easily replace that use case or not. CMake is certainly much more used than Meson, but Meson seems to be much easier to maintain / read. Is it adding Edlib to other CMake projects? While I actually don't understand all of the context well, from what I understood this can also be done via pkg-config, which Meson generates -> is that much harder?

@ekg
Copy link

ekg commented Oct 12, 2020 via email

@cjw85
Copy link
Contributor

cjw85 commented Oct 12, 2020

I'd echo Erik's comments, other than not being surprised about not running into meson: I'm not surprised because its simply not widely used (as far as I can tell, the only other time I've come across it was this PR). Maybe Erik's surprise is based on it appearing nicer to use and why aren't we all using it?

Because of this unfamiliarity I can't really comment on how meson interacts with other projects using other build systems.

I should be clear I'm not saying "don't use meson", I'm all for breaking the mould of entrenched standards; but I do think it would be a mistake to drop CMake, or at least not include in your README how to use edlib within projects using CMake (you already have some great docs there).

@Martinsos
Copy link
Owner Author

@ekg wow that is some interesting kind of workday, when you build couple of new pieces of C/C++ code every day!!

@ekg and @cjw85 I get what you are saying. On one hand I would like to drop CMake and go just with Meson because it seems easier to maintain. On the other hand, I don't want to make it harder for people to use Edlib and fact is, CMake is the dominant solution and having CMake in Edlib enables easy integration. Solution could be what @cjw85 mentioned: If I could provide easy way for CMake users to plug in Edlib built with Meson, then they would not loose anything. Good docs might be enough for this, however right now I also don't know enough I would have to research it, so for now I will certainly leave CMake.

@ekg when you said you included edlib in other CMake-based projects and it's easy to do -> how do you do it? Is it as described in Edlib docs, or smth different?

What about plugging edlib in Cmake project via pkg-config, is that something you would be comfortable with / have ever done?

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

No branches or pull requests

3 participants