summaryrefslogtreecommitdiff
path: root/.github/workflows/windows.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/windows.yml')
-rw-r--r--.github/workflows/windows.yml135
1 files changed, 135 insertions, 0 deletions
diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml
new file mode 100644
index 00000000000..9e43a5802c8
--- /dev/null
+++ b/.github/workflows/windows.yml
@@ -0,0 +1,135 @@
+name: windows
+
+on:
+ pull_request:
+ schedule:
+ - cron: '0 7 * * SUN'
+
+jobs:
+ build:
+ strategy:
+ matrix:
+ include:
+ - name: VS2017WChar
+ vmimage: windows-2016
+ mpctype: vs2017
+ BuildPlatform: x64
+ BuildConfiguration: Debug
+ vcpkgarch: x64-windows
+ vcpkglibdir: debug/lib
+ vcpkgpackages: 'openssl xerces-c[xmlch-wchar]'
+ OptionalFeatures: uses_wchar=1
+ - name: VS2017Debug64
+ vmimage: windows-2016
+ mpctype: vs2017
+ BuildPlatform: x64
+ BuildConfiguration: Debug
+ vcpkgarch: x64-windows
+ vcpkglibdir: debug/lib
+ vcpkgpackages: openssl xerces-c
+ - name: VS2017Release64
+ vmimage: windows-2016
+ mpctype: vs2017
+ BuildPlatform: x64
+ BuildConfiguration: Release
+ vcpkgarch: x64-windows
+ vcpkglibdir: lib
+ vcpkgpackages: openssl xerces-c
+ - name: VS2019WChar
+ vmimage: windows-2019
+ mpctype: vs2019
+ BuildPlatform: x64
+ BuildConfiguration: Debug
+ vcpkgarch: x64-windows
+ vcpkglibdir: debug/lib
+ vcpkgpackages: 'openssl xerces-c[xmlch-wchar]'
+ OptionalFeatures: uses_wchar=1
+ - name: VS2019Debug64
+ vmimage: windows-2019
+ mpctype: vs2019
+ BuildPlatform: x64
+ BuildConfiguration: Debug
+ vcpkgarch: x64-windows
+ vcpkglibdir: debug/lib
+ vcpkgpackages: openssl xerces-c
+ - name: VS2019Release64
+ vmimage: windows-2019
+ mpctype: vs2019
+ BuildPlatform: x64
+ BuildConfiguration: Release
+ vcpkgarch: x64-windows
+ vcpkglibdir: lib
+ vcpkgpackages: openssl xerces-c
+ - name: VS2019Debug32
+ vmimage: windows-2019
+ mpctype: vs2019
+ BuildPlatform: Win32
+ BuildConfiguration: Debug
+ vcpkgarch: x86-windows
+ vcpkglibdir: debug/lib
+ vcpkgpackages: openssl xerces-c
+ - name: VS2019Release32
+ vmimage: windows-2019
+ mpctype: vs2019
+ BuildPlatform: Win32
+ BuildConfiguration: Release
+ vcpkgarch: x86-windows
+ vcpkglibdir: lib
+ vcpkgpackages: openssl xerces-c
+ runs-on: ${{ matrix.vmimage }}
+ name: ${{ matrix.name }}
+ env:
+ ACE_ROOT: ${{ github.workspace }}/ACE
+ TAO_ROOT: ${{ github.workspace }}/TAO
+ MPC_ROOT: ${{ github.workspace }}/MPC
+ VCPKG_ROOT: ${{ github.workspace }}/vcpkg
+ XERCESC_INCDIR: ${{ github.workspace }}/vcpkg/installed/${{ matrix.vcpkgarch }}/include
+ XERCESC_LIBDIR: ${{ github.workspace }}/vcpkg/installed/${{ matrix.vcpkgarch }}/${{ matrix.vcpkglibdir }}
+ SSL_INCDIR: ${{ github.workspace }}/vcpkg/installed/${{ matrix.vcpkgarch }}/include
+ SSL_LIBDIR: ${{ github.workspace }}/vcpkg/installed/${{ matrix.vcpkgarch }}/${{ matrix.vcpkglibdir }}
+ steps:
+ - name: checkout ACE/TAO
+ uses: actions/checkout@v2
+ - name: checkout MPC
+ uses: actions/checkout@v2
+ with:
+ repository: DOCGroup/MPC
+ path: MPC
+ - name: Install vcpkg
+ uses: lukka/run-vcpkg@v3
+ with:
+ vcpkgGitCommitId: f6948aeb686c015d7b582aa4d76702a2f92602b1
+ vcpkgArguments: --recurse ${{ matrix.vcpkgpackages }}
+ vcpkgTriplet: ${{ matrix.vcpkgarch }}
+ appendedCacheKey: ${{ matrix.name }}
+ - name: create $ACE_ROOT/ace/config.h
+ run: |
+ '#include "ace/config-win32.h"' > ${env:ACE_ROOT}/ace/config.h
+ shell: pwsh
+ - name: create $ACE_ROOT/bin/MakeProjectCreator/config/default.features
+ run: |
+ echo "ipv6=1" | out-file -encoding ASCII ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
+ echo "xerces3=1" | out-file -encoding ASCII ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
+ echo "ssl=1" | out-file -append -encoding ASCII ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
+ echo "openssl11=1" | out-file -append -encoding ASCII ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
+ echo "versioned_namespace=1" | out-file -append -encoding ASCII ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
+ shell: pwsh
+ - name: Add optional features ${{ matrix.OptionalFeatures }}
+ run: |
+ echo "${{ matrix.OptionalFeatures }}" | out-file -append -encoding ASCII ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
+ shell: pwsh
+ if: matrix.OptionalFeatures != ''
+ - name: Run mwc.pl on $(TAO_ROOT)/TAO_ACE.mwc
+ run: |
+ perl ${env:ACE_ROOT}/bin/mwc.pl -type ${{ matrix.mpctype }} ${env:TAO_ROOT}/TAO_ACE.mwc -workers 4
+ shell: pwsh
+ - name: Run mwc.pl on $(ACE_ROOT)/tests/tests.mwc
+ run: |
+ perl ${env:ACE_ROOT}/bin/mwc.pl -type ${{ matrix.mpctype }} ${env:ACE_ROOT}/tests/tests.mwc -workers 4
+ shell: pwsh
+ - name: Setup msbuild
+ uses: microsoft/setup-msbuild@v1.0.1
+ - name: Build solution TAO/TAO_ACE.sln
+ run: msbuild -maxcpucount -p:Platform=${{ matrix.BuildPlatform }} -p:Configuration=${{ matrix.BuildConfiguration }} TAO/TAO_ACE.sln
+ - name: Build solution ACE/tests/tests.sln
+ run: msbuild -maxcpucount -p:Platform=${{ matrix.BuildPlatform }} -p:Configuration=${{ matrix.BuildConfiguration }} ACE/tests/tests.sln