Skip to content

Commit 8dd902f

Browse files
Anteloxwtdcode
authored andcommitted
Add Alpine Linux job
1 parent 65ed715 commit 8dd902f

File tree

1 file changed

+104
-3
lines changed

1 file changed

+104
-3
lines changed

.github/workflows/build-uc2.yml

+104-3
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,6 @@ jobs:
130130
with:
131131
msystem: ${{ matrix.config.mingw }}
132132
install: >-
133-
git
134133
mingw-w64-${{ matrix.config.mingw-arch }}-cmake
135134
mingw-w64-${{ matrix.config.mingw-arch }}-ninja
136135
mingw-w64-${{ matrix.config.mingw-arch }}-cmocka
@@ -479,7 +478,7 @@ jobs:
479478
shell: bash
480479
run: |
481480
sudo apt-get update -q -y
482-
sudo apt-get install -q -y git cmake build-essential automake libcmocka-dev pkg-config ${{ matrix.compiler }} ninja-build
481+
sudo apt-get install -q -y cmake build-essential automake libcmocka-dev pkg-config ${{ matrix.compiler }} ninja-build
483482
mkdir build
484483
mkdir instdir
485484
cmake \
@@ -505,7 +504,7 @@ jobs:
505504
shell: /bin/sh
506505
install: |
507506
apt-get update -q -y
508-
apt-get install -q -y git cmake build-essential automake libcmocka-dev pkg-config ${{ matrix.compiler }} ninja-build
507+
apt-get install -q -y cmake build-essential automake libcmocka-dev pkg-config ${{ matrix.compiler }} ninja-build
509508
run: |
510509
mkdir build
511510
cmake \
@@ -532,3 +531,105 @@ jobs:
532531
with:
533532
path: ./${{ matrix.config.artifact }}
534533
name: ${{ matrix.config.artifact }}
534+
535+
AlpineLinux:
536+
runs-on: ${{ matrix.config.os }}
537+
name: ${{ matrix.config.name }} - ${{ matrix.compiler }}
538+
strategy:
539+
fail-fast: false
540+
matrix:
541+
config:
542+
- {
543+
os: ubuntu-latest,
544+
arch: x86_64,
545+
name: 'alpine-x86_64 cmake shared',
546+
shared: 'yes',
547+
artifact: 'alpine-cmake-shared-x86_64.7z',
548+
archiver: '7z a',
549+
generators: 'Ninja'
550+
}
551+
- {
552+
os: ubuntu-latest,
553+
arch: x86_64,
554+
name: 'alpine-x86_64 cmake static',
555+
shared: 'no',
556+
artifact: 'alpine-cmake-static-x86_64.7z',
557+
archiver: '7z a',
558+
generators: 'Ninja'
559+
}
560+
- {
561+
os: ubuntu-latest,
562+
arch: x86,
563+
name: 'alpine-x86 cmake shared',
564+
shared: 'yes',
565+
artifact: 'alpine-cmake-shared-x86.7z',
566+
archiver: '7z a',
567+
generators: 'Ninja'
568+
}
569+
- {
570+
os: ubuntu-latest,
571+
arch: x86,
572+
name: 'alpine-x86 cmake static',
573+
shared: 'no',
574+
artifact: 'alpine-cmake-static-x86.7z',
575+
archiver: '7z a',
576+
generators: 'Ninja'
577+
}
578+
- {
579+
os: ubuntu-latest,
580+
arch: aarch64,
581+
name: 'alpine-aarch64 cmake',
582+
artifact: 'alpine-cmake-aarch64.7z',
583+
archiver: '7z a',
584+
generators: 'Ninja',
585+
distro: ubuntu24.04
586+
}
587+
- {
588+
os: ubuntu-latest,
589+
arch: ppc64le,
590+
name: 'alpine-ppc64le cmake',
591+
artifact: 'alpine-cmake-ppc64le.7z',
592+
archiver: '7z a',
593+
generators: 'Ninja',
594+
distro: ubuntu24.04
595+
}
596+
compiler: [ gcc ]
597+
steps:
598+
- uses: actions/checkout@v4
599+
600+
- name: '🚧 Setup Alpine Linux'
601+
uses: jirutka/setup-alpine@v1
602+
with:
603+
arch: ${{ matrix.config.arch }}
604+
packages: cmake build-base automake cmocka-dev pkgconfig ${{ matrix.compiler }} ninja linux-headers
605+
606+
- name: '🚧 Linux Alpine build'
607+
shell: alpine.sh --root {0}
608+
run: |
609+
mkdir build
610+
mkdir instdir
611+
cmake \
612+
-S . \
613+
-B . \
614+
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} \
615+
-G "${{ matrix.config.generators }}" \
616+
-DCMAKE_INSTALL_PREFIX:PATH=instdir \
617+
-DBUILD_SHARED_LIBS=${{ matrix.config.shared }}
618+
cmake --build . --config ${{ env.BUILD_TYPE }}
619+
cmake --install . --strip
620+
ctest -VV -C ${{ env.BUILD_TYPE }}
621+
622+
- name: '📦 Pack artifact'
623+
if: always()
624+
shell: bash
625+
working-directory: instdir
626+
run: |
627+
ls -laR
628+
${{ matrix.config.archiver }} ../${{ matrix.config.artifact }} . ../test*
629+
630+
- name: '📤 Upload artifact'
631+
if: always()
632+
uses: actions/upload-artifact@v4
633+
with:
634+
path: ./${{ matrix.config.artifact }}
635+
name: ${{ matrix.config.artifact }}

0 commit comments

Comments
 (0)