Skip to content

Commit

Permalink
Add jobs to build openmw dependencies using vcpkg
Browse files Browse the repository at this point in the history
  • Loading branch information
elsid committed Mar 28, 2024
1 parent 080231b commit 1fea02d
Showing 1 changed file with 155 additions and 0 deletions.
155 changes: 155 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
name: Build

on: push

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"

jobs:
static:
strategy:
fail-fast: true

runs-on: windows-latest

steps:
- uses: actions/checkout@v4

- name: Export GitHub Actions cache environment variables
uses: actions/github-script@v6
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
- working-directory: 'C:/vcpkg'
run: git remote add openmw https://github.com/elsid/vcpkg.git

- working-directory: 'C:/vcpkg'
run: git fetch openmw

- working-directory: 'C:/vcpkg'
run: git checkout 6c3e3f54ffc27cc47ee1b3233dfcac2363c9fe62

- working-directory: 'C:/vcpkg'
run: ./bootstrap-vcpkg.bat -disableMetrics

- name: Install vcpkg packages
run: >
vcpkg install --triplet x64-windows-static
boost-geometry
boost-iostreams
boost-locale
boost-program-options
bullet3[double-precision,multithreading]
ffmpeg
freetype
icu
luajit
lz4
mygui
openal-soft
openmw-osg
sdl2
- name: Export installed vcpkg packages
run: >
vcpkg export
--x-all-installed
--7zip
--output-dir ${{ github.workspace }}
--output openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}
- name: Store exported vcpkg packages
uses: actions/upload-artifact@v4
with:
name: openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}
path: ${{ github.workspace }}/openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}.7z

# - name: Push exported vcpkg package to gitlab
# shell: bash
# run: |
# env GIT_LFS_SKIP_SMUDGE=1 git clone [email protected]:elsid/openmw-deps.git
# cd openmw-deps
# mv ${{ github.workspace }}/openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}.7z openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}.7z
# git checkout -b openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}
# git lfs track openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}.7z
# git add openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}.7z
# git commit -m 'Add openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}.7z'
# git push origin openmw-deps-vcpkg-x64-windows-static-${{ github.sha }}

dynamic:
strategy:
fail-fast: true

runs-on: windows-latest

steps:
- uses: actions/checkout@v4

- name: Export GitHub Actions cache environment variables
uses: actions/github-script@v6
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
- working-directory: 'C:/vcpkg'
run: git remote add openmw https://github.com/elsid/vcpkg.git

- working-directory: 'C:/vcpkg'
run: git fetch openmw

- working-directory: 'C:/vcpkg'
run: git checkout 6c3e3f54ffc27cc47ee1b3233dfcac2363c9fe62

- working-directory: 'C:/vcpkg'
run: ./bootstrap-vcpkg.bat -disableMetrics

- name: Install vcpkg packages
run: >
vcpkg install --triplet x64-windows
boost-geometry
boost-iostreams
boost-locale
boost-program-options
bullet3[double-precision,multithreading]
ffmpeg
freetype
icu
luajit
lz4
mygui
openal-soft
openmw-osg
sdl2
- name: Export installed vcpkg packages
run: >
vcpkg export
--x-all-installed
--7zip
--output-dir ${{ github.workspace }}
--output openmw-deps-vcpkg-x64-windows-${{ github.sha }}
- name: Store exported vcpkg packages
uses: actions/upload-artifact@v4
with:
name: openmw-deps-vcpkg-x64-windows-${{ github.sha }}
path: ${{ github.workspace }}/openmw-deps-vcpkg-x64-windows-${{ github.sha }}.7z

- name: Push exported vcpkg package to gitlab
shell: bash
run: |
env GIT_LFS_SKIP_SMUDGE=1 git clone [email protected]:elsid/openmw-deps.git
cd openmw-deps
mv ${{ github.workspace }}/openmw-deps-vcpkg-x64-windows-${{ github.sha }}.7z openmw-deps-vcpkg-x64-windows-${{ github.sha }}.7z
git checkout -b openmw-deps-vcpkg-x64-windows-${{ github.sha }}
git lfs track openmw-deps-vcpkg-x64-windows-${{ github.sha }}.7z
git add openmw-deps-vcpkg-x64-windows-${{ github.sha }}.7z
git commit -m 'Add openmw-deps-vcpkg-x64-windows-${{ github.sha }}.7z'
git push origin openmw-deps-vcpkg-x64-windows-${{ github.sha }}

0 comments on commit 1fea02d

Please sign in to comment.