Does anyone know how druntime gets built?

forkit forkit at gmail.com
Mon Jun 27 21:22:34 UTC 2022


On Monday, 27 June 2022 at 17:50:45 UTC, Walter Bright wrote:
> @kinke had the answer. The Windows versions get built with the 
> make.exe that comes with dmc. It used to be included with the 
> dmd distribution, but was removed.

Ummm...  'C:\DMC\dm\bin\make'

is what I indicated in:

https://forum.dlang.org/post/bkdunhvzttbbuiepyeny@forum.dlang.org

the only thing you really need to do, is alter some vars, in the 
win64.mak for druntime and phobos (although the recent win64.mak 
for druntime seems to have removed all three of these vars 
completely?? so don't know what's going on there.

VCDIR=
SDKDIR=
CFLAGS=

for CFLAGS, I just use: CFLAGS=/Z7 /I"$(VCDIR)"\INCLUDE 
/I"$(SDKDIR)"\Include

for VCDIR and SDKDIR, it depends on your VS version, but you can 
run this code *within* a VS command prompt:

the output of this is what I enter into VCDIR= and SDKDIR=


// ----
int main()
{
     auto VCDIR = environment.get("VCToolsInstallDir");
     if (VCDIR is null) { return 1;}
     writeln("VCDIR=", VCDIR[0..$-1]); // also removes the 
trailing backslash

     auto SDKVersion = environment.get("WindowsSDKVersion");
     if (SDKVersion is null) { return 1;}

     auto SDKDIR = environment.get("WindowsSdkDir");
     if (SDKDIR is null) { return 1;}
     writeln("SDKDIR=", SDKDIR ~ "Include\\" ~ 
SDKVersion[0..$-1]); // also removes the trailing backslash

     return 0;
}
// -------


More information about the Digitalmars-d mailing list