1
0
Fork 0
mirror of https://github.com/TheLartians/ModernCppStarter.git synced 2025-08-30 13:41:13 +02:00
This commit is contained in:
Bensuperpc 2025-03-24 08:28:05 +00:00 committed by GitHub
commit 07ba7bb6d3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 96 additions and 0 deletions

72
.github/workflows/dockcross.yml vendored Normal file
View file

@ -0,0 +1,72 @@
name: Dockcross
on:
push:
branches:
- "*"
paths-ignore:
- "**/README.md"
pull_request:
branches:
- "*"
jobs:
image:
name: "Build ${{ matrix.image_name }} ${{ matrix.build_type }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Remove images that you do not need
image_name:
[
android-arm,
android-arm64,
android-x86,
android-x86_64,
linux-x86,
linux-x64,
linux-x64-clang,
linux-arm64,
linux-arm64-musl,
linux-arm64-full,
linux-armv5,
linux-armv5-musl,
linux-m68k-uclibc,
linux-s390x,
linux-x64-tinycc,
linux-armv6,
linux-armv6-lts,
linux-armv6-musl,
linux-armv7l-musl,
linux-armv7,
linux-armv7a,
linux-x86_64-full,
linux-mips,
linux-ppc64le,
linux-riscv64,
linux-riscv32,
linux-xtensa-uclibc,
windows-static-x86,
windows-static-x64,
windows-static-x64-posix,
windows-armv7,
windows-shared-x86,
windows-shared-x64,
windows-shared-x64-posix,
windows-arm64,
manylinux2014-x64,
manylinux2014-x86,
manylinux2014-aarch64,
web-wasm,
]
# Disable MinSizeRel RelWithDebInfo Debug Release
build_type: [Debug]
steps:
- name: "Checkout Code"
uses: actions/checkout@v2
with:
submodules: "recursive"
fetch-depth: 0
- name: "build"
run: ./tools/dockcross-cmake-builder.sh ${{ matrix.image_name }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}

View file

@ -0,0 +1,24 @@
#!/usr/bin/env bash
if (( $# >= 1 )); then
image=$1
build_file=build-${image%:*}
shift 1
cmake_arg=$@
echo "cmake arg: $cmake_arg"
#echo "Pulling dockcross/$image"
#docker pull dockcross/"$image"
echo "Make script dockcross-$image"
docker run --rm dockcross/"$image" > ./dockcross-"$image"
chmod +x ./dockcross-"$image"
echo "Build $build_file"
./dockcross-"$image" cmake -B "$build_file" -S . -G Ninja $cmake_arg
./dockcross-"$image" ninja -C "$build_file"
else
echo "Usage: ${0##*/} <docker imag (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <cmake arg.>"
exit 1
fi