Skip to content

Commit ba4f1d9

Browse files
committed
multiplatform test
1 parent 7687136 commit ba4f1d9

File tree

1 file changed

+17
-21
lines changed

1 file changed

+17
-21
lines changed

.github/workflows/cmake-build.yml

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -22,23 +22,20 @@ jobs:
2222
- name: 'Check out code (Common)'
2323
uses: actions/checkout@v4
2424

25-
- name: 'Set reusable strings (Ubuntu)'
26-
id: strings-linux
27-
if: runner.os == 'Linux'
25+
- name: 'Set reusable strings (Common)'
26+
id: strings-common
2827
shell: bash
2928
run: |
3029
echo "build-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
3130
echo "build-version=${{ (github.ref_name == 'master' || github.ref_name == 'develop') && '0.0.0' || github.ref_name }}" >> "$GITHUB_OUTPUT"
32-
echo "cpu-count=$(nproc)" >> "$GITHUB_OUTPUT"
31+
echo "build-name=${{ (github.ref_name == 'master' || github.ref_name == 'develop') && 'latest' || github.ref_name }}" >> "$GITHUB_OUTPUT"
32+
echo "cpu-count=4" >> "$GITHUB_OUTPUT"
3333
3434
- name: 'Set reusable strings (Windows)'
3535
if: runner.os == 'Windows'
3636
id: strings-windows
3737
shell: bash
3838
run: |
39-
echo "build-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
40-
echo "build-version=${{ github.ref_name == 'master' && '0.0.0' || github.ref_name }}" >> "$GITHUB_OUTPUT"
41-
echo "build-name=${{ github.ref_name == 'master' && 'latest' || github.ref_name }}" >> "$GITHUB_OUTPUT"
4239
echo "qt-dir=${{ github.workspace }}/qt/6.7.2/mingw_64" >> "$GITHUB_OUTPUT"
4340
echo "ninja-dir=${{ github.workspace }}/tools/ninja" >> "$GITHUB_OUTPUT"
4441
echo "cmake-dir=${{ github.workspace }}/tools/cmake_64" >> "$GITHUB_OUTPUT"
@@ -47,7 +44,6 @@ jobs:
4744
echo "package-dir=${{ github.workspace }}/build/installer/package" >> "$GITHUB_OUTPUT"
4845
echo "package-data-dir=${{ github.workspace }}/build/installer/package/org.josevcm.nfc-lab/data" >> "$GITHUB_OUTPUT"
4946
echo "package-meta-dir=${{ github.workspace }}/build/installer/package/org.josevcm.nfc-lab/meta" >> "$GITHUB_OUTPUT"
50-
echo "cpu-count=4" >> "$GITHUB_OUTPUT"
5147
5248
- name: 'Cache dependencies (Windows)'
5349
id: cache-dependencies
@@ -78,24 +74,24 @@ jobs:
7874
- name: 'Build project (Ubuntu)'
7975
if: runner.os == 'Linux'
8076
run: |
81-
dpkg-buildpackage -us -uc -j${{ steps.strings-linux.outputs.cpu-count }}
77+
dpkg-buildpackage -us -uc -j${{ steps.strings-common.outputs.cpu-count }}
8278
8379
- name: 'Build project (Windows)'
8480
if: runner.os == 'Windows'
8581
run: |
8682
${{ steps.strings-windows.outputs.cmake-dir }}/bin/cmake `
8783
-S ${{ github.workspace }} `
88-
-B ${{ steps.strings-windows.outputs.build-dir }} `
84+
-B ${{ steps.strings-common.outputs.build-dir }} `
8985
-G Ninja `
9086
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} `
9187
-DCMAKE_PREFIX_PATH=${{ steps.strings-windows.outputs.qt-dir }} `
9288
-DCMAKE_C_COMPILER=${{ steps.strings-windows.outputs.mingw-dir }}/bin/gcc.exe `
9389
-DCMAKE_CXX_COMPILER=${{ steps.strings-windows.outputs.mingw-dir }}/bin/g++.exe `
9490
-DCMAKE_MAKE_PROGRAM=${{ steps.strings-windows.outputs.ninja-dir }}/ninja.exe `
95-
-DBUILD_PROJECT_VERSION="${{ steps.strings-windows.outputs.build-version }}"
91+
-DBUILD_PROJECT_VERSION="${{ steps.strings-common.outputs.build-version }}"
9692
${{ steps.strings-windows.outputs.cmake-dir }}/bin/cmake `
97-
--build ${{ steps.strings-windows.outputs.build-dir }} `
98-
--target nfc-lab --parallel ${{ steps.strings-windows.outputs.cpu-count }}
93+
--build ${{ steps.strings-common.outputs.build-dir }} `
94+
--target nfc-lab --parallel ${{ steps.strings-common.outputs.cpu-count }}
9995
10096
- name: 'Create installer (Windows)'
10197
if: runner.os == 'Windows'
@@ -105,7 +101,7 @@ jobs:
105101
New-Item -Force -ItemType "directory" -Path ${{ steps.strings-windows.outputs.package-meta-dir }}
106102
107103
# copy executable and libraries
108-
Copy-Item -Force ${{ steps.strings-windows.outputs.build-dir }}/src/nfc-app/app-qt/nfc-lab.exe ${{ steps.strings-windows.outputs.package-data-dir }}
104+
Copy-Item -Force ${{ steps.strings-common.outputs.build-dir }}/src/nfc-app/app-qt/nfc-lab.exe ${{ steps.strings-windows.outputs.package-data-dir }}
109105
Copy-Item -Force ${{ steps.strings-windows.outputs.mingw-dir }}/bin/*.dll ${{ steps.strings-windows.outputs.package-data-dir }}
110106
Copy-Item -Force ${{ github.workspace }}/dll/airspy/x86_64/bin/*.dll ${{ steps.strings-windows.outputs.package-data-dir }}
111107
Copy-Item -Force ${{ github.workspace }}/dll/openssl/x86_64/bin/*.dll ${{ steps.strings-windows.outputs.package-data-dir }}
@@ -118,7 +114,7 @@ jobs:
118114
Copy-Item -Force -Recurse ${{ github.workspace }}/dat/firmware ${{ steps.strings-windows.outputs.package-data-dir }}
119115
120116
# copy installer resources
121-
Copy-Item -Force ${{ steps.strings-windows.outputs.build-dir }}/installer/config/*.* ${{ steps.strings-windows.outputs.package-meta-dir }}
117+
Copy-Item -Force ${{ steps.strings-common.outputs.build-dir }}/installer/config/*.* ${{ steps.strings-windows.outputs.package-meta-dir }}
122118
123119
# create deployment
124120
${{ steps.strings-windows.outputs.qt-dir }}/bin/windeployqt `
@@ -132,16 +128,16 @@ jobs:
132128
# create installer
133129
${{ steps.strings-windows.outputs.installer-dir }}/bin/binarycreator `
134130
--verbose `
135-
-c ${{ steps.strings-windows.outputs.build-dir }}/installer/config/config.xml `
131+
-c ${{ steps.strings-common.outputs.build-dir }}/installer/config/config.xml `
136132
-p ${{ steps.strings-windows.outputs.package-dir }} `
137-
${{ steps.strings-windows.outputs.build-dir }}/nfc-lab-${{ steps.strings-windows.outputs.build-name }}-installer-x86_64.exe
133+
${{ steps.strings-common.outputs.build-dir }}/nfc-lab-${{ steps.strings-common.outputs.build-name }}-installer-x86_64.exe
138134
139135
- name: 'Upload artifact (Windows)'
140136
if: runner.os == 'Windows'
141137
uses: actions/upload-artifact@v4
142138
with:
143-
name: nfc-lab-${{ steps.strings-windows.outputs.build-name }}-installer-x86_64.exe
144-
path: ${{ steps.strings-windows.outputs.build-dir }}/nfc-lab-${{ steps.strings-windows.outputs.build-name }}-installer-x86_64.exe
139+
name: nfc-lab-${{ steps.strings-common.outputs.build-name }}-installer-x86_64.exe
140+
path: ${{ steps.strings-common.outputs.build-dir }}/nfc-lab-${{ steps.strings-common.outputs.build-name }}-installer-x86_64.exe
145141

146142
- name: 'Create release (Common)'
147143
if: startsWith(github.ref, 'refs/tags/')
@@ -162,8 +158,8 @@ jobs:
162158
uses: actions/upload-release-asset@v1
163159
with:
164160
upload_url: ${{ steps.create-release.outputs.upload_url }}
165-
asset_name: nfc-lab-${{ steps.strings-windows.outputs.build-name }}-installer-x86_64.exe
166-
asset_path: ${{ steps.strings-windows.outputs.build-dir }}/nfc-lab-${{ steps.strings-windows.outputs.build-name }}-installer-x86_64.exe
161+
asset_name: nfc-lab-${{ steps.strings-common.outputs.build-name }}-installer-x86_64.exe
162+
asset_path: ${{ steps.strings-common.outputs.build-dir }}/nfc-lab-${{ steps.strings-common.outputs.build-name }}-installer-x86_64.exe
167163
asset_content_type: application/octet-stream
168164
env:
169165
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)