The solution: define an object library and set its CXX_COMPILER_LAUNCHER property to a bindgen wrapper! The wrapper receives the arguments that clang would normally receive, shuffles them around, and execs bindgen. It’s quite simple; the source file is the last argument, the output file is the one prefixed by /Fo (clang-cl) or -o (clang), and the remaining arguments are the clang flags. Simple 20 line Python script. 😀 👍
19.5.2025 23:54The solution: define an object library and set its CXX_COMPILER_LAUNCHER property to a bindgen wrapper! The wrapper receives the arguments...The problem: invoke bindgen from CMake, such that it passes the same exact clang flags that CMake would pass to clang.
How hard could that be? Turns out there is no easy way to get the effective compiler flags from CMake. You can stitch the pieces together manually (INCLUDE_DIRECTORIES, COMPILE_OPTIONS, CXX_STANDARD, implied ones like /GR and /EHsc, etc etc) but that’s just tedious and error prone.
19.5.2025 23:52The problem: invoke bindgen from CMake, such that it passes the same exact clang flags that CMake would pass to clang.How hard could that...> We've been using Copilot coding agent internally at GitHub, for nearly three months.
This must explain many of the new UI bugs! A simple matter of malpractice.
19.5.2025 19:05> We've been using Copilot coding agent internally at GitHub, for nearly three months.This must explain many of the new UI bugs! A...Having watched some Doom TDA gameplay it seems they kept the reboot’s tradition of very noticeable asset pop-in
15.5.2025 23:21Having watched some Doom TDA gameplay it seems they kept the reboot’s tradition of very noticeable asset pop-inThere's a protest going on and there's cops on horses and they shit all over the damn pavement.
10.5.2025 14:19There's a protest going on and there's cops on horses and they shit all over the damn pavement.It's amazing how much you can achieve with just one line of Python!
Two bugs in NumPy, a bug in the Nix package for uv, and a bug in PyO3.
28.4.2025 12:56It's amazing how much you can achieve with just one line of Python!Two bugs in NumPy, a bug in the Nix package for uv, and a bug in...In Bash, simply running:
coproc wine_keep_alive { exec wine64 cmd /c pause; }
keeps these background processes alive for the remainder of the script. The pipes created by coproc are closed when Bash terminates and this will cause pause to terminate as well.
3.4.2025 23:05In Bash, simply running:coproc wine_keep_alive { exec wine64 cmd /c pause; }keeps these background processes alive for the remainder of the...When running a program under Wine, Wine ensures a couple background processes. These stay around until three seconds after there are no more programs running under Wine.
When running a test under CTest, CTest waits until the entire process tree of the test has terminated. So, if the test runs under Wine, each test takes at least three seconds!
The solution is to run a no-op command under Wine before invoking CTest. The background processes will then be there, but not as children of the test.
2.4.2025 16:32When running a program under Wine, Wine ensures a couple background processes. These stay around until three seconds after there are no more...Tried to use DirectXMesh for generating vertex tangents, but it operates on indexed vertex data, even though a vertex shared by multiple faces may have a different tangent for each face, so I wasn’t sure if it imposed any requirements on its input.
But then someone pointed me to MikkTSpace, which operates on per-face vertex data. And apparently this is what a lot of software uses. So it’s probably good. I integrated it and it appears to work. 😎
15.2.2025 12:22Tried to use DirectXMesh for generating vertex tangents, but it operates on indexed vertex data, even though a vertex shared by multiple...“Idiote regelgeving”
De regelgeving die wordt genoemd: je mag gebruikers niet zonder toestemming bespioneren en zieke werknemers niet ontslaan. En de innovatie die het waard zou zijn deze regelgeving te laten varen? “AI”.
Het enige idiote hier is de jaknikkende journalistiek.
11.2.2025 20:50“Idiote regelgeving”De regelgeving die wordt genoemd: je mag gebruikers niet zonder toestemming bespioneren en zieke werknemers niet...⬆️
⬇️