-
Notifications
You must be signed in to change notification settings - Fork 38
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
Project dead? #136
Comments
You could say the project is dead - I wrote this as a student and haven’t used cmake a lot since working. I am sorry for not supporting it more. Personally I think there should be a standard build system for c++ and like it or not it has been cmake . But due to cmake being very lacking partially I developed this project . The idea for me was that cmake is a root dependency you could use a vanilla machine to install everything you need , from compiler of any language to 3rd party packages for compilation. Everything could bootstrap itself and this project supported some of these ideas. Anyway no more rants from me - and use this project if you find it useful:) |
Nothing to be sorry about. You made a great job we all appreciate. If it's ever used in any commercial project you should get rewarded.
Same here. I think CMake scripting isn't perfect, but that's what we have. I think in future it would be best if it's split into a frontend and a backend so front-end scripting language can be easily switched and upgraded. I learned recently, that CMake was builtin with simplicity in mind, so it doesn't use any sophisticated grammar parsing tools like Bison. Basically, it just evaluates commands. If you are interested in how cmake works, see this link: https://aosabook.org/en/v1/cmake.html#footnote-1 |
Btw. If you don't maintain this project often, you can make a notices at the top of REDME.md so users will quickly get idead whether to use it or not. Thanks! |
CMake does not have has builtin containers like lists, dictionaries, maps and so on. For example, the List container is not really a builtin and just based up on the existing set of commands like For example:
These issues just a minor example of how is hard to build a simple parser on the cmake language. So they just decided to push out the not minimizable complexity out of the language which brought another complexity in. This rather bad than good. Or another example with incompleteness, when 3dparty libraries trying to change shared variables like
Or no ability to check whether a library or component support the multiconfig ( Or system functions hooking is another way of incompleteness in cmake. I've built my own library up on that and know that I am talking about: https://github.com/andry81/tacklelib/tree/HEAD/cmake/tacklelib/ |
@andry81 I wasn't talking about creating a parser by using CMake language. I was talking about implementation of a "parser" written in C++ that cmake uses to parse its |
Anyone?
Tonnes of efforts were put into this project. Wouldn't it be much better to implement a frontend to the cmake and create better scripting language like meson, but which is much faster?
The text was updated successfully, but these errors were encountered: