diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 9942ebf..d803ad3 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -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