-
Notifications
You must be signed in to change notification settings - Fork 6
120 lines (102 loc) · 3.29 KB
/
ubuntu_release.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
name: build-release-ubuntu
on:
push:
release:
pull_request:
branches:
- master
jobs:
build-release:
name: Linux release build
runs-on: ubuntu-latest
env:
BUILD_TYPE: Release
strategy:
fail-fast: false
steps:
- name: Checkout sources
uses: actions/checkout@v4
with:
path: landstalker_editor
- name: Archive sources
working-directory: ${{github.workspace}}/
shell: bash
run: tar zvcf landstalker_editor_sources.tar.gz landstalker_editor/
- name: Install Dependencies
shell: bash
run: |
sudo apt-get update
sudo apt-get install -y \
gcc-11 \
g++-11 \
build-essential \
libgtk-3-dev \
libgl1-mesa-dev \
libglu1-mesa-dev \
libcurl4-openssl-dev \
libwebkit2gtk-4.0-dev \
libpng-dev \
cmake
sudo apt-get remove libunwind-*
sudo apt-get install -y --no-install-recommends libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
- name: Checkout wxWidgets
uses: actions/checkout@v4
with:
repository: wxWidgets/wxWidgets
ref: refs/tags/v3.2.5
submodules: recursive
path: wxwidgets
- shell: bash
working-directory: ${{github.workspace}}/wxwidgets
run: mkdir gtkbuild
- name: Configure wxWidgets
working-directory: ${{github.workspace}}/wxwidgets/gtkbuild
shell: bash
run: ../configure --with-gtk --disable-shared
- name: Build wxWidgets
working-directory: ${{github.workspace}}/wxwidgets/gtkbuild
shell: bash
run: make -j8
- name: Install wxWidgets
working-directory: ${{github.workspace}}/wxwidgets/gtkbuild
shell: bash
run: |
sudo make install
sudo ldconfig
- name: Checkout yaml-cpp
uses: actions/checkout@v4
with:
repository: jbeder/yaml-cpp
ref: refs/tags/yaml-cpp-0.7.0
submodules: recursive
path: yaml-cpp
- shell: bash
working-directory: ${{github.workspace}}/yaml-cpp
run: mkdir build
- name: Configure yaml-cpp
working-directory: ${{github.workspace}}/yaml-cpp/build
shell: bash
run: cmake -DYAML_CPP_BUILD_TESTS=OFF ..
- name: Build yaml-cpp
working-directory: ${{github.workspace}}/yaml-cpp/build
shell: bash
run: make -j8
- name: Install yaml-cpp
working-directory: ${{github.workspace}}/yaml-cpp/build
shell: bash
run: |
sudo make install
sudo ldconfig
- name: Build Landstalker Editor
working-directory: ${{github.workspace}}/landstalker_editor
shell: bash
run: make -j8
- name: Compress artifacts
working-directory: ${{github.workspace}}/landstalker_editor
shell: bash
run: tar zvcf landstalker_editor.tar.gz landstalker_editor
- name: Archive build
uses: actions/upload-artifact@v4
with:
name: landstalker_editor_binary_ubuntu
path: ${{github.workspace}}/landstalker_editor/landstalker_editor.tar.gz