Merge pull request #2301 from sonndinh/remove-dup-reactor-functions
[ACE_TAO.git] / .github / workflows / macosx.yml
blobc43f0e70f1235086f0f7876b82d1d9150131126d
1 name: macosx
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         os: [macos-13, macos-14]
23         include:
24           - platform_file: include $(ACE_ROOT)/include/makeinclude/platform_macosx.GNU
25     runs-on: ${{ matrix.os }}
26     name: "${{ matrix.os }}-C++"
27     env:
28       ACE_ROOT: ${{ github.workspace }}/ACE
29       TAO_ROOT: ${{ github.workspace }}/TAO
30       MPC_ROOT: ${{ github.workspace }}/MPC
31     steps:
32     - name: checkout ACE/TAO
33       uses: actions/checkout@v4
34     - name: checkout MPC
35       uses: actions/checkout@v4
36       with:
37         repository: DOCGroup/MPC
38         path: ${{ env.MPC_ROOT }}
39     - name: create $ACE_ROOT/ace/config.h
40       run: |
41         '#include "ace/config-macosx.h"' > ${env:ACE_ROOT}/ace/config.h
42       shell: pwsh
43     - name: create $ACE_ROOT/include/makeinclude/platform_macros.GNU
44       run: |
45         '${{ matrix.platform_file }}' > ${env:ACE_ROOT}/include/makeinclude/platform_macros.GNU
46       shell: pwsh
47     - name: create $ACE_ROOT/bin/MakeProjectCreator/config/default.features
48       run: |
49         'ipv6=1' > ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
50         'versioned_namespace=1' >> ${env:ACE_ROOT}/bin/MakeProjectCreator/config/default.features
51       shell: pwsh
52     - name: Run mwc.pl on $(TAO_ROOT)/TAO_ACE.mwc
53       run: |
54         perl ${env:ACE_ROOT}/bin/mwc.pl -type gnuace ${env:TAO_ROOT}/TAO_ACE.mwc -workers 4
55       shell: pwsh
56     - name: Run mwc.pl on $(ACE_ROOT)/tests/tests.mwc
57       run: |
58         perl ${env:ACE_ROOT}/bin/mwc.pl -type gnuace ${env:ACE_ROOT}/tests/tests.mwc -workers 4
59       shell: pwsh
60     - name: Run mwc.pl on $(TAO_ROOT)/tests/IDL_Test
61       run: |
62         perl ${env:ACE_ROOT}/bin/mwc.pl -type gnuace ${env:TAO_ROOT}/tests/IDL_Test -workers 4
63       shell: pwsh
64     - name: Run mwc.pl on $(TAO_ROOT)/tests/IDLv4
65       run: |
66         perl ${env:ACE_ROOT}/bin/mwc.pl -type gnuace ${env:TAO_ROOT}/tests/IDLv4 -workers 4
67       shell: pwsh
68     - name: Build TAO_ACE project
69       run: |
70         make -j 6 -C ${env:TAO_ROOT}
71       shell: pwsh
72     - name: Build ACE/tests project
73       run: |
74         make -j 6 -C ${env:ACE_ROOT}/tests
75       shell: pwsh
76     - name: Build TAO/tests/IDL_Test project
77       run: |
78         make -j 6 -C ${env:TAO_ROOT}/tests/IDL_Test
79       shell: pwsh
80     - name: Build TAO/tests/IDLv4/maps project
81       run: |
82         make -j 6 -C ${env:TAO_ROOT}/tests/IDLv4
83       shell: pwsh