mimalloc/azure-pipelines.yml

198 lines
5.5 KiB
YAML
Raw Permalink Normal View History

# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml
trigger:
2021-01-31 04:11:02 +03:00
branches:
include:
2021-01-31 04:14:11 +03:00
- master
- dev
- dev-slice
2021-01-31 04:11:02 +03:00
tags:
include:
2021-01-31 04:14:11 +03:00
- v*
jobs:
- job:
displayName: Windows
pool:
vmImage:
2022-04-15 02:47:43 +03:00
windows-2022
strategy:
matrix:
Debug:
BuildType: debug
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON
MSBuildConfiguration: Debug
Release:
BuildType: release
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release
MSBuildConfiguration: Release
Secure:
BuildType: secure
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=ON
MSBuildConfiguration: Release
steps:
- task: CMake@1
inputs:
workingDirectory: $(BuildType)
cmakeArgs: .. $(cmakeExtraArgs)
- task: MSBuild@1
inputs:
solution: $(BuildType)/libmimalloc.sln
configuration: '$(MSBuildConfiguration)'
2020-09-06 19:09:00 +03:00
msbuildArguments: -m
2024-08-22 03:13:51 +03:00
- script: ctest --verbose --timeout 180 -C $(MSBuildConfiguration)
2020-09-06 19:10:38 +03:00
workingDirectory: $(BuildType)
displayName: CTest
#- script: $(BuildType)\$(BuildType)\mimalloc-test-stress
# displayName: TestStress
#- upload: $(Build.SourcesDirectory)/$(BuildType)
# artifact: mimalloc-windows-$(BuildType)
2019-07-11 08:13:34 +03:00
- job:
displayName: Linux
pool:
vmImage:
2022-11-08 01:55:36 +03:00
ubuntu-22.04
2019-07-11 08:13:34 +03:00
strategy:
matrix:
Debug:
CC: gcc
CXX: g++
2019-07-11 08:21:08 +03:00
BuildType: debug
2019-11-22 03:10:21 +03:00
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON
2019-07-11 08:13:34 +03:00
Release:
CC: gcc
CXX: g++
2019-07-11 08:21:08 +03:00
BuildType: release
2019-07-11 08:41:53 +03:00
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release
2019-11-22 03:10:21 +03:00
Secure:
CC: gcc
CXX: g++
BuildType: secure
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=ON
Debug++:
CC: gcc
CXX: g++
BuildType: debug-cxx
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON -DMI_USE_CXX=ON
2019-07-11 08:41:53 +03:00
Debug Clang:
CC: clang
CXX: clang++
2019-07-11 08:41:53 +03:00
BuildType: debug-clang
2019-11-22 03:10:21 +03:00
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON
2019-07-11 08:41:53 +03:00
Release Clang:
CC: clang
CXX: clang++
2019-07-11 08:41:53 +03:00
BuildType: release-clang
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release
2019-11-22 03:10:21 +03:00
Secure Clang:
CC: clang
CXX: clang++
BuildType: secure-clang
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=ON
Debug++ Clang:
CC: clang
CXX: clang++
BuildType: debug-clang-cxx
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON -DMI_USE_CXX=ON
2023-03-29 21:52:46 +03:00
Debug ASAN Clang:
CC: clang
CXX: clang++
BuildType: debug-asan-clang
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON -DMI_TRACK_ASAN=ON
2023-03-29 22:13:59 +03:00
Debug UBSAN Clang:
CC: clang
CXX: clang++
BuildType: debug-ubsan-clang
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON -DMI_DEBUG_UBSAN=ON
2024-06-04 07:07:48 +03:00
Debug TSAN Clang++:
CC: clang
CXX: clang++
BuildType: debug-tsan-clang-cxx
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=RelWithDebInfo -DMI_USE_CXX=ON -DMI_DEBUG_TSAN=ON
2024-08-22 01:34:22 +03:00
Debug Guarded Clang:
CC: clang
CXX: clang
BuildType: debug-guarded-clang
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=RelWithDebInfo -DMI_DEBUG_FULL=ON -DMI_DEBUG_GUARDED=ON
2023-03-29 21:52:46 +03:00
steps:
- task: CMake@1
inputs:
2019-07-11 08:13:34 +03:00
workingDirectory: $(BuildType)
2019-07-11 08:21:08 +03:00
cmakeArgs: .. $(cmakeExtraArgs)
2019-07-11 08:22:44 +03:00
- script: make -j$(nproc) -C $(BuildType)
displayName: Make
2024-08-22 03:13:51 +03:00
- script: ctest --verbose --timeout 180
2020-09-06 19:09:00 +03:00
workingDirectory: $(BuildType)
displayName: CTest
2024-08-22 01:34:22 +03:00
env:
MIMALLOC_DEBUG_GUARDED_MAX: 1024
2020-05-05 20:46:39 +03:00
# - upload: $(Build.SourcesDirectory)/$(BuildType)
# artifact: mimalloc-ubuntu-$(BuildType)
2019-07-11 08:13:34 +03:00
- job:
displayName: macOS
pool:
vmImage:
macOS-latest
strategy:
matrix:
Debug:
BuildType: debug
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON
Release:
BuildType: release
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release
Secure:
BuildType: secure
cmakeExtraArgs: -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=ON
steps:
- task: CMake@1
inputs:
workingDirectory: $(BuildType)
cmakeArgs: .. $(cmakeExtraArgs)
- script: make -j$(sysctl -n hw.ncpu) -C $(BuildType)
displayName: Make
2024-08-22 03:13:51 +03:00
- script: ctest --verbose --timeout 180
2020-09-06 19:09:00 +03:00
workingDirectory: $(BuildType)
displayName: CTest
2020-05-05 20:46:39 +03:00
# - upload: $(Build.SourcesDirectory)/$(BuildType)
# artifact: mimalloc-macos-$(BuildType)
2020-09-06 08:36:59 +03:00
# - job:
# displayName: Windows-2017
# pool:
# vmImage:
# vs2017-win2016
# strategy:
# matrix:
# Debug:
# BuildType: debug
# cmakeExtraArgs: -A x64 -DCMAKE_BUILD_TYPE=Debug -DMI_DEBUG_FULL=ON
# MSBuildConfiguration: Debug
# Release:
# BuildType: release
# cmakeExtraArgs: -A x64 -DCMAKE_BUILD_TYPE=Release
# MSBuildConfiguration: Release
# Secure:
# BuildType: secure
# cmakeExtraArgs: -A x64 -DCMAKE_BUILD_TYPE=Release -DMI_SECURE=ON
# MSBuildConfiguration: Release
# steps:
# - task: CMake@1
# inputs:
# workingDirectory: $(BuildType)
# cmakeArgs: .. $(cmakeExtraArgs)
# - task: MSBuild@1
# inputs:
# solution: $(BuildType)/libmimalloc.sln
# configuration: '$(MSBuildConfiguration)'
# - script: |
# cd $(BuildType)
2024-08-22 03:13:51 +03:00
# ctest --verbose --timeout 180
2020-09-06 08:36:59 +03:00
# displayName: CTest