From 08ef130ff0d09fe0dc51ff1f2f261d59c82fa3b0 Mon Sep 17 00:00:00 2001 From: Tony Wasserka Date: Fri, 20 Sep 2024 14:29:11 +0200 Subject: [PATCH] Add GitLab CI --- .gitlab-ci.yml | 2 ++ .gitlab/build.yml | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 .gitlab/build.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..06cb8f9 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,2 @@ +include: + - local: '.gitlab/build.yml' diff --git a/.gitlab/build.yml b/.gitlab/build.yml new file mode 100644 index 0000000..ba6fa87 --- /dev/null +++ b/.gitlab/build.yml @@ -0,0 +1,35 @@ +image: ubuntu:24.04 + +stages: + - build + +variables: + GIT_SUBMODULE_STRATEGY: recursive + CONAN_HOME: ${CI_PROJECT_DIR}/.conan2 + +build: + stage: build + tags: + - saas-linux-medium-amd64 + cache: + key: conan + paths: + - .conan2 + script: + # Development tools + - apt-get update + - apt-get install -y cmake git ninja-build pkgconf python3-pip + - pip install conan --break-system-packages + + # Project dependencies + - apt-get install -y libvulkan-dev libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libxau-dev libxaw7-dev libegl-dev xkb-data libxcomposite-dev libxdamage-dev libxfixes-dev libxi-dev libxinerama-dev libxmuu-dev libxrandr-dev libxrender-dev libxres-dev libxtst-dev libxv-dev libxxf86vm-dev libxcb-glx0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxcb-xinerama0-dev libxcb-dri3-dev libxcb-cursor-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-present-dev libxcb-ewmh-dev libxcb-res0-dev libxcb-composite0 libxcb-composite0-dev libxcursor-dev libxcursor1 libxkbfile-dev libxkbfile1 libxss-dev libxss1 uuid-dev libxcb-util-dev + - conan profile detect -e + - conan config install --args="-b mikage" https://github.com/mikage-emu/conan-3ds.git && conan setup-3ds + - conan install . --build=missing -c tools.system.package_manager:mode=install + - conan cache clean + + # Setup Conan dependencies and build project + - mkdir build && cd build + - conan install .. -of . + - cmake .. -G Ninja -DCMAKE_INSTALL_PREFIX=${CI_PROJECT_DIR}/install -DCMAKE_PREFIX_PATH=${CI_PROJECT_DIR}/build -DCMAKE_BUILD_TYPE=Release -DCMAKE_COLOR_DIAGNOSTICS=ON + - ninja