diff --git a/CHANGES b/CHANGES
index cf924659..e3f3a105 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1468,3 +1468,9 @@ Version history
- some optimizations to to reduce communication overhead
* fixed WindowsApp template to build with recent DMD
+2025-10-12 version 1.5.0-beta2
+ * dbuild: add option to select the D runtime: none/druntime/phobos (druntime LDC only)
+ * dmdserver:
+ - fix always skipping debug statements
+ - fix some crashes in the frontend
+ * exclude \\.\C: from dependencies generated by LDC v1.40+
diff --git a/Makefile b/Makefile
index 1ce23891..2386ccf5 100644
--- a/Makefile
+++ b/Makefile
@@ -81,7 +81,7 @@ dmdserver_test:
devenv /Project "dmdserver" /Build "TestDebug|x64" visuald_vs10.sln
dparser:
- cd vdc\abothe && $(MSBUILD15) vdserver.sln /p:Configuration=Release;Platform="Any CPU" /p:TargetFrameworkVersion=4.5.2 /p:DefineConstants=NET40 /t:Rebuild
+ cd vdc\abothe && $(MSBUILD15) vdserver.sln /p:Configuration=Release;Platform="Any CPU" /p:TargetFrameworkVersion=4.5.2 /p:DefineConstants=NET40 $(MSBUILD_REBUILD)
editbin /STACK:0x800000 bin\Release\DParserCOMServer\DParserCOMServer.exe
dparser_test:
@@ -94,18 +94,20 @@ fake_dparser:
if not exist bin\Release\DParserCOMServer\DParserCOMServer.exe echo dummy >bin\Release\DParserCOMServer\DParserCOMServer.exe
if not exist bin\Release\DParserCOMServer\D_Parser.dll echo dummy >bin\Release\DParserCOMServer\D_Parser.dll
+MSBUILD_REBUILD = /verbosity:quiet /t:Rebuild
+
vdextension:
- cd vdextensions && $(MSBUILD) vdextensions.csproj /p:Configuration=Release;Platform=AnyCPU /t:Rebuild
+ cd vdextensions && $(MSBUILD) vdextensions.csproj /p:Configuration=Release;Platform=AnyCPU $(MSBUILD_REBUILD)
vdext15:
- cd vdextensions && $(MSBUILD) vdext15.csproj /p:Configuration=Release;Platform=AnyCPU /t:Rebuild
+ cd vdextensions && $(MSBUILD) vdext15.csproj /p:Configuration=Release;Platform=AnyCPU $(MSBUILD_REBUILD)
visualdwizard:
- cd vdwizard && $(MSBUILD) VisualDWizard.csproj /p:Configuration=Release;Platform=AnyCPU /t:Rebuild
+ cd vdwizard && $(MSBUILD) VisualDWizard.csproj /p:Configuration=Release;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild12:
# cd msbuild\dbuild && devenv /Build "Release|AnyCPU" /Project "dbuild" dbuild.sln
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release;Platform=AnyCPU $(MSBUILD_REBUILD)
fake_dbuild12:
if not exist msbuild\dbuild\obj\release\nul md msbuild\dbuild\obj\release
@@ -114,7 +116,7 @@ fake_dbuild12:
dbuild14:
# cd msbuild\dbuild && devenv /Build "Release-v14|AnyCPU" /Project "dbuild" dbuild.sln
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v14;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v14;Platform=AnyCPU $(MSBUILD_REBUILD)
fake_dbuild14:
if not exist msbuild\dbuild\obj\release-v14\nul md msbuild\dbuild\obj\release-v14
@@ -123,7 +125,7 @@ fake_dbuild14:
dbuild15:
# cd msbuild\dbuild && devenv /Build "Release-v15|AnyCPU" /Project "dbuild" dbuild.sln
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v15;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v15;Platform=AnyCPU $(MSBUILD_REBUILD)
fake_dbuild15:
if not exist msbuild\dbuild\obj\release-v15\nul md msbuild\dbuild\obj\release-v15
@@ -132,65 +134,65 @@ fake_dbuild15:
dbuild16:
# cd msbuild\dbuild && devenv /Build "Release-v16|AnyCPU" /Project "dbuild" dbuild.sln
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v16;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v16;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild16_1:
# cd msbuild\dbuild && devenv /Build "Release-v16_1|AnyCPU" /Project "dbuild" dbuild.sln
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v16_1;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v16_1;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_0:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_0;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_0;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_1:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_1;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_1;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_2:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_2;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_2;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_3:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_3;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_3;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_4:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_4;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_4;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_5:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_5;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_5;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_6:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_6;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_6;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_7:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_7;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_7;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_8:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_8;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_8;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_9:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_9;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_9;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_10:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_10;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_10;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_11:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_11;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_11;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_12:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_12;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_12;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_13:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_13;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_13;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_14:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_14;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v17_14;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild17_all: dbuild17_0 dbuild17_1 dbuild17_2 dbuild17_3 dbuild17_4 dbuild17_5 dbuild17_6 dbuild17_7 \
dbuild17_8 dbuild17_9 dbuild17_10 dbuild17_11 dbuild17_12 dbuild17_13 dbuild17_14
dbuild18_0:
- cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v18_0;Platform=AnyCPU /t:Rebuild
+ cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v18_0;Platform=AnyCPU $(MSBUILD_REBUILD)
dbuild18_all: dbuild18_0
diff --git a/VERSION b/VERSION
index f7314a5a..201d6cef 100644
--- a/VERSION
+++ b/VERSION
@@ -2,4 +2,4 @@
#define VERSION_MINOR 5
#define VERSION_REVISION 0
#define VERSION_BETA -beta
-#define VERSION_BUILD 1
+#define VERSION_BUILD 2
diff --git a/build/build.visualdproj b/build/build.visualdproj
index e2d1dc04..50d73ce9 100644
--- a/build/build.visualdproj
+++ b/build/build.visualdproj
@@ -123,8 +123,12 @@
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -250,8 +254,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -377,8 +385,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -504,8 +516,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -631,8 +647,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -758,8 +778,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -885,8 +909,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1012,8 +1040,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1139,8 +1171,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1266,8 +1302,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1393,8 +1433,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1520,8 +1564,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1647,8 +1695,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1774,8 +1826,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -1901,8 +1957,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
@@ -2028,8 +2088,12 @@ echo. >"$(TargetDir)\build.dep"
0
- echo Success >"$(TargetPath)"
-echo. >"$(TargetDir)\build.dep"
+
+echo $(ProjectDir)\sdk.bat >"$(TargetDir)\build.dep"
+echo $(ProjectDir)\sdk_libs.bat >>"$(TargetDir)\build.dep"
+echo $(ProjectDir)\build.visualdproj >>"$(TargetDir)\build.dep"
+echo Success >"$(TargetPath)"
+
*.obj;*.cmd;*.build;*.json;*.dep
diff --git a/msbuild/dbuild/CompileD.cs b/msbuild/dbuild/CompileD.cs
index a6c90dfd..0c9902f0 100644
--- a/msbuild/dbuild/CompileD.cs
+++ b/msbuild/dbuild/CompileD.cs
@@ -45,7 +45,8 @@ public CompileD()
public string[] ImportCDefines { get { return opts.ImportCDefines; } set { opts.ImportCDefines = value; } }
public string ObjectFileName { get { return opts.ObjectFileName; } set { opts.ObjectFileName = value; } }
public bool PreserveSourcePath { get { return opts.PreserveSourcePath; } set { opts.PreserveSourcePath = value; } }
- public string CRuntimeLibrary { get { return opts.CRuntimeLibrary; } set { opts.CRuntimeLibrary = value; } }
+ public string CRuntimeLibrary { get { return opts.CRuntimeLibrary; } set { opts.CRuntimeLibrary = value; } }
+ public string DRuntimeLibrary { get { return opts.DRuntimeLibrary; } set { opts.DRuntimeLibrary = value; } }
public bool Profile { get { return opts.Profile; } set { opts.Profile = value; } }
public bool ProfileGC { get { return opts.ProfileGC; } set { opts.ProfileGC = value; } }
public bool Coverage { get { return opts.Coverage; } set { opts.Coverage = value; } }
diff --git a/msbuild/dbuild/CompileDOpt.cs b/msbuild/dbuild/CompileDOpt.cs
index c077cc40..eac42492 100644
--- a/msbuild/dbuild/CompileDOpt.cs
+++ b/msbuild/dbuild/CompileDOpt.cs
@@ -67,6 +67,7 @@ public CompileDOptions(IToolSwitchProvider provider)
this.switchOrderList.Add("ObjectFileName");
this.switchOrderList.Add("PreserveSourcePath");
this.switchOrderList.Add("CRuntimeLibrary");
+ this.switchOrderList.Add("DRuntimeLibrary");
this.switchOrderList.Add("Profile");
this.switchOrderList.Add("ProfileGC");
@@ -279,6 +280,24 @@ public string CRuntimeLibrary
}
}
+ public string DRuntimeLibrary
+ {
+ get { return GetStringProperty("DRuntimeLibrary"); }
+ set
+ {
+ string[][] switchMap = new string[3][]
+ {
+ new string[2] { "None", "-defaultlib=" },
+ new string[2] { "Druntime", "-defaultlib=druntime-ldc" },
+ new string[2] { "Phobos", "" },
+ };
+
+ SetEnumProperty("DRuntimeLibrary", "D Runtime Library",
+ "Link against the D runtime library.",
+ switchMap, value);
+ }
+ }
+
// Code generation
public bool Profile
{
diff --git a/msbuild/dbuild/dbuild.csproj b/msbuild/dbuild/dbuild.csproj
index afd37076..980bec73 100644
--- a/msbuild/dbuild/dbuild.csproj
+++ b/msbuild/dbuild/dbuild.csproj
@@ -497,6 +497,10 @@
12.0
dbuild.$(TargetVer)
+ ..\..\bin\dbuild\$(Configuration)\
+ $(BaseOutputPath)\
+ $(OutputPath)\obj\
+ $(OutputPath)\obj-base\
@@ -553,21 +557,27 @@
assemblies\v12\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v12\Microsoft.Build.Framework.dll
+ False
assemblies\v12\Microsoft.Build.Tasks.v12.0.dll
+ False
assemblies\v12\Microsoft.Build.Utilities.v12.0.dll
+ False
assemblies\v12\Microsoft.VisualStudio.VCProject.dll
+ False
assemblies\v12\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
@@ -591,10 +601,12 @@
False
c:\Program Files (x86)\MSBuild\12.0\Bin\Microsoft.Build.Tasks.v12.0.dll
+ False
False
c:\Program Files (x86)\MSBuild\12.0\Bin\Microsoft.Build.Utilities.v12.0.dll
+ False
False
@@ -603,52 +615,65 @@
False
False
c:\Windows\assembly\GAC\Microsoft.VisualStudio.VCProjectEngine\12.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
False
+ False
assemblies\v14\Microsoft.Build.dll
+ False
assemblies\v14\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v14\Microsoft.Build.Framework.dll
+ False
assemblies\v14\Microsoft.Build.Tasks.Core.dll
+ False
assemblies\v14\Microsoft.Build.Utilities.Core.dll
+ False
False
assemblies\v14\Microsoft.VisualStudio.VCProject.dll
+ False
False
False
assemblies\v14\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
False
+ False
c:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.Build\v4.0_14.0.0.0__b03f5f7f11d50a3a\Microsoft.Build.dll
+ False
False
c:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Build.CPPTasks.Common.dll
+ False
False
c:\Program Files (x86)\MSBuild\14.0\Bin\Microsoft.Build.Framework.dll
+ False
False
@@ -663,11 +688,13 @@
False
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.VCProject.dll
+ False
False
False
c:\Windows\assembly\GAC\Microsoft.VisualStudio.VCProjectEngine\14.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
@@ -680,21 +707,27 @@
assemblies\v15\Microsoft.Build.dll
+ False
assemblies\v15\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v15\Microsoft.Build.Framework.dll
+ False
assemblies\v15\Microsoft.Build.Tasks.Core.dll
+ False
assemblies\v15\Microsoft.Build.Utilities.Core.dll
+ False
assemblies\v15\envdte.dll
+ False
False
@@ -702,6 +735,7 @@
assemblies\v15\Microsoft.VisualStudio.VCProject.dll
c:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.VCProject.dll
c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.VCProject.dll
+ False
False
@@ -709,40 +743,50 @@
assemblies\v15\Microsoft.VisualStudio.VCProjectEngine.dll
c:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.VCProjectEngine.dll
c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
assemblies\v16\Microsoft.Build.dll
+ False
assemblies\v16\Microsoft.Build.Framework.dll
+ False
assemblies\v16\Microsoft.Build.Tasks.Core.dll
+ False
assemblies\v16\Microsoft.Build.Utilities.Core.dll
+ False
assemblies\v16\envdte.dll
+ False
assemblies\v16\Microsoft.VisualStudio.VCProject.dll
+ False
assemblies\v16\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
assemblies\v16\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v16_1\Microsoft.Build.CPPTasks.Common.dll
+ False
@@ -754,133 +798,164 @@
or '$(TargetVer)' == '17.12' or '$(TargetVer)' == '17.13' or '$(TargetVer)' == '17.14'">
assemblies\v17\Microsoft.Build.dll
+ False
assemblies\v17\Microsoft.Build.Framework.dll
+ False
assemblies\v17\Microsoft.Build.Tasks.Core.dll
+ False
assemblies\v17\Microsoft.Build.Utilities.Core.dll
+ False
assemblies\v17\envdte.dll
+ False
assemblies\v17\Microsoft.VisualStudio.VCProject.dll
+ False
assemblies\v17\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
assemblies\v17\Microsoft.Build.CPPTasks.Common.Base.dll
+ False
assemblies\v17\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_1\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_2\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_3\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_4\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_5\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_6\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_7\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_8\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_9\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_10\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_11\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_12\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_13\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v17_14\Microsoft.Build.CPPTasks.Common.dll
+ False
assemblies\v18\Microsoft.Build.dll
+ False
assemblies\v18\Microsoft.Build.Framework.dll
+ False
assemblies\v18\Microsoft.Build.Tasks.Core.dll
+ False
assemblies\v18\Microsoft.Build.Utilities.Core.dll
+ False
assemblies\v18\envdte.dll
+ False
assemblies\v18\Microsoft.VisualStudio.VCProject.dll
+ False
assemblies\v18\Microsoft.VisualStudio.VCProjectEngine.dll
+ False
assemblies\v18\Microsoft.Build.CPPTasks.Common.dll
+ False
diff --git a/msbuild/dcompile.targets b/msbuild/dcompile.targets
index eb1b868b..763ebf64 100644
--- a/msbuild/dcompile.targets
+++ b/msbuild/dcompile.targets
@@ -208,6 +208,7 @@
DebugIdentifiers="%(DCompile.DebugIdentifiers)"
ObjectFileName="%(DCompile.ObjectFileName)"
PreserveSourcePath="%(DCompile.PreserveSourcePath)"
+ DRuntimeLibrary="%(DCompile.DRuntimeLibrary)"
CRuntimeLibrary="%(DCompile.CRuntimeLibrary)"
Profile="%(DCompile.Profile)"
@@ -344,9 +345,11 @@
- phobos32mscoff.lib
- phobos64.lib
- phobos2-ldc.lib;druntime-ldc.lib
+ <_DRuntimeLib>@(DCompile->Metadata('DRuntimeLibrary')->Distinct()->ClearMetadata())
+ phobos32mscoff.lib
+ phobos64.lib
+ phobos2-ldc.lib;druntime-ldc.lib
+ druntime-ldc.lib
$(DRuntimeLibs);legacy_stdio_definitions.lib
diff --git a/msbuild/dcompile_defaults.props b/msbuild/dcompile_defaults.props
index 4f2a5e24..e16adef1 100644
--- a/msbuild/dcompile_defaults.props
+++ b/msbuild/dcompile_defaults.props
@@ -112,6 +112,7 @@
Project
+ Phobos
MultiThreaded
false