variables: ACE_ROOT: $(Build.SourcesDirectory)/ACE TAO_ROOT: $(Build.SourcesDirectory)/TAO MPC_ROOT: $(Build.SourcesDirectory)/ACE/MPC system.prefergit: true resources: - repo: self fetchDepth: 1 jobs: - job: VisualStudio2019 timeoutInMinutes: 120 pool: vmImage: windows-2019 strategy: matrix: WChar: BuildPlatform: x64 BuildConfiguration: Debug vcpkgarch: x64-windows vcpkglibdir: debug\lib vcpkgpackages: 'openssl xerces-c[xmlch_wchar]' OptionalFeatures: uses_wchar=1 Debug64: BuildPlatform: x64 BuildConfiguration: Debug vcpkgarch: x64-windows vcpkglibdir: debug\lib vcpkgpackages: openssl xerces-c Release64: BuildPlatform: x64 BuildConfiguration: Release vcpkgarch: x64-windows vcpkglibdir: lib vcpkgpackages: openssl xerces-c Debug32: BuildPlatform: Win32 BuildConfiguration: Debug vcpkgarch: x86-windows vcpkglibdir: debug\lib vcpkgpackages: openssl xerces-c Release32: BuildPlatform: Win32 BuildConfiguration: Release vcpkgarch: x86-windows vcpkglibdir: lib vcpkgpackages: openssl xerces-c variables: VCPKG_ROOT: $(Build.SourcesDirectory)\vcpkg XERCESC_INCDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\include XERCESC_LIBDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\$(vcpkglibdir) SSL_INCDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\include SSL_LIBDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\$(vcpkglibdir) steps: - powershell: | git clone -q --depth 1 git://github.com/Microsoft/vcpkg.git $(VCPKG_ROOT) $(VCPKG_ROOT)\bootstrap-vcpkg.bat $(VCPKG_ROOT)\vcpkg install --recurse --triplet $(vcpkgarch) $(vcpkgpackages) displayName: Install additional packages using vcpkg - powershell: | '#include "ace/config-win32.h"' > $(ACE_ROOT)/ace/config.h displayName: Create config.h file - powershell: | echo "xerces3=1" | out-file -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features echo "ssl=1" | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features echo "versioned_namespace=1" | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features displayName: Create default.features file - powershell: | echo $(OptionalFeatures) | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features displayName: Add optional features ($(OptionalFeatures)) condition: and(succeeded(), ne(variables['OptionalFeatures'], '')) - powershell: git clone -q --depth 1 git://github.com/DOCGroup/MPC.git $(MPC_ROOT) displayName: git clone MPC - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type vs2019 $(TAO_ROOT)/TAO_ACE.mwc -workers 4 displayName: Run script mwc.pl on $(TAO_ROOT)/TAO_ACE.mwc - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type vs2019 $(ACE_ROOT)/tests/tests.mwc -workers 4 displayName: Run script mwc.pl on $(ACE_ROOT)/tests/tests.mwc - task: VSBuild@1 displayName: Build solution TAO/TAO_ACE.sln inputs: solution: TAO/TAO_ACE.sln platform: $(BuildPlatform) configuration: $(BuildConfiguration) maximumCpuCount: true - task: VSBuild@1 displayName: Build solution ACE/tests/tests.sln inputs: solution: ACE/tests/tests.sln platform: $(BuildPlatform) configuration: $(BuildConfiguration) maximumCpuCount: true - job: VisualStudio2017 timeoutInMinutes: 120 pool: vmImage: vs2017-win2016 strategy: matrix: WChar: BuildPlatform: x64 BuildConfiguration: Debug vcpkgarch: x64-windows vcpkglibdir: debug\lib vcpkgpackages: 'openssl xerces-c[xmlch_wchar]' OptionalFeatures: uses_wchar=1 Debug64: BuildPlatform: x64 BuildConfiguration: Debug vcpkgarch: x64-windows vcpkglibdir: debug\lib vcpkgpackages: openssl xerces-c Release64: BuildPlatform: x64 BuildConfiguration: Release vcpkgarch: x64-windows vcpkglibdir: lib vcpkgpackages: openssl xerces-c Debug32: BuildPlatform: Win32 BuildConfiguration: Debug vcpkgarch: x86-windows vcpkglibdir: debug\lib vcpkgpackages: openssl xerces-c Release32: BuildPlatform: Win32 BuildConfiguration: Release vcpkgarch: x86-windows vcpkglibdir: lib vcpkgpackages: openssl xerces-c variables: VCPKG_ROOT: $(Build.SourcesDirectory)\vcpkg XERCESC_INCDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\include XERCESC_LIBDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\$(vcpkglibdir) SSL_INCDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\include SSL_LIBDIR: $(VCPKG_ROOT)\installed\$(vcpkgarch)\$(vcpkglibdir) steps: - powershell: | git clone --depth 1 git://github.com/Microsoft/vcpkg.git $(VCPKG_ROOT) $(VCPKG_ROOT)\bootstrap-vcpkg.bat $(VCPKG_ROOT)\vcpkg install --recurse --triplet $(vcpkgarch) $(vcpkgpackages) displayName: Install additional packages using vcpkg - powershell: | '#include "ace/config-win32.h"' > $(ACE_ROOT)/ace/config.h displayName: Create config.h file - powershell: | echo "xerces3=1" | out-file -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features echo "ssl=1" | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features echo "versioned_namespace=1" | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features displayName: Create default.features file - powershell: | echo $(OptionalFeatures) | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features displayName: Add optional features ($(OptionalFeatures)) condition: and(succeeded(), ne(variables['OptionalFeatures'], '')) - powershell: git clone --depth 1 git://github.com/DOCGroup/MPC.git $(MPC_ROOT) displayName: git clone MPC - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type vs2017 $(TAO_ROOT)/TAO_ACE.mwc -workers 4 displayName: Run script mwc.pl on $(TAO_ROOT)/TAO_ACE.mwc - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type vs2017 $(ACE_ROOT)/tests/tests.mwc -workers 4 displayName: Run script mwc.pl on $(ACE_ROOT)/tests/tests.mwc - task: VSBuild@1 displayName: Build solution TAO/TAO_ACE.sln inputs: solution: TAO/TAO_ACE.sln platform: $(BuildPlatform) configuration: $(BuildConfiguration) maximumCpuCount: true - task: VSBuild@1 displayName: Build solution ACE/tests/tests.sln inputs: solution: ACE/tests/tests.sln platform: $(BuildPlatform) configuration: $(BuildConfiguration) maximumCpuCount: true - job: VisualStudio2015 timeoutInMinutes: 90 pool: vmImage: vs2015-win2012r2 strategy: matrix: Debug64: BuildPlatform: x64 BuildConfiguration: Debug vcpkgarch: x64-windows vcpkglibdir: debug\lib Release64: BuildPlatform: x64 BuildConfiguration: Release vcpkgarch: x64-windows vcpkglibdir: lib variables: XERCESCROOT: $(Build.SourcesDirectory)\vcpkg\packages\xerces-c_$(vcpkgarch) SSL_ROOT: $(Build.SourcesDirectory)\vcpkg\packages\openssl-windows_$(vcpkgarch) SSL_LIBDIR: $(SSL_ROOT)\$(vcpkglibdir) XERCESC_LIBDIR: $(XERCESCROOT)\$(vcpkglibdir) steps: - powershell: | git clone --depth 1 git://github.com/Microsoft/vcpkg.git $(Build.SourcesDirectory)\vcpkg .\vcpkg\bootstrap-vcpkg.bat .\vcpkg\vcpkg.exe install --recurse --triplet $(vcpkgarch) openssl xerces-c displayName: vcpkg - powershell: | '#include "ace/config-win32.h"' > $(ACE_ROOT)/ace/config.h displayName: Create config.h file - powershell: | echo "xerces3=1" | out-file -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features echo "ssl=1" | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features echo "versioned_namespace=1" | out-file -append -encoding ASCII $(ACE_ROOT)\bin\MakeProjectCreator\config\default.features displayName: Create default.features file - powershell: git clone --depth 1 git://github.com/DOCGroup/MPC.git $(MPC_ROOT) displayName: git clone MPC - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type vc14 $(TAO_ROOT)/TAO_ACE.mwc -workers 4 displayName: Run script mwc.pl on $(TAO_ROOT)/TAO_ACE.mwc - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type vc14 $(ACE_ROOT)/tests/tests.mwc -workers 4 displayName: Run script mwc.pl on $(ACE_ROOT)/tests/tests.mwc - task: VSBuild@1 displayName: Build solution TAO\TAO_ACE.sln inputs: solution: TAO\TAO_ACE.sln platform: $(BuildPlatform) configuration: $(BuildConfiguration) maximumCpuCount: true - task: VSBuild@1 displayName: Build solution ACE\tests\tests.sln inputs: solution: ACE\tests\tests.sln platform: $(BuildPlatform) configuration: $(BuildConfiguration) maximumCpuCount: true - job: Linux timeoutInMinutes: 90 pool: vmImage: ubuntu-16.04 strategy: matrix: GCC4: CC: gcc CXX: g++ platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU GCC6: CC: gcc-6 CXX: g++-6 PackageDeps: g++-6 platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU GCC7: CC: gcc-7 CXX: g++-7 PackageDeps: g++-7 platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU GCC8: CC: gcc-8 CXX: g++-8 PackageDeps: g++-8 platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU CLANG5: CC: clang-5.0 CXX: clang++-5.0 PackageDeps: clang-5.0 Repo: llvm-toolchain-$(lsb_release -cs)-5.0 platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux_clang.GNU CLANG6: CC: clang-6.0 CXX: clang++-6.0 PackageDeps: clang-6.0 Repo: llvm-toolchain-$(lsb_release -cs)-6.0 platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux_clang.GNU CLANG7: CC: clang-7 CXX: clang++-7 PackageDeps: clang-7 Repo: llvm-toolchain-$(lsb_release -cs)-7 platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux_clang.GNU steps: - script: | wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - sudo apt-add-repository "deb http://apt.llvm.org/$(lsb_release -cs)/ $(Repo) main" displayName: Add repository ($(Repo)) condition: and(succeeded(), ne(variables['Repo'], '')) - script: | sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt-get --yes update sudo apt-get --yes install libxerces-c-dev libssl-dev $(PackageDeps) displayName: install system package dependencies - powershell: | '#include "ace/config-linux.h"' > $(ACE_ROOT)/ace/config.h displayName: Create config.h file - powershell: | 'xerces3=1' > $(ACE_ROOT)/bin/MakeProjectCreator/config/default.features 'ssl=1' >> $(ACE_ROOT)/bin/MakeProjectCreator/config/default.features 'versioned_namespace=1' >> $(ACE_ROOT)/bin/MakeProjectCreator/config/default.features displayName: Create default.features file - powershell: | 'xerces3=1' > $(ACE_ROOT)/include/makeinclude/platform_macros.GNU 'ssl=1' >> $(ACE_ROOT)/include/makeinclude/platform_macros.GNU "$(platform_file)" >> $(ACE_ROOT)/include/makeinclude/platform_macros.GNU displayName: Create platform_macros file - powershell: git clone --depth 1 git://github.com/DOCGroup/MPC.git $(MPC_ROOT) displayName: git clone MPC - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type gnuace $(TAO_ROOT)/TAO_ACE.mwc -workers 4 displayName: Run mwc.pl on $(TAO_ROOT)/TAO_ACE.mwc - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type gnuace $(ACE_ROOT)/tests/tests.mwc -workers 4 displayName: Run mwc.pl on $(ACE_ROOT)/tests/tests.mwc - bash: make -j 6 -C TAO displayName: Build TAO project - bash: make -j 6 -C ACE/tests displayName: Build tests project - job: MacOSX timeoutInMinutes: 90 pool: vmImage: macOS-10.13 steps: - powershell: | '#include "ace/config-macosx.h"' > $(ACE_ROOT)/ace/config.h displayName: Create config.h file - powershell: | 'include $(ACE_ROOT)/include/makeinclude/platform_macosx.GNU' > $(ACE_ROOT)/include/makeinclude/platform_macros.GNU; displayName: Create platform_macros file - powershell: git clone --depth 1 git://github.com/DOCGroup/MPC.git $(MPC_ROOT) displayName: git clone MPC - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type gnuace $(TAO_ROOT)/TAO_ACE.mwc -workers 4 displayName: Run mwc.pl on $(TAO_ROOT)/TAO_ACE.mwc - powershell: perl $(ACE_ROOT)/bin/mwc.pl -type gnuace $(ACE_ROOT)/tests/tests.mwc -workers 4 displayName: Run mwc.pl on $(ACE_ROOT)/tests/tests.mwc - bash: make -j 6 -C TAO displayName: Build TAO project - bash: make -j 6 -C ACE/tests displayName: Build tests project