@@ -7,75 +7,41 @@ defaults:
77 shell : bash
88
99env :
10- VCPKG_GIT_COMMIT_ID : 3a3a222be369b556e4635714c8d6acc990e1f13b
11- VCPKG_GIT_URL : https://github.com/PazerOP/vcpkg.git
12- VCPKG_BINARY_SOURCES : ' clear;nuget,GitHub,readwrite'
13- X_VCPKG_NUGET_ID_PREFIX : mh-stuff
10+ # Use a recent stable vcpkg baseline from official Microsoft repo
11+ VCPKG_COMMIT : de46587b4beaa638743916fe5674825cecfb48b3
1412
1513jobs :
1614 build-linux :
17- # name: ${{ matrix.compiler }}
18- runs-on : ${{ matrix.os }}
15+ runs-on : ubuntu-latest
1916 strategy :
2017 fail-fast : false
2118 matrix :
22- os : [ubuntu-latest]
2319 MH_STUFF_COMPILE_LIBRARY : [true, false]
24- # compiler: [clang++-11, clang++-10, g++-10, clang++-9, g++-9, clang++-8, g++-8, clang++-7]
2520 compiler :
26- - exe : clang++-11
27- deps : clang-11 libc++-11-dev libc++abi-11-dev
28- - exe : clang++-10
29- deps : clang-10 libc++-10-dev libc++abi-10-dev
30- - exe : clang++-9
31- deps : clang-9 libc++-9-dev libc++abi-9-dev
32- - exe : clang++-8
33- deps : clang-8 libc++-8-dev libc++abi-8-dev
34- - exe : clang++-7
35- deps : clang-7 libc++-7-dev libc++abi-7-dev
36- - exe : g++-10
37- deps : g++-10
38- - exe : g++-9
39- deps : g++-9
40- - exe : g++-8
41- deps : g++-8
21+ # Modern compilers available on ubuntu-latest (Ubuntu 22.04/24.04)
22+ - exe : g++-12
23+ deps : g++-12
24+ - exe : g++-13
25+ deps : g++-13
26+ - exe : clang++-14
27+ deps : clang-14 libc++-14-dev libc++abi-14-dev
28+ - exe : clang++-15
29+ deps : clang-15 libc++-15-dev libc++abi-15-dev
4230
4331 steps :
44- 45- - uses : PazerOP/gha-setup-nuget@HEAD
32+ - uses : actions/checkout@v4
4633
47- - uses : lukka/run-vcpkg@v7
48- id : runvcpkg
34+ - uses : lukka/run-vcpkg@v11
4935 with :
50- setupOnly : true
51- vcpkgGitCommitId : ${{ env.VCPKG_GIT_COMMIT_ID }}
52- vcpkgGitURL : ${{ env.VCPKG_GIT_URL }}
53-
54- - name : Add repos
55- run : |
56- sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 15CF4D18AF4F7421
57- sudo add-apt-repository ppa:ubuntu-toolchain-r/test
58- echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal main" | sudo tee /etc/apt/sources.list.d/llvm.list
59-
60- - name : Add repos - llvm-11
61- if : matrix.compiler.exe == 'clang++-11'
62- run : echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main" | sudo tee -a /etc/apt/sources.list.d/llvm.list
63-
64- - name : Add repos - llvm-12
65- if : matrix.compiler.exe == 'clang++-12'
66- run : echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-12 main" | sudo tee -a /etc/apt/sources.list.d/llvm.list
67-
68- - name : Update repos
69- run : sudo apt update
36+ vcpkgGitCommitId : ${{ env.VCPKG_COMMIT }}
7037
7138 - name : Install compilers and tools
7239 run : |
73- # sudo rm -rf /var/lib/apt/lists/*
74- # sudo apt clean
75- sudo apt install ${{ matrix.compiler.deps }} ninja-build -y
76- sudo pip3 install gcovr
40+ sudo apt-get update
41+ sudo apt-get install -y ${{ matrix.compiler.deps }} ninja-build
42+ pip3 install gcovr
7743
78- echo Ensuring programs work...
44+ echo " Ensuring programs work..."
7945 ${{ matrix.compiler.exe }} --version
8046 ninja --version
8147 gcovr --version
@@ -115,57 +81,67 @@ jobs:
11581
11682 - name : Save test results
11783 if : ${{ matrix.MH_STUFF_COMPILE_LIBRARY }}
118- uses : actions/upload-artifact@v2
84+ uses : actions/upload-artifact@v4
11985 with :
12086 name : gcovr_results_${{ matrix.compiler.exe }}
12187 path : build/results*.html
12288
12389
12490
125- build-windows :
126- runs-on : windows-latest
127- strategy :
128- fail-fast : false
129- matrix :
130- MH_STUFF_COMPILE_LIBRARY : [true, false]
91+ # build-windows:
92+ # runs-on: windows-latest
93+ # strategy:
94+ # fail-fast: false
95+ # matrix:
96+ # MH_STUFF_COMPILE_LIBRARY: [true, false]
13197
132- steps :
133- 134- - uses : PazerOP/gha-setup-nuget@HEAD
98+ # steps:
99+ # - uses: actions/checkout@v4
135100
136- - uses : lukka/run-vcpkg@v7
137- with :
138- setupOnly : true
139- vcpkgGitCommitId : ${{ env.VCPKG_GIT_COMMIT_ID }}
140- vcpkgGitURL : ${{ env.VCPKG_GIT_URL }}
101+ # - uses: lukka/run-vcpkg@v11
102+ # with:
103+ # vcpkgGitCommitId: ${{ env.VCPKG_COMMIT }}
141104
142- - uses : seanmiddleditch/gha-setup-ninja@v3
143- - name : Setup compiler paths
144- uses : ilammy/msvc-dev-cmd@v1.5.0
105+ # - uses: seanmiddleditch/gha-setup-ninja@v5
106+ # - name: Setup compiler paths
107+ # uses: ilammy/msvc-dev-cmd@v1
145108
146- - name : Build
147- run : |
148- mkdir build
149- cd build
109+ # - name: Build
110+ # run: |
111+ # mkdir build
112+ # cd build
150113
151- cmake -G Ninja \
152- -DCMAKE_TOOLCHAIN_FILE="$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake" \
153- -DMH_STUFF_COMPILE_LIBRARY=${{ matrix.MH_STUFF_COMPILE_LIBRARY }} \
154- ../
114+ # cmake -G Ninja \
115+ # -DCMAKE_TOOLCHAIN_FILE="$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake" \
116+ # -DMH_STUFF_COMPILE_LIBRARY=${{ matrix.MH_STUFF_COMPILE_LIBRARY }} \
117+ # ../
155118
156- cmake --build .
119+ # cmake --build .
157120
158- - name : Run tests
159- run : |
160- cd build
161- ctest --output-on-failure
121+ # - name: Run tests
122+ # run: |
123+ # cd build
124+ # ctest --output-on-failure
162125
163126
164- registry-update :
165- needs : [build-linux, build-windows]
127+ # registry-update:
128+ # needs: [build-linux]
129+ # runs-on: ubuntu-latest
130+ # steps:
131+ # - uses: PazerOP/vcpkg-registry-update@HEAD
132+ # with:
133+ # port-name: mh-stuff
134+ # workflow-pat: ${{ secrets.WORKFLOW_PAT }}
135+
136+ all-checks-passed :
137+ if : always()
138+ needs : [build-linux]
166139 runs-on : ubuntu-latest
167140 steps :
168- - uses : PazerOP/vcpkg-registry-update@HEAD
169- with :
170- port-name : mh-stuff
171- workflow-pat : ${{ secrets.WORKFLOW_PAT }}
141+ - name : Verify all checks passed
142+ run : |
143+ if [[ "${{ needs.build-linux.result }}" != "success" ]]; then
144+ echo "build-linux failed: ${{ needs.build-linux.result }}"
145+ exit 1
146+ fi
147+ echo "All checks passed!"
0 commit comments