• Ananace
    link
    fedilink
    521 year ago

    People love to complain about CMake, often with valid complaints as well. But it - to this day - remains the only build system where I’ll actually trust a project when they say they are cross-platform.

    Being the Windows maintainer for OpenMW, it used to be absolute hell back a decade and half ago when an indirect dependency changed - and used something like SCons or Premake while claiming to be “cross-platform”, used to be that I had to write my own build solutions for Windows since it was all hardcoded against Linux paths and libraries.

    CMake might not be the coolest, most hip, build system, but it delivers on actually letting you build your software regardless of platform. So it remains my go-to for whenever I need to actually build something that’s supposed to be used.
    For personal things I still often hack together a couple of Makefiles though, it’s just a lot faster to do.

    • @uis
      link
      101 year ago

      CMake and meson aren’t build systems, they are generators. If you want to use Ninja, just add -G Ninja.

      • Ananace
        link
        fedilink
        21 year ago

        Not really, WSL seems like it was mainly supposed to stop people leaping ship to be able to develop Node without the horribly painful Windows JS experience. And wouldn’t you know it, Microsoft has been making their own JavaScript language in Typescript.

  • @riodoro1
    link
    401 year ago

    CMake has been around forever and is flexible enough to build really complex software. You just need to pull out enough hair when you want it to do something.

  • 2xsaiko
    link
    fedilink
    301 year ago

    One of these is not like the others (and it’s not CMake).

    Also, the syntax is absolutely mental but I like CMake :V

  • @mvirts
    link
    231 year ago

    I ❤️ cmake

    Probably because I’ve never developed with ninja or meson 😹

  • spacesweedkid27
    link
    English
    171 year ago

    I fucking hate building tools or package managers like maven because I am too lazy too learn on how to use them.

    Not at all are they intentional.

    I will just copy the source or some precompiled library from a git and embedd in my project. Try and stop me.

  • @uis
    link
    81 year ago

    Why you compile build system with build file generators?

    • @[email protected]
      link
      fedilink
      English
      31 year ago

      If you’re compiling something huge like Chrome, having a separate compilation stage for the build files makes sense. For a normal sized project it’s overkill.

      • @uis
        link
        11 year ago

        Meson does the same…

    • @riodoro1
      link
      61 year ago

      And everyone checking out your code is like „what the fuck is this?”.

      • BlackRing
        link
        fedilink
        31 year ago

        I mean… Maybe they saw ‘C’make’ and then realized.