Revert "Use a variable on the stack to not have a temporary in the call"
[ACE_TAO.git] / .github / workflows / face.yml
blobf4c14fdec7662de96d2e82c44bc5ce52a3a0d9da
1 name: face
3 on:
4   push:
5   pull_request:
6   schedule:
7     - cron: '0 1 * * SUN'
8   workflow_dispatch:
10 concurrency:
11   group: ${{ github.workflow }}-${{ github.ref }}
12   cancel-in-progress: true
14 permissions:
15   contents: read
17 jobs:
18   build:
19     strategy:
20       fail-fast: false
21       matrix:
22         include:
23           - CC: gcc-10
24             CXX: g++-10
25             PackageDeps: g++-10
26             platform_file: include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
27             os: ubuntu-20.04
28     runs-on: ${{ matrix.os }}
29     name: ${{ matrix.os }} ${{ matrix.CXX }} ${{ matrix.feature }}
30     env:
31       ACE_ROOT: ${{ github.workspace }}/ACE
32       TAO_ROOT: ${{ github.workspace }}/TAO
33       MPC_ROOT: ${{ github.workspace }}/MPC
34       CC: ${{ matrix.CC }}
35       CXX: ${{ matrix.CXX }}
36     steps:
37     - name: checkout ACE/TAO
38       uses: actions/checkout@v4
39     - name: checkout MPC
40       uses: actions/checkout@v4
41       with:
42         repository: DOCGroup/MPC
43         path: ${{ env.MPC_ROOT }}
44     - name: Add Repo
45       run: |
46         wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
47         sudo apt-add-repository "deb http://apt.llvm.org/$(lsb_release -cs)/ ${{ matrix.Repo }} main"
48       if: matrix.Repo != ''
49     - name: Add packages
50       run: |
51         sudo apt-get --yes update
52         sudo apt-get --yes install ${{ matrix.PackageDeps }}
53     - name: create $ACE_ROOT/ace/config.h
54       run: |
55         '#define ACE_FACE_SAFETY_BASE' > ${env:ACE_ROOT}/ace/config.h
56         '#include "ace/config-linux.h"' >> ${env:ACE_ROOT}/ace/config.h
57       shell: pwsh
58     - name: add optional optional macros
59       run: |
60         '${{ matrix.optional_macros }}' >> ${env:ACE_ROOT}/include/makeinclude/platform_macros.GNU
61       shell: pwsh
62       if: matrix.optional_macros != ''
63     - name: extend $ACE_ROOT/include/makeinclude/platform_macros.GNU
64       run: |
65         '${{ matrix.platform_file }}' >>  ${env:ACE_ROOT}/include/makeinclude/platform_macros.GNU
66       shell: pwsh
67     - name: add optional optional feature
68       run: |
69         '${{ matrix.optional_feature }}' >> ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
70       if: matrix.optional_feature != ''
71       shell: pwsh
72     - name: Run mwc.pl on $(ACE_ROOT)/ace/ace.mwc
73       run: |
74         perl ${env:ACE_ROOT}/bin/mwc.pl -type gnuace ${env:ACE_ROOT}/ace/ace.mwc -workers 4
75       shell: pwsh
76     - name: Run mwc.pl on $(ACE_ROOT)/tests/tests.mwc
77       run: |
78         perl ${env:ACE_ROOT}/bin/mwc.pl -type gnuace ${env:ACE_ROOT}/tests/tests.mwc -workers 4
79       shell: pwsh
80     - name: Build ace project
81       run: |
82         make -j 6 -C ${env:ACE_ROOT}/ace
83       shell: pwsh
84     - name: Build ACE/tests project
85       run: |
86         make -j 6 -C ${env:ACE_ROOT}/tests
87       shell: pwsh