michelin, to random
@michelin@hachyderm.io avatar

Hot take after an afternoon un-fsck-ing a project: *Config.cmake files are so much harder to debug than *.pc files, so not only are you trying to make sense of a Turing complete project definition but all the transitive dependencies that happen to use CMake too

I'm increasingly a fan.

lobocode, to FreeBSD
@lobocode@hachyderm.io avatar

Hey everyone, I'm studying #C and planning to contribute to some open-source projects soon. I have a question: in , do you usually use , , or more frequently? (I'm a beginner, but I got the impression that cmake is the most comprehensive). Is there one that's more universal and can be used across all projects, or does it depend on the project? And for , which one helps more with configuration?

Di4na, to random
@Di4na@hachyderm.io avatar

So we have it now. Rust solved a large number of the safety problems of the system language level. Not everything ofc, but still. Lot of them. And it is actually being adopted.

So I have a question for my cybersecurity/infosec crowd.

Have you introspected why 3 decades of yelling about that stuff got no results, 3 decades of sanitisers and fuzzers barely moved the needle, but Rust slam dunked it?

Where is the retrospective of what went wrong? Where are the learnings?

markuswerle,
@markuswerle@nrw.social avatar

@Di4na Nice and efficient build system that are humane to use:

Well, this is the topic that most work went into. Look at what happened to within the past ten years. This is a completely different system now.

To catch up I highly recommend Craig Scott's seminal book:
https://crascit.com/professional-cmake/

In contrast to 2018, I consider CMake now something that humans can use without losing their minds.

Some recent changes indicate that the travel is not over:

https://cpp-aachen.github.io/archive/2024-04-10/2024_04_10_CMake_File_Sets.pdf

markuswerle,
@markuswerle@nrw.social avatar

@Di4na And now I have to put more work into it because continues (!) to refine how dependencies can me managed.

https://www.youtube.com/watch?v=s0q6s5XzIrA

henryiii, to python
@henryiii@fosstodon.org avatar

cmake for Python 3.29.0 is out now! First release to use scikit-build-core internally as the build backend, Python 3.7+ required. https://github.com/scikit-build/cmake-python-distributions/releases/tag/3.29.0.1

sos, to programming
@sos@mastodon.gamedev.place avatar

I hate CMAKE. That's the post. Just hate it.

Why the FUCK does CMAKE generate VS project files that depend on having CMAKE installed on your system? And it has to be in a fixed path? And EVERYTHING has to be in a fixed path?

Have CMAKE developers ever compiled something or used version control? This is unusable and I am very angry and it's Monday and I haven't had my coffee yet.

EDIT: AND IT HAS TO HAVE VS INSTALLED AT A FIXED PATH TOO WHO MADE THIS CRAP????

sos,
@sos@mastodon.gamedev.place avatar

Just look at this. Look at this and tell me why do people use Cmake!

sos,
@sos@mastodon.gamedev.place avatar

Ok, I finally managed to make this project work on a different machine it ran CMAKE and just regenerated the project discarding all my changes.

What in the actual hell is this?

martinhelmut, to cpp
@martinhelmut@mastodon.gamedev.place avatar

It's one thing to start using CMake in a project, it's another to actually create a distributable package for major operating systems. Something I learned on my journey mastering CPack with CMake.

I'll try to cover much: from application bundle structure, how installation works with CMake, adding a shared library, static assets like fonts and images, application icons, the installer itself, and more.

https://martin-fieber.de/blog/cmake-cpack-cross-platform-distributables/

c0dec0dec0de, to programming
@c0dec0dec0de@hachyderm.io avatar

Oh, no. I’m contemplating writing an extensible front-end for CMake tools à la git where third-parties can throw stuff in.

c0dec0dec0de, to random
@c0dec0dec0de@hachyderm.io avatar

Current, unpaid-for projects I want to work on:
A tool to strip out nondeterminism from RPMs
A tool to run only CTest executables affected by a list of changed files
CMake scripting to automatically add all the necessary subpackages as dependencies of the devel subpackage
My headcanon version of git-grep
A requirements tracker website à la UCF, but free; or OpenSSF badge app, but customizable and can be self-hosted
Terminal classification banner
Virtual console classification banner

c0dec0dec0de,
@c0dec0dec0de@hachyderm.io avatar

I should also make a script for RPM-based Linux that scans and automatically installs dependencies for a CMake build (and probably reports them back). One of the CI services online had this for their Debian-based container and it was lovely.

dec_hl, (edited ) to VintageOSes
@dec_hl@mastodon.social avatar

I just updated my image viewer/converter

  • added

  • added

  • fixed zoom and documentation

  • added 24/32bpp autodetection

  • added image info

  • added num pad keys

  • added check to list modes

https://github.com/SuperIlu/DosView/releases/tag/v1.1

dec_hl,
@dec_hl@mastodon.social avatar

Things I learned yesterday: how to cross compile to / using (my nemesis) 😊

petk, to php

PHP 8.3.0 RC5 was released this week

For fun, here's an example of using CMake GUI to build PHP from source. Less command-line fuss, thanks to the user-friendly QT GUI. And it even supports presets (JSON build configs).

More workflows coming up in the future.

https://youtu.be/M6qniXGXrbY

zirias, to FreeBSD
@zirias@techhub.social avatar

Today's progress on "userland from source" project: We have build systems! 🥳

Supported now (apart of plain ): GNU (including ), , and !

They're all supported with their original "USES", by some trickery in my new "USES=linuxsrc", fixing up just the parts that are different when building from/for the Linuxulator (like adjusting dependencies and commands to use the -native versions).

Ok, no yet, didn't need it so far 🙈

kdab, to random
@kdab@techhub.social avatar

Learn all about Qt applications from Qt5 to from Nicolas Fella during the KDAB Training Day on 27th Nov. Get familiarised with comparing the available modules in Qt5 & Qt6, discussing the strategy & estimation of a port & more.

🔗 https://www.youtube.com/watch?v=gPOlhJxkGv4

bagder, to random
@bagder@mastodon.social avatar

If you want to help out in and know , here are four currently open PRs that can use your eyes and input: https://github.com/curl/curl/labels/cmake

uliwitness, to swift
@uliwitness@chaos.social avatar

Anyone have a working CLion CMake project that builds mixed C++/Swift code?

My Swift has broken. I have a valid toolchain, but CMake says "no CMAKE_Swift_COMPILER could be found". When I look in the .log file, it seems to have success building the SwiftCompilerId thing, so no useful info there either.

Also did a brew upgrade cmake and Software Update doesn't have a command line tools update either, and xcode-select is giving the right Xcode, too.

mgorny, to random

Today's fun:

tmux fails to build with 2.2.1. It fails because of incompatible declaration of forkpty() in compat.h.

Looking into compat.h. forkpty() is declared there if HAVE_FORKPTY is false.

Looking into config.log. forkpty() is not found because configure tries to link random test programs to -levent_core@CMAKE_DEBUG_POSTFIX@.

At this point, you can guess what the problem is: https://github.com/libevent/libevent/issues/1459

root42, to random
@root42@chaos.social avatar

Question into my bubble for experts: can I do file globbing during build time? Especially when doing an add_custom_command? It works on Linux, but Windows fails. It seems that "COMMAND foo ARGS *.txt" will not expand the wildcard. I can't use file(GLOB ...) as this is done during configure time, not build time. So what's the solution here?

mgorny, to random

So someone made a commit with a future date to . As a result, now produces a snapshot with dates in the future. Upon running on files from that snapshot, keeps detecting that generated CMake files are older than their sources and rerunning CMake in a loop. Sigh.

https://github.com/llvm/llvm-project/commit/cb133a4629a56f8c8a67fb7549356839917b52f9

  • All
  • Subscribed
  • Moderated
  • Favorites
  • anitta
  • InstantRegret
  • magazineikmin
  • Youngstown
  • everett
  • thenastyranch
  • slotface
  • vwfavf
  • mdbf
  • rosin
  • kavyap
  • khanakhh
  • cubers
  • PowerRangers
  • provamag3
  • DreamBathrooms
  • tacticalgear
  • Durango
  • ethstaker
  • osvaldo12
  • ngwrru68w68
  • cisconetworking
  • tester
  • GTA5RPClips
  • normalnudes
  • modclub
  • Leos
  • megavids
  • All magazines