|
|
|
@ -29,10 +29,10 @@ jobs:
@@ -29,10 +29,10 @@ jobs:
|
|
|
|
|
shell: bash |
|
|
|
|
|
|
|
|
|
steps: |
|
|
|
|
- name: checkout repository |
|
|
|
|
- name: Checkout repository |
|
|
|
|
uses: actions/checkout@v2 |
|
|
|
|
|
|
|
|
|
- name: install all build dependencies except libtorrent from Ubuntu repos |
|
|
|
|
- name: Install all build dependencies except libtorrent from Ubuntu repos |
|
|
|
|
run: | |
|
|
|
|
sudo apt update |
|
|
|
|
sudo apt install \ |
|
|
|
@ -43,13 +43,13 @@ jobs:
@@ -43,13 +43,13 @@ jobs:
|
|
|
|
|
|
|
|
|
|
# this will be installed under /opt/qt515. CMake will still find it automatically without additional hints |
|
|
|
|
# to speed up the process, only the required components are installed rather than the full qt515-meta-full metapackage |
|
|
|
|
- name: install Qt 5.15.2 from an external PPA |
|
|
|
|
- name: Install Qt 5.15.2 from an external PPA |
|
|
|
|
run: | |
|
|
|
|
sudo add-apt-repository ppa:beineri/opt-qt-5.15.2-focal |
|
|
|
|
sudo apt install \ |
|
|
|
|
qt515base qt515svg qt515tools |
|
|
|
|
|
|
|
|
|
- name: install libtorrent from source |
|
|
|
|
- name: Install libtorrent from source |
|
|
|
|
run: | |
|
|
|
|
git clone https://github.com/arvidn/libtorrent |
|
|
|
|
cd libtorrent |
|
|
|
@ -64,7 +64,7 @@ jobs:
@@ -64,7 +64,7 @@ jobs:
|
|
|
|
|
cmake --build build |
|
|
|
|
sudo cmake --install build --prefix /usr/local |
|
|
|
|
|
|
|
|
|
- name: build qBittorrent |
|
|
|
|
- name: Build qBittorrent |
|
|
|
|
run: | |
|
|
|
|
cmake \ |
|
|
|
|
-B build \ |
|
|
|
@ -76,10 +76,10 @@ jobs:
@@ -76,10 +76,10 @@ jobs:
|
|
|
|
|
--graphviz=build/target_graph.dot |
|
|
|
|
cmake --build build |
|
|
|
|
|
|
|
|
|
- name: install qBittorrent |
|
|
|
|
- name: Install qBittorrent |
|
|
|
|
run: sudo cmake --install build --prefix /usr/local |
|
|
|
|
|
|
|
|
|
- name: upload artifact as zip |
|
|
|
|
- name: Upload artifact as zip |
|
|
|
|
uses: actions/upload-artifact@v2 |
|
|
|
|
with: |
|
|
|
|
name: qBittorrent-CI_${{ matrix.os }}-x64_${{ matrix.qbt_gui }} |
|
|
|
@ -101,15 +101,15 @@ jobs:
@@ -101,15 +101,15 @@ jobs:
|
|
|
|
|
shell: pwsh |
|
|
|
|
|
|
|
|
|
steps: |
|
|
|
|
- name: checkout repository |
|
|
|
|
- name: Checkout repository |
|
|
|
|
uses: actions/checkout@v2 |
|
|
|
|
|
|
|
|
|
# - ninja is needed for building qBittorrent (because it's preferable, not a hard requirement) |
|
|
|
|
- name: install additional required packages with chocolatey |
|
|
|
|
- name: Install additional required packages with chocolatey |
|
|
|
|
run: | |
|
|
|
|
choco install ninja |
|
|
|
|
|
|
|
|
|
- name: setup vcpkg (cached, if possible) |
|
|
|
|
- name: Setup vcpkg (cached, if possible) |
|
|
|
|
uses: lukka/run-vcpkg@v7 |
|
|
|
|
with: |
|
|
|
|
vcpkgDirectory: ${{ env.VCPKG_DEST_WIN }} |
|
|
|
@ -117,7 +117,7 @@ jobs:
@@ -117,7 +117,7 @@ jobs:
|
|
|
|
|
setupOnly: true |
|
|
|
|
|
|
|
|
|
# Tell vcpkg to only build Release variants of the dependencies |
|
|
|
|
- name: configure vcpkg triplet overlay for release builds only |
|
|
|
|
- name: Configure vcpkg triplet overlay for release builds only |
|
|
|
|
run: | |
|
|
|
|
New-Item ` |
|
|
|
|
-Path ${{ github.workspace }} ` |
|
|
|
@ -131,7 +131,7 @@ jobs:
@@ -131,7 +131,7 @@ jobs:
|
|
|
|
|
-Value "set(VCPKG_BUILD_TYPE release)" |
|
|
|
|
|
|
|
|
|
# clear buildtrees after each package installation to reduce disk space requirements |
|
|
|
|
- name: install dependencies via vcpkg |
|
|
|
|
- name: Install dependencies via vcpkg |
|
|
|
|
run: | |
|
|
|
|
$packages = ` |
|
|
|
|
"boost-circular-buffer:x64-windows-static-release", |
|
|
|
@ -151,10 +151,10 @@ jobs:
@@ -151,10 +151,10 @@ jobs:
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# NOTE: this is necessary to correctly find and use cl.exe with the Ninja generator for now |
|
|
|
|
- name: setup devcmd |
|
|
|
|
- name: Setup devcmd |
|
|
|
|
uses: ilammy/msvc-dev-cmd@v1 |
|
|
|
|
|
|
|
|
|
- name: build qBittorrent |
|
|
|
|
- name: Build qBittorrent |
|
|
|
|
shell: cmd |
|
|
|
|
run: | |
|
|
|
|
cmake ^ |
|
|
|
@ -169,7 +169,7 @@ jobs:
@@ -169,7 +169,7 @@ jobs:
|
|
|
|
|
--graphviz=build\target_graph.dot |
|
|
|
|
cmake --build build |
|
|
|
|
|
|
|
|
|
- name: upload artifact as zip |
|
|
|
|
- name: Upload artifact as zip |
|
|
|
|
uses: actions/upload-artifact@v2 |
|
|
|
|
with: |
|
|
|
|
name: qBittorrent-CI_Windows-x64 |
|
|
|
@ -194,24 +194,24 @@ jobs:
@@ -194,24 +194,24 @@ jobs:
|
|
|
|
|
shell: pwsh |
|
|
|
|
|
|
|
|
|
steps: |
|
|
|
|
- name: checkout repository |
|
|
|
|
- name: Checkout repository |
|
|
|
|
uses: actions/checkout@v2 |
|
|
|
|
|
|
|
|
|
# - ninja is needed for building qBittorrent (because it's preferable, not a hard requirement) |
|
|
|
|
# - automake is needed for the installation the vcpkg installation of fontconfig, a dependency of qt5-base |
|
|
|
|
- name: install additional required packages with homebrew |
|
|
|
|
- name: Install additional required packages with homebrew |
|
|
|
|
shell: bash |
|
|
|
|
run: | |
|
|
|
|
brew install automake ninja |
|
|
|
|
|
|
|
|
|
- name: setup vcpkg (cached, if possible) |
|
|
|
|
- name: Setup vcpkg (cached, if possible) |
|
|
|
|
uses: lukka/run-vcpkg@v7 |
|
|
|
|
with: |
|
|
|
|
vcpkgDirectory: ${{ env.VCPKG_DEST_MACOS }} |
|
|
|
|
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT }} |
|
|
|
|
setupOnly: true |
|
|
|
|
|
|
|
|
|
- name: configure vcpkg triplet overlay for release builds only |
|
|
|
|
- name: Configure vcpkg triplet overlay for release builds only |
|
|
|
|
run: | |
|
|
|
|
New-Item ` |
|
|
|
|
-Path ${{ github.workspace }} ` |
|
|
|
@ -225,14 +225,14 @@ jobs:
@@ -225,14 +225,14 @@ jobs:
|
|
|
|
|
-Value "set(VCPKG_BUILD_TYPE release)","set(VCPKG_OSX_DEPLOYMENT_TARGET 10.15)" |
|
|
|
|
|
|
|
|
|
# NOTE: Avoids a libtorrent ABI issue. See https://github.com/arvidn/libtorrent/issues/4965 |
|
|
|
|
- name: force AppleClang to compile libtorrent with the same C++ standard as qBittorrent |
|
|
|
|
- name: Force AppleClang to compile libtorrent with the same C++ standard as qBittorrent |
|
|
|
|
run: | |
|
|
|
|
(Get-Content ` |
|
|
|
|
-path ${{ env.RUNVCPKG_VCPKG_ROOT }}/ports/libtorrent/portfile.cmake).Replace( ` |
|
|
|
|
'${FEATURE_OPTIONS}', '${FEATURE_OPTIONS} -DCMAKE_CXX_STANDARD=17') ` |
|
|
|
|
| Set-Content -Path ${{ env.RUNVCPKG_VCPKG_ROOT }}/ports/libtorrent/portfile.cmake |
|
|
|
|
|
|
|
|
|
- name: install dependencies via vcpkg |
|
|
|
|
- name: Install dependencies via vcpkg |
|
|
|
|
run: | |
|
|
|
|
$packages = ` |
|
|
|
|
"boost-circular-buffer:x64-osx-release", |
|
|
|
@ -251,7 +251,7 @@ jobs:
@@ -251,7 +251,7 @@ jobs:
|
|
|
|
|
--clean-after-build |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
- name: build qBittorrent |
|
|
|
|
- name: Build qBittorrent |
|
|
|
|
shell: bash |
|
|
|
|
run: | |
|
|
|
|
cmake \ |
|
|
|
@ -266,7 +266,7 @@ jobs:
@@ -266,7 +266,7 @@ jobs:
|
|
|
|
|
--graphviz=build/target_graph.dot |
|
|
|
|
cmake --build build |
|
|
|
|
|
|
|
|
|
- name: upload artifact as zip |
|
|
|
|
- name: Upload artifact as zip |
|
|
|
|
uses: actions/upload-artifact@v2 |
|
|
|
|
with: |
|
|
|
|
name: qBittorrent-CI_macOS_${{ matrix.qbt_gui }} |
|
|
|
|