Skip to content

Commit a700f85

Browse files
committed
add review.yaml
1 parent 5f78526 commit a700f85

File tree

1 file changed

+87
-0
lines changed

1 file changed

+87
-0
lines changed

.github/workflows/review.yaml

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
name: Release
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- '**'
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-20.04
11+
12+
steps:
13+
- name: Checkout code
14+
uses: actions/checkout@v3
15+
16+
- name: Checkout BMF repository (specific branch)
17+
run: |
18+
sudo apt update
19+
sudo apt install -y make git pkg-config libssl-dev cmake binutils-dev libgoogle-glog-dev gcc g++ golang wget libgl1
20+
sudo apt install -y python3.9 python3-dev python3-pip libsndfile1 libsndfile1-dev
21+
# sudo python3 -m pip install timeout_decorator numpy onnxruntime pytest opencv-python librosa
22+
23+
git clone https://github.com/JackLau1222/bmf.git
24+
(cd bmf && git checkout fork_by_oc && sudo scripts/build_ffmpeg.sh nasm yasm x264 x265 opus && ./build.sh )
25+
# setup bmf root path
26+
# echo "BMF_ROOT_PATH=${BMF_ROOT_PATH}:$(pwd)/bmf/output/bmf" >> $GITHUB_ENV
27+
# export BMF_ROOT_PATH=${BMF_ROOT_PATH}:$(pwd)/bmf/output/bmf
28+
cd bmf
29+
echo "C_INCLUDE_PATH=${C_INCLUDE_PATH}:$(pwd)/output/bmf/include" >> $GITHUB_ENV
30+
echo "CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}:$(pwd)/output/bmf/include" >> $GITHUB_ENV
31+
echo "LIBRARY_PATH=${LIBRARY_PATH}:$(pwd)/output/bmf/lib" >> $GITHUB_ENV
32+
echo "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$(pwd)/output/bmf/lib" >> $GITHUB_ENV
33+
34+
35+
- name: Set up Qt
36+
run: |
37+
sudo apt-get install -y qt5-qmake qtbase5-dev qtchooser qtbase5-dev-tools cmake build-essential
38+
39+
- name: Build with CMake
40+
run: |
41+
(cd src && cmake -B build && cd build && make -j$(nproc))
42+
43+
- name: Copy libs
44+
run: |
45+
# linuxdeployqt
46+
sudo apt-get -y install git g++ libgl1-mesa-dev
47+
git clone https://github.com/probonopd/linuxdeployqt.git
48+
# Then build in Qt Creator, or use
49+
export PATH=$(readlink -f /tmp/.mount_QtCreator-*-x86_64/*/gcc_64/bin/):$PATH
50+
(cd linuxdeployqt && qmake && make && sudo make install)
51+
# patchelf
52+
wget https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.bz2
53+
tar xf patchelf-0.9.tar.bz2
54+
( cd patchelf-0.9/ && ./configure && make && sudo make install )
55+
# appimage
56+
sudo wget -c "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" -O /usr/local/bin/appimagetool
57+
sudo chmod a+x /usr/local/bin/appimagetool
58+
(linuxdeployqt/bin/linuxdeployqt ./src/build/OpenConverter -appimage)
59+
continue-on-error: true
60+
61+
62+
- name: Copy runtime
63+
run: |
64+
# mkdir /src/build/lib
65+
cp /usr/local/lib/libswscale.so.6 src/build/lib
66+
cp /usr/local/lib/libavfilter.so.8 src/build/lib
67+
cp /usr/local/lib/libpostproc.so.56 src/build/lib
68+
cp bmf/output/bmf/lib/libbuiltin_modules.so src/build/lib
69+
touch src/build/activate_env.sh
70+
echo export LD_LIBRARY_PATH="$BASEDIR/lib" >> src/build/activate_env.sh
71+
72+
# Step to package the build directory
73+
- name: Create tar.gz package
74+
run: |
75+
BUILD_DIR="src/build"
76+
PACKAGE_NAME="OpenConverter_Linux_x86.tar.gz"
77+
tar -czvf $PACKAGE_NAME -C $BUILD_DIR .
78+
79+
# Step to upload the tar.gz package as an artifact
80+
- name: Upload build artifact
81+
uses: actions/upload-artifact@v3
82+
with:
83+
name: OpenConverter_Linux_x86
84+
path: OpenConverter_Linux_x86.tar.gz
85+
86+
- name: Finish
87+
run: echo "Release upload complete"

0 commit comments

Comments
 (0)