Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 10 additions & 8 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ env:
BUILD_CONFIGURATION: Release
BUILD_PLATFORM: x64
BUILD_PLATFORM_TOOLSET: v142
DMD_VER: 2.111.0
VISUALD_VER: 1.4.1

jobs:
build:
Expand All @@ -35,25 +37,25 @@ jobs:
- name: Prepare D compiler
uses: dlang-community/setup-dlang@v1
with:
compiler: dmd-2.098.1
compiler: dmd-${{ env.DMD_VER }}
- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v1.0.2
- name: Setup VS environment
uses: seanmiddleditch/gha-setup-vsdevenv@v4
- name: Download Visual D
uses: supplypike/setup-bin@v1
with:
uri: 'https://github.com/dlang/visuald/releases/download/v1.3.0/VisualD-v1.3.0.exe'
name: 'VisualD-v1.3.0.exe'
version: '1.3.0'
command: ./VisualD-v1.3.0.exe /S
uri: 'https://github.com/dlang/visuald/releases/download/v${{ env.VISUALD_VER }}/VisualD-v${{ env.VISUALD_VER }}.exe'
name: 'VisualD-v${{ env.VISUALD_VER }}.exe'
version: '${{ env.VISUALD_VER }}'
command: ./VisualD-v${{ env.VISUALD_VER }}.exe /S
- name: Register visuald
run: |
reg add "HKLM\SOFTWARE\DMD" /v "InstallationDir" /t REG_SZ /d "c:\hostedtoolcache\windows\dc\dmd-2.098.1\x64" /reg:32 /f
reg add "HKLM\SOFTWARE\VisualD" /v "DMDInstallDir" /t REG_SZ /d "c:\hostedtoolcache\windows\dc\dmd-2.098.1\x64\dmd2" /reg:32 /f
reg add "HKLM\SOFTWARE\DMD" /v "InstallationDir" /t REG_SZ /d "c:\hostedtoolcache\windows\dc\dmd-${{ env.DMD_VER }}\x64" /reg:32 /f
reg add "HKLM\SOFTWARE\VisualD" /v "DMDInstallDir" /t REG_SZ /d "c:\hostedtoolcache\windows\dc\dmd-${{ env.DMD_VER }}\x64\dmd2" /reg:32 /f
- name: Build visuald
working-directory: visuald/trunk
run: nmake d_modules
run: nmake d_modules dmdserver_test
- name: Upload binaries
uses: actions/upload-artifact@v4
if: failure()
Expand Down
15 changes: 15 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
Expand Up @@ -1474,3 +1474,18 @@ Version history
- fix always skipping debug statements
- fix some crashes in the frontend
* exclude \\.\C: from dependencies generated by LDC v1.40+

2026-04-xx version 1.5.0-rc1
* full installer now bundled with DMD 2.112.0 and LDC 1.41.0
* dmdserver:
- updated to dmd 2.112 (current master)
- dmdserver executable selected by installed dmd version (2.110, 2.111, 2.112)
* mago-mi executable added
* mago native debug engine now also works in VS2022 (mago concord extension for
VS engine still recommended)
* visuald projects: fixed library dependencies if different project configurations
used in a solution configuration
* dbuild: added support for VS 2026 18.1, 18.3 and 18.6
* dbuild: fixed building if source files are compiled with different settings
* improved msbuild integration with the "Fast Up To Date Check" of VS
* installer: can now also add mago as an extension for cppvsdbg in VSCode
66 changes: 40 additions & 26 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -59,16 +59,16 @@ prerequisites:
devenv /Project "build" /Build "$(CONFIG)|Win32" visuald_vs10.sln

visuald_vs:
devenv /Project "visuald" /Build "$(CONFIG)|Win32" visuald_vs10.sln
devenv /Project "VisualD" /Build "$(CONFIG)|Win32" visuald_vs10.sln

visuald_vs_x64:
devenv /Project "visuald" /Build "$(CONFIG_X64)|x64" visuald_vs10.sln
devenv /Project "VisualD" /Build "$(CONFIG_X64)|x64" visuald_vs10.sln

visuald_vs_arm64:
devenv /Project "visuald" /Build "$(CONFIG_ARM64)|x64" visuald_vs10.sln
devenv /Project "VisualD" /Build "$(CONFIG_ARM64)|x64" visuald_vs10.sln

visuald_test:
devenv /Project "visuald" /Build "TestDebug|Win32" visuald_vs10.sln
devenv /Project "VisualD" /Build "TestDebug|Win32" visuald_vs10.sln
bin\TestDebug\VisualD\VisualD.exe

vdserver:
Expand All @@ -79,6 +79,7 @@ dmdserver:

dmdserver_test:
devenv /Project "dmdserver" /Build "TestDebug|x64" visuald_vs10.sln
bin\TestDebug\x64\dmdserver.exe

dparser:
cd vdc\abothe && $(MSBUILD15) vdserver.sln /p:Configuration=Release;Platform="Any CPU" /p:TargetFrameworkVersion=4.5.2 /p:DefineConstants=NET40 $(MSBUILD_REBUILD)
Expand Down Expand Up @@ -194,33 +195,46 @@ dbuild17_all: dbuild17_0 dbuild17_1 dbuild17_2 dbuild17_3 dbuild17_4 dbuild17_5
dbuild18_0:
cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v18_0;Platform=AnyCPU $(MSBUILD_REBUILD)

dbuild18_all: dbuild18_0
dbuild18_1:
cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v18_1;Platform=AnyCPU $(MSBUILD_REBUILD)

dbuild18_3:
cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v18_3;Platform=AnyCPU $(MSBUILD_REBUILD)

dbuild18_6:
cd msbuild\dbuild && $(MSBUILD) dbuild.csproj /p:Configuration=Release-v18_6;Platform=AnyCPU $(MSBUILD_REBUILD)

dbuild18_all: dbuild18_0 dbuild18_1 dbuild18_3 dbuild18_6

mago:
cd ..\..\mago && devenv /Build "Release|Win32" /Project "MagoNatDE" magodbg_2010.sln
cd ..\..\mago && devenv /Build "Release|x64" /Project "MagoRemote" magodbg_2010.sln
cd ..\..\mago && devenv /Build "Release StaticDE|Win32" /Project "MagoNatCC" magodbg_2010.sln

mago_vs15:
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 /target:DebugEngine\MagoNatDE MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=x64;PlatformToolset=v141 /target:DebugEngine\MagoRemote MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=Win32;PlatformToolset=v141" /target:Expression\MagoNatCC MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 /target:DebugEngine\MagoNatDE /verbosity:quiet MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=x64;PlatformToolset=v141 /target:DebugEngine\MagoRemote /verbosity:quiet MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=Win32;PlatformToolset=v141" /target:Expression\MagoNatCC /verbosity:quiet MagoDbg_2010.sln

mago_vs16:
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 /target:DebugEngine\MagoNatDE MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=x64;PlatformToolset=v142 /target:DebugEngine\MagoRemote MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=Win32;PlatformToolset=v142" /target:Expression\MagoNatCC MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 /target:DebugEngine\MagoNatDE /verbosity:quiet MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=x64;PlatformToolset=v142 /target:DebugEngine\MagoRemote /verbosity:quiet MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=Win32;PlatformToolset=v142" /target:Expression\MagoNatCC /verbosity:quiet MagoDbg_2010.sln

mago_vs17:
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 /target:DebugEngine\MagoNatDE MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=x64;PlatformToolset=v143 /target:DebugEngine\MagoRemote MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=Win32;PlatformToolset=v143" /target:Expression\MagoNatCC MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 /target:DebugEngine\MagoNatDE /verbosity:quiet MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=x64;PlatformToolset=v143 /target:DebugEngine\MagoNatDE /verbosity:quiet MagoDbg_2010.sln
cd ..\..\mago && msbuild /p:Configuration=Release;Platform=x64;PlatformToolset=v143 /target:DebugEngine\MagoRemote /verbosity:quiet MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=Win32;PlatformToolset=v143" /target:Expression\MagoNatCC /verbosity:quiet MagoDbg_2010.sln

magocc_x64:
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=x64;PlatformToolset=v143" /target:Expression\MagoNatCC MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=x64;PlatformToolset=v143" /target:Expression\MagoNatCC /verbosity:quiet MagoDbg_2010.sln

magocc_arm64:
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=ARM64;PlatformToolset=v143" /target:Expression\MagoNatCC MagoDbg_2010.sln
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=ARM64;PlatformToolset=v143" /target:Expression\MagoNatCC /verbosity:quiet MagoDbg_2010.sln

mago_mi:
cd ..\..\mago && msbuild "/p:Configuration=Release StaticDE;Platform=x64;PlatformToolset=v143" /target:MagoMI\mago-mi /verbosity:quiet MagoDbg_2010.sln

magogc:
cd ..\..\mago && devenv /Build "Release|Win32" /Project "MagoGC" magodbg_2010.sln
Expand All @@ -236,19 +250,19 @@ cv2pdb:
cd ..\..\cv2pdb\trunk && devenv /Project "dumplines" /Build "Release|Win32" src\cv2pdb_vs12.sln

cv2pdb_vs15:
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 src\cv2pdb.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 src\dviewhelper\dviewhelper.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 src\dumplines.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 /verbosity:quiet src\cv2pdb.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 /verbosity:quiet src\dviewhelper\dviewhelper.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v141 /verbosity:quiet src\dumplines.vcxproj

cv2pdb_vs16:
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 src\cv2pdb.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 src\dviewhelper\dviewhelper.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 src\dumplines.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 /verbosity:quiet src\cv2pdb.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 /verbosity:quiet src\dviewhelper\dviewhelper.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v142 /verbosity:quiet src\dumplines.vcxproj

cv2pdb_vs17:
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 src\cv2pdb.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 src\dviewhelper\dviewhelper.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 src\dumplines.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 /verbosity:quiet src\cv2pdb.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 /verbosity:quiet src\dviewhelper\dviewhelper.vcxproj
cd ..\..\cv2pdb\trunk && msbuild /p:Configuration=Release;Platform=Win32;PlatformToolset=v143 /verbosity:quiet src\dumplines.vcxproj

dcxxfilt: $(DCXXFILT_EXE)
$(DCXXFILT_EXE): tools\dcxxfilt.d
Expand All @@ -259,7 +273,7 @@ $(DCXXFILT_EXE): tools\dcxxfilt.d
# create installer

install_release_modules: install_modules visuald_vs_arm64 fake_dparser cv2pdb_vs17 \
mago_vs17 magocc_x64 magocc_arm64 magogc magogc_ldc \
mago_vs17 magocc_x64 magocc_arm64 magogc magogc_ldc mago_mi \
dbuild12 dbuild14 dbuild15

install_vs: install_release_modules install_only
Expand Down
4 changes: 2 additions & 2 deletions VERSION
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#define VERSION_MAJOR 1
#define VERSION_MINOR 5
#define VERSION_REVISION 0
#define VERSION_BETA -beta
#define VERSION_BUILD 2
#define VERSION_BETA -rc
#define VERSION_BUILD 1
16 changes: 8 additions & 8 deletions appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@ environment:

# cache relative to C:\projects\visuald
cache:
- C:\projects\cache\dmd2109_1.7z
- C:\projects\cache\dmd2111_0.7z
- C:\projects\cache\cd851.zip
- C:\projects\cache\VisualD-v0.50.1.exe
- C:\projects\cache\VisualD-v1.4.1.exe
- C:\projects\cache\binutils-2.25.tar.gz

#matrix:
Expand All @@ -55,10 +55,10 @@ install:
# Download & extract D compiler
- ps: |
If ($Env:D_COMPILER -eq 'dmd') {
If (-not (Test-Path 'cache\dmd2109_1.7z')) {
Start-FileDownload 'http://downloads.dlang.org/releases/2.x/2.109.1/dmd.2.109.1.windows.7z' -FileName 'cache\dmd2109_1.7z'
If (-not (Test-Path 'cache\dmd2111_0.7z')) {
Start-FileDownload 'http://downloads.dlang.org/releases/2.x/2.111.0/dmd.2.111.0.windows.7z' -FileName 'cache\dmd2111_0.7z'
}
7z x cache\dmd2109_1.7z > $null
7z x cache\dmd2111_0.7z > $null
Set-Item -path env:DMD -value c:\projects\dmd2\windows\bin\dmd.exe
} ElseIf ($Env:D_COMPILER -eq 'dmd-nightly') {
Start-FileDownload 'http://nightlies.dlang.org/dmd-nightly/dmd.master.windows.7z' -FileName 'dmd2.7z'
Expand All @@ -79,10 +79,10 @@ install:
copy c:\projects\dm\bin\coffimplib.exe c:\projects\dmd2\windows\bin
# Download & install Visual D
- ps: |
If (-not (Test-Path 'cache\VisualD-v1.3.1.exe')) {
Start-FileDownload 'https://github.com/dlang/visuald/releases/download/v1.3.1/VisualD-v1.3.1.exe' -FileName 'cache\VisualD-v1.3.1.exe'
If (-not (Test-Path 'cache\VisualD-v1.4.1.exe')) {
Start-FileDownload 'https://github.com/dlang/visuald/releases/download/v1.4.1/VisualD-v1.4.1.exe' -FileName 'cache\VisualD-v1.4.1.exe'
}
- cache\VisualD-v1.3.1.exe /S
- cache\VisualD-v1.4.1.exe /S
# configure DMD path
- reg add "HKLM\SOFTWARE\DMD" /v InstallationFolder /t REG_SZ /d c:\projects /reg:32 /f
# disable link dependencies monitoring, fails on AppVeyor server
Expand Down
Loading
Loading