Skip to content

Commit c7b28ff

Browse files
authored
misc: shorten externals, add linux arm64 runners (#60)
1 parent 581a175 commit c7b28ff

File tree

11 files changed

+144
-152
lines changed

11 files changed

+144
-152
lines changed

.github/workflows/libdmdutil.yml

Lines changed: 14 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -34,36 +34,16 @@ jobs:
3434
fail-fast: false
3535
matrix:
3636
include:
37-
- os: windows-latest
38-
platform: win
39-
arch: x64
40-
- os: windows-latest
41-
platform: win
42-
arch: x86
43-
- os: macos-latest
44-
platform: macos
45-
arch: arm64
46-
- os: macos-latest
47-
platform: macos
48-
arch: x64
49-
- os: ubuntu-latest
50-
platform: linux
51-
arch: x64
52-
- os: ubuntu-latest
53-
platform: linux
54-
arch: aarch64
55-
- os: ubuntu-latest
56-
platform: android
57-
arch: arm64-v8a
58-
- os: macos-latest
59-
platform: ios
60-
arch: arm64
61-
- os: macos-latest
62-
platform: ios-simulator
63-
arch: arm64
64-
- os: macos-latest
65-
platform: tvos
66-
arch: arm64
37+
- { os: windows-latest, platform: win, arch: x64 }
38+
- { os: windows-latest, platform: win, arch: x86 }
39+
- { os: macos-latest, platform: macos, arch: arm64 }
40+
- { os: macos-latest, platform: macos, arch: x64 }
41+
- { os: ubuntu-latest, platform: linux, arch: x64 }
42+
- { os: ubuntu-latest, platform: linux, arch: aarch64 }
43+
- { os: ubuntu-latest, platform: android, arch: arm64-v8a }
44+
- { os: macos-latest, platform: ios, arch: arm64 }
45+
- { os: macos-latest, platform: ios-simulator, arch: arm64 }
46+
- { os: macos-latest, platform: tvos, arch: arm64 }
6747
steps:
6848
- uses: actions/checkout@v4
6949
- if: (matrix.os == 'windows-latest')
@@ -73,15 +53,16 @@ jobs:
7353
name: Add autoconf and automake (mac runner)
7454
run: |
7555
brew install autoconf automake libtool
76-
- if: (!(matrix.platform == 'linux' && matrix.arch == 'aarch64'))
77-
name: Build libdmdutil-${{ matrix.platform }}-${{ matrix.arch }}
56+
- name: Build libdmdutil-${{ matrix.platform }}-${{ matrix.arch }}
7857
run: |
7958
./platforms/${{ matrix.platform }}/${{ matrix.arch }}/external.sh
8059
if [[ "${{ matrix.platform }}" == "win" ]]; then
8160
if [[ "${{ matrix.arch }}" == "x64" ]]; then
8261
cmake -G "Visual Studio 17 2022" -DPLATFORM=${{ matrix.platform }} -DARCH=${{ matrix.arch }} -B build
83-
else
62+
elif [[ "${{ matrix.arch }}" == "x86" ]]; then
8463
cmake -G "Visual Studio 17 2022" -A Win32 -DPLATFORM=${{ matrix.platform }} -DARCH=${{ matrix.arch }} -B build
64+
elif [[ "${{ matrix.arch }}" == "arm64" ]]; then
65+
cmake -G "Visual Studio 17 2022" -A ARM64 -DPLATFORM=${{ matrix.platform }} -DARCH=${{ matrix.arch }} -B build
8566
fi
8667
cmake --build build --config Release
8768
else
@@ -93,23 +74,6 @@ jobs:
9374
cmake -DCMAKE_BUILD_TYPE=Release -DPLATFORM=${{ matrix.platform }} -DARCH=${{ matrix.arch }} -B build
9475
cmake --build build -- -j${NUM_PROCS}
9576
fi
96-
- if: (matrix.platform == 'linux' && matrix.arch == 'aarch64')
97-
name: Build libdmdutil-${{ matrix.platform }}-${{ matrix.arch }} (arm runner)
98-
uses: pguyot/arm-runner-action@v2
99-
with:
100-
base_image: raspios_lite_arm64:latest
101-
image_additional_mb: 4096
102-
cpu: cortex-a53
103-
cpu_info: cpuinfo/raspberrypi_zero2_w_arm64
104-
bind_mount_repository: true
105-
commands: |
106-
apt-get update -y --allow-releaseinfo-change
107-
apt-get install --no-install-recommends -y pkg-config cmake autoconf automake libtool
108-
./platforms/${{ matrix.platform }}/${{ matrix.arch }}/external.sh
109-
NUM_PROCS=$(nproc)
110-
cmake -DCMAKE_BUILD_TYPE=Release -DPLATFORM=${{ matrix.platform }} -DARCH=${{ matrix.arch }} -B build
111-
cmake --build build -- -j${NUM_PROCS}
112-
build/dmdutil_test
11377
- if: (!(matrix.arch == 'arm64' || matrix.arch == 'arm64-v8a' || matrix.arch == 'aarch64' || matrix.platform == 'win'))
11478
name: dmdutil_test
11579
run: build/dmdutil_test

platforms/android/arm64-v8a/external.sh

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
set -e
44

5-
LIBZEDMD_SHA=732573aa68c56679859c3d59baa682a7b7ac7cd6
5+
LIBZEDMD_SHA=4487023aef5019f3b0ce6814834603fa758abcf1
66
LIBSERUM_SHA=b0cc2a871d9d5b6395658c56c65402ae388eb78c
77
LIBPUPDMD_SHA=124f45e5ddd59ceb339591de88fcca72f8c54612
88

@@ -37,9 +37,10 @@ cd external
3737
# build libzedmd and copy to external
3838
#
3939

40-
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.zip -o libzedmd.zip
41-
unzip libzedmd.zip
42-
cd libzedmd-$LIBZEDMD_SHA
40+
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.tar.gz -o libzedmd-${LIBZEDMD_SHA}.tar.gz
41+
tar xzf libzedmd-${LIBZEDMD_SHA}.tar.gz
42+
mv libzedmd-${LIBZEDMD_SHA} libzedmd
43+
cd libzedmd
4344
BUILD_TYPE=${BUILD_TYPE} platforms/android/arm64-v8a/external.sh
4445
cmake \
4546
-DPLATFORM=android \
@@ -61,9 +62,10 @@ cd ..
6162
# build libserum and copy to external
6263
#
6364

64-
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.zip -o libserum.zip
65-
unzip libserum.zip
66-
cd libserum-$LIBSERUM_SHA
65+
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.tar.gz -o libserum-${LIBSERUM_SHA}.tar.gz
66+
tar xzf libserum-${LIBSERUM_SHA}.tar.gz
67+
mv libserum-${LIBSERUM_SHA} libserum
68+
cd libserum
6769
cmake \
6870
-DPLATFORM=android \
6971
-DARCH=arm64-v8a \
@@ -81,9 +83,10 @@ cd ..
8183
# build libpupdmd and copy to external
8284
#
8385

84-
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.zip -o libpupdmd.zip
85-
unzip libpupdmd.zip
86-
cd libpupdmd-$LIBPUPDMD_SHA
86+
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.tar.gz -o libpupdmd-${LIBPUPDMD_SHA}.tar.gz
87+
tar xzf libpupdmd-${LIBPUPDMD_SHA}.tar.gz
88+
mv libpupdmd-${LIBPUPDMD_SHA} libpupdmd
89+
cd libpupdmd
8790
cmake -DPLATFORM=android \
8891
-DARCH=arm64-v8a \
8992
-DBUILD_SHARED=ON \

platforms/ios-simulator/arm64/external.sh

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,9 @@
22

33
set -e
44

5-
CARGS_SHA=5949a20a926e902931de4a32adaad9f19c76f251
6-
LIBZEDMD_SHA=732573aa68c56679859c3d59baa682a7b7ac7cd6
5+
LIBZEDMD_SHA=4487023aef5019f3b0ce6814834603fa758abcf1
76
LIBSERUM_SHA=b0cc2a871d9d5b6395658c56c65402ae388eb78c
87
LIBPUPDMD_SHA=124f45e5ddd59ceb339591de88fcca72f8c54612
9-
LIBFRAMEUTIL_SHA=30048ca23d41ca0a8f7d5ab75d3f646a19a90182
108

119
NUM_PROCS=$(sysctl -n hw.ncpu)
1210

@@ -32,9 +30,10 @@ cd external
3230
# build libzedmd and copy to external
3331
#
3432

35-
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.zip -o libzedmd.zip
36-
unzip libzedmd.zip
37-
cd libzedmd-$LIBZEDMD_SHA
33+
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.tar.gz -o libzedmd-${LIBZEDMD_SHA}.tar.gz
34+
tar xzf libzedmd-${LIBZEDMD_SHA}.tar.gz
35+
mv libzedmd-${LIBZEDMD_SHA} libzedmd
36+
cd libzedmd
3837
BUILD_TYPE=${BUILD_TYPE} platforms/ios-simulator/arm64/external.sh
3938
cmake \
4039
-DPLATFORM=ios-simulator \
@@ -56,9 +55,10 @@ cd ..
5655
# build libserum and copy to external
5756
#
5857

59-
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.zip -o libserum.zip
60-
unzip libserum.zip
61-
cd libserum-$LIBSERUM_SHA
58+
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.tar.gz -o libserum-${LIBSERUM_SHA}.tar.gz
59+
tar xzf libserum-${LIBSERUM_SHA}.tar.gz
60+
mv libserum-${LIBSERUM_SHA} libserum
61+
cd libserum
6262
cmake \
6363
-DPLATFORM=ios-simulator \
6464
-DARCH=arm64 \
@@ -76,9 +76,10 @@ cd ..
7676
# build libpupdmd and copy to external
7777
#
7878

79-
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.zip -o libpupdmd.zip
80-
unzip libpupdmd.zip
81-
cd libpupdmd-$LIBPUPDMD_SHA
79+
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.tar.gz -o libpupdmd-${LIBPUPDMD_SHA}.tar.gz
80+
tar xzf libpupdmd-${LIBPUPDMD_SHA}.tar.gz
81+
mv libpupdmd-${LIBPUPDMD_SHA} libpupdmd
82+
cd libpupdmd
8283
cmake \
8384
-DPLATFORM=ios-simulator \
8485
-DARCH=arm64 \

platforms/ios/arm64/external.sh

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
set -e
44

5-
LIBZEDMD_SHA=732573aa68c56679859c3d59baa682a7b7ac7cd6
5+
LIBZEDMD_SHA=4487023aef5019f3b0ce6814834603fa758abcf1
66
LIBSERUM_SHA=b0cc2a871d9d5b6395658c56c65402ae388eb78c
77
LIBPUPDMD_SHA=124f45e5ddd59ceb339591de88fcca72f8c54612
88

@@ -30,9 +30,10 @@ cd external
3030
# build libzedmd and copy to external
3131
#
3232

33-
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.zip -o libzedmd.zip
34-
unzip libzedmd.zip
35-
cd libzedmd-$LIBZEDMD_SHA
33+
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.tar.gz -o libzedmd-${LIBZEDMD_SHA}.tar.gz
34+
tar xzf libzedmd-${LIBZEDMD_SHA}.tar.gz
35+
mv libzedmd-${LIBZEDMD_SHA} libzedmd
36+
cd libzedmd
3637
BUILD_TYPE=${BUILD_TYPE} platforms/ios/arm64/external.sh
3738
cmake \
3839
-DPLATFORM=ios \
@@ -54,9 +55,10 @@ cd ..
5455
# build libserum and copy to external
5556
#
5657

57-
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.zip -o libserum.zip
58-
unzip libserum.zip
59-
cd libserum-$LIBSERUM_SHA
58+
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.tar.gz -o libserum-${LIBSERUM_SHA}.tar.gz
59+
tar xzf libserum-${LIBSERUM_SHA}.tar.gz
60+
mv libserum-${LIBSERUM_SHA} libserum
61+
cd libserum
6062
cmake \
6163
-DPLATFORM=ios \
6264
-DARCH=arm64 \
@@ -74,9 +76,10 @@ cd ..
7476
# build libpupdmd and copy to external
7577
#
7678

77-
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.zip -o libpupdmd.zip
78-
unzip libpupdmd.zip
79-
cd libpupdmd-$LIBPUPDMD_SHA
79+
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.tar.gz -o libpupdmd-${LIBPUPDMD_SHA}.tar.gz
80+
tar xzf libpupdmd-${LIBPUPDMD_SHA}.tar.gz
81+
mv libpupdmd-${LIBPUPDMD_SHA} libpupdmd
82+
cd libpupdmd
8083
cmake \
8184
-DPLATFORM=ios \
8285
-DARCH=arm64 \

platforms/linux/aarch64/external.sh

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
set -e
44

5-
LIBZEDMD_SHA=732573aa68c56679859c3d59baa682a7b7ac7cd6
5+
LIBZEDMD_SHA=4487023aef5019f3b0ce6814834603fa758abcf1
66
LIBSERUM_SHA=b0cc2a871d9d5b6395658c56c65402ae388eb78c
77
LIBPUPDMD_SHA=124f45e5ddd59ceb339591de88fcca72f8c54612
88

@@ -30,9 +30,10 @@ cd external
3030
# build libzedmd and copy to external
3131
#
3232

33-
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.zip -o libzedmd.zip
34-
unzip libzedmd.zip
35-
cd libzedmd-$LIBZEDMD_SHA
33+
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.tar.gz -o libzedmd-${LIBZEDMD_SHA}.tar.gz
34+
tar xzf libzedmd-${LIBZEDMD_SHA}.tar.gz
35+
mv libzedmd-${LIBZEDMD_SHA} libzedmd
36+
cd libzedmd
3637
BUILD_TYPE=${BUILD_TYPE} platforms/linux/aarch64/external.sh
3738
cmake \
3839
-DPLATFORM=linux \
@@ -56,9 +57,10 @@ cd ..
5657
# build libserum and copy to external
5758
#
5859

59-
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.zip -o libserum.zip
60-
unzip libserum.zip
61-
cd libserum-$LIBSERUM_SHA
60+
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.tar.gz -o libserum-${LIBSERUM_SHA}.tar.gz
61+
tar xzf libserum-${LIBSERUM_SHA}.tar.gz
62+
mv libserum-${LIBSERUM_SHA} libserum
63+
cd libserum
6264
cmake \
6365
-DPLATFORM=linux \
6466
-DARCH=aarch64 \
@@ -77,9 +79,10 @@ cd ..
7779
# build libpupdmd and copy to external
7880
#
7981

80-
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.zip -o libpupdmd.zip
81-
unzip libpupdmd.zip
82-
cd libpupdmd-$LIBPUPDMD_SHA
82+
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.tar.gz -o libpupdmd-${LIBPUPDMD_SHA}.tar.gz
83+
tar xzf libpupdmd-${LIBPUPDMD_SHA}.tar.gz
84+
mv libpupdmd-${LIBPUPDMD_SHA} libpupdmd
85+
cd libpupdmd
8386
cmake \
8487
-DPLATFORM=linux \
8588
-DARCH=aarch64 \

platforms/linux/x64/external.sh

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
set -e
44

5-
LIBZEDMD_SHA=732573aa68c56679859c3d59baa682a7b7ac7cd6
5+
LIBZEDMD_SHA=4487023aef5019f3b0ce6814834603fa758abcf1
66
LIBSERUM_SHA=b0cc2a871d9d5b6395658c56c65402ae388eb78c
77
LIBPUPDMD_SHA=124f45e5ddd59ceb339591de88fcca72f8c54612
88

@@ -30,9 +30,10 @@ cd external
3030
# build libzedmd and copy to external
3131
#
3232

33-
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.zip -o libzedmd.zip
34-
unzip libzedmd.zip
35-
cd libzedmd-$LIBZEDMD_SHA
33+
curl -sL https://github.com/PPUC/libzedmd/archive/${LIBZEDMD_SHA}.tar.gz -o libzedmd-${LIBZEDMD_SHA}.tar.gz
34+
tar xzf libzedmd-${LIBZEDMD_SHA}.tar.gz
35+
mv libzedmd-${LIBZEDMD_SHA} libzedmd
36+
cd libzedmd
3637
BUILD_TYPE=${BUILD_TYPE} platforms/linux/x64/external.sh
3738
cmake \
3839
-DPLATFORM=linux \
@@ -56,9 +57,10 @@ cd ..
5657
# build libserum and copy to external
5758
#
5859

59-
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.zip -o libserum.zip
60-
unzip libserum.zip
61-
cd libserum-$LIBSERUM_SHA
60+
curl -sL https://github.com/zesinger/libserum/archive/${LIBSERUM_SHA}.tar.gz -o libserum-${LIBSERUM_SHA}.tar.gz
61+
tar xzf libserum-${LIBSERUM_SHA}.tar.gz
62+
mv libserum-${LIBSERUM_SHA} libserum
63+
cd libserum
6264
cmake \
6365
-DPLATFORM=linux \
6466
-DARCH=x64 \
@@ -76,9 +78,10 @@ cd ..
7678
# build libpupdmd and copy to external
7779
#
7880

79-
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.zip -o libpupdmd.zip
80-
unzip libpupdmd.zip
81-
cd libpupdmd-$LIBPUPDMD_SHA
81+
curl -sL https://github.com/ppuc/libpupdmd/archive/${LIBPUPDMD_SHA}.tar.gz -o libpupdmd-${LIBPUPDMD_SHA}.tar.gz
82+
tar xzf libpupdmd-${LIBPUPDMD_SHA}.tar.gz
83+
mv libpupdmd-${LIBPUPDMD_SHA} libpupdmd
84+
cd libpupdmd
8285
cmake \
8386
-DPLATFORM=linux \
8487
-DARCH=x64 \

0 commit comments

Comments
 (0)