summaryrefslogtreecommitdiffstats
path: root/coin/module_config.yaml
blob: b0e59f9651f63fcae19866dc6d900780aac63229 (plain)
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
version: 2
tags: ["documentation"]
accept_configuration:
  condition: and
  conditions:
    - condition: property
      property: features
      not_contains_value: Disable
    - condition: property
      property: features
      not_contains_value: DebianPackaging
    - condition: property
      property: target.osVersion
      not_equals_value: WebAssembly

instructions:
  Build:
  - type: EnvironmentVariable
    variableName: BUILD_DOCUMENTATION
    variableValue: "1"
  # Detect an ASAN build and set an env variable for CMake
  - type: AppendToEnvironmentVariable
    variableName: COIN_ASAN_BUILD
    variableValue: "1"
    enable_if:
      condition: property
      property: features
      contains_value: UseAddressSanitizer
  # Detect python3 and make ifcodegen mandatory for all configs
  - type: AppendToEnvironmentVariable
    variableName: NON_QTBASE_CMAKE_ARGS
    variableValue: " -DPython3_EXECUTABLE={{.Env.PYTHON3_EXECUTABLE}} -DPython3_ROOT_DIR={{.Env.PYTHON3_PATH}} -DFEATURE_ifcodegen=ON"
  - type: AppendToEnvironmentVariable
    variableName: NON_QTBASE_TARGET_CMAKE_ARGS
    variableValue: " -DPython3_EXECUTABLE={{.Env.PYTHON3_EXECUTABLE}} -DPython3_ROOT_DIR={{.Env.PYTHON3_PATH}} -DFEATURE_ifcodegen=ON"
  # Enable compiled ifcodegen on all packaging configs
  - type: AppendToEnvironmentVariable
    variableName: NON_QTBASE_CONFIGURE_ARGS
    variableValue: " -compiled-ifcodegen"
    enable_if:
      condition: property
      property: features
      contains_value: Packaging
  # Enable Axivion_analysis for Qt
  - type: EnvironmentVariable
    variableName: AXIVION_ANALYSIS
    variableValue: "1"
    enable_if:
      condition: property
      property: features
      contains_value: Axivion_qtinterfaceframework
  - type: Rename
    sourcePath: "{{.SourceDir}}/coin/axivion/ci_config_common.json"
    targetPath: "{{.Env.HOME}}/axivion/ci_config_common.json"
    userMessageOnFailure: "Moving ci_config_common.json failed. Make sure you have included the file in coin/axivion/ -folder"
    enable_if:
      condition: property
      property: features
      contains_value: Axivion_qtinterfaceframework
  - type: Group
    instructions:
      - !include "{{qt/qtbase}}/coin_module_build_template_v2.yaml"

  Test:
    - !include "{{qt/qtbase}}/coin_module_test_template_v3.yaml"
    - !include "{{qt/qtbase}}/coin_module_test_docs.yaml"