From e836db7d96162f88d148f9babe10b0979ecf01d8 Mon Sep 17 00:00:00 2001 From: Tommaso Pecorella Date: Sat, 26 Aug 2023 12:25:11 -0500 Subject: [PATCH] ci: (fixes #929) Remove tests for clang++-6, g++-8, and Ubuntu 18.04. --- RELEASE_NOTES.md | 9 ++ utils/tests/gitlab-ci-clang.yml | 157 ++++--------------- utils/tests/gitlab-ci-cppyy.yml | 29 ---- utils/tests/gitlab-ci-gcc.yml | 249 ++++++------------------------- utils/tests/gitlab-ci-ubuntu.yml | 226 +++++++++++----------------- 5 files changed, 181 insertions(+), 489 deletions(-) diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 465dffc14..239ccf26e 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -18,6 +18,15 @@ Release 3-dev ### Supported platforms +This release is intended to work on systems with the following minimal +requirements (Note: not all ns-3 features are available on all systems): + +- g++-9 or later, or LLVM/clang++-10 or later +- Python 3.6 or later +- CMake 3.10 or later +- (macOS only) Xcode 11 or later +- (Windows only) Msys2/MinGW64 toolchain or WSL2 + ### New user-visible features - (wifi) Added support for 802.11be TID-to-Link Mapping diff --git a/utils/tests/gitlab-ci-clang.yml b/utils/tests/gitlab-ci-clang.yml index 14199d6e0..87a194d88 100644 --- a/utils/tests/gitlab-ci-clang.yml +++ b/utils/tests/gitlab-ci-clang.yml @@ -4,12 +4,11 @@ # "RELEASE", that has a value "weekly". Also, a variable "CLANG" should be set # to True. -# We support CLANG 6, 8, 9, 10, 11, 12, 13, 14 -# We test only CLANG 6 and 10 on Ubuntu 18.04, and 11 and 14 on Ubuntu 22.04 -# The test is done under Linux. +# We support CLANG versions 10 through 16 +# We test only CLANG 10 on Ubuntu 20.04 and CLANG 16 on Ubuntu 23.04 -.weekly-clang-ubuntu18.04: - image: ubuntu:18.04 +.weekly-clang-ubuntu20.04: + image: ubuntu:20.04 extends: .base-build rules: - if: $RELEASE == "weekly" @@ -18,7 +17,7 @@ before_script: - apt update - apt upgrade -y - - apt install -y + - DEBIAN_FRONTEND=noninteractive apt install -y clang-$CLANG cmake ninja-build ccache build-essential libboost-all-dev libeigen3-dev @@ -31,8 +30,8 @@ COMPILER: clang++-$CLANG LIBGSL: libgsl23 -.weekly-clang-ubuntu22.04: - image: ubuntu:22.04 +.weekly-clang-ubuntu23.04: + image: ubuntu:23.04 extends: .base-build rules: - if: $RELEASE == "weekly" @@ -41,7 +40,7 @@ before_script: - apt update - apt upgrade -y - - apt install -y + - DEBIAN_FRONTEND=noninteractive apt install -y clang-$CLANG cmake ninja-build ccache build-essential libboost-all-dev libeigen3-dev @@ -64,54 +63,9 @@ weekly-clang: script: - echo "Starting clang jobs" -# CLANG 6 -weekly-build-clang-6-debug: - extends: .weekly-clang-ubuntu18.04 - needs: ["weekly-clang"] - stage: build - variables: - CLANG: "6.0" - MODE: debug - -weekly-build-clang-6-default: - extends: .weekly-clang-ubuntu18.04 - needs: ["weekly-clang"] - stage: build - variables: - CLANG: "6.0" - MODE: default - -weekly-build-clang-6-optimized: - extends: .weekly-clang-ubuntu18.04 - needs: ["weekly-clang"] - stage: build - variables: - CLANG: "6.0" - MODE: optimized - -weekly-test-clang-6-default: - extends: .weekly-clang-ubuntu18.04 - stage: test - needs: ["weekly-build-clang-6-default"] - dependencies: - - weekly-build-clang-6-default - variables: - CLANG: "6.0" - MODE: default - -weekly-test-clang-6-optimized: - extends: .weekly-clang-ubuntu18.04 - stage: test - needs: ["weekly-build-clang-6-optimized"] - dependencies: - - weekly-build-clang-6-optimized - variables: - CLANG: "6.0" - MODE: optimized - # CLANG 10 weekly-build-clang-10-debug: - extends: .weekly-clang-ubuntu18.04 + extends: .weekly-clang-ubuntu20.04 needs: ["weekly-clang"] stage: build variables: @@ -119,7 +73,7 @@ weekly-build-clang-10-debug: MODE: debug weekly-build-clang-10-default: - extends: .weekly-clang-ubuntu18.04 + extends: .weekly-clang-ubuntu20.04 needs: ["weekly-clang"] stage: build variables: @@ -127,7 +81,7 @@ weekly-build-clang-10-default: MODE: default weekly-build-clang-10-optimized: - extends: .weekly-clang-ubuntu18.04 + extends: .weekly-clang-ubuntu20.04 needs: ["weekly-clang"] stage: build variables: @@ -135,7 +89,7 @@ weekly-build-clang-10-optimized: MODE: optimized weekly-test-clang-10-default: - extends: .weekly-clang-ubuntu18.04 + extends: .weekly-clang-ubuntu20.04 stage: test needs: ["weekly-build-clang-10-default"] dependencies: @@ -145,7 +99,7 @@ weekly-test-clang-10-default: MODE: default weekly-test-clang-10-optimized: - extends: .weekly-clang-ubuntu18.04 + extends: .weekly-clang-ubuntu20.04 stage: test needs: ["weekly-build-clang-10-optimized"] dependencies: @@ -154,92 +108,47 @@ weekly-test-clang-10-optimized: CLANG: 10 MODE: optimized -# CLANG 11 -weekly-build-clang-11-debug: - extends: .weekly-clang-ubuntu22.04 +# CLANG 16 +weekly-build-clang-16-debug: + extends: .weekly-clang-ubuntu23.04 needs: ["weekly-clang"] stage: build variables: - CLANG: 11 + CLANG: 16 MODE: debug -weekly-build-clang-11-default: - extends: .weekly-clang-ubuntu22.04 +weekly-build-clang-16-default: + extends: .weekly-clang-ubuntu23.04 needs: ["weekly-clang"] stage: build variables: - CLANG: 11 + CLANG: 16 MODE: default -weekly-build-clang-11-optimized: - extends: .weekly-clang-ubuntu22.04 +weekly-build-clang-16-optimized: + extends: .weekly-clang-ubuntu23.04 needs: ["weekly-clang"] stage: build variables: - CLANG: 11 + CLANG: 16 MODE: optimized -weekly-test-clang-11-default: - extends: .weekly-clang-ubuntu22.04 +weekly-test-clang-16-default: + extends: .weekly-clang-ubuntu23.04 stage: test - needs: ["weekly-build-clang-11-default"] + needs: ["weekly-build-clang-16-default"] dependencies: - - weekly-build-clang-11-default + - weekly-build-clang-16-default variables: - CLANG: 11 + CLANG: 16 MODE: default -weekly-test-clang-11-optimized: - extends: .weekly-clang-ubuntu22.04 +weekly-test-clang-16-optimized: + extends: .weekly-clang-ubuntu23.04 stage: test - needs: ["weekly-build-clang-11-optimized"] + needs: ["weekly-build-clang-16-optimized"] dependencies: - - weekly-build-clang-11-optimized + - weekly-build-clang-16-optimized variables: - CLANG: 11 - MODE: optimized - -# CLANG 14 -weekly-build-clang-14-debug: - extends: .weekly-clang-ubuntu22.04 - needs: ["weekly-clang"] - stage: build - variables: - CLANG: 14 - MODE: debug - -weekly-build-clang-14-default: - extends: .weekly-clang-ubuntu22.04 - needs: ["weekly-clang"] - stage: build - variables: - CLANG: 14 - MODE: default - -weekly-build-clang-14-optimized: - extends: .weekly-clang-ubuntu22.04 - needs: ["weekly-clang"] - stage: build - variables: - CLANG: 14 - MODE: optimized - -weekly-test-clang-14-default: - extends: .weekly-clang-ubuntu22.04 - stage: test - needs: ["weekly-build-clang-14-default"] - dependencies: - - weekly-build-clang-14-default - variables: - CLANG: 14 - MODE: default - -weekly-test-clang-14-optimized: - extends: .weekly-clang-ubuntu22.04 - stage: test - needs: ["weekly-build-clang-14-optimized"] - dependencies: - - weekly-build-clang-14-optimized - variables: - CLANG: 14 + CLANG: 16 MODE: optimized diff --git a/utils/tests/gitlab-ci-cppyy.yml b/utils/tests/gitlab-ci-cppyy.yml index b138b876c..17eb2b080 100644 --- a/utils/tests/gitlab-ci-cppyy.yml +++ b/utils/tests/gitlab-ci-cppyy.yml @@ -60,35 +60,6 @@ cppyy-20.04: - ./ns3 run ./utils/python-unit-tests.py timeout: 9h -cppyy-18.04: - stage: test - image: ubuntu:18.04 # python 3.6 - rules: - - if: $RELEASE == "manual" - tags: - - nsnam - - linux - before_script: - - apt update - - apt install -y software-properties-common - - add-apt-repository ppa:ubuntu-toolchain-r/test -y - - apt update - - DEBIAN_FRONTEND=noninteractive apt install -y - g++-9 gcc-9 cmake ninja-build ccache libclang-dev llvm-dev - python3 python3-pip - libboost-dev libgsl-dev libgtk-3-dev - git wget - - update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 800 --slave /usr/bin/g++ g++ /usr/bin/g++-9 - - pip3 install cppyy-cling cppyy-backend CPyCppyy cppyy # older python version may install dependencies in the wrong order - script: - - CXX=g++-9 ./ns3 configure -G Ninja --enable-python-bindings - - ./ns3 build - - ./ns3 run first.py - - ./ns3 run second.py - - ./ns3 run third.py - - ./ns3 run ./utils/python-unit-tests.py - timeout: 9h - .manylinux-pip-wheel: stage: test image: quay.io/pypa/manylinux_2_28_x86_64 diff --git a/utils/tests/gitlab-ci-gcc.yml b/utils/tests/gitlab-ci-gcc.yml index 6c31914fa..ed9c8cd50 100644 --- a/utils/tests/gitlab-ci-gcc.yml +++ b/utils/tests/gitlab-ci-gcc.yml @@ -4,8 +4,16 @@ # "RELEASE", that has a value "weekly". Also, a variable "GCC" should be set # to True. -# We support from 8 to the latest version. Check if everything builds fine +# We support from 9 to the latest version. Check if everything builds fine # under debug, default, and optimized, on Linux. +# The distro used is Ubuntu - the logic is: +# - Test minimum and maximum GCC version +# - Do not test if it's the default version installed (already tested as Ubuntu test) +# Note: the following is the list of default gcc versions on Ubuntu: +# - focal (20.04LTS) 9 +# - jammy (22.04LTS) 11 +# - kinetic (22.10) 12 +# - lunar (23.04) 12 .weekly-gcc-base: extends: .base-build @@ -42,277 +50,116 @@ weekly-gcc: script: - echo "Starting GCC jobs" -# GCC 8 -weekly-build-gcc-8-debug: - extends: .weekly-gcc-base - needs: ["weekly-gcc"] - image: ubuntu:20.04 - stage: build - variables: - MODE: debug - COMPILER: g++-8 - LIBGSL: libgsl23 - -weekly-build-gcc-8-default: - extends: .weekly-gcc-base - needs: ["weekly-gcc"] - image: ubuntu:20.04 - stage: build - variables: - MODE: default - COMPILER: g++-8 - LIBGSL: libgsl23 - -weekly-build-gcc-8-optimized: - extends: .weekly-gcc-base - needs: ["weekly-gcc"] - image: ubuntu:20.04 - stage: build - variables: - MODE: optimized - COMPILER: g++-8 - LIBGSL: libgsl23 - -weekly-test-gcc-8-default: - extends: .weekly-gcc-base - image: ubuntu:20.04 - stage: test - needs: ["weekly-build-gcc-8-default"] - dependencies: - - weekly-build-gcc-8-default - variables: - MODE: default - COMPILER: g++-8 - LIBGSL: libgsl23 - -weekly-test-gcc-8-optimized: - extends: .weekly-gcc-base - image: ubuntu:20.04 - stage: test - needs: ["weekly-build-gcc-8-optimized"] - dependencies: - - weekly-build-gcc-8-optimized - variables: - MODE: optimized - COMPILER: g++-8 - LIBGSL: libgsl23 - -# GCC 9 -weekly-build-gcc-9-debug: - extends: .weekly-gcc-base - needs: ["weekly-gcc"] - image: ubuntu:20.04 - stage: build - variables: - MODE: debug - COMPILER: g++-9 - LIBGSL: libgsl23 - -weekly-build-gcc-9-default: - extends: .weekly-gcc-base - needs: ["weekly-gcc"] - image: ubuntu:20.04 - stage: build - variables: - MODE: default - COMPILER: g++-9 - LIBGSL: libgsl23 - -weekly-build-gcc-9-optimized: - extends: .weekly-gcc-base - needs: ["weekly-gcc"] - image: ubuntu:20.04 - stage: build - variables: - MODE: optimized - COMPILER: g++-9 - LIBGSL: libgsl23 - -weekly-test-gcc-9-default: - extends: .weekly-gcc-base - image: ubuntu:20.04 - stage: test - needs: ["weekly-build-gcc-9-default"] - dependencies: - - weekly-build-gcc-9-default - variables: - MODE: default - COMPILER: g++-9 - LIBGSL: libgsl23 - -weekly-test-gcc-9-optimized: - extends: .weekly-gcc-base - image: ubuntu:20.04 - stage: test - needs: ["weekly-build-gcc-9-optimized"] - dependencies: - - weekly-build-gcc-9-optimized - variables: - MODE: optimized - COMPILER: g++-9 - LIBGSL: libgsl23 - -# GCC 10 -# weekly-build-gcc-10-debug: +# GCC 9 (not tested as it's the default for Ubuntu 20.04) +# weekly-build-gcc-9-debug: # extends: .weekly-gcc-base # needs: ["weekly-gcc"] # image: ubuntu:20.04 # stage: build # variables: # MODE: debug -# COMPILER: g++-10 +# COMPILER: g++-9 # LIBGSL: libgsl23 -# weekly-build-gcc-10-default: +# weekly-build-gcc-9-default: # extends: .weekly-gcc-base # needs: ["weekly-gcc"] # image: ubuntu:20.04 # stage: build # variables: # MODE: default -# COMPILER: g++-10 +# COMPILER: g++-9 # LIBGSL: libgsl23 -# weekly-build-gcc-10-optimized: +# weekly-build-gcc-9-optimized: # extends: .weekly-gcc-base # needs: ["weekly-gcc"] # image: ubuntu:20.04 # stage: build # variables: # MODE: optimized -# COMPILER: g++-10 +# COMPILER: g++-9 # LIBGSL: libgsl23 -# weekly-test-gcc-10-default: +# weekly-test-gcc-9-default: # extends: .weekly-gcc-base # image: ubuntu:20.04 # stage: test -# needs: ["weekly-build-gcc-10-default"] +# needs: ["weekly-build-gcc-9-default"] # dependencies: -# - weekly-build-gcc-10-default +# - weekly-build-gcc-9-default # variables: # MODE: default -# COMPILER: g++-10 +# COMPILER: g++-9 # LIBGSL: libgsl23 -# weekly-test-gcc-10-optimized: +# weekly-test-gcc-9-optimized: # extends: .weekly-gcc-base # image: ubuntu:20.04 # stage: test -# needs: ["weekly-build-gcc-10-optimized"] +# needs: ["weekly-build-gcc-9-optimized"] # dependencies: -# - weekly-build-gcc-10-optimized +# - weekly-build-gcc-9-optimized # variables: # MODE: optimized -# COMPILER: g++-10 +# COMPILER: g++-9 # LIBGSL: libgsl23 -# GCC 11 -# weekly-build-gcc-11-debug: -# extends: .weekly-gcc-base -# needs: ["weekly-gcc"] -# image: ubuntu:22.04 -# stage: build -# variables: -# MODE: debug -# COMPILER: g++-11 -# LIBGSL: libgsl27 - -# weekly-build-gcc-11-default: -# extends: .weekly-gcc-base -# needs: ["weekly-gcc"] -# image: ubuntu:22.04 -# stage: build -# variables: -# MODE: default -# COMPILER: g++-11 -# LIBGSL: libgsl27 - -# weekly-build-gcc-11-optimized: -# extends: .weekly-gcc-base -# needs: ["weekly-gcc"] -# image: ubuntu:22.04 -# stage: build -# variables: -# MODE: optimized -# COMPILER: g++-11 -# LIBGSL: libgsl27 - -# weekly-test-gcc-11-default: -# extends: .weekly-gcc-base -# image: ubuntu:22.04 -# stage: test -# needs: ["weekly-build-gcc-11-default"] -# dependencies: -# - weekly-build-gcc-11-default -# variables: -# MODE: default -# COMPILER: g++-11 -# LIBGSL: libgsl27 - -# weekly-test-gcc-11-optimized: -# extends: .weekly-gcc-base -# image: ubuntu:22.04 -# stage: test -# needs: ["weekly-build-gcc-11-optimized"] -# dependencies: -# - weekly-build-gcc-11-optimized -# variables: -# MODE: optimized -# COMPILER: g++-11 -# LIBGSL: libgsl27 - -# GCC 12 -weekly-build-gcc-12-debug: +# GCC 13 +weekly-build-gcc-13-debug: extends: .weekly-gcc-base needs: ["weekly-gcc"] - image: ubuntu:22.04 + image: ubuntu:23.04 stage: build variables: MODE: debug - COMPILER: g++-12 + COMPILER: g++-13 LIBGSL: libgsl27 -weekly-build-gcc-12-default: +weekly-build-gcc-13-default: extends: .weekly-gcc-base needs: ["weekly-gcc"] - image: ubuntu:22.04 + image: ubuntu:23.04 stage: build variables: MODE: default - COMPILER: g++-12 + COMPILER: g++-13 LIBGSL: libgsl27 -weekly-build-gcc-12-optimized: +# Aug. 26, 2023: --disable-eigen is needed to prevent a -Werror=unused-variable +weekly-build-gcc-13-optimized: extends: .weekly-gcc-base needs: ["weekly-gcc"] - image: ubuntu:22.04 + image: ubuntu:23.04 stage: build variables: MODE: optimized - COMPILER: g++-12 + COMPILER: g++-13 LIBGSL: libgsl27 + EXTRA_OPTIONS: --disable-eigen -weekly-test-gcc-12-default: +weekly-test-gcc-13-default: extends: .weekly-gcc-base - image: ubuntu:22.04 + image: ubuntu:23.04 stage: test - needs: ["weekly-build-gcc-12-default"] + needs: ["weekly-build-gcc-13-default"] dependencies: - - weekly-build-gcc-12-default + - weekly-build-gcc-13-default variables: MODE: default - COMPILER: g++-12 + COMPILER: g++-13 LIBGSL: libgsl27 -weekly-test-gcc-12-optimized: +# Aug. 26, 2023: --disable-eigen is needed to prevent a -Werror=unused-variable +weekly-test-gcc-13-optimized: extends: .weekly-gcc-base - image: ubuntu:22.04 + image: ubuntu:23.04 stage: test - needs: ["weekly-build-gcc-12-optimized"] + needs: ["weekly-build-gcc-13-optimized"] dependencies: - - weekly-build-gcc-12-optimized + - weekly-build-gcc-13-optimized variables: MODE: optimized - COMPILER: g++-12 + COMPILER: g++-13 LIBGSL: libgsl27 + EXTRA_OPTIONS: --disable-eigen diff --git a/utils/tests/gitlab-ci-ubuntu.yml b/utils/tests/gitlab-ci-ubuntu.yml index 430cf8591..72bd1c2e0 100644 --- a/utils/tests/gitlab-ci-ubuntu.yml +++ b/utils/tests/gitlab-ci-ubuntu.yml @@ -14,10 +14,6 @@ - if: $CI_PIPELINE_SOURCE == 'merge_request_event' allow_failure: true before_script: - # The following ppa is needed only for Ubuntu 18.04 to install g++9 - - apt update - - DEBIAN_FRONTEND=noninteractive apt install -y software-properties-common - - add-apt-repository ppa:ubuntu-toolchain-r/test -y - apt update - apt upgrade -y - DEBIAN_FRONTEND=noninteractive apt install -y @@ -44,211 +40,171 @@ weekly-ubuntu: script: - echo "Starting Ubuntu jobs" -# Ubuntu 18.04 (Until April 2023) -weekly-build-ubuntu-18.04-debug: +# Ubuntu 20.04 (Until April 2025) +weekly-build-ubuntu-20.04-debug: extends: .weekly-base-ubuntu needs: ["weekly-ubuntu"] - image: ubuntu:18.04 + image: ubuntu:20.04 stage: build variables: MODE: debug LIBGSL: libgsl23 - COMPILER: g++-9 + COMPILER: g++ -weekly-build-ubuntu-18.04-default: +weekly-build-ubuntu-20.04-default: extends: .weekly-base-ubuntu needs: ["weekly-ubuntu"] - image: ubuntu:18.04 + image: ubuntu:20.04 stage: build variables: MODE: default LIBGSL: libgsl23 - COMPILER: g++-9 + COMPILER: g++ -weekly-build-ubuntu-18.04-optimized: +weekly-build-ubuntu-20.04-optimized: extends: .weekly-base-ubuntu needs: ["weekly-ubuntu"] - image: ubuntu:18.04 + image: ubuntu:20.04 stage: build variables: MODE: optimized LIBGSL: libgsl23 - COMPILER: g++-9 + COMPILER: g++ -weekly-test-ubuntu-18.04-default: +weekly-test-ubuntu-20.04-default: extends: .weekly-base-ubuntu - image: ubuntu:18.04 + image: ubuntu:20.04 stage: test - needs: ["weekly-build-ubuntu-18.04-default"] + needs: ["weekly-build-ubuntu-20.04-default"] dependencies: - - weekly-build-ubuntu-18.04-default + - weekly-build-ubuntu-20.04-default variables: MODE: default LIBGSL: libgsl23 - COMPILER: g++-9 + COMPILER: g++ -weekly-test-ubuntu-18.04-optimized: +weekly-test-ubuntu-20.04-optimized: extends: .weekly-base-ubuntu - image: ubuntu:18.04 + image: ubuntu:20.04 stage: test - needs: ["weekly-build-ubuntu-18.04-optimized"] + needs: ["weekly-build-ubuntu-20.04-optimized"] dependencies: - - weekly-build-ubuntu-18.04-optimized + - weekly-build-ubuntu-20.04-optimized variables: MODE: optimized LIBGSL: libgsl23 - COMPILER: g++-9 + COMPILER: g++ -# # Ubuntu 20.04 (Until April 2025) -# weekly-build-ubuntu-20.04-debug: -# extends: .weekly-base-ubuntu -# image: ubuntu:20.04 -# variables: -# MODE: debug -# LIBGSL: libgsl23 - -# weekly-build-ubuntu-20.04-default: -# extends: .weekly-base-ubuntu -# image: ubuntu:20.04 -# variables: -# MODE: default -# LIBGSL: libgsl23 - -# weekly-build-ubuntu-20.04-optimized: -# extends: .weekly-base-ubuntu -# image: ubuntu:20.04 -# variables: -# MODE: optimized -# LIBGSL: libgsl23 - -# Ubuntu 22.04 (Until January 2032) -- commented out because we are using Ubuntu 22.04 for gcc jobs -# weekly-build-ubuntu-22.04-debug: -# extends: .weekly-base-ubuntu -# needs: ["weekly-ubuntu"] -# image: ubuntu:22.04 -# stage: build -# variables: -# MODE: debug -# LIBGSL: libgsl27 -# COMPILER: g++ - -# weekly-build-ubuntu-22.04-default: -# extends: .weekly-base-ubuntu -# needs: ["weekly-ubuntu"] -# image: ubuntu:22.04 -# stage: build -# variables: -# MODE: default -# LIBGSL: libgsl27 -# COMPILER: g++ - -# weekly-build-ubuntu-22.04-optimized: -# extends: .weekly-base-ubuntu -# needs: ["weekly-ubuntu"] -# image: ubuntu:22.04 -# stage: build -# variables: -# MODE: optimized -# LIBGSL: libgsl27 -# COMPILER: g++ - -# weekly-test-ubuntu-22.04-default: -# extends: .weekly-base-ubuntu -# image: ubuntu:22.04 -# stage: test -# needs: ["weekly-build-ubuntu-22.04-default"] -# dependencies: -# - weekly-build-ubuntu-22.04-default -# variables: -# MODE: default -# LIBGSL: libgsl27 -# COMPILER: g++ - -# weekly-test-ubuntu-22.04-optimized: -# extends: .weekly-base-ubuntu -# image: ubuntu:22.04 -# stage: test -# needs: ["weekly-build-ubuntu-22.04-optimized"] -# dependencies: -# - weekly-build-ubuntu-22.04-optimized -# variables: -# MODE: optimized -# LIBGSL: libgsl27 -# COMPILER: g++ - -# Ubuntu Latest -weekly-build-ubuntu-latest-debug: +# Ubuntu 22.04 (Until January 2032) +weekly-build-ubuntu-22.04-debug: extends: .weekly-base-ubuntu needs: ["weekly-ubuntu"] - image: ubuntu:latest + image: ubuntu:22.04 stage: build variables: MODE: debug LIBGSL: libgsl27 COMPILER: g++ -weekly-build-ubuntu-latest-default: +weekly-build-ubuntu-22.04-default: extends: .weekly-base-ubuntu needs: ["weekly-ubuntu"] - image: ubuntu:latest + image: ubuntu:22.04 stage: build variables: MODE: default LIBGSL: libgsl27 COMPILER: g++ -weekly-build-ubuntu-latest-optimized: +weekly-build-ubuntu-22.04-optimized: extends: .weekly-base-ubuntu needs: ["weekly-ubuntu"] - image: ubuntu:latest + image: ubuntu:22.04 stage: build variables: MODE: optimized LIBGSL: libgsl27 COMPILER: g++ -weekly-test-ubuntu-latest-default: +weekly-test-ubuntu-22.04-default: extends: .weekly-base-ubuntu - image: ubuntu:latest + image: ubuntu:22.04 stage: test - needs: ["weekly-build-ubuntu-latest-default"] + needs: ["weekly-build-ubuntu-22.04-default"] dependencies: - - weekly-build-ubuntu-latest-default + - weekly-build-ubuntu-22.04-default variables: MODE: default LIBGSL: libgsl27 COMPILER: g++ -weekly-test-ubuntu-latest-optimized: +weekly-test-ubuntu-22.04-optimized: extends: .weekly-base-ubuntu - image: ubuntu:latest + image: ubuntu:22.04 stage: test - needs: ["weekly-build-ubuntu-latest-optimized"] + needs: ["weekly-build-ubuntu-22.04-optimized"] dependencies: - - weekly-build-ubuntu-latest-optimized + - weekly-build-ubuntu-22.04-optimized variables: MODE: optimized LIBGSL: libgsl27 COMPILER: g++ -# Ubuntu Rolling -# weekly-build-ubuntu-rolling-debug: -# extends: .weekly-base-ubuntu -# image: ubuntu:rolling -# variables: -# MODE: debug -# LIBGSL: libgsl27 +# Ubuntu Rolling (latest released, might be non-LTS) +weekly-build-ubuntu-rolling-debug: + extends: .weekly-base-ubuntu + needs: ["weekly-ubuntu"] + image: ubuntu:rolling + stage: build + variables: + MODE: debug + LIBGSL: libgsl27 + COMPILER: g++ -# weekly-build-ubuntu-rolling-default: -# extends: .weekly-base-ubuntu -# image: ubuntu:rolling -# variables: -# MODE: default -# LIBGSL: libgsl27 +weekly-build-ubuntu-rolling-default: + extends: .weekly-base-ubuntu + needs: ["weekly-ubuntu"] + image: ubuntu:rolling + stage: build + variables: + MODE: default + LIBGSL: libgsl27 + COMPILER: g++ -# weekly-build-ubuntu-rolling-optimized: -# extends: .weekly-base-ubuntu -# image: ubuntu:rolling -# variables: -# MODE: optimized -# LIBGSL: libgsl27 +# Aug. 26, 2023: --disable-eigen is needed to prevent a -Werror=unused-variable +weekly-build-ubuntu-rolling-optimized: + extends: .weekly-base-ubuntu + needs: ["weekly-ubuntu"] + image: ubuntu:rolling + stage: build + variables: + MODE: optimized + LIBGSL: libgsl27 + COMPILER: g++ + EXTRA_OPTIONS: --disable-eigen + +weekly-test-ubuntu-rolling-default: + extends: .weekly-base-ubuntu + image: ubuntu:rolling + stage: test + needs: ["weekly-build-ubuntu-rolling-default"] + dependencies: + - weekly-build-ubuntu-rolling-default + variables: + MODE: default + LIBGSL: libgsl27 + COMPILER: g++ + +# Aug. 26, 2023: --disable-eigen is needed to prevent a -Werror=unused-variable +weekly-test-ubuntu-rolling-optimized: + extends: .weekly-base-ubuntu + image: ubuntu:rolling + stage: test + needs: ["weekly-build-ubuntu-rolling-optimized"] + dependencies: + - weekly-build-ubuntu-rolling-optimized + variables: + MODE: optimized + LIBGSL: libgsl27 + COMPILER: g++ + EXTRA_OPTIONS: --disable-eigen