Is ECM a good place for implementing Nim support in CMake?

Alexander Neundorf neundorf at kde.org
Sun Apr 28 21:01:07 BST 2024


On Sonntag, 28. April 2024 12:50:06 CEST Albert Astals Cid wrote:
> El divendres, 19 d’abril del 2024, a les 11:17:09 (CEST), Anna (cybertailor)
> Vyalkova va escriure:
> > Hi,
> > 
> > I'd like to develop Nim applications (with possible GUI support via
> > nimqt) but this language lacks support for any standard build system.
> > 
> > So that's the thing I'm focused on right now (just happened to also be
> > my favorite thing).
> > 
> > Alternatives I considered:
> > 
> > 1. Procedure described in "CMakeAddNewLanguage.txt". First of all,
> > that's scary and second it doesn't cover my use case: Nim is not a
> > compiler but rather a transpiler. It compiles Nim code into C/C++/JS
> > code and then calls system compiler to get native binaries. These steps
> > could be separated.
> > 
> > 2. Going with my own "nim-for-cmake" module library. That's possible but
> > requires lots of boilerplate code that can be avoided if these modules
> > become part of ECM.
> > 
> > I've implemented an alternative build system for Nim's "nimble" packages
> > before so I know the necessary steps: 1) find the compiler, 2) find the
> > deps, 3) generate a json-script, 4) extract the depfiles, 5) execute the
> > script.
> > 
> > Can I start making such ECM module or should it be a separate CMake
> > module library?
> 
> You will probably find more people that know about ECM in kde frameworks
> devel mailing list than here, this list is nowadays pretty dormant.
> 
> My suggetsion would be, talk to the cmake folks, they are a relatively open
> bunch of people that like their build system to support as many things
> possible and what you really want is to have support in cmake itself, not
> having to include some extra stuff to make it work.

yes, right here, probably the "Development" channel:
https://discourse.cmake.org/[1]

Alex




--------
[1] https://discourse.cmake.org/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-buildsystem/attachments/20240428/8a78af1b/attachment.htm>


More information about the Kde-buildsystem mailing list