diff --git a/.github/workflows/switch.yml b/.github/workflows/switch.yml new file mode 100644 index 0000000..944b40e --- /dev/null +++ b/.github/workflows/switch.yml @@ -0,0 +1,18 @@ +name: Switch +on: [push] + +jobs: + build: + name: Switch + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Checkout submodules + run: | + git submodule init + git submodule update + - name: Docker Build + run: scripts/switch/build-docker-image.sh + - name: Build Chiaki + run: scripts/switch/run-docker-build-chiaki.sh + diff --git a/.gitignore b/.gitignore index 43359e6..78d5d3a 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,8 @@ .idea build cmake-build-* +/build_* +/build-* .DS_store *.AppImage appdir diff --git a/scripts/switch/Dockerfile b/scripts/switch/Dockerfile index cd59827..494013d 100644 --- a/scripts/switch/Dockerfile +++ b/scripts/switch/Dockerfile @@ -1,15 +1,14 @@ -FROM docker.io/archlinux/base +FROM archlinux:latest ENV DEVKITPRO=/opt/devkitpro ENV DEVKITARM=/opt/devkitpro/devkitARM ENV DEVKITPPC=/opt/devkitpro/devkitPPC ENV PATH="${PATH}:${DEVKITARM}/bin/:${DEVKITPPC}/bin/" - ENV WORKDIR="/build" WORKDIR "${WORKDIR}" -# Upgarde image +# Upgrade image RUN pacman --noconfirm -Syu # Install requirements for libtransistor @@ -33,7 +32,7 @@ RUN pacman-key --init # https://devkitpro.org/wiki/devkitPro_pacman # First import the key which is used to validate the packages -RUN pacman-key --recv F7FD5492264BB9D0 +RUN pacman-key --recv-keys F7FD5492264BB9D0 RUN pacman-key --lsign F7FD5492264BB9D0 # Add the devkitPro repositories @@ -73,7 +72,7 @@ RUN pacman --noconfirm -S \ switch-ffmpeg \ switch-mbedtls -RUN pip3 install -U pip +# RUN pip3 install -U pip VOLUME ${WORKDIR} # nxlink server port diff --git a/scripts/switch/build-docker-image.sh b/scripts/switch/build-docker-image.sh new file mode 100755 index 0000000..f8c7ea2 --- /dev/null +++ b/scripts/switch/build-docker-image.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +cd "`dirname $(readlink -f ${0})`" + +docker build "$@" -t chiaki-switch . diff --git a/scripts/switch/build.sh b/scripts/switch/build.sh index fb8bf6f..ffec0b7 100755 --- a/scripts/switch/build.sh +++ b/scripts/switch/build.sh @@ -23,7 +23,6 @@ build_chiaki (){ #rm -rf ./build cmake -B "${build}" -DCMAKE_TOOLCHAIN_FILE=${toolchain} \ - -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ -DCHIAKI_ENABLE_TESTS=OFF \ -DCHIAKI_ENABLE_CLI=OFF \ -DCHIAKI_ENABLE_GUI=OFF \ @@ -32,8 +31,8 @@ build_chiaki (){ -DCHIAKI_ENABLE_SWITCH_LINUX="${CHIAKI_ENABLE_SWITCH_LINUX}" \ -DCHIAKI_LIB_ENABLE_MBEDTLS=ON - pushd "${BASEDIR}/${build}/switch/" - make + pushd "${BASEDIR}/${build}" + make -j8 popd popd } diff --git a/scripts/switch/run-docker-build-chiaki.sh b/scripts/switch/run-docker-build-chiaki.sh new file mode 100755 index 0000000..660ab42 --- /dev/null +++ b/scripts/switch/run-docker-build-chiaki.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +cd "`dirname $(readlink -f ${0})`/../.." + +docker run \ + -v "`pwd`:/build/chiaki" \ + -t \ + chiaki-switch \ + -c "cd /build/chiaki && scripts/switch/build.sh" +