this post was submitted on 02 Dec 2023
130 points (93.9% liked)

linuxmemes

22228 readers
587 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
  • Don't get baited into back-and-forth insults. We are not animals.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, <loves/tolerates/hates> systemd, and wants to interject for a moment. You can stop now.
  • 5. πŸ‡¬πŸ‡§ Language/язык/Sprache
  • This is primarily an English-speaking community. πŸ‡¬πŸ‡§πŸ‡¦πŸ‡ΊπŸ‡ΊπŸ‡Έ
  • Comments written in other languages are allowed.
  • The substance of a post should be comprehensible for people who only speak English.
  • Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
  • Β 

    Please report posts and comments that break these rules!


    Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.

    founded 2 years ago
    MODERATORS
     
    all 23 comments
    sorted by: hot top controversial new old
    [–] ace@lemmy.ananace.dev 47 points 1 year ago (3 children)

    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@lemmy.world 9 points 1 year ago

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

    [–] AMDIsOurLord@lemmy.ml 6 points 1 year ago

    Cross platform

    (*As long as your platform isn't shite)

    [–] rostby@lemmy.fmhy.net 0 points 1 year ago (1 children)

    Wasn’t WSL supposed to solve this problem

    [–] ace@lemmy.ananace.dev 2 points 1 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@lemmy.world 38 points 1 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.

    [–] possiblylinux127@lemmy.zip 32 points 1 year ago

    I'll just use make

    [–] 2xsaiko@discuss.tchncs.de 29 points 1 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@lemmy.world 22 points 1 year ago (1 children)

    I ❀️ cmake

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

    [–] vext01 9 points 1 year ago

    Cmake can generate ninja.

    Dunno why they picked on cmake when autotools exists!

    [–] spacesweedkid27@lemmy.world 16 points 1 year ago (1 children)

    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.

    [–] 0x4E4F@infosec.pub 7 points 1 year ago

    Meeh, if it works 🀷.

    [–] uis@lemmy.world 6 points 1 year ago (1 children)

    Why you compile build system with build file generators?

    [–] lolcatnip@reddthat.com 3 points 1 year ago (1 children)

    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@lemmy.world 1 points 1 year ago

    Meson does the same...

    [–] Uriah@programming.dev 2 points 1 year ago (1 children)

    I'm growing fond of xmake.

    Simple language, simple buildscripts.

    [–] riodoro1@lemmy.world 6 points 1 year ago (1 children)

    And everyone checking out your code is like β€žwhat the fuck is this?”.

    [–] Uriah@programming.dev 1 points 1 year ago

    But it works and the language is well known!

    Join the dark side; there are dozens of us!

    i thought this was a fortnight meme XD

    [–] gon@lemm.ee -2 points 1 year ago (1 children)
    [–] b3an@lemmy.world 9 points 1 year ago (1 children)
    [–] BlackRing@midwest.social 3 points 1 year ago

    I mean... Maybe they saw 'C'make' and then realized.