Call an external program from CTFE

realhet real_het at hotmail.com
Mon Jun 24 09:52:48 UTC 2024


On Sunday, 23 June 2024 at 16:46:05 UTC, monkyyy wrote:
> On Sunday, 23 June 2024 at 16:33:54 UTC, realhet wrote:
> realistically you should just write a build script with two 
> stages
>
> fun thought experiment time, if you found a programmable 
> "FUSE"(file system api) database of some sort, mixed `-J` and 
> `-mixin`, I think you may be able to call a compiler

Good idea, thx!

The two directions of this communication path could be:

1. LDC2 -> External process:
pragma(msg, x)  produces specially formatted message to the 
stdErr, my buildsystem will watch it and will remember 'x'.

2. External process -> LDC2
-J, mixin file, using ProjFS on windows.

The ProjFS can block and wait for the external program to 
complete.

https://dlang.org/spec/expression.html#import_expressions
This is perfectly fits for this.  The filename will be: 
glsl_hash.  If there was a pragma(msg) with that hash, the 
Projected File System will provide it.


More information about the Digitalmars-d-learn mailing list