I’m finding my #gnustep debugging loops are slow.

I can build with my #gmake and can launch apps in #gdb. I can set breakpoints.

I’m not having success getting (u)crags working for fast symbol treversal.

Also, I can’t seem to evaluate [target messages:], this makes debugging hard. Is there a way to get this? If not what’s the solution? Logging is vexingly slow: (what’s the type, class? Instance? Return type? Add that to the format string).

How can I be more productive here?

cloning current system - opnsense install on test system for bridge hashout - lots of reading still to do #gmake

Ричард Столлман, автор GCC и Emacs: жизнь после «отмены»

Сложно найти человека, про которого ходит больше легенд, чем Ричард Столлман (RMS). Наверное, по количеству невероятных историй и анекдотов с ним могут сравниться только Джефф Дин и его брат Джеки Чан . Причём многие невероятные истории о Столлмане — правда. Например, что он запрашивал веб-страницы wget-демоном по почте (для безопасности) и отказался от использования мобильных телефонов, которые называет портативными устройствами слежения . На своём переделанном ноутбуке Thinkpad x200 он в основном работает в консоли и старается не подключаться к веб-сайтам с собственной машины. В 71 год Столлман борется с раком (успешно) и пострадал от травли за свои спорные высказывания и действия. Но его достижений хватит на десятки или сотни великих жизней. Он является автором компилятора GCC и текстового редактора Emacs , а также основателем проекта GNU, дополнением к которому стало ядро Linux, в результате чего появилась полноценная ОС. Гений Столлмана опередил время. Только в 21 веке — с ползучим наступлением цифрового тоталитаризма, всеобщей слежки в духе «1984» и алгоритмизацией всех аспектов жизни — люди постепенно начинают понимать, что Ричард Столлман был прав .

https://habr.com/ru/companies/ruvds/articles/857666/

#ruvds_статьи #Ричард_Столлман #Richard_Stallman #RMS #отмена #GNU #Linux #Линус_Торвальдс #GNU_Compiler_Collection #GCC #Emacs #поддержание_истины #truth_maintenance #TMS #GNU_Debugger #GDB #копилефт #GPL #GNU_Make #gmake

Ричард Столлман, автор GCC и Emacs: жизнь после «отмены»

Сложно найти человека, про которого ходит больше легенд, чем Ричард Столлман (RMS). Наверное, по количеству невероятных историй и анекдотов с ним могут сравниться только Джефф Дин и его брат Джеки Чан...

Хабр

#frustration

To all those devs, who make their projects hard-depend on a shitty #GNU toolchain, either because you are lazy or for political reasons - please, GO FUCK YOURSELVES. Have a bad day.

#bison #m4 #gmake #autotools #gcc #glibc

@lobocode @meena
PR created: https://github.com/scovl/checkrc/pull/5

Mina, no, not "just your headache", the portable subset of make simply doesn't cut it, and doing complex things in make is possible, but hard and quickly becomes unreadable, that's why well-written frameworks are a nice thing ...

I personally have my very own for #gmake (which I use for all portable stuff). When writing stuff specifically for #FreeBSD, I very much prefer using what's already there.

Makefile: Move to bmake using FreeBSD's framework by Zirias · Pull Request #5 · scovl/checkrc

For a tool targeting specifically FreeBSD, we probably won't need a portable build. Using FreeBSD's make framework from /usr/share/mk gives us lots of things for free, for example: On-the-fly depe...

GitHub

Adding features in a module with clear boundaries is so much more fun!

I just added different modes for using #Qt's #moc to my new USES=qt in my #gmake framework ... Testing it with #qXmoji (my new #X11 #emoji #keyboard) in the mode that just includes moc-generated stuff, and it works like a charm. No more extra compilation steps for moc, this whole build log now looks nicely short (screenshot: build from entirely clean git checkout) 🥳

https://github.com/Zirias/qxmoji/commit/928bc8a1cc0fd1a54908bda13ba31042ed6b1471

Update zimk · Zirias/qxmoji@928bc8a

Make use of new MOCMODE knob to have moc code included, avoiding any extra compilation unit.

GitHub

I'm one of these mad guys refusing to pull some "modern" buildsystem (like cmake or meson) into my projects, yet also dislike the complexity and overhead of autotools ... so I created my own "buildsystem" many many years ago, which is basically a #gmake (#GNU #make) framework using "eval" to generate rules on the fly.

Over the years, I piled up features in there as I needed them for current projects. The result is (although it still "worked") chaos. 🙈 More and more, I'm having trouble understanding my own code, and changing things is almost guaranteed to also break things. 🙄

I now decided to refactor a lot, giving some structure to that mess, and took inspiration from #FreeBSD's #ports framework by introducing a "USES" concept to load optional parts. So far, this seems to turn out well, it also gives the opportunity to better document that stuff given the clear responsibility of each USES, see e.g. the one handling installation of freedesktop.org stuff:

https://github.com/Zirias/zimk/blob/master/lib/uses/fdofiles.mk

zimk/lib/uses/fdofiles.mk at master · Zirias/zimk

zirias' make -- a build system for software written in C - Zirias/zimk

GitHub
Hey everyone, I'm studying #C and planning to contribute to some open-source projects soon. I have a question: in #FreeBSD, do you usually use #gmake, #bmake, or #cmake 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 #Emacs, which one helps more with configuration?

@mpts @lobocode I can't fully agree. "Make" is declarative by nature, and a fully declarative Makefile contains nothing but variable expansions and rules with recipes. I *would* agree that #bmake makes it easier to write such a Makefile in many cases for its powerful expansion modifiers (some of which you can't even simulate with gmake's custom functions, like substitutions using regular expressions). But OTOH, it also makes some "procedural" style easier by e.g. providing a "for" loop that runs at parse time (not available in #gmake).

That said, "!=" is a poor replacement for $(wildcard ): "!=" also runs at parse time, $(wildcard ) OTOH is a function only executed when needed for expansion. #bmake offers the "${:!...!}" expansion that would be a better match here (still with the drawback of having to call some external tool of course).

Of course, any "if" (and similar) forces immediate expansion of its arguments in both make flavors, therefore breaking the "pure" declarative style.

@lobocode They're just very different.

#gmake excells in "meta-programming", providing functions (builtin and custom) and the "evil" $(eval ...) (and indeed, code using that is hard to keep at least remotely readable), basically containing a functional programming language. OTOH, it sucks in surprising ways, e.g. it has no idea of numbers/arithmetics. It also has things I'd personally call total "misfeatures", like these default variable values, default rules, even pattern rules can bite you badly ...

Among the strong points of #bmake are many very concise and flexible variable expansion modifiers (including arbitrary replacements, also using regular expressions, and even a "loop expansion").

#FreeBSD makes good use of the nice #bmake features in its build systems (at least base and ports).