Merge branch 'master' of https://github.com/anilibria/anilibria-winma… #722
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Linux and macOS CI | |
on: | |
push: | |
branches: [ "master" ] | |
pull_request: | |
branches: [ "master" ] | |
jobs: | |
ubuntuBuild: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: apt-update | |
run: sudo apt-get update -qq | |
- name: apt get qt | |
run: sudo apt-get install -y --no-install-recommends qtdeclarative5-dev libqt5svg5-dev qml-module-qtgraphicaleffects qml-module-qtquick-layouts qml-module-qtquick-dialogs qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings libqt5websockets5-dev qtmultimedia5-dev libqt5multimedia5-plugins qml-module-qtmultimedia qtquickcontrols2-5-dev libvlccore-dev libvlc-dev libmpv-dev pkg-config | |
- name: run qmake | |
run: qmake -makefile -o src/Makefile src/AniLibria.pro CONFIG+=unixvlc CONFIG+=unixmpv | |
- name: run make | |
run: make -j2 -C src | |
macosbuild: | |
runs-on: macos-14 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Homebrew | |
run: arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | |
- name: Fix brew issue | |
run: | | |
arch -x86_64 rm /usr/local/bin/2to3 | |
arch -x86_64 rm /usr/local/bin/idle3 | |
arch -x86_64 rm /usr/local/bin/pydoc3 | |
arch -x86_64 rm /usr/local/bin/python3 | |
arch -x86_64 rm /usr/local/bin/python3-config | |
arch -x86_64 rm '/usr/local/bin/idle3.13' | |
arch -x86_64 rm '/usr/local/bin/pydoc3.13' | |
arch -x86_64 rm '/usr/local/bin/python3.13' | |
arch -x86_64 rm '/usr/local/bin/python3.13-config' | |
- name: install pkg-config | |
run: arch -x86_64 /usr/local/bin/brew install pkg-config | |
- name: install mpv | |
run: arch -x86_64 /usr/local/bin/brew install mpv --formula | |
- name: Install Qt dependencies | |
uses: jurplel/install-qt-action@v4 | |
with: | |
version: 5.15.2 | |
target: 'desktop' | |
arch: 'clang_64' | |
- name: run qmake | |
run: arch -x86_64 qmake -makefile -o src/Makefile src/AniLibria.pro | |
- name: run make | |
run: make -j4 -C src | |
- name: Run MacDeployQt | |
run: cd src && macdeployqt AniLibria.app -appstore-compliant -qmldir=. | |
- name: show all libraries in app folder | |
run: ls src/AniLibria.app/Contents/Frameworks/ | |
- name: patch libraries paths | |
run: | | |
cp /usr/local/lib/libsharpyuv.0.dylib src/AniLibria.app/Contents/Frameworks/ | |
cp /usr/local/lib/libjxl_cms.0.11.dylib src/AniLibria.app/Contents/Frameworks/ | |
cp /usr/local/opt/[email protected]/Frameworks/Python.framework/Versions/3.13/Python src/AniLibria.app/Contents/Frameworks/ | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libswresample.5.dylib @executable_path/../Frameworks/libswresample.5.dylib src/AniLibria.app/Contents/Frameworks/libavcodec.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavutil.59.dylib @executable_path/../Frameworks/libavutil.59.dylib src/AniLibria.app/Contents/Frameworks/libavcodec.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libswscale.8.dylib @executable_path/../Frameworks/libswscale.8.dylib src/AniLibria.app/Contents/Frameworks/libavfilter.10.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavutil.59.dylib @executable_path/../Frameworks/libavutil.59.dylib src/AniLibria.app/Contents/Frameworks/libavfilter.10.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavcodec.61.dylib @executable_path/../Frameworks/libavcodec.61.dylib src/AniLibria.app/Contents/Frameworks/libavfilter.10.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavformat.61.dylib @executable_path/../Frameworks/libavformat.61.dylib src/AniLibria.app/Contents/Frameworks/libavfilter.10.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libpostproc.58.dylib @executable_path/../Frameworks/libpostproc.58.dylib src/AniLibria.app/Contents/Frameworks/libavfilter.10.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libswresample.5.dylib @executable_path/../Frameworks/libswresample.5.dylib src/AniLibria.app/Contents/Frameworks/libavfilter.10.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavutil.59.dylib @executable_path/../Frameworks/libavutil.59.dylib src/AniLibria.app/Contents/Frameworks/libswresample.5.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavutil.59.dylib @executable_path/../Frameworks/libavutil.59.dylib src/AniLibria.app/Contents/Frameworks/libswscale.8.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavutil.59.dylib @executable_path/../Frameworks/libavutil.59.dylib src/AniLibria.app/Contents/Frameworks/libpostproc.58.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavcodec.61.dylib @executable_path/../Frameworks/libavcodec.61.dylib src/AniLibria.app/Contents/Frameworks/libavformat.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libswresample.5.dylib @executable_path/../Frameworks/libswresample.5.dylib src/AniLibria.app/Contents/Frameworks/libavformat.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavutil.59.dylib @executable_path/../Frameworks/libavutil.59.dylib src/AniLibria.app/Contents/Frameworks/libavformat.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavfilter.10.dylib @executable_path/../Frameworks/libavfilter.10.dylib src/AniLibria.app/Contents/Frameworks/libavdevice.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libswscale.8.dylib @executable_path/../Frameworks/libswscale.8.dylib src/AniLibria.app/Contents/Frameworks/libavdevice.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libpostproc.58.dylib @executable_path/../Frameworks/libpostproc.58.dylib src/AniLibria.app/Contents/Frameworks/libavdevice.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavformat.61.dylib @executable_path/../Frameworks/libavformat.61.dylib src/AniLibria.app/Contents/Frameworks/libavdevice.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavcodec.61.dylib @executable_path/../Frameworks/libavcodec.61.dylib src/AniLibria.app/Contents/Frameworks/libavdevice.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libswresample.5.dylib @executable_path/../Frameworks/libswresample.5.dylib src/AniLibria.app/Contents/Frameworks/libavdevice.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/ffmpeg/7.1_4/lib/libavutil.59.dylib @executable_path/../Frameworks/libavutil.59.dylib src/AniLibria.app/Contents/Frameworks/libavdevice.61.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/brotli/1.1.0/lib/libbrotlicommon.1.dylib @executable_path/../Frameworks/libbrotlicommon.1.dylib src/AniLibria.app/Contents/Frameworks/libbrotlidec.1.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/brotli/1.1.0/lib/libbrotlicommon.1.dylib @executable_path/../Frameworks/libbrotlicommon.1.dylib src/AniLibria.app/Contents/Frameworks/libbrotlienc.1.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/brotli/1.1.0/lib/libbrotlicommon.1.dylib @executable_path/../Frameworks/ src/AniLibria.app/Contents/Frameworks/librubberband.3.dylib | |
arch -x86_64 install_name_tool -change /usr/local/opt/little-cms2/lib/liblcms2.2.dylib @executable_path/../Frameworks/liblcms2.2.dylib src/AniLibria.app/Contents/Frameworks/libjxl_cms.0.11.dylib | |
arch -x86_64 install_name_tool -change /usr/local/opt/highway/lib/libhwy.1.dylib @executable_path/../Frameworks/libhwy.1.dylib src/AniLibria.app/Contents/Frameworks/libjxl_cms.0.11.dylib | |
arch -x86_64 install_name_tool -change @loader_path/../../../../opt/libsamplerate/lib/libsamplerate.0.dylib @executable_path/../Frameworks/libhwy.1.dylib src/AniLibria.app/Contents/Frameworks/librubberband.3.dylib | |
arch -x86_64 install_name_tool -change /usr/local/opt/[email protected]/Frameworks/Python.framework/Versions/3.13/Python @executable_path/../Frameworks/Python src/AniLibria.app/Contents/Frameworks/libvapoursynth-script.0.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/nettle/3.10.1/lib/libnettle.8.dylib @executable_path/../Frameworks/libnettle.8.dylib src/AniLibria.app/Contents/Frameworks/libhogweed.6.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/libxcb/1.17.0/lib/libxcb.1.dylib @executable_path/../Frameworks/libxcb.1.dylib src/AniLibria.app/Contents/Frameworks/libxcb-shm.0.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/libxcb/1.17.0/lib/libxcb.1.dylib @executable_path/../Frameworks/libxcb.1.dylib src/AniLibria.app/Contents/Frameworks/libxcb-shape.0.dylib | |
arch -x86_64 install_name_tool -change /usr/local/Cellar/libxcb/1.17.0/lib/libxcb.1.dylib @executable_path/../Frameworks/libxcb.1.dylib src/AniLibria.app/Contents/Frameworks/libxcb-xfixes.0.dylib | |
hdiutil create -fs HFS+ -srcfolder src/AniLibria.app/ -volname AniLibria AniLibria.dmg | |
- uses: actions/upload-artifact@v4 | |
with: | |
path: AniLibria.dmg |