2022-04-24 01:18:19 +00:00
|
|
|
name: Ubuntu-PR-check
|
2022-06-05 05:11:01 +00:00
|
|
|
concurrency:
|
|
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
|
|
cancel-in-progress: true
|
2022-04-24 01:18:19 +00:00
|
|
|
on:
|
|
|
|
|
|
|
|
workflow_dispatch:
|
|
|
|
|
|
|
|
pull_request:
|
|
|
|
branches:
|
|
|
|
- dev
|
|
|
|
- master
|
2024-03-27 07:09:26 +00:00
|
|
|
- experimental
|
2022-04-24 01:18:19 +00:00
|
|
|
- staged
|
|
|
|
paths-ignore:
|
|
|
|
- 'docs/**'
|
2022-11-28 13:37:42 +00:00
|
|
|
# - ".github/**"
|
2022-04-24 01:18:19 +00:00
|
|
|
- "howto/**"
|
|
|
|
- "*.md"
|
2023-05-05 07:32:20 +00:00
|
|
|
- "locale/**"
|
2023-05-21 03:58:24 +00:00
|
|
|
- "website/**"
|
|
|
|
|
2022-04-24 01:18:19 +00:00
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
name: Build
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
matrix:
|
2023-05-27 04:12:16 +00:00
|
|
|
os: [ubuntu-latest]
|
2023-10-16 06:47:31 +00:00
|
|
|
qt_ver: [5.15.2,6.6.0]
|
2022-04-24 01:18:19 +00:00
|
|
|
qt_arch: [gcc_64]
|
2022-08-23 11:38:23 +00:00
|
|
|
|
2022-04-24 01:18:19 +00:00
|
|
|
steps:
|
|
|
|
- name: Install Qt
|
|
|
|
if: ${{ matrix.qt_ver == '5.15.2' }}
|
2022-11-28 13:37:42 +00:00
|
|
|
uses: jurplel/install-qt-action@v3
|
2022-04-24 01:18:19 +00:00
|
|
|
with:
|
|
|
|
version: ${{ matrix.qt_ver }}
|
2023-06-05 14:05:22 +00:00
|
|
|
|
2022-04-24 01:18:19 +00:00
|
|
|
modules: qtwebengine
|
2022-11-28 13:37:42 +00:00
|
|
|
|
2022-04-24 01:18:19 +00:00
|
|
|
- name: Install Qt
|
|
|
|
if: ${{ matrix.qt_ver != '5.15.2' }}
|
2022-11-28 13:37:42 +00:00
|
|
|
uses: jurplel/install-qt-action@v3
|
2022-04-24 01:18:19 +00:00
|
|
|
with:
|
|
|
|
version: ${{ matrix.qt_ver }}
|
|
|
|
arch: ${{ matrix.qt_arch }}
|
2023-06-05 14:05:22 +00:00
|
|
|
|
2023-03-26 03:39:51 +00:00
|
|
|
modules: qtwebengine qtwebchannel qtpositioning qt5compat qtmultimedia qtimageformats qtspeech
|
2022-11-28 13:37:42 +00:00
|
|
|
|
2022-04-24 01:18:19 +00:00
|
|
|
- name: ubuntu install thirdparty dependencies
|
|
|
|
run: |
|
|
|
|
sudo apt-get install git pkg-config build-essential qt5-qmake
|
|
|
|
sudo apt-get install libvorbis-dev zlib1g-dev libhunspell-dev x11proto-record-dev
|
|
|
|
sudo apt-get install qtdeclarative5-dev libxtst-dev liblzo2-dev libbz2-dev
|
2023-05-27 04:12:16 +00:00
|
|
|
sudo apt-get install libavutil-dev libavformat-dev libeb16-dev
|
2022-04-24 01:18:19 +00:00
|
|
|
sudo apt-get install libqt5webkit5-dev libqt5svg5-dev libqt5x11extras5-dev qttools5-dev
|
|
|
|
sudo apt-get install qttools5-dev-tools qtmultimedia5-dev libqt5multimedia5-plugins doxygen libzstd-dev #libopencc-dev
|
2023-02-01 15:23:23 +00:00
|
|
|
sudo apt-get install libxkbcommon-dev libc6-dev
|
2022-04-24 01:18:19 +00:00
|
|
|
sudo ln -sf /usr/bin/x86_64-linux-gnu-ld.gold /usr/bin/ld
|
|
|
|
git clone https://github.com/BYVoid/OpenCC
|
|
|
|
pwd
|
|
|
|
cd OpenCC/
|
|
|
|
make PREFIX=/usr -j$(nproc)
|
|
|
|
sudo make install
|
|
|
|
cd ..
|
2023-05-17 14:29:56 +00:00
|
|
|
sudo apt install libxapian-dev
|
2023-05-27 04:12:16 +00:00
|
|
|
sudo apt-get install libzim-dev
|
2022-04-24 01:18:19 +00:00
|
|
|
- uses: actions/checkout@v3
|
|
|
|
with:
|
|
|
|
fetch-depth: 1
|
2023-05-01 01:09:19 +00:00
|
|
|
submodules: true
|
2022-04-24 01:18:19 +00:00
|
|
|
|
|
|
|
- name: build goldendict
|
|
|
|
run: |
|
2023-05-17 14:29:56 +00:00
|
|
|
qmake CONFIG+=release PREFIX=/usr CONFIG+=zim_support CONFIG+=chinese_conversion_support CONFIG+=use_iconv CONFIG+=use_xapian
|
2022-04-24 01:18:19 +00:00
|
|
|
make INSTALL_ROOT=appdir -j`nproc` install; find appdir/
|
|
|
|
|
|
|
|
#copy missing shared dll to appdir.
|
|
|
|
mkdir -p appdir/usr/lib
|
|
|
|
cp $(ldd appdir/usr/bin/goldendict | grep -o '\W/[^ ]*' |grep gobject ) appdir/usr/lib
|
|
|
|
cp $(ldd appdir/usr/bin/goldendict | grep -o '\W/[^ ]*' |grep libpango ) appdir/usr/lib
|
|
|
|
|
|
|
|
|