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