-
Notifications
You must be signed in to change notification settings - Fork 2
98 lines (84 loc) · 2.63 KB
/
Copy pathcmake.yml
File metadata and controls
98 lines (84 loc) · 2.63 KB
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
name: CMake and AppImage Build
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
BUILD_TYPE: Release
jobs:
build-linux-2404:
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
wget \
build-essential \
cmake \
git \
pkg-config \
python3 \
python3-pip \
texlive-latex-base \
texlive-latex-extra \
texlive-fonts-recommended \
texlive-science \
dvipng \
ghostscript \
imagemagick \
qtbase5-dev \
qtdeclarative5-dev \
qtmultimedia5-dev \
qtscript5-dev \
libqt5opengl5-dev \
libqt5x11extras5-dev \
qtxmlpatterns5-dev-tools \
libqt5webkit5-dev \
qtwebengine5-dev \
libqt5svg5-dev \
qttools5-dev \
libqt5help5 \
qtbase5-private-dev \
latex2rtf
# Optional: ensure convert works properly
convert -version
- name: Configure CMake
run: cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build
run: cmake --build build --config ${{env.BUILD_TYPE}}
- name: Install
run: make install -C build DESTDIR=${{github.workspace}}/build/AppDir
- name: Prepare .desktop and icon
run: |
cp debian/funkplot-gui.desktop build/AppDir/
cp debian/funkplot-gui.png build/AppDir/
- name: PrepareAppimage (extra /usr copy)
run: |
mkdir -p build/AppDir/usr
cp debian/funkplot-gui.desktop build/AppDir/usr/
cp debian/funkplot-gui.png build/AppDir/usr/
- name: AppImage packaging
run: |
cd build
wget -c -nv "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
chmod a+x linuxdeployqt-continuous-x86_64.AppImage
./linuxdeployqt-continuous-x86_64.AppImage AppDir/usr/local/bin/funkplot-gui \
-unsupported-bundle-everything \
-unsupported-allow-new-glibc \
-verbose=2 \
-extra-plugins=iconengines,platformthemes/libqgtk3.so,platforms \
-appimage --appimage-extract-and-run
- name: Run Builtins Generator
run: |
python3 path/to/builtins.py
- name: Upload AppImage
uses: actions/upload-artifact@v4
with:
name: appimage
path: |
build/**/*.AppImage
!build/linuxdeployqt-continuous-x86_64.AppImage