summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/build.yml27
-rw-r--r--Dockerfile37
2 files changed, 64 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 00000000..01319abf
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,27 @@
+name: build
+
+on:
+ # Trigger the workflow on push or pull request,
+ # but only for the master branch
+ push:
+ branches:
+ - master
+ pull_request:
+ branches:
+ - master
+
+jobs:
+ build:
+ runs-on: [ubuntu-latest]
+ container:
+ image: leoetlino/botw-build:1.0.0
+
+ steps:
+ - uses: actions/checkout@v2
+ - run: git submodule update --init --recursive
+ - run: mkdir build
+ - name: Run CMake
+ run: cmake -GNinja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE=../ToolchainNX64.cmake ..
+ working-directory: ./build
+ - name: Build
+ run: ninja -C build
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 00000000..038229a7
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,37 @@
+FROM ubuntu:latest
+
+MAINTAINER Léo <leo@leolam.fr>
+
+# devkitpro/devkita64:latest
+
+ENV DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get update && \
+ apt-get install -y --no-install-recommends apt-utils && \
+ apt-get install -y --no-install-recommends sudo ca-certificates pkg-config curl wget xz-utils make git gnupg && \
+ apt-get install -y --no-install-recommends gdebi-core && \
+ apt-get install -y --no-install-recommends cmake && \
+ apt-get install -y --no-install-recommends libncurses5 ninja-build && \
+ apt-get clean && \
+ rm -rf /var/lib/apt/lists/*
+
+RUN wget https://github.com/devkitPro/pacman/releases/latest/download/devkitpro-pacman.amd64.deb && \
+ gdebi -n devkitpro-pacman.amd64.deb && \
+ rm devkitpro-pacman.amd64.deb && \
+ dkp-pacman -Scc --noconfirm
+
+RUN dkp-pacman -Syyu --noconfirm switch-dev && \
+ dkp-pacman -Scc --noconfirm
+
+ENV DEVKITPRO=/opt/devkitpro
+ENV DEVKITA64=/opt/devkitpro/devkitA64
+ENV PATH=${DEVKITPRO}/tools/bin:$DEVKITA64/bin:$PATH
+
+# BotW build
+
+RUN wget https://releases.llvm.org/4.0.1/clang+llvm-4.0.1-x86_64-linux-gnu-debian8.tar.xz && \
+ tar xf clang+llvm-4.0.1-x86_64-linux-gnu-debian8.tar.xz && \
+ rm clang+llvm-4.0.1-x86_64-linux-gnu-debian8.tar.xz && \
+ mv clang+llvm-4.0.1-x86_64-linux-gnu-debian8 /opt/clang-4.0.1
+
+ENV UKING_CLANG=/opt/clang-4.0.1