@@ -681,7 +681,7 @@ jobs:
681681 win64-msvc-short :
682682 name : ' Win64 native [msvc] (Short running functional tests)'
683683 runs-on : windows-2022
684- timeout-minutes : 120
684+ timeout-minutes : 360
685685 env :
686686 PYTHONUTF8 : 1
687687 CI_VCPKG_TAG : ' 2021.05.12'
@@ -700,18 +700,7 @@ jobs:
700700 - name : Checkout
701701 uses : actions/checkout@v4
702702
703- - name : Merge base branch (PR only)
704- if : github.event_name == 'pull_request'
705- shell : pwsh
706- run : |
707- git config --global user.email "ci@ci.ci"
708- git config --global user.name "ci"
709- git config core.filemode false
710- git reset --hard
711- git fetch origin ${{ github.base_ref }}
712- git merge origin/${{ github.base_ref }}
713-
714- # Qt static build - cached by Qt download URL + MSBuild version.
703+ # Qt static build - cached by Qt download URL.
715704 # This is a large, slow build; the cache makes it nearly free on re-runs.
716705 - name : Restore Qt static cache
717706 id : qt-cache
@@ -729,41 +718,15 @@ jobs:
729718
730719 - name : Build Qt static
731720 if : steps.qt-cache.outputs.cache-hit != 'true'
732- shell : cmd
721+ shell : pwsh
733722 run : |
734- curl -L -o %QT_LOCAL_PATH% %QT_DOWNLOAD_URL%
735- tar -xf %QT_LOCAL_PATH% -C C:\
736- call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
737- cd %QT_SOURCE_DIR%
738- mkdir build
739- cd build
740- ..\configure -release -silent -opensource -confirm-license -opengl desktop ^
741- -static -static-runtime -mp -qt-zlib -qt-pcre -qt-libpng ^
742- -nomake examples -nomake tests -nomake tools ^
743- -no-angle -no-dbus -no-gif -no-gtk -no-ico -no-icu -no-libjpeg ^
744- -no-libudev -no-sql-sqlite -no-sql-odbc -no-sqlite -no-vulkan ^
745- -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcharts ^
746- -skip qtconnectivity -skip qtdatavis3d -skip qtdeclarative -skip doc ^
747- -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects ^
748- -skip qtimageformats -skip qtlocation -skip qtlottie ^
749- -skip qtmacextras -skip qtmultimedia -skip qtnetworkauth ^
750- -skip qtpurchasing -skip qtquick3d -skip qtquickcontrols ^
751- -skip qtquickcontrols2 -skip qtquicktimeline -skip qtremoteobjects ^
752- -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus ^
753- -skip qtserialport -skip qtspeech -skip qtsvg ^
754- -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel ^
755- -skip qtwebengine -skip qtwebglplugin -skip qtwebsockets ^
756- -skip qtwebview -skip qtx11extras -skip qtxmlpatterns ^
757- -no-openssl -no-feature-bearermanagement -no-feature-printdialog ^
758- -no-feature-printer -no-feature-printpreviewdialog ^
759- -no-feature-printpreviewwidget -no-feature-sql -no-feature-sqlmodel ^
760- -no-feature-textbrowser -no-feature-textmarkdownwriter ^
761- -no-feature-textodfwriter -no-feature-xml ^
762- -prefix %QTBASEDIR%
763- C:\jom\jom.exe
764- C:\jom\jom.exe install
765-
766- # vcpkg tools (compilers/bootstrapper) - cached by tag + MSBuild version.
723+ curl -L -o $env:QT_LOCAL_PATH $env:QT_DOWNLOAD_URL
724+ Write-Host "Extracting Qt source..."
725+ Expand-Archive -Path $env:QT_LOCAL_PATH -DestinationPath C:\ -Force
726+ $vsPath = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath
727+ cmd /c "`"$vsPath\VC\Auxiliary\Build\vcvars64.bat`" && cd /d $env:QT_SOURCE_DIR && mkdir build && cd build && ..\configure -release -silent -opensource -confirm-license -opengl desktop -static -static-runtime -mp -qt-zlib -qt-pcre -qt-libpng -nomake examples -nomake tests -nomake tools -no-angle -no-dbus -no-gif -no-gtk -no-ico -no-icu -no-libjpeg -no-libudev -no-sql-sqlite -no-sql-odbc -no-sqlite -no-vulkan -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtdeclarative -skip doc -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects -skip qtimageformats -skip qtlocation -skip qtlottie -skip qtmacextras -skip qtmultimedia -skip qtnetworkauth -skip qtpurchasing -skip qtquick3d -skip qtquickcontrols -skip qtquickcontrols2 -skip qtquicktimeline -skip qtremoteobjects -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qtsvg -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebglplugin -skip qtwebsockets -skip qtwebview -skip qtx11extras -skip qtxmlpatterns -no-openssl -no-feature-bearermanagement -no-feature-printdialog -no-feature-printer -no-feature-printpreviewdialog -no-feature-printpreviewwidget -no-feature-sql -no-feature-sqlmodel -no-feature-textbrowser -no-feature-textmarkdownwriter -no-feature-textodfwriter -no-feature-xml -prefix $env:QTBASEDIR && C:\jom\jom.exe && C:\jom\jom.exe install"
728+
729+ # vcpkg tools (compilers/bootstrapper) - cached by tag.
767730 - name : Restore vcpkg tools cache
768731 uses : actions/cache@v4
769732 with :
@@ -796,11 +759,13 @@ jobs:
796759 .\vcpkg version
797760
798761 - name : Build (MSVC)
762+ shell : pwsh
799763 run : |
800- cd % GITHUB_WORKSPACE%
764+ cd $env: GITHUB_WORKSPACE
801765 python build_msvc\msvc-autogen.py
802- set PATH=C:\jom;C:\Python39;C:\Python39\Scripts;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin;%PATH%
803- msbuild build_msvc\bitcoin.sln -property:Configuration=Release -maxCpuCount -verbosity:minimal -noLogo
766+ $vsPath = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath
767+ $msbuild = "$vsPath\MSBuild\Current\Bin\MSBuild.exe"
768+ & $msbuild build_msvc\bitcoin.sln /property:Configuration=Release /maxCpuCount /verbosity:minimal /noLogo
804769
805770 - name : Run short functional tests
806771 shell : cmd
@@ -825,7 +790,7 @@ jobs:
825790 win64-msvc-long :
826791 name : ' Win64 native [msvc] (Long running functional tests + unit tests)'
827792 runs-on : windows-2022
828- timeout-minutes : 120
793+ timeout-minutes : 360
829794 env :
830795 PYTHONUTF8 : 1
831796 CI_VCPKG_TAG : ' 2021.05.12'
@@ -844,17 +809,6 @@ jobs:
844809 - name : Checkout
845810 uses : actions/checkout@v4
846811
847- - name : Merge base branch (PR only)
848- if : github.event_name == 'pull_request'
849- shell : pwsh
850- run : |
851- git config --global user.email "ci@ci.ci"
852- git config --global user.name "ci"
853- git config core.filemode false
854- git reset --hard
855- git fetch origin ${{ github.base_ref }}
856- git merge origin/${{ github.base_ref }}
857-
858812 - name : Restore Qt static cache
859813 id : qt-cache
860814 uses : actions/cache@v4
@@ -871,39 +825,13 @@ jobs:
871825
872826 - name : Build Qt static
873827 if : steps.qt-cache.outputs.cache-hit != 'true'
874- shell : cmd
828+ shell : pwsh
875829 run : |
876- curl -L -o %QT_LOCAL_PATH% %QT_DOWNLOAD_URL%
877- tar -xf %QT_LOCAL_PATH% -C C:\
878- call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
879- cd %QT_SOURCE_DIR%
880- mkdir build
881- cd build
882- ..\configure -release -silent -opensource -confirm-license -opengl desktop ^
883- -static -static-runtime -mp -qt-zlib -qt-pcre -qt-libpng ^
884- -nomake examples -nomake tests -nomake tools ^
885- -no-angle -no-dbus -no-gif -no-gtk -no-ico -no-icu -no-libjpeg ^
886- -no-libudev -no-sql-sqlite -no-sql-odbc -no-sqlite -no-vulkan ^
887- -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcharts ^
888- -skip qtconnectivity -skip qtdatavis3d -skip qtdeclarative -skip doc ^
889- -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects ^
890- -skip qtimageformats -skip qtlocation -skip qtlottie ^
891- -skip qtmacextras -skip qtmultimedia -skip qtnetworkauth ^
892- -skip qtpurchasing -skip qtquick3d -skip qtquickcontrols ^
893- -skip qtquickcontrols2 -skip qtquicktimeline -skip qtremoteobjects ^
894- -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus ^
895- -skip qtserialport -skip qtspeech -skip qtsvg ^
896- -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel ^
897- -skip qtwebengine -skip qtwebglplugin -skip qtwebsockets ^
898- -skip qtwebview -skip qtx11extras -skip qtxmlpatterns ^
899- -no-openssl -no-feature-bearermanagement -no-feature-printdialog ^
900- -no-feature-printer -no-feature-printpreviewdialog ^
901- -no-feature-printpreviewwidget -no-feature-sql -no-feature-sqlmodel ^
902- -no-feature-textbrowser -no-feature-textmarkdownwriter ^
903- -no-feature-textodfwriter -no-feature-xml ^
904- -prefix %QTBASEDIR%
905- C:\jom\jom.exe
906- C:\jom\jom.exe install
830+ curl -L -o $env:QT_LOCAL_PATH $env:QT_DOWNLOAD_URL
831+ Write-Host "Extracting Qt source..."
832+ Expand-Archive -Path $env:QT_LOCAL_PATH -DestinationPath C:\ -Force
833+ $vsPath = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath
834+ cmd /c "`"$vsPath\VC\Auxiliary\Build\vcvars64.bat`" && cd /d $env:QT_SOURCE_DIR && mkdir build && cd build && ..\configure -release -silent -opensource -confirm-license -opengl desktop -static -static-runtime -mp -qt-zlib -qt-pcre -qt-libpng -nomake examples -nomake tests -nomake tools -no-angle -no-dbus -no-gif -no-gtk -no-ico -no-icu -no-libjpeg -no-libudev -no-sql-sqlite -no-sql-odbc -no-sqlite -no-vulkan -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtdeclarative -skip doc -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects -skip qtimageformats -skip qtlocation -skip qtlottie -skip qtmacextras -skip qtmultimedia -skip qtnetworkauth -skip qtpurchasing -skip qtquick3d -skip qtquickcontrols -skip qtquickcontrols2 -skip qtquicktimeline -skip qtremoteobjects -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qtsvg -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebglplugin -skip qtwebsockets -skip qtwebview -skip qtx11extras -skip qtxmlpatterns -no-openssl -no-feature-bearermanagement -no-feature-printdialog -no-feature-printer -no-feature-printpreviewdialog -no-feature-printpreviewwidget -no-feature-sql -no-feature-sqlmodel -no-feature-textbrowser -no-feature-textmarkdownwriter -no-feature-textodfwriter -no-feature-xml -prefix $env:QTBASEDIR && C:\jom\jom.exe && C:\jom\jom.exe install"
907835
908836 - name : Restore vcpkg tools cache
909837 uses : actions/cache@v4
@@ -936,11 +864,13 @@ jobs:
936864 .\vcpkg version
937865
938866 - name : Build (MSVC)
867+ shell : pwsh
939868 run : |
940- cd % GITHUB_WORKSPACE%
869+ cd $env: GITHUB_WORKSPACE
941870 python build_msvc\msvc-autogen.py
942- set PATH=C:\jom;C:\Python39;C:\Python39\Scripts;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin;%PATH%
943- msbuild build_msvc\bitcoin.sln -property:Configuration=Release -maxCpuCount -verbosity:minimal -noLogo
871+ $vsPath = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -property installationPath
872+ $msbuild = "$vsPath\MSBuild\Current\Bin\MSBuild.exe"
873+ & $msbuild build_msvc\bitcoin.sln /property:Configuration=Release /maxCpuCount /verbosity:minimal /noLogo
944874
945875 - name : Run unit tests
946876 shell : cmd
0 commit comments