1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
|
# Copyright (c) 2025 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
#
# SPDX-License-Identifier: GPL-2.0-only
# NS3 CI script for MacOS
# Check if everything builds fine under debug, default, and optimized, on MacOS.
.build-macos-base:
extends: .base-build
#tags:
# - saas-macos-medium-m1
# - saas-macos-large-m2pro
#image: macos-14-xcode-15
tags:
- macOS
- nsnam
before_script:
- brew update
- brew upgrade
- brew install ninja cmake ccache libxml2 eigen git
rules:
- if: $RELEASE == "weekly"
- if: $RELEASE == "daily"
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
allow_failure: true
variables:
EXTRA_OPTIONS: --disable-mpi
COMPILER: clang++
daily-macos:
rules:
- if: $RELEASE == "weekly"
- if: $RELEASE == "daily"
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
when: manual
allow_failure: true
stage: pre-build
script:
- echo "Starting MacOS jobs"
daily-build-macos-debug:
extends: .build-macos-base
needs: [ "daily-macos" ]
stage: build
variables:
MODE: debug
daily-build-macos-default:
extends: .build-macos-base
needs: [ "daily-macos" ]
stage: build
variables:
MODE: default
daily-build-macos-optimized:
extends: .build-macos-base
needs: [ "daily-macos" ]
stage: build
variables:
MODE: optimized
daily-test-macos-debug:
extends: .build-macos-base
stage: test
needs: ["daily-build-macos-debug"]
dependencies:
- daily-build-macos-debug
variables:
MODE: debug
daily-test-macos-default:
extends: .build-macos-base
stage: test
needs: [ "daily-build-macos-default" ]
dependencies:
- daily-build-macos-default
variables:
MODE: default
daily-test-macos-optimized:
extends: .build-macos-base
stage: test
needs: [ "daily-build-macos-optimized" ]
dependencies:
- daily-build-macos-optimized
variables:
MODE: optimized
|