add ld preload build to linux matrix

This commit is contained in:
Theo Butler
2019-05-18 11:07:50 +02:00
parent f5000c087f
commit f9b9523d0c

View File

@@ -2,75 +2,40 @@ resources:
- repo: self
phases:
- phase: LinuxSelfHost
queue:
name: 'Hosted Ubuntu 1604'
steps:
- script: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install -y ninja-build libc++-dev libc++abi-dev libc++abi1 libstdc++-7-dev
# sudo apt-get install clang-6.0 clang++-6.0
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-6.0 100
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
sudo update-alternatives --set cc /usr/bin/clang
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-6.0 100
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 100
sudo update-alternatives --set c++ /usr/bin/clang++
displayName: 'Install Build Dependencies'
- task: CMake@1
displayName: 'CMake .. -GNinja -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS="-stdlib=libstdc++ -std=c++17"'
inputs:
cmakeArgs: '.. -GNinja -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS="-stdlib=libstdc++ -std=c++17"'
- script: |
ninja
workingDirectory: build
failOnStderr: true
displayName: 'Compile'
- script: |
sudo cp libsnmallocshim.so /usr/local/lib/
sudo cp libsnmallocshim-1mib.so /usr/local/lib/
ninja clean
LD_PRELOAD=/usr/local/lib/libsnmallocshim.so ninja
ninja clean
LD_PRELOAD=/usr/local/lib/libsnmallocshim-1mib.so ninja
workingDirectory: build
failOnStderr: true
displayName: 'LD_PRELOAD Compile'
- phase: Linux
queue:
name: 'Hosted Ubuntu 1604'
parallel: 4
parallel: 5
matrix:
Clang_6 Debug:
CC: clang-6.0
CXX: clang++-6.0
BuildType: Debug
SelfHost: false
Clang_6 Release:
CC: clang-6.0
CXX: clang++-6.0
BuildType: Release
SelfHost: false
GCC_7 Debug:
CC: gcc-7
CXX: g++-7
BuildType: Debug
SelfHost: false
GCC_7 Release:
CC: gcc-7
CXX: g++-7
BuildType: Release
SelfHost: false
Self Host:
CC: clang-6.0
CXX: clang++-6.0
BuildType: Debug
SelfHost: true
steps:
- script: |
@@ -103,7 +68,15 @@ phases:
displayName: 'Compile'
- script: |
ctest -j 4 --output-on-failure -C $(BuildType)
if [ $(SelfHost) = false ]; then
ctest -j 4 --output-on-failure -C $(BuildType)
else
sudo cp libsnmallocshim.so libsnmallocshim-1mib.so /usr/local/lib/
ninja clean
LD_PRELOAD=/usr/local/lib/libsnmallocshim.so ninja
ninja clean
LD_PRELOAD=/usr/local/lib/libsnmallocshim-1mib.so ninja
fi
workingDirectory: build
failOnStderr: true