Skip to content

Commit a884933

Browse files
Update build actions
1 parent 2f69954 commit a884933

2 files changed

Lines changed: 54 additions & 43 deletions

File tree

.github/workflows/build-exiv2-wheels-prebuilt.yml

Lines changed: 28 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,33 @@ on: workflow_dispatch
33

44
jobs:
55
build:
6-
name: build on ${{ matrix.os }}
7-
runs-on: ${{ matrix.os }}
6+
name: build ${{ matrix.build }}
7+
runs-on: ${{ matrix.runner }}
88
strategy:
99
matrix:
10-
os:
11-
- ubuntu-22.04
12-
- ubuntu-22.04-arm
13-
- macos-13
14-
- macos-14
15-
- windows-2022
1610
include:
17-
- os: ubuntu-22.04
18-
arch: Linux-x86_64
19-
- os: ubuntu-22.04-arm
20-
arch: Linux-aarch64
21-
- os: macos-13
22-
arch: Darwin-x86_64
23-
target: 13.7
24-
- os: macos-14
25-
arch: Darwin-arm64
11+
- build: Linux-x64
12+
runner: ubuntu-22.04
13+
exiv2_build: Linux-x86_64
14+
arch: x86_64
15+
- build: Linux-arm64
16+
runner: ubuntu-22.04-arm
17+
exiv2_build: Linux-aarch64
18+
arch: aarch64
19+
- build: MacOS-x64
20+
runner: macos-15-intel
21+
exiv2_build: Darwin-x86_64
22+
target: 15.0
23+
arch: x86_64
24+
- build: MacOS-arm64
25+
runner: macos-14
26+
exiv2_build: Darwin-arm64
2627
target: 14.0
27-
- os: windows-2022
28-
arch: 2022msvc-AMD64
28+
arch: arm64
29+
- build: Windows-x64
30+
runner: windows-2022
31+
exiv2_build: 2022msvc-AMD64
32+
arch: AMD64
2933
defaults:
3034
run:
3135
shell: bash
@@ -38,22 +42,22 @@ jobs:
3842
- name: Download exiv2.tar.gz
3943
if: ${{ runner.os != 'Windows' }}
4044
run: |
41-
wget -nv https://github.com/Exiv2/exiv2/releases/download/v${{ env.EXIV2_VSN }}/exiv2-${{ env.EXIV2_VSN }}-${{ matrix.arch }}.tar.gz -O - |
45+
wget -nv https://github.com/Exiv2/exiv2/releases/download/v${{ env.EXIV2_VSN }}/exiv2-${{ env.EXIV2_VSN }}-${{ matrix.exiv2_build }}.tar.gz -O - |
4246
tar zxf -
4347
4448
- name: Download exiv2.zip
4549
if: ${{ runner.os == 'Windows' }}
4650
run: |
47-
c:/msys64/usr/bin/wget.exe -nv https://github.com/Exiv2/exiv2/releases/download/v${{ env.EXIV2_VSN }}/exiv2-${{ env.EXIV2_VSN }}-${{ matrix.arch }}.zip -O exiv2.zip
51+
c:/msys64/usr/bin/wget.exe -nv https://github.com/Exiv2/exiv2/releases/download/v${{ env.EXIV2_VSN }}/exiv2-${{ env.EXIV2_VSN }}-${{ matrix.exiv2_build }}.zip -O exiv2.zip
4852
unzip exiv2.zip
4953
5054
- name: Build wheels
5155
# cibuildwheel@v3.x omits Python 3.6 & 3.7
5256
uses: pypa/cibuildwheel@v3.1.4
5357
env:
54-
CIBW_ARCHS: auto64
58+
CIBW_ARCHS: ${{ matrix.arch }}
5559
CIBW_ENVIRONMENT: >
56-
EXIV2_ROOT=exiv2-${{ env.EXIV2_VSN }}-${{ matrix.arch }}
60+
EXIV2_ROOT=exiv2-${{ env.EXIV2_VSN }}-${{ matrix.exiv2_build }}
5761
CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_34
5862
CIBW_MANYLINUX_AARCH64_IMAGE: manylinux_2_34
5963
CIBW_BUILD: "cp*"
@@ -67,5 +71,5 @@ jobs:
6771
- name: Store results
6872
uses: actions/upload-artifact@v4
6973
with:
70-
name: exiv2-wheels-${{ runner.os }}-${{ runner.arch }}
74+
name: exiv2-wheels-${{ matrix.build }}
7175
path: wheelhouse/*.whl

.github/workflows/build-exiv2-wheels.yml

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,32 @@ on: workflow_dispatch
33

44
jobs:
55
build:
6-
name: build on ${{ matrix.os }}
7-
runs-on: ${{ matrix.os }}
6+
name: build ${{ matrix.build }}
7+
runs-on: ${{ matrix.runner }}
88
strategy:
99
matrix:
10-
os:
11-
- ubuntu-22.04
12-
- ubuntu-22.04-arm
13-
- macos-13
14-
- macos-14
15-
- windows-2022
1610
include:
17-
- wget: wget
18-
- os: macos-13
11+
- build: Linux-x64
12+
runner: ubuntu-22.04
1913
arch: x86_64
20-
target: 13.0
21-
- os: macos-14
22-
arch: arm64
14+
wget: wget
15+
- build: Linux-arm64
16+
runner: ubuntu-22.04-arm
17+
arch: aarch64
18+
wget: wget
19+
- build: MacOS-x64
20+
runner: macos-15-intel
21+
target: 14.0
22+
arch: x86_64
23+
wget: wget
24+
- build: MacOS-arm64
25+
runner: macos-14
2326
target: 14.0
24-
- os: windows-2022
27+
arch: arm64
28+
wget: wget
29+
- build: Windows-x64
30+
runner: windows-2022
31+
arch: AMD64
2532
wget: c:/msys64/usr/bin/wget.exe
2633
env:
2734
EXIV2_SRC: >
@@ -70,7 +77,7 @@ jobs:
7077
- name: Build exiv2 (Windows)
7178
if: ${{ runner.os == 'Windows' }}
7279
run: >
73-
pip install conan==1.59.0 &&
80+
pip install conan==1.66.0 &&
7481
cd libexiv2 &&
7582
echo -e "24a25\n> self.requires('libgettext/0.21')" |
7683
patch conanfile.py &&
@@ -91,11 +98,11 @@ jobs:
9198
cmake --install build-base_mac --config Release
9299
93100
- name: Build wheels (Python 3.6 & 3.7)
94-
if: ${{ matrix.os != 'macos-14' }}
101+
if: ${{ runner.os != 'macOS' }}
95102
# cibuildwheel@v3.x omits Python 3.6 & 3.7
96103
uses: pypa/cibuildwheel@v2.23.3
97104
env:
98-
CIBW_ARCHS: auto64
105+
CIBW_ARCHS: ${{ matrix.arch }}
99106
CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
100107
CIBW_MANYLINUX_AARCH64_IMAGE: manylinux_2_28
101108
CIBW_ENVIRONMENT_LINUX: >
@@ -128,7 +135,7 @@ jobs:
128135
- name: Build wheels (Python 3.8+)
129136
uses: pypa/cibuildwheel@v3.2.1
130137
env:
131-
CIBW_ARCHS: auto64
138+
CIBW_ARCHS: ${{ matrix.arch }}
132139
CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
133140
CIBW_MANYLINUX_AARCH64_IMAGE: manylinux_2_28
134141
CIBW_ENVIRONMENT_LINUX: >
@@ -160,5 +167,5 @@ jobs:
160167
- name: Store results
161168
uses: actions/upload-artifact@v4
162169
with:
163-
name: exiv2-wheels-${{ runner.os }}-${{ runner.arch }}
170+
name: exiv2-wheels-${{ matrix.build }}
164171
path: wheelhouse/*.whl

0 commit comments

Comments
 (0)