# NS3 CI script for CLANG # Any scheduled pipeline for CLANG should define a variable, named # "RELEASE", that has a value "weekly". Also, a variable "CLANG" should be set # to True. # We support CLANG 8 - 11 # The test is done under Linux. .weekly-build-clang: image: ubuntu:18.04 extends: .base-build only: variables: - $RELEASE == "weekly" - $CLANG_BUILD_ENABLE == "True" before_script: - apt-get --quiet update --yes - apt-get --quiet install gcc g++ python python-dev qt5-default openmpi-bin openmpi-common openmpi-doc libopenmpi-dev gsl-bin libgsl-dev ccache flex bison libfl-dev sqlite sqlite3 libsqlite3-dev libxml2 libxml2-dev libgtk2.0-0 libgtk2.0-dev libboost-all-dev libgsl23 --yes - apt-get --quiet install software-properties-common gnupg wget --yes - echo -en "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-$CLANG main \n deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-$CLANG main" > /etc/apt/sources.list.d/llvm.list - wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - - apt-get --quiet update --yes - apt-get --quiet install ca-certificates build-essential clang-$CLANG clang-tools-$CLANG clang-format-$CLANG libfuzzer-$CLANG-dev lldb-$CLANG lld-$CLANG $EXTRA --yes variables: COMPILER: clang++-$CLANG # CLANG 8 weekly-build-clang-8-debug: extends: .weekly-build-clang variables: CLANG: 8 MODE: debug EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python-clang-$CLANG weekly-build-clang-8-release: extends: .weekly-build-clang variables: CLANG: 8 MODE: release EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python-clang-$CLANG weekly-build-clang-8-optimized: extends: .weekly-build-clang variables: CLANG: 8 MODE: optimized EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python-clang-$CLANG # CLANG 9 weekly-build-clang-9-debug: extends: .weekly-build-clang variables: CLANG: 9 MODE: debug EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python-clang-$CLANG weekly-build-clang-9-release: extends: .weekly-build-clang variables: CLANG: 9 MODE: release EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python-clang-$CLANG weekly-build-clang-9-optimized: extends: .weekly-build-clang variables: CLANG: 9 MODE: optimized EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python-clang-$CLANG # CLANG 10 weekly-build-clang-10-debug: extends: .weekly-build-clang variables: CLANG: 10 MODE: debug EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python3-clang-$CLANG weekly-build-clang-10-release: extends: .weekly-build-clang variables: CLANG: 10 MODE: release EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python3-clang-$CLANG weekly-build-clang-10-optimized: extends: .weekly-build-clang variables: CLANG: 10 MODE: optimized EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python3-clang-$CLANG # CLANG 11 weekly-build-clang-11-debug: extends: .weekly-build-clang variables: CLANG: 11 MODE: debug EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python3-clang-$CLANG weekly-build-clang-11-release: extends: .weekly-build-clang variables: CLANG: 11 MODE: release EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python3-clang-$CLANG weekly-build-clang-11-optimized: extends: .weekly-build-clang variables: CLANG: 11 MODE: optimized EXTRA: libc++-$CLANG-dev libc++abi-$CLANG-dev libomp-$CLANG-dev python3-clang-$CLANG