You've already forked qBittorrent
mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-10-23 22:32:16 +02:00
Compare commits
287 Commits
release-3.
...
release-3.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7246b0c254 | ||
|
|
03345b95c1 | ||
|
|
16f6e26f67 | ||
|
|
5e643ffefd | ||
|
|
0bd4308d0f | ||
|
|
c78ad12144 | ||
|
|
cb838edb50 | ||
|
|
8fac3c793d | ||
|
|
26896de9ad | ||
|
|
238715ad22 | ||
|
|
a3710251a7 | ||
|
|
f6634ccacd | ||
|
|
e4df557208 | ||
|
|
355c55452a | ||
|
|
87350e3842 | ||
|
|
0031cfc60a | ||
|
|
d0374dd425 | ||
|
|
d8c8d51386 | ||
|
|
5740c933fb | ||
|
|
1f13dd0cc3 | ||
|
|
84d9fc2da2 | ||
|
|
47ec418e9c | ||
|
|
72ca101830 | ||
|
|
0625ef62c1 | ||
|
|
8161185b08 | ||
|
|
739132ec82 | ||
|
|
cf61dd3d09 | ||
|
|
82768e2098 | ||
|
|
3b9dc7add2 | ||
|
|
af2145d567 | ||
|
|
d7d604d83a | ||
|
|
9aaf958fad | ||
|
|
20204ac4c4 | ||
|
|
0c3d5f0430 | ||
|
|
820a558bca | ||
|
|
19ac362103 | ||
|
|
f64e8f9459 | ||
|
|
bc77a7c2d1 | ||
|
|
1a7f2b29b7 | ||
|
|
037aaf752e | ||
|
|
5cb04f9b31 | ||
|
|
ac166a89ae | ||
|
|
cd9515982d | ||
|
|
808a4d7e9b | ||
|
|
f75f5616b1 | ||
|
|
da81d3351d | ||
|
|
9d05d864e2 | ||
|
|
9aee1632ae | ||
|
|
714cfe3241 | ||
|
|
ddbe5b18d5 | ||
|
|
15a948675b | ||
|
|
cea3f71e61 | ||
|
|
d04f829e35 | ||
|
|
e252c19342 | ||
|
|
2f0d6815c9 | ||
|
|
54eaf51880 | ||
|
|
6f5f661f30 | ||
|
|
8659fec3f2 | ||
|
|
2cf8b86dad | ||
|
|
0b0e9675c4 | ||
|
|
8267bd6434 | ||
|
|
6593cb774d | ||
|
|
fcee431dee | ||
|
|
60d7e3ef30 | ||
|
|
dac8e20aad | ||
|
|
d845b57ad1 | ||
|
|
a9310e0f19 | ||
|
|
6c56e9736c | ||
|
|
b63915f10a | ||
|
|
bf173d894c | ||
|
|
d11e0f523c | ||
|
|
e09d75f68e | ||
|
|
077006d4d6 | ||
|
|
092a1d4f33 | ||
|
|
0047ba5dc5 | ||
|
|
42efa21ef3 | ||
|
|
09538393a6 | ||
|
|
2b6ee130a2 | ||
|
|
b14777584e | ||
|
|
d8c40084a7 | ||
|
|
4aa9ed946f | ||
|
|
b6ef38e7a7 | ||
|
|
0f900268da | ||
|
|
c1831a4e97 | ||
|
|
6d961cdcc5 | ||
|
|
292e077562 | ||
|
|
e2bebdf57b | ||
|
|
db6cc8336b | ||
|
|
1af271653a | ||
|
|
bd1a34bebe | ||
|
|
7ccefae3f8 | ||
|
|
f4a9597ae8 | ||
|
|
41e5216371 | ||
|
|
b41b044d02 | ||
|
|
8d5cfcdabd | ||
|
|
ef58c08876 | ||
|
|
52f59371cf | ||
|
|
311e78d016 | ||
|
|
d1c514ea3e | ||
|
|
3974861955 | ||
|
|
af04d80d93 | ||
|
|
de9d675d3d | ||
|
|
b734532b18 | ||
|
|
bfd864efce | ||
|
|
573b0d921e | ||
|
|
758e357fc5 | ||
|
|
0b235dc968 | ||
|
|
8305d8ff64 | ||
|
|
534a94310d | ||
|
|
26e6787e85 | ||
|
|
c659a180d2 | ||
|
|
632faf55be | ||
|
|
5c7bc46451 | ||
|
|
6932c960da | ||
|
|
a4d9e65d38 | ||
|
|
ab83c2fff5 | ||
|
|
106f5d7cc0 | ||
|
|
11943f6b88 | ||
|
|
665e0967a5 | ||
|
|
85b42fc3cf | ||
|
|
99e6d0010d | ||
|
|
b294d89b4f | ||
|
|
b78d1a82df | ||
|
|
96644c12ab | ||
|
|
45d10b1398 | ||
|
|
ef328f83c5 | ||
|
|
6cf780f57c | ||
|
|
37b048f2ab | ||
|
|
260ed50f10 | ||
|
|
307b5b7091 | ||
|
|
1de9da89c1 | ||
|
|
5fadb0d53e | ||
|
|
49fa853dde | ||
|
|
7555380964 | ||
|
|
36d299f891 | ||
|
|
658cc53f85 | ||
|
|
08f4c0ed12 | ||
|
|
5917b33ec6 | ||
|
|
65ec3d0e0f | ||
|
|
61c0c439f1 | ||
|
|
4cbe3fd6f7 | ||
|
|
94df3f44d7 | ||
|
|
370effd0d3 | ||
|
|
ff6e058dea | ||
|
|
d3a6bcf7bf | ||
|
|
c6a9a94331 | ||
|
|
abdcaebc8e | ||
|
|
c5a433a71e | ||
|
|
0a10b98975 | ||
|
|
506f933c48 | ||
|
|
1399a9c86a | ||
|
|
1fc916865c | ||
|
|
8790092a81 | ||
|
|
00f9180b81 | ||
|
|
0236b1bd6d | ||
|
|
bb61b3c05f | ||
|
|
78469c8faa | ||
|
|
3947f9c8ae | ||
|
|
6c6ebaf485 | ||
|
|
57915462b0 | ||
|
|
8b94da20d3 | ||
|
|
84c65c2b50 | ||
|
|
e8c9db0084 | ||
|
|
19419b85ff | ||
|
|
5eb8a2a9f0 | ||
|
|
95bdb61ad2 | ||
|
|
d79c79b4ae | ||
|
|
9b77d1f9f3 | ||
|
|
659fa242e2 | ||
|
|
1ba13b32a8 | ||
|
|
1c38568f42 | ||
|
|
7c1f712181 | ||
|
|
81d813c4c5 | ||
|
|
2cf7e94767 | ||
|
|
9f71dd2c61 | ||
|
|
f93374a946 | ||
|
|
4158465109 | ||
|
|
125d130984 | ||
|
|
f66ef95918 | ||
|
|
634b4d4f4d | ||
|
|
ced950a764 | ||
|
|
d84c367db5 | ||
|
|
79aa3dfbcf | ||
|
|
a308c6b9d0 | ||
|
|
614c1f5d6e | ||
|
|
fde9c2b9e9 | ||
|
|
84a39671de | ||
|
|
20086543de | ||
|
|
1002e69e44 | ||
|
|
09aa930142 | ||
|
|
ada76381a1 | ||
|
|
e4d5e38727 | ||
|
|
99349193b4 | ||
|
|
d69047df2e | ||
|
|
8318fc2b61 | ||
|
|
ff5a633a8e | ||
|
|
28fcadc9ee | ||
|
|
8a98cd5e20 | ||
|
|
0706c3b3c8 | ||
|
|
17188e31c5 | ||
|
|
45d1e93ad2 | ||
|
|
4c6f8413cb | ||
|
|
db5e06a48f | ||
|
|
e51013117c | ||
|
|
11148fcda6 | ||
|
|
d74e96f65f | ||
|
|
454cd4c120 | ||
|
|
8d5992d7cf | ||
|
|
c37ad843b4 | ||
|
|
2d130bfa85 | ||
|
|
4ac1f7b09e | ||
|
|
db8d8b73a1 | ||
|
|
c2dbf50d0b | ||
|
|
7bb99ceeea | ||
|
|
44fff4f503 | ||
|
|
a087232404 | ||
|
|
ac96667af2 | ||
|
|
8f5a0a273f | ||
|
|
74869d87f6 | ||
|
|
1f0ccabd1c | ||
|
|
c6e294a130 | ||
|
|
96bff490a3 | ||
|
|
7c3155ba44 | ||
|
|
74b26edc0d | ||
|
|
959ee4c46b | ||
|
|
4a9b772b72 | ||
|
|
d5aef5c8cc | ||
|
|
7780e9ad0a | ||
|
|
4612a5a882 | ||
|
|
3a5fe38be0 | ||
|
|
d68b0c529b | ||
|
|
c41082f610 | ||
|
|
b6af8f190c | ||
|
|
850018c86b | ||
|
|
7dbda1b3cf | ||
|
|
29ead90638 | ||
|
|
d9061416a0 | ||
|
|
42406b38fb | ||
|
|
102b1b2065 | ||
|
|
c110c5a084 | ||
|
|
e24fb4ec73 | ||
|
|
9f7d4f0898 | ||
|
|
c0b7cd79a8 | ||
|
|
d4c7b7be40 | ||
|
|
5cecdc18ed | ||
|
|
48240fbded | ||
|
|
dbab9e3b93 | ||
|
|
e4d1ee44a9 | ||
|
|
4ae6035ee9 | ||
|
|
722d851082 | ||
|
|
01f253b24a | ||
|
|
a4ab14e6d0 | ||
|
|
8676fbae02 | ||
|
|
203c1750a6 | ||
|
|
2db2f73b48 | ||
|
|
3efba63e23 | ||
|
|
8f29befc65 | ||
|
|
630fd7c344 | ||
|
|
c74334669b | ||
|
|
c7dc6d0edf | ||
|
|
0f9ece76f8 | ||
|
|
ec31081927 | ||
|
|
6598b3266c | ||
|
|
0d723af8f6 | ||
|
|
5559af8d07 | ||
|
|
f50290d46d | ||
|
|
0dd3f6672d | ||
|
|
d515a5b86a | ||
|
|
e810fa1053 | ||
|
|
12ea7efd5c | ||
|
|
bcf2534e23 | ||
|
|
412e6b0a43 | ||
|
|
0d85124a46 | ||
|
|
3abfbf107e | ||
|
|
643803edfd | ||
|
|
3fbb61033f | ||
|
|
ddbe96c807 | ||
|
|
44d0baf9a2 | ||
|
|
ae67141fed | ||
|
|
b9cb41cc4a | ||
|
|
2e3341172a | ||
|
|
4310b14e0e | ||
|
|
db96dede87 | ||
|
|
ba41a7bd9c | ||
|
|
7fb9a2196c | ||
|
|
781fcc800a | ||
|
|
819da54868 |
@@ -1,52 +0,0 @@
|
|||||||
version: '{branch}-{build}'
|
|
||||||
|
|
||||||
# Do not build on tags (GitHub only)
|
|
||||||
skip_tags: true
|
|
||||||
|
|
||||||
image: Visual Studio 2017
|
|
||||||
|
|
||||||
environment:
|
|
||||||
REPO_DIR: &REPO_DIR c:\qbittorrent
|
|
||||||
CACHE_DIR: &CACHE_DIR c:\qbt_cache
|
|
||||||
|
|
||||||
QBT_VER_URL: https://builds.shiki.hu/appveyor/version
|
|
||||||
QBT_LIB_URL: https://builds.shiki.hu/appveyor/qbt_libraries.7z
|
|
||||||
|
|
||||||
# project directory
|
|
||||||
clone_folder: *REPO_DIR
|
|
||||||
|
|
||||||
# cache size should < 100MB (after compressing with fastest option):
|
|
||||||
# see: https://www.appveyor.com/docs/build-cache#save-update-cache-before-build-finishes
|
|
||||||
cache:
|
|
||||||
- *CACHE_DIR
|
|
||||||
|
|
||||||
install:
|
|
||||||
# check if library needs update
|
|
||||||
- appveyor DownloadFile "%QBT_VER_URL%" -FileName "c:\version_new" && SET /P newVersion=<"c:\version_new"
|
|
||||||
- IF EXIST "%CACHE_DIR%\version" (SET /P oldVersion=<"%CACHE_DIR%\version")
|
|
||||||
- IF NOT EXIST "%CACHE_DIR%\version" (SET updateCache=1)
|
|
||||||
- IF NOT "%oldVersion%" == "%newVersion%" (SET updateCache=1)
|
|
||||||
# update library
|
|
||||||
- IF "%updateCache%" == "1" (ECHO "--- Will redownload libraries ---" &&
|
|
||||||
RMDIR /S /Q "%CACHE_DIR%" & MKDIR "%CACHE_DIR%" &&
|
|
||||||
appveyor DownloadFile "%QBT_LIB_URL%" -FileName "c:\qbt_lib.7z" && 7z x "c:\qbt_lib.7z" -o"%CACHE_DIR%" > nul &&
|
|
||||||
COPY "c:\version_new" "%CACHE_DIR%\version")
|
|
||||||
# Qt stay compressed in cache
|
|
||||||
- 7z x "%CACHE_DIR%\qt5_32.7z" -o"c:\qbt" > nul
|
|
||||||
|
|
||||||
before_build:
|
|
||||||
# setup env
|
|
||||||
- CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat"
|
|
||||||
- SET PATH=%PATH%;c:\qbt\qt5_32\bin;%CACHE_DIR%\jom;
|
|
||||||
# setup project
|
|
||||||
- COPY /Y "%CACHE_DIR%\winconf.pri" "%REPO_DIR%"
|
|
||||||
- COPY /Y "%CACHE_DIR%\winconf-msvc.pri" "%REPO_DIR%"
|
|
||||||
# workarounds
|
|
||||||
- MKLINK /J "c:\qbt\base" "%CACHE_DIR%\base"
|
|
||||||
|
|
||||||
build_script:
|
|
||||||
- cd "%REPO_DIR%"
|
|
||||||
- qmake qbittorrent.pro && cd src && qmake src.pro
|
|
||||||
- jom -j2 -f Makefile.Release
|
|
||||||
|
|
||||||
test: off
|
|
||||||
7
.gitattributes
vendored
7
.gitattributes
vendored
@@ -1,7 +0,0 @@
|
|||||||
core.eol=lf
|
|
||||||
* text eol=lf
|
|
||||||
*.zip binary
|
|
||||||
*.png binary
|
|
||||||
*.ico binary
|
|
||||||
*.qm binary
|
|
||||||
*.icns binary
|
|
||||||
14
.github/ISSUE_TEMPLATE.md
vendored
14
.github/ISSUE_TEMPLATE.md
vendored
@@ -1,14 +0,0 @@
|
|||||||
**Please provide the following information**
|
|
||||||
|
|
||||||
### qBittorrent version and Operating System:
|
|
||||||
|
|
||||||
### If on linux, libtorrent and Qt version:
|
|
||||||
|
|
||||||
### What is the problem:
|
|
||||||
|
|
||||||
### What is the expected behavior:
|
|
||||||
|
|
||||||
### Steps to reproduce:
|
|
||||||
|
|
||||||
### Extra info(if any):
|
|
||||||
|
|
||||||
22
.gitignore
vendored
22
.gitignore
vendored
@@ -1,33 +1,15 @@
|
|||||||
src/gui/geoip/GeoIP.dat
|
src/geoip/GeoIP.dat
|
||||||
src/gui/geoip/GeoIP.dat.gz
|
|
||||||
src/qbittorrent
|
src/qbittorrent
|
||||||
src/qbittorrent-nox
|
|
||||||
src/release
|
|
||||||
src/debug
|
|
||||||
qbittorrent.pro.user*
|
qbittorrent.pro.user*
|
||||||
conf.pri
|
conf.pri
|
||||||
Makefile*
|
Makefile
|
||||||
*.pyc
|
*.pyc
|
||||||
*.log
|
*.log
|
||||||
|
|
||||||
# Compiled object files
|
# Compiled object files
|
||||||
*.o
|
*.o
|
||||||
*.pdb
|
|
||||||
*.exe
|
|
||||||
|
|
||||||
# Generated MOC, resource and UI files
|
# Generated MOC, resource and UI files
|
||||||
moc_*.cpp
|
moc_*.cpp
|
||||||
moc_*.h
|
|
||||||
qrc_*.cpp
|
qrc_*.cpp
|
||||||
ui_*.h
|
ui_*.h
|
||||||
*.moc
|
*.moc
|
||||||
src/lang/qbittorrent_*.qm
|
src/lang/qbittorrent_*.qm
|
||||||
.DS_Store
|
|
||||||
.qmake.stash
|
|
||||||
src/qbittorrent.app
|
|
||||||
*.dmg
|
|
||||||
|
|
||||||
#Autotools junk
|
|
||||||
aclocal.m4
|
|
||||||
autom4te.cache/*
|
|
||||||
config.status
|
|
||||||
|
|||||||
188
.travis.yml
188
.travis.yml
@@ -1,28 +1,13 @@
|
|||||||
language: cpp
|
language:
|
||||||
|
- cpp
|
||||||
os:
|
|
||||||
- linux
|
|
||||||
- osx
|
|
||||||
osx_image: xcode7.3
|
|
||||||
|
|
||||||
env:
|
env:
|
||||||
matrix:
|
# use libtorrent 0.15.10
|
||||||
# Uncomment when Travis upgraded "Ubuntu 12.04 LTS" to a newer version whose repo will have a more up-to-date libtorrent package
|
- lt_source=from_dist gui=true
|
||||||
#- lt_branch=dist gui=true
|
- lt_source=from_dist gui=false
|
||||||
#- lt_branch=dist gui=false
|
# use libtorrent 0.16.X from RC_0_16 svn branch
|
||||||
- lt_branch=RC_1_0 qt=5 gui=true
|
- lt_source=from_svn gui=true
|
||||||
- lt_branch=RC_1_0 qt=5 gui=false
|
- lt_source=from_svn gui=false
|
||||||
- lt_branch=RC_1_0 qt=4 gui=true
|
|
||||||
- lt_branch=RC_1_0 qt=4 gui=false
|
|
||||||
global:
|
|
||||||
- secure: "OI9CUjj4lTb0HwwIZU5PbECU3hLlAL6KC8KsbwohG8/O3j5fLcnmDsK4Ad9us5cC39sS11Jcd1kDP2qRcCuST/glVNhLkcjKkiQerOfd5nQ/qL4JYfz/1mfP5mdpz9jHKzpLUIG+TXkbSTjP6VVmsb5KPT+3pKEdRFZB+Pu9+J8="
|
|
||||||
- coverity_branch: coverity_scan
|
|
||||||
matrix:
|
|
||||||
allow_failures:
|
|
||||||
- os: osx
|
|
||||||
env: lt_branch=RC_1_0 qt=4 gui=true
|
|
||||||
- os: osx
|
|
||||||
env: lt_branch=RC_1_0 qt=4 gui=false
|
|
||||||
|
|
||||||
branches:
|
branches:
|
||||||
except:
|
except:
|
||||||
@@ -34,152 +19,35 @@ notifications:
|
|||||||
on_success: change
|
on_success: change
|
||||||
on_failure: change
|
on_failure: change
|
||||||
|
|
||||||
cache:
|
|
||||||
ccache: true
|
|
||||||
directories:
|
|
||||||
- $HOME/hombebrew_cache
|
|
||||||
|
|
||||||
# opt-in Ubuntu Trusty
|
|
||||||
dist: trusty
|
|
||||||
# container-based builds
|
|
||||||
sudo: false
|
|
||||||
|
|
||||||
addons:
|
|
||||||
coverity_scan:
|
|
||||||
project:
|
|
||||||
name: "qbittorrent/qBittorrent"
|
|
||||||
description: "Build submitted via Travis CI"
|
|
||||||
build_command_prepend: "./bootstrap.sh && ./configure $qbtconf"
|
|
||||||
build_command: make
|
|
||||||
branch_pattern: $coverity_branch
|
|
||||||
notification_email: sledgehammer999@qbittorrent.org
|
|
||||||
apt:
|
|
||||||
sources:
|
|
||||||
# sources list: https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json
|
|
||||||
#- ubuntu-toolchain-r-test
|
|
||||||
#- boost-latest
|
|
||||||
- sourceline: 'ppa:qbittorrent-team/qbittorrent-stable'
|
|
||||||
- sourceline: 'ppa:beineri/opt-qt551-trusty'
|
|
||||||
packages:
|
|
||||||
# packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise
|
|
||||||
- autoconf
|
|
||||||
- automake
|
|
||||||
- colormake
|
|
||||||
- libssl-dev
|
|
||||||
- libboost-dev
|
|
||||||
- libboost-system-dev
|
|
||||||
- libtorrent-rasterbar-dev
|
|
||||||
# Qt 5.5.1
|
|
||||||
- qt55base
|
|
||||||
- qt55tools
|
|
||||||
# Qt 4.8
|
|
||||||
- qt4-default
|
|
||||||
- libqt4-dev
|
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
# only allow specific build for coverity scan, others will stop
|
|
||||||
- if [ "$TRAVIS_BRANCH" = "$coverity_branch" ] && ! [ "$TRAVIS_OS_NAME" = "linux" -a "$lt_branch" = "RC_1_0" -a "$gui" = true ]; then exit ; fi
|
|
||||||
|
|
||||||
- shopt -s expand_aliases
|
- shopt -s expand_aliases
|
||||||
- alias make="colormake -j3" # Using nprocs/2 sometimes may fail (gcc is killed by system)
|
- alias sudo="sudo "
|
||||||
#- libt_path="$HOME/libt_install"
|
# Using nprocs/2 sometimes may fail (gcc is killed by system), just use two threads
|
||||||
#- ltconf="$ltconf --prefix="$libt_path" --disable-geoip"
|
- alias make="colormake -j2 "
|
||||||
- qbt_path="$HOME/qbt_install"
|
|
||||||
- qbtconf="$qbtconf --prefix="$qbt_path" PKG_CONFIG_PATH="$libt_path/lib/pkgconfig":/opt/qt55/lib/pkgconfig:$PKG_CONFIG_PATH"
|
|
||||||
|
|
||||||
# options for specific branches
|
# Also setup a virtual display for after_success target when gui == true
|
||||||
- if [ "$qt" = 4 ]; then qbtconf="$qbtconf --with-qt4" ; fi
|
- if ! $gui; then qbtconf="$qbtconf --disable-gui"; else export "DISPLAY=:99.0" && /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16 ; fi
|
||||||
- if [ "$gui" = false ]; then qbtconf="$qbtconf --disable-gui" ; fi
|
- ltconf=" --with-libgeoip=system"
|
||||||
- |
|
|
||||||
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
|
||||||
# setup virtual display for after_success target
|
|
||||||
if [ "$gui" = true ]; then export "DISPLAY=:99.0" && /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16 ; fi ;
|
|
||||||
|
|
||||||
# Qt 5
|
- echo settings
|
||||||
PATH=/opt/qt55/bin:${PATH}
|
- echo $lt_source
|
||||||
fi
|
|
||||||
|
|
||||||
# print settings
|
|
||||||
- echo $lt_branch
|
|
||||||
- echo $gui
|
|
||||||
- echo $ltconf
|
- echo $ltconf
|
||||||
|
- echo $gui
|
||||||
- echo $qbtconf
|
- echo $qbtconf
|
||||||
|
|
||||||
|
- sudo apt-get -qq update
|
||||||
|
# Travis can stall during heavy load if these packages are installed in one step - split the command
|
||||||
|
- sudo apt-get -qq install debhelper qconf colormake libssl-dev libgeoip-dev
|
||||||
|
- sudo apt-get -qq install libboost-dev libboost-filesystem-dev libboost-system-dev
|
||||||
|
- sudo apt-get -qq install libqt4-dev
|
||||||
|
|
||||||
install:
|
install:
|
||||||
#- |
|
- if [[ "$lt_source" == "from_dist" ]]; then sudo apt-get -qq install libtorrent-rasterbar-dev; fi
|
||||||
#if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
- if [[ "$lt_source" == "from_svn" ]]; then cd .. && svn co svn://svn.code.sf.net/p/libtorrent/code/branches/RC_0_16 ./libtorrent && (cd libtorrent && ./autotool.sh && ./configure $ltconf && sudo make install) && sudo ldconfig /usr/local/lib && cd $TRAVIS_BUILD_DIR ; fi
|
||||||
# build libtorrent from source
|
|
||||||
#if [ "$lt_branch" != "dist" ]; then
|
|
||||||
#cd "$HOME" && pwd && git clone --depth 1 https://github.com/arvidn/libtorrent.git --branch $lt_branch ;
|
|
||||||
#cd libtorrent && ./autotool.sh && ./configure $ltconf && make install ;
|
|
||||||
#fi ;
|
|
||||||
#fi
|
|
||||||
- |
|
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
|
||||||
# dependencies
|
|
||||||
brew update > /dev/null
|
|
||||||
brew install colormake ccache zlib
|
|
||||||
PATH="/usr/local/opt/ccache/libexec:$PATH"
|
|
||||||
brew link --force zlib
|
|
||||||
brew outdated "pkg-config" || brew upgrade "pkg-config"
|
|
||||||
|
|
||||||
wget https://builds.shiki.hu/homebrew/version ;
|
|
||||||
if ! cmp --quiet "version" "$HOME/hombebrew_cache/version" ; then
|
|
||||||
echo "Cached files are different from server. Downloading new ones." ;
|
|
||||||
# First delete old files
|
|
||||||
rm -r "$HOME/hombebrew_cache" ;
|
|
||||||
mkdir "$HOME/hombebrew_cache";
|
|
||||||
cp "version" $HOME/hombebrew_cache ;
|
|
||||||
cd "$HOME/hombebrew_cache" ;
|
|
||||||
wget https://builds.shiki.hu/homebrew/libtorrent-rasterbar.rb ;
|
|
||||||
wget https://builds.shiki.hu/homebrew/libtorrent-rasterbar-1.0.11+git20172003.8736a59adc.el_capitan.bottle.tar.gz
|
|
||||||
wget https://builds.shiki.hu/homebrew/qt.rb
|
|
||||||
wget https://builds.shiki.hu/homebrew/qt-5.9.1.el_capitan.bottle.tar.gz
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Copy custom libtorrent bottle to homebrew's cache so it can find and install it
|
|
||||||
# Also install our custom libtorrent formula by passing the local path to it
|
|
||||||
# These 2 files are restored from Travis' cache.
|
|
||||||
cp "$HOME/hombebrew_cache/libtorrent-rasterbar-1.0.11+git20172003.8736a59adc.el_capitan.bottle.tar.gz" "$(brew --cache)"
|
|
||||||
brew install "$HOME/hombebrew_cache/libtorrent-rasterbar.rb" ;
|
|
||||||
|
|
||||||
# Qt
|
|
||||||
if [ "$qt" = 4 ]; then brew install qt && ln -s /usr/local/Cellar/qt/4.8.7_2/plugins /usr/local ; fi ;
|
|
||||||
if [ "$qt" = 5 ]; then
|
|
||||||
# Copy custom qt5 bottle to homebrew's cache so it can find and install it
|
|
||||||
# Also install our custom qt5 formula by passing the local path to it
|
|
||||||
# These 2 files are restored from Travis' cache.
|
|
||||||
cp "$HOME/hombebrew_cache/qt-5.9.1.el_capitan.bottle.tar.gz" "$(brew --cache)"
|
|
||||||
brew install "$HOME/hombebrew_cache/qt.rb"
|
|
||||||
brew link --force qt
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
- |
|
|
||||||
if [ "$TRAVIS_BRANCH" != "$coverity_branch" ]; then
|
|
||||||
export use_ccache=true
|
|
||||||
ccache -V && ccache --show-stats && ccache --zero-stats
|
|
||||||
fi
|
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- if [ "$TRAVIS_BRANCH" = "$coverity_branch" ]; then exit ; fi # skip usual build when running coverity scan
|
- qt-qconf
|
||||||
- cd "$TRAVIS_BUILD_DIR" && ./bootstrap.sh && ./configure $qbtconf
|
- ./configure $qbtconf && sudo make install
|
||||||
- |
|
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
|
||||||
sed -i "" -e "s/^\(CC.*&&\).*$/\1 $CC/" src/Makefile ; # workaround for Qt & ccache: https://bugreports.qt.io/browse/QTBUG-31034
|
|
||||||
sed -i "" -e "s/^\(CXX.*&&\).*$/\1 $CXX/" src/Makefile ;
|
|
||||||
sed -i "" -e 's/^\(CXXFLAGS.*\)$/\1 -Wno-unused-local-typedefs -Wno-inconsistent-missing-override/' src/Makefile ;
|
|
||||||
fi
|
|
||||||
- make && make install
|
|
||||||
|
|
||||||
after_success:
|
after_success:
|
||||||
- if [ "$gui" = true ]; then qbt_exe="qbittorrent" ; else qbt_exe="qbittorrent-nox" ; fi
|
- if $gui ; then qbittorrent --version ; else qbittorrent-nox --version ; fi
|
||||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then cd "$qbt_path/bin" ; fi
|
|
||||||
- |
|
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
|
||||||
macdeployqt "$TRAVIS_BUILD_DIR/src/$qbt_exe.app" ;
|
|
||||||
cd "$TRAVIS_BUILD_DIR/src/$qbt_exe.app/Contents/MacOS" ;
|
|
||||||
fi
|
|
||||||
- ./$qbt_exe --version
|
|
||||||
|
|
||||||
after_script:
|
|
||||||
- if [ "$use_ccache" = true ]; then ccache --show-stats ; fi
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
[main]
|
[main]
|
||||||
host = https://www.transifex.com
|
host = https://www.transifex.com
|
||||||
|
|
||||||
[qbittorrent.qbittorrent_v3_3_x]
|
[qbittorrent.qbittorrent_v3_1_x]
|
||||||
file_filter = src/lang/qbittorrent_<lang>.ts
|
file_filter = src/lang/qbittorrent_<lang>.ts
|
||||||
lang_map = pt: pt_PT
|
|
||||||
source_file = src/lang/qbittorrent_en.ts
|
source_file = src/lang/qbittorrent_en.ts
|
||||||
source_lang = en
|
source_lang = en
|
||||||
type = QT
|
type = QT
|
||||||
@@ -12,7 +11,7 @@ mode = developer
|
|||||||
|
|
||||||
|
|
||||||
[qbittorrent.qbittorrentdesktop_master]
|
[qbittorrent.qbittorrentdesktop_master]
|
||||||
source_file = src/icons/qBittorrent.desktop
|
source_file = src/Icons/qBittorrent.desktop
|
||||||
source_lang = en
|
source_lang = en
|
||||||
type = DESKTOP
|
type = DESKTOP
|
||||||
minimum_perc = 23
|
minimum_perc = 23
|
||||||
|
|||||||
92
5B7CC9A2.asc
92
5B7CC9A2.asc
@@ -1,92 +0,0 @@
|
|||||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
||||||
Version: GnuPG v2
|
|
||||||
|
|
||||||
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
|
|
||||||
xdpwp07LYo2ilhMI8RnzmtoRmg==
|
|
||||||
=UBeB
|
|
||||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
||||||
22
AUTHORS
22
AUTHORS
@@ -17,7 +17,7 @@ Contributors:
|
|||||||
* Nick Tiskov <daymansmail@gmail.com>
|
* Nick Tiskov <daymansmail@gmail.com>
|
||||||
|
|
||||||
Code from other projects:
|
Code from other projects:
|
||||||
* files src/qtsingleapplication/* src/lineedit/*
|
* files src/qtsingleapp/* src/lineedit/*
|
||||||
copyright: Nokia Corporation
|
copyright: Nokia Corporation
|
||||||
license: LGPL
|
license: LGPL
|
||||||
|
|
||||||
@@ -34,7 +34,7 @@ Code from other projects:
|
|||||||
license: GPLv2/3
|
license: GPLv2/3
|
||||||
|
|
||||||
Images Authors:
|
Images Authors:
|
||||||
* files: src/icons/*.png
|
* files: src/Icons/*.png
|
||||||
copyright: Gnome Icon Theme
|
copyright: Gnome Icon Theme
|
||||||
license: GPLv2
|
license: GPLv2
|
||||||
url: http://ftp.acc.umu.se/pub/GNOME/sources/gnome-icon-theme
|
url: http://ftp.acc.umu.se/pub/GNOME/sources/gnome-icon-theme
|
||||||
@@ -44,21 +44,21 @@ Images Authors:
|
|||||||
license: LGPL
|
license: LGPL
|
||||||
url: http://www.oxygen-icons.org
|
url: http://www.oxygen-icons.org
|
||||||
|
|
||||||
* files: src/icons/flags/*.png
|
* files: src/Icons/flags/*.png
|
||||||
copyright: Mark James <mjames@gmail.com>
|
copyright: Mark James <mjames@gmail.com>
|
||||||
license: Public Domain
|
license: Public Domain
|
||||||
url: http://www.famfamfam.com
|
url: http://www.famfamfam.com
|
||||||
|
|
||||||
* files: src/icons/skin/*.png
|
* files: src/Icons/skin/*.png
|
||||||
files: src/menuicons/YYxYY/*.png
|
files: src/menuicons/YYxYY/*.png
|
||||||
copyright: Mateusz Tobola <tobejodok@qbittorrent.org>
|
copyright: Mateusz Tobola <tobejodok@qbittorrent.org>
|
||||||
license: GPLv2
|
license: GPLv2
|
||||||
|
|
||||||
* file: src/icons/skin/tabs.gif
|
* file: src/Icons/skin/tabs.gif
|
||||||
copyright: Greg Houston <gregory.houston@gmail.com>
|
copyright: Greg Houston <gregory.houston@gmail.com>
|
||||||
license: MIT
|
license: MIT
|
||||||
|
|
||||||
* file: src/icons/skin/qbittorrent_mono*
|
* file: src/Icons/skin/qbittorrent_mono*
|
||||||
copyright: Daniel Eguren <deguren@gmail.com>
|
copyright: Daniel Eguren <deguren@gmail.com>
|
||||||
license: LGPL
|
license: LGPL
|
||||||
|
|
||||||
@@ -77,17 +77,9 @@ Images Authors:
|
|||||||
* file: src/search_engine/engines/torrentreactor.png
|
* file: src/search_engine/engines/torrentreactor.png
|
||||||
copyright: Downloaded from torrentreactor.net
|
copyright: Downloaded from torrentreactor.net
|
||||||
|
|
||||||
* file: src/icons/oxygen/checked.png
|
|
||||||
copyright: Victor Buinsky <allok.victor@gmail.com>
|
|
||||||
|
|
||||||
* file: src/icons/skin/ratio.png
|
|
||||||
copyright: Fatcow Web Hosting
|
|
||||||
license: Creative Commons Attribution 3.0 License
|
|
||||||
url: http://www.fatcow.com/free-icons
|
|
||||||
|
|
||||||
Translations authors:
|
Translations authors:
|
||||||
* files: src/lang/*.ts
|
* files: src/lang/*.ts
|
||||||
* file: src/icons/qBittorrent.desktop
|
* file: src/Icons/qBittorrent.desktop
|
||||||
copyright:
|
copyright:
|
||||||
- Arabic: SDERAWI (abz8868@msn.com), sn51234 (nesseyan@gmail.com) and Ibrahim Saed ibraheem_alex(Transifex)
|
- Arabic: SDERAWI (abz8868@msn.com), sn51234 (nesseyan@gmail.com) and Ibrahim Saed ibraheem_alex(Transifex)
|
||||||
- Armenian: Hrant Ohanyan (hrantohanyan@mail.am)
|
- Armenian: Hrant Ohanyan (hrantohanyan@mail.am)
|
||||||
|
|||||||
@@ -1,64 +0,0 @@
|
|||||||
cmake_minimum_required(VERSION 3.5)
|
|
||||||
cmake_policy(VERSION 3.5)
|
|
||||||
|
|
||||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules)
|
|
||||||
include(FunctionReadVersion)
|
|
||||||
|
|
||||||
read_version("${CMAKE_CURRENT_SOURCE_DIR}/version.pri" VER_MAJOR VER_MINOR VER_BUGFIX VER_BUILD VER_STATUS)
|
|
||||||
# message(STATUS "Project version is: ${VER_MAJOR}.${VER_MINOR}.${VER_BUGFIX}.${VER_BUILD} (${VER_STATUS})")
|
|
||||||
|
|
||||||
project(qBittorrent VERSION ${VER_MAJOR}.${VER_MINOR}.${VER_BUGFIX}.${VER_BUILD})
|
|
||||||
|
|
||||||
set(PROJECT_VERSION "${VER_MAJOR}.${VER_MINOR}.${VER_BUGFIX}")
|
|
||||||
|
|
||||||
if (NOT VER_BUILD EQUAL 0)
|
|
||||||
set(PROJECT_VERSION "${PROJECT_VERSION}.${VER_BUILD}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(PROJECT_VERSION "${PROJECT_VERSION}${VER_STATUS}")
|
|
||||||
|
|
||||||
add_definitions(-DQBT_VERSION_MAJOR=${VER_MAJOR})
|
|
||||||
add_definitions(-DQBT_VERSION_MINOR=${VER_MINOR})
|
|
||||||
add_definitions(-DQBT_VERSION_BUGFIX=${VER_BUGFIX})
|
|
||||||
add_definitions(-DQBT_VERSION_BUILD=${VER_BUILD})
|
|
||||||
|
|
||||||
# os2 {
|
|
||||||
# DEFINES += DQBT_VERSION=\'\"v$${PROJECT_VERSION}\"\'
|
|
||||||
# DEFINES += DQBT_VERSION_2=\'\"$${PROJECT_VERSION}\"\'
|
|
||||||
# } else {
|
|
||||||
add_definitions(-DQBT_VERSION="v${PROJECT_VERSION}")
|
|
||||||
add_definitions(-DQBT_VERSION_2="${PROJECT_VERSION}")
|
|
||||||
# }
|
|
||||||
|
|
||||||
if (UNIX AND NOT APPLE)
|
|
||||||
include(GNUInstallDirs)
|
|
||||||
endif (UNIX AND NOT APPLE)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
include(winconf)
|
|
||||||
endif(WIN32)
|
|
||||||
|
|
||||||
# we need options here, because they are used not only in "src" subdir, but in the "dist" dir too
|
|
||||||
include(CMakeDependentOption)
|
|
||||||
|
|
||||||
option(QT5 "Compile using Qt5" ON)
|
|
||||||
option(SYSTEM_QTSINGLEAPPLICATION
|
|
||||||
"Use the system qtsingleapplication library or shipped one otherwise")
|
|
||||||
cmake_dependent_option(SYSTEM_QJSON
|
|
||||||
"Use the shipped qjson library or the system one (Qt4 only)" OFF "NOT QT5" OFF)
|
|
||||||
|
|
||||||
option(GUI "Allows to disable GUI for headless running. Disables QtDBus and the GeoIP Database" ON)
|
|
||||||
|
|
||||||
option(WEBUI "Allows to disable the WebUI." ON)
|
|
||||||
|
|
||||||
if (WIN32)
|
|
||||||
option(STACKTRACE_WIN "")
|
|
||||||
else (WIN32)
|
|
||||||
cmake_dependent_option(SYSTEMD "Install the systemd service file (headless only)" OFF
|
|
||||||
"NOT GUI" OFF)
|
|
||||||
cmake_dependent_option(DBUS "Enable use of QtDBus (GUI only)" ON "GUI" OFF)
|
|
||||||
endif(WIN32)
|
|
||||||
|
|
||||||
|
|
||||||
add_subdirectory(src)
|
|
||||||
add_subdirectory(dist)
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,35 +0,0 @@
|
|||||||
# Filing an issue
|
|
||||||
|
|
||||||
### Must read
|
|
||||||
* If you aren't sure, you can ask on the [**forum**](http://forum.qbittorrent.org) or read our [**wiki**](http://wiki.qbittorrent.org) first.
|
|
||||||
* Do a quick **search**. Others might already reported the issue.
|
|
||||||
* Write in **English**!
|
|
||||||
* Provide **version** information: (You can find version numbers at menu `Help -> About -> Libraries`)
|
|
||||||
```
|
|
||||||
qBittorrent:
|
|
||||||
Qt:
|
|
||||||
libtorrent:
|
|
||||||
boost:
|
|
||||||
OS version:
|
|
||||||
```
|
|
||||||
* Provide **steps** to reproduce the problem, it will be easier to pinpoint the fault.
|
|
||||||
* **Screenshots**! A screenshot is worth a thousand words. just upload it. [(How?)](https://help.github.com/articles/file-attachments-on-issues-and-pull-requests)
|
|
||||||
|
|
||||||
### Good to know
|
|
||||||
* **Be patient**. The dev team is small and resource limited. Devs finding their free time, analyzing the problem and fixing the issue, it all takes time. :clock3:
|
|
||||||
* If you can code, why not become a **contributor** by fixing the issue and open a pull request? :wink:
|
|
||||||
* Harsh words or threats won't help your situation. What's worse, your complain will (very likely) to be **ignored**. :fearful:
|
|
||||||
|
|
||||||
|
|
||||||
# Opening a pull request
|
|
||||||
|
|
||||||
### Must read
|
|
||||||
* Read our [**coding guidelines**](https://github.com/qbittorrent/qBittorrent/blob/master/CODING_GUIDELINES.md). There are some scripts to help you: [uncrustify script](https://raw.githubusercontent.com/qbittorrent/qBittorrent/master/uncrustify.cfg), [astyle script](https://gist.github.com/Chocobo1/539cee860d1eef0acfa6), [(related thread)](https://github.com/qbittorrent/qBittorrent/issues/2192).
|
|
||||||
* Keep the title **short** and provide a **clear** description about what your pull request does.
|
|
||||||
* Provide **screenshots** for UI related changes.
|
|
||||||
* Keep your git commit history **clean** and **precise**. Commits like `xxx fixup` should not appear.
|
|
||||||
* If your commit fix a reported issue (for example #4134), add the following message to the commit `Closes #4134.`. Example [here](https://github.com/qbittorrent/qBittorrent/commit/a74bac20c4e8de9776bf9bb77fdc7526135d1988).
|
|
||||||
|
|
||||||
### Good to know
|
|
||||||
* **Search** pull request history! Others might already implemented your idea and is waiting to be merged (or got rejected already). Save your precious time by doing a search first.
|
|
||||||
* When resolving merge conflicts, do `git rebase <target_branch_name>`, don't do `git pull`. Then you can start fixing the conflicts. Here is a good explanation: [link](https://www.atlassian.com/git/tutorials/merging-vs-rebasing).
|
|
||||||
72
COPYING
72
COPYING
@@ -12,15 +12,15 @@ exception statement from your version.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
GNU GENERAL PUBLIC LICENSE
|
||||||
Version 2, June 1991
|
Version 2, June 1991
|
||||||
|
|
||||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
of this license document, but changing it is not allowed.
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
Preamble
|
Preamble
|
||||||
|
|
||||||
The licenses for most software are designed to take away your
|
The licenses for most software are designed to take away your
|
||||||
freedom to share and change it. By contrast, the GNU General Public
|
freedom to share and change it. By contrast, the GNU General Public
|
||||||
@@ -70,7 +70,7 @@ patent must be licensed for everyone's free use or not licensed at all.
|
|||||||
The precise terms and conditions for copying, distribution and
|
The precise terms and conditions for copying, distribution and
|
||||||
modification follow.
|
modification follow.
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
GNU GENERAL PUBLIC LICENSE
|
||||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
|
||||||
0. This License applies to any program or other work which contains
|
0. This License applies to any program or other work which contains
|
||||||
@@ -269,7 +269,7 @@ make exceptions for this. Our decision will be guided by the two goals
|
|||||||
of preserving the free status of all derivatives of our free software and
|
of preserving the free status of all derivatives of our free software and
|
||||||
of promoting the sharing and reuse of software generally.
|
of promoting the sharing and reuse of software generally.
|
||||||
|
|
||||||
NO WARRANTY
|
NO WARRANTY
|
||||||
|
|
||||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||||
@@ -291,4 +291,64 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
|||||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||||
POSSIBILITY OF SUCH DAMAGES.
|
POSSIBILITY OF SUCH DAMAGES.
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
How to Apply These Terms to Your New Programs
|
||||||
|
|
||||||
|
If you develop a new program, and you want it to be of the greatest
|
||||||
|
possible use to the public, the best way to achieve this is to make it
|
||||||
|
free software which everyone can redistribute and change under these terms.
|
||||||
|
|
||||||
|
To do so, attach the following notices to the program. It is safest
|
||||||
|
to attach them to the start of each source file to most effectively
|
||||||
|
convey the exclusion of warranty; and each file should have at least
|
||||||
|
the "copyright" line and a pointer to where the full notice is found.
|
||||||
|
|
||||||
|
<one line to give the program's name and a brief idea of what it does.>
|
||||||
|
Copyright (C) <year> <name of author>
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
|
||||||
|
Also add information on how to contact you by electronic and paper mail.
|
||||||
|
|
||||||
|
If the program is interactive, make it output a short notice like this
|
||||||
|
when it starts in an interactive mode:
|
||||||
|
|
||||||
|
Gnomovision version 69, Copyright (C) year name of author
|
||||||
|
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||||
|
This is free software, and you are welcome to redistribute it
|
||||||
|
under certain conditions; type `show c' for details.
|
||||||
|
|
||||||
|
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||||
|
parts of the General Public License. Of course, the commands you use may
|
||||||
|
be called something other than `show w' and `show c'; they could even be
|
||||||
|
mouse-clicks or menu items--whatever suits your program.
|
||||||
|
|
||||||
|
You should also get your employer (if you work as a programmer) or your
|
||||||
|
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||||
|
necessary. Here is a sample; alter the names:
|
||||||
|
|
||||||
|
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||||
|
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||||
|
|
||||||
|
<signature of Ty Coon>, 1 April 1989
|
||||||
|
Ty Coon, President of Vice
|
||||||
|
|
||||||
|
This General Public License does not permit incorporating your program into
|
||||||
|
proprietary programs. If your program is a subroutine library, you may
|
||||||
|
consider it more useful to permit linking proprietary applications with the
|
||||||
|
library. If this is what you want to do, use the GNU Library General
|
||||||
|
Public License instead of this License.
|
||||||
|
|||||||
10
INSTALL
10
INSTALL
@@ -14,11 +14,15 @@ qBittorrent - A BitTorrent client in C++ / Qt4
|
|||||||
|
|
||||||
- pkg-config executable
|
- pkg-config executable
|
||||||
|
|
||||||
- libtorrent-rasterbar by Arvid Norberg (>= 1.0.6)
|
- libtorrent-rasterbar by Arvid Norberg (>= 0.15.0)
|
||||||
-> http://www.libtorrent.net
|
-> http://www.libtorrent.net
|
||||||
Be careful: another library (the one used by rTorrent) uses a similar name.
|
Be careful: another library (the one used by rTorrent) uses a similar name.
|
||||||
|
|
||||||
- libboost >= 1.35.x (libboost-system)
|
- libboost 1.34.x (libboost-filesystem°) + libasio
|
||||||
|
or
|
||||||
|
- libboost >= 1.35.x (libboost-system, libboost-filesystem°)
|
||||||
|
|
||||||
|
°libboost-filesystem is not needed if libtorrent-rasterbar >= v0.16.x is used
|
||||||
|
|
||||||
- python >= 2.3 (needed by search engine)
|
- python >= 2.3 (needed by search engine)
|
||||||
* Run time only dependency
|
* Run time only dependency
|
||||||
@@ -40,7 +44,7 @@ qBittorrent - A BitTorrent client in C++ / Qt4
|
|||||||
|
|
||||||
- pkg-config executable
|
- pkg-config executable
|
||||||
|
|
||||||
- libtorrent-rasterbar by Arvid Norberg (>= v1.0.6)
|
- libtorrent-rasterbar by Arvid Norberg (>= v0.15.0)
|
||||||
-> http://www.libtorrent.net
|
-> http://www.libtorrent.net
|
||||||
Be careful: another library (the one used by rTorrent) uses a similar name.
|
Be careful: another library (the one used by rTorrent) uses a similar name.
|
||||||
|
|
||||||
|
|||||||
19
README.md
19
README.md
@@ -1,11 +1,9 @@
|
|||||||
qBittorrent - A BitTorrent client in Qt
|
qBittorrent - A BitTorrent client in Qt
|
||||||
------------------------------------------
|
------------------------------------------
|
||||||
|
|
||||||
[](https://travis-ci.org/qbittorrent/qBittorrent)
|
[](https://travis-ci.org/qbittorrent/qBittorrent)
|
||||||
[](https://ci.appveyor.com/project/qbittorrent/qBittorrent)
|
|
||||||
[](https://scan.coverity.com/projects/5494)
|
|
||||||
********************************
|
********************************
|
||||||
### Description:
|
###Description:
|
||||||
qBittorrent is a bittorrent client programmed in C++ / Qt that uses
|
qBittorrent is a bittorrent client programmed in C++ / Qt that uses
|
||||||
libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
|
libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
|
||||||
|
|
||||||
@@ -14,7 +12,7 @@ out there. qBittorrent is fast, stable and provides unicode
|
|||||||
support as well as many features.
|
support as well as many features.
|
||||||
|
|
||||||
This product includes GeoLite data created by MaxMind, available from
|
This product includes GeoLite data created by MaxMind, available from
|
||||||
https://www.maxmind.com/
|
http://maxmind.com/
|
||||||
|
|
||||||
### Installation:
|
### Installation:
|
||||||
For installation, follow the instructions from INSTALL file, but simple:
|
For installation, follow the instructions from INSTALL file, but simple:
|
||||||
@@ -27,22 +25,12 @@ qbittorrent
|
|||||||
|
|
||||||
will install and execute qBittorrent hopefully without any problem.
|
will install and execute qBittorrent hopefully without any problem.
|
||||||
|
|
||||||
### Public key:
|
|
||||||
Starting from v3.3.4 all source tarballs and binaries are signed.<br />
|
|
||||||
The key currently used is 4096R/[5B7CC9A2](https://pgp.mit.edu/pks/lookup?op=get&search=0x6E4A2D025B7CC9A2) with fingerprint `D8F3DA77AAC6741053599C136E4A2D025B7CC9A2`.<br />
|
|
||||||
You can also download it from [here](https://github.com/qbittorrent/qBittorrent/raw/master/5B7CC9A2.asc).<br />
|
|
||||||
**PREVIOUSLY** the following key was used to sign the v3.3.4 source tarballs and v3.3.4 Windows installer **only**: 4096R/[520EC6F6](https://pgp.mit.edu/pks/lookup?op=get&search=0xA1ACCAE4520EC6F6) with fingerprint `F4A5FD201B117B1C2AB590E2A1ACCAE4520EC6F6`.<br />
|
|
||||||
|
|
||||||
### Misc:
|
|
||||||
For more information please visit:
|
For more information please visit:
|
||||||
http://www.qbittorrent.org
|
http://www.qbittorrent.org
|
||||||
|
|
||||||
or our wiki here:
|
or our wiki here:
|
||||||
http://wiki.qbittorrent.org
|
http://wiki.qbittorrent.org
|
||||||
|
|
||||||
Use the forum for troubleshooting before reporting bugs:
|
|
||||||
http://forum.qbittorrent.org
|
|
||||||
|
|
||||||
Please report any bug (or feature request) to:
|
Please report any bug (or feature request) to:
|
||||||
http://bugs.qbittorrent.org
|
http://bugs.qbittorrent.org
|
||||||
|
|
||||||
@@ -51,3 +39,4 @@ You can also meet me (sledgehammer_999) on IRC:
|
|||||||
|
|
||||||
------------------------------------------
|
------------------------------------------
|
||||||
sledgehammer999 <sledgehammer999@qbittorrent.org>
|
sledgehammer999 <sledgehammer999@qbittorrent.org>
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ How to build
|
|||||||
First you need to create the conf.pri file in the same dir as this readme.os2 is.
|
First you need to create the conf.pri file in the same dir as this readme.os2 is.
|
||||||
the conf.pri file has the following content:
|
the conf.pri file has the following content:
|
||||||
|
|
||||||
##### conf.pri content begin #####
|
##### conf.pri content beginn #####
|
||||||
BINDIR = ./bin
|
BINDIR = ./bin
|
||||||
INCDIR = ./include
|
INCDIR = ./include
|
||||||
LIBDIR = ./lib
|
LIBDIR = ./lib
|
||||||
|
|||||||
@@ -1,4 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
aclocal -I m4
|
|
||||||
autoconf
|
|
||||||
File diff suppressed because it is too large
Load Diff
1421
build-aux/config.guess
vendored
1421
build-aux/config.guess
vendored
File diff suppressed because it is too large
Load Diff
1807
build-aux/config.sub
vendored
1807
build-aux/config.sub
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,215 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
# Common wrapper for a few potentially missing GNU programs.
|
|
||||||
|
|
||||||
scriptversion=2013-10-28.13; # UTC
|
|
||||||
|
|
||||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
|
|
||||||
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; either version 2, or (at your option)
|
|
||||||
# any later version.
|
|
||||||
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
# As a special exception to the GNU General Public License, if you
|
|
||||||
# distribute this file as part of a program that contains a
|
|
||||||
# configuration script generated by Autoconf, you may include it under
|
|
||||||
# the same distribution terms that you use for the rest of that program.
|
|
||||||
|
|
||||||
if test $# -eq 0; then
|
|
||||||
echo 1>&2 "Try '$0 --help' for more information"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
case $1 in
|
|
||||||
|
|
||||||
--is-lightweight)
|
|
||||||
# Used by our autoconf macros to check whether the available missing
|
|
||||||
# script is modern enough.
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
|
|
||||||
--run)
|
|
||||||
# Back-compat with the calling convention used by older automake.
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
|
|
||||||
-h|--h|--he|--hel|--help)
|
|
||||||
echo "\
|
|
||||||
$0 [OPTION]... PROGRAM [ARGUMENT]...
|
|
||||||
|
|
||||||
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
|
|
||||||
to PROGRAM being missing or too old.
|
|
||||||
|
|
||||||
Options:
|
|
||||||
-h, --help display this help and exit
|
|
||||||
-v, --version output version information and exit
|
|
||||||
|
|
||||||
Supported PROGRAM values:
|
|
||||||
aclocal autoconf autoheader autom4te automake makeinfo
|
|
||||||
bison yacc flex lex help2man
|
|
||||||
|
|
||||||
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
|
|
||||||
'g' are ignored when checking the name.
|
|
||||||
|
|
||||||
Send bug reports to <bug-automake@gnu.org>."
|
|
||||||
exit $?
|
|
||||||
;;
|
|
||||||
|
|
||||||
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
|
|
||||||
echo "missing $scriptversion (GNU Automake)"
|
|
||||||
exit $?
|
|
||||||
;;
|
|
||||||
|
|
||||||
-*)
|
|
||||||
echo 1>&2 "$0: unknown '$1' option"
|
|
||||||
echo 1>&2 "Try '$0 --help' for more information"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Run the given program, remember its exit status.
|
|
||||||
"$@"; st=$?
|
|
||||||
|
|
||||||
# If it succeeded, we are done.
|
|
||||||
test $st -eq 0 && exit 0
|
|
||||||
|
|
||||||
# Also exit now if we it failed (or wasn't found), and '--version' was
|
|
||||||
# passed; such an option is passed most likely to detect whether the
|
|
||||||
# program is present and works.
|
|
||||||
case $2 in --version|--help) exit $st;; esac
|
|
||||||
|
|
||||||
# Exit code 63 means version mismatch. This often happens when the user
|
|
||||||
# tries to use an ancient version of a tool on a file that requires a
|
|
||||||
# minimum version.
|
|
||||||
if test $st -eq 63; then
|
|
||||||
msg="probably too old"
|
|
||||||
elif test $st -eq 127; then
|
|
||||||
# Program was missing.
|
|
||||||
msg="missing on your system"
|
|
||||||
else
|
|
||||||
# Program was found and executed, but failed. Give up.
|
|
||||||
exit $st
|
|
||||||
fi
|
|
||||||
|
|
||||||
perl_URL=http://www.perl.org/
|
|
||||||
flex_URL=http://flex.sourceforge.net/
|
|
||||||
gnu_software_URL=http://www.gnu.org/software
|
|
||||||
|
|
||||||
program_details ()
|
|
||||||
{
|
|
||||||
case $1 in
|
|
||||||
aclocal|automake)
|
|
||||||
echo "The '$1' program is part of the GNU Automake package:"
|
|
||||||
echo "<$gnu_software_URL/automake>"
|
|
||||||
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
|
|
||||||
echo "<$gnu_software_URL/autoconf>"
|
|
||||||
echo "<$gnu_software_URL/m4/>"
|
|
||||||
echo "<$perl_URL>"
|
|
||||||
;;
|
|
||||||
autoconf|autom4te|autoheader)
|
|
||||||
echo "The '$1' program is part of the GNU Autoconf package:"
|
|
||||||
echo "<$gnu_software_URL/autoconf/>"
|
|
||||||
echo "It also requires GNU m4 and Perl in order to run:"
|
|
||||||
echo "<$gnu_software_URL/m4/>"
|
|
||||||
echo "<$perl_URL>"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
give_advice ()
|
|
||||||
{
|
|
||||||
# Normalize program name to check for.
|
|
||||||
normalized_program=`echo "$1" | sed '
|
|
||||||
s/^gnu-//; t
|
|
||||||
s/^gnu//; t
|
|
||||||
s/^g//; t'`
|
|
||||||
|
|
||||||
printf '%s\n' "'$1' is $msg."
|
|
||||||
|
|
||||||
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
|
|
||||||
case $normalized_program in
|
|
||||||
autoconf*)
|
|
||||||
echo "You should only need it if you modified 'configure.ac',"
|
|
||||||
echo "or m4 files included by it."
|
|
||||||
program_details 'autoconf'
|
|
||||||
;;
|
|
||||||
autoheader*)
|
|
||||||
echo "You should only need it if you modified 'acconfig.h' or"
|
|
||||||
echo "$configure_deps."
|
|
||||||
program_details 'autoheader'
|
|
||||||
;;
|
|
||||||
automake*)
|
|
||||||
echo "You should only need it if you modified 'Makefile.am' or"
|
|
||||||
echo "$configure_deps."
|
|
||||||
program_details 'automake'
|
|
||||||
;;
|
|
||||||
aclocal*)
|
|
||||||
echo "You should only need it if you modified 'acinclude.m4' or"
|
|
||||||
echo "$configure_deps."
|
|
||||||
program_details 'aclocal'
|
|
||||||
;;
|
|
||||||
autom4te*)
|
|
||||||
echo "You might have modified some maintainer files that require"
|
|
||||||
echo "the 'autom4te' program to be rebuilt."
|
|
||||||
program_details 'autom4te'
|
|
||||||
;;
|
|
||||||
bison*|yacc*)
|
|
||||||
echo "You should only need it if you modified a '.y' file."
|
|
||||||
echo "You may want to install the GNU Bison package:"
|
|
||||||
echo "<$gnu_software_URL/bison/>"
|
|
||||||
;;
|
|
||||||
lex*|flex*)
|
|
||||||
echo "You should only need it if you modified a '.l' file."
|
|
||||||
echo "You may want to install the Fast Lexical Analyzer package:"
|
|
||||||
echo "<$flex_URL>"
|
|
||||||
;;
|
|
||||||
help2man*)
|
|
||||||
echo "You should only need it if you modified a dependency" \
|
|
||||||
"of a man page."
|
|
||||||
echo "You may want to install the GNU Help2man package:"
|
|
||||||
echo "<$gnu_software_URL/help2man/>"
|
|
||||||
;;
|
|
||||||
makeinfo*)
|
|
||||||
echo "You should only need it if you modified a '.texi' file, or"
|
|
||||||
echo "any other file indirectly affecting the aspect of the manual."
|
|
||||||
echo "You might want to install the Texinfo package:"
|
|
||||||
echo "<$gnu_software_URL/texinfo/>"
|
|
||||||
echo "The spurious makeinfo call might also be the consequence of"
|
|
||||||
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
|
|
||||||
echo "want to install GNU make:"
|
|
||||||
echo "<$gnu_software_URL/make/>"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "You might have modified some files without having the proper"
|
|
||||||
echo "tools for further handling them. Check the 'README' file, it"
|
|
||||||
echo "often tells you about the needed prerequisites for installing"
|
|
||||||
echo "this package. You may also peek at any GNU archive site, in"
|
|
||||||
echo "case some other package contains this missing '$1' program."
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
give_advice "$1" | sed -e '1s/^/WARNING: /' \
|
|
||||||
-e '2,$s/^/ /' >&2
|
|
||||||
|
|
||||||
# Propagate the correct exit status (expected to be 127 for a program
|
|
||||||
# not found, 63 for a program that failed due to version mismatch).
|
|
||||||
exit $st
|
|
||||||
|
|
||||||
# Local variables:
|
|
||||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
|
||||||
# time-stamp-start: "scriptversion="
|
|
||||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
|
||||||
# time-stamp-time-zone: "UTC"
|
|
||||||
# time-stamp-end: "; # UTC"
|
|
||||||
# End:
|
|
||||||
@@ -1,127 +0,0 @@
|
|||||||
# - Try to find libtorrent-rasterbar
|
|
||||||
#
|
|
||||||
# If not using pkg-config, you can pre-set LibtorrentRasterbar_CUSTOM_DEFINITIONS
|
|
||||||
# for definitions unrelated to Boost's separate compilation (which are already
|
|
||||||
# decided by the LibtorrentRasterbar_USE_STATIC_LIBS variable).
|
|
||||||
#
|
|
||||||
# Once done this will define
|
|
||||||
# LibtorrentRasterbar_FOUND - System has libtorrent-rasterbar
|
|
||||||
# LibtorrentRasterbar_INCLUDE_DIRS - The libtorrent-rasterbar include directories
|
|
||||||
# LibtorrentRasterbar_LIBRARIES - The libraries needed to use libtorrent-rasterbar
|
|
||||||
# LibtorrentRasterbar_DEFINITIONS - Compiler switches required for using libtorrent-rasterbar
|
|
||||||
# LibtorrentRasterbar_OPENSSL_ENABLED - libtorrent-rasterbar uses and links against OpenSSL
|
|
||||||
|
|
||||||
find_package(Threads REQUIRED)
|
|
||||||
find_package(PkgConfig QUIET)
|
|
||||||
|
|
||||||
macro(_detect_boost_components _outComponets librariesList)
|
|
||||||
string(REGEX MATCHALL "boost_[a-z_]+[-a-z]*" _boost_libraries "${librariesList}")
|
|
||||||
string(REGEX REPLACE "boost_([a-z_]+)[-a-z]*" "\\1" ${_outComponets} "${_boost_libraries}")
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
if(PKG_CONFIG_FOUND)
|
|
||||||
pkg_check_modules(PC_LIBTORRENT_RASTERBAR QUIET libtorrent-rasterbar)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(LibtorrentRasterbar_USE_STATIC_LIBS)
|
|
||||||
set(LibtorrentRasterbar_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_STATIC_LIBRARY_SUFFIX})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(PC_LIBTORRENT_RASTERBAR_FOUND)
|
|
||||||
set(LibtorrentRasterbar_DEFINITIONS ${PC_LIBTORRENT_RASTERBAR_CFLAGS})
|
|
||||||
else()
|
|
||||||
if(LibtorrentRasterbar_CUSTOM_DEFINITIONS)
|
|
||||||
set(LibtorrentRasterbar_DEFINITIONS ${LibtorrentRasterbar_CUSTOM_DEFINITIONS})
|
|
||||||
else()
|
|
||||||
# Without pkg-config, we can't possibly figure out the correct build flags.
|
|
||||||
# libtorrent is very picky about those. Let's take a set of defaults and
|
|
||||||
# hope that they apply. If not, you the user are on your own.
|
|
||||||
set(LibtorrentRasterbar_DEFINITIONS
|
|
||||||
-DTORRENT_USE_OPENSSL
|
|
||||||
-DTORRENT_DISABLE_GEO_IP
|
|
||||||
-DBOOST_ASIO_ENABLE_CANCELIO
|
|
||||||
-DUNICODE -D_UNICODE -D_FILE_OFFSET_BITS=64)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT LibtorrentRasterbar_USE_STATIC_LIBS)
|
|
||||||
list(APPEND LibtorrentRasterbar_DEFINITIONS
|
|
||||||
-DTORRENT_LINKING_SHARED
|
|
||||||
-DBOOST_SYSTEM_DYN_LINK -DBOOST_CHRONO_DYN_LINK)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
message(STATUS "libtorrent definitions: ${LibtorrentRasterbar_DEFINITIONS}")
|
|
||||||
|
|
||||||
find_path(LibtorrentRasterbar_INCLUDE_DIR libtorrent
|
|
||||||
HINTS ${PC_LIBTORRENT_RASTERBAR_INCLUDEDIR} ${PC_LIBTORRENT_RASTERBAR_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES libtorrent-rasterbar)
|
|
||||||
|
|
||||||
find_library(LibtorrentRasterbar_LIBRARY NAMES torrent-rasterbar libtorrent
|
|
||||||
HINTS ${PC_LIBTORRENT_RASTERBAR_LIBDIR} ${PC_LIBTORRENT_RASTERBAR_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
if(LibtorrentRasterbar_USE_STATIC_LIBS)
|
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${LibtorrentRasterbar_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(LibtorrentRasterbar_LIBRARIES ${LibtorrentRasterbar_LIBRARY} ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
set(LibtorrentRasterbar_INCLUDE_DIRS ${LibtorrentRasterbar_INCLUDE_DIR})
|
|
||||||
|
|
||||||
# Without pkg-config, we can't possibly figure out the correct boost dependencies
|
|
||||||
if (LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES)
|
|
||||||
set(_boost_components "${LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES}")
|
|
||||||
else(LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES)
|
|
||||||
if(PC_LIBTORRENT_RASTERBAR_FOUND)
|
|
||||||
_detect_boost_components(_boost_components "${PC_LIBTORRENT_RASTERBAR_LIBRARIES}")
|
|
||||||
else()
|
|
||||||
# all possible boost dependencies
|
|
||||||
set(_boost_components
|
|
||||||
date_time
|
|
||||||
system
|
|
||||||
chrono
|
|
||||||
random
|
|
||||||
thread
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
endif(LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES)
|
|
||||||
|
|
||||||
list(SORT _boost_components)
|
|
||||||
message(STATUS "Libtorrent Boost dependencies: ${_boost_components}")
|
|
||||||
find_package(Boost REQUIRED COMPONENTS ${_boost_components})
|
|
||||||
set(LibtorrentRasterbar_LIBRARIES ${LibtorrentRasterbar_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
foreach(_boost_cmpnt IN LISTS _boost_components)
|
|
||||||
list(APPEND LibtorrentRasterbar_LIBRARIES "Boost::${_boost_cmpnt}")
|
|
||||||
endforeach(_boost_cmpnt)
|
|
||||||
|
|
||||||
set(LibtorrentRasterbar_INCLUDE_DIRS ${LibtorrentRasterbar_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
list(FIND LibtorrentRasterbar_DEFINITIONS -DTORRENT_USE_OPENSSL LibtorrentRasterbar_ENCRYPTION_INDEX)
|
|
||||||
if(LibtorrentRasterbar_ENCRYPTION_INDEX GREATER -1)
|
|
||||||
find_package(OpenSSL REQUIRED)
|
|
||||||
set(LibtorrentRasterbar_LIBRARIES ${LibtorrentRasterbar_LIBRARIES} OpenSSL::SSL OpenSSL::Crypto)
|
|
||||||
set(LibtorrentRasterbar_OPENSSL_ENABLED ON)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set LibtorrentRasterbar_FOUND to TRUE
|
|
||||||
# if all listed variables are TRUE
|
|
||||||
find_package_handle_standard_args(LibtorrentRasterbar DEFAULT_MSG
|
|
||||||
LibtorrentRasterbar_LIBRARY
|
|
||||||
LibtorrentRasterbar_INCLUDE_DIR)
|
|
||||||
|
|
||||||
mark_as_advanced(LibtorrentRasterbar_INCLUDE_DIR LibtorrentRasterbar_LIBRARY
|
|
||||||
LibtorrentRasterbar_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
LibtorrentRasterbar_ENCRYPTION_INDEX)
|
|
||||||
|
|
||||||
if (LibtorrentRasterbar_FOUND AND NOT TARGET LibtorrentRasterbar::LibTorrent)
|
|
||||||
add_library(LibtorrentRasterbar::LibTorrent UNKNOWN IMPORTED)
|
|
||||||
|
|
||||||
set_target_properties(LibtorrentRasterbar::LibTorrent PROPERTIES
|
|
||||||
IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
|
|
||||||
IMPORTED_LOCATION "${LibtorrentRasterbar_LIBRARY}"
|
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${LibtorrentRasterbar_INCLUDE_DIRS}"
|
|
||||||
INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${LibtorrentRasterbar_INCLUDE_DIRS}"
|
|
||||||
INTERFACE_LINK_LIBRARIES "${LibtorrentRasterbar_LIBRARIES}"
|
|
||||||
INTERFACE_COMPILE_OPTIONS "${LibtorrentRasterbar_DEFINITIONS}"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
@@ -1,94 +0,0 @@
|
|||||||
# - Try to find the QtSingleApplication includes and library
|
|
||||||
# which defines
|
|
||||||
#
|
|
||||||
# QTSINGLEAPPLICATION_FOUND - system has QtSingleApplication
|
|
||||||
# QTSINGLEAPPLICATION_INCLUDE_DIR - where to find header QtSingleApplication
|
|
||||||
# QTSINGLEAPPLICATION_LIBRARIES - the libraries to link against to use QtSingleApplication
|
|
||||||
# QTSINGLEAPPLICATION_LIBRARY - where to find the QtSingleApplication library (not for general use)
|
|
||||||
|
|
||||||
# copyright (c) 2013 TI_Eugene ti.eugene@gmail.com
|
|
||||||
#
|
|
||||||
# Redistribution and use is allowed according to the terms of the FreeBSD license.
|
|
||||||
|
|
||||||
SET(QTSINGLEAPPLICATION_FOUND FALSE)
|
|
||||||
|
|
||||||
IF(QT4_FOUND)
|
|
||||||
message(STATUS "Looking for Qt4 single application library")
|
|
||||||
FIND_PATH(QTSINGLEAPPLICATION_INCLUDE_DIR QtSingleApplication
|
|
||||||
# standard locations
|
|
||||||
/usr/include
|
|
||||||
/usr/include/QtSolutions
|
|
||||||
# qt4 location except mac's frameworks
|
|
||||||
"${QT_INCLUDE_DIR}/QtSolutions"
|
|
||||||
# mac's frameworks
|
|
||||||
${FRAMEWORK_INCLUDE_DIR}/QtSolutions
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(QTSINGLEAPPLICATION_NAMES ${QTSINGLEAPPLICATION_NAMES}
|
|
||||||
QtSolutions_SingleApplication-2.6 libQtSolutions_SingleApplication-2.6)
|
|
||||||
FIND_LIBRARY(QTSINGLEAPPLICATION_LIBRARY
|
|
||||||
NAMES ${QTSINGLEAPPLICATION_NAMES}
|
|
||||||
PATHS ${QT_LIBRARY_DIR}
|
|
||||||
)
|
|
||||||
ELSEIF(Qt5Widgets_FOUND)
|
|
||||||
message(STATUS "Looking for Qt5 single application library")
|
|
||||||
FOREACH(TOP_INCLUDE_PATH in ${Qt5Widgets_INCLUDE_DIRS} ${FRAMEWORK_INCLUDE_DIR})
|
|
||||||
FIND_PATH(QTSINGLEAPPLICATION_INCLUDE_DIR QtSingleApplication ${TOP_INCLUDE_PATH}/QtSolutions)
|
|
||||||
|
|
||||||
IF(QTSINGLEAPPLICATION_INCLUDE_DIR)
|
|
||||||
BREAK()
|
|
||||||
ENDIF()
|
|
||||||
ENDFOREACH()
|
|
||||||
|
|
||||||
SET(QTSINGLEAPPLICATION_NAMES ${QTSINGLEAPPLICATION_NAMES}
|
|
||||||
Qt5Solutions_SingleApplication-2.6 libQt5Solutions_SingleApplication-2.6
|
|
||||||
QtSolutions_SingleApplication-2.6 libQtSolutions_SingleApplication-2.6)
|
|
||||||
GET_TARGET_PROPERTY(QT5_WIDGETSLIBRARY Qt5::Widgets LOCATION)
|
|
||||||
GET_FILENAME_COMPONENT(QT5_WIDGETSLIBRARYPATH ${QT5_WIDGETSLIBRARY} PATH)
|
|
||||||
|
|
||||||
FIND_LIBRARY(QTSINGLEAPPLICATION_LIBRARY
|
|
||||||
NAMES ${QTSINGLEAPPLICATION_NAMES}
|
|
||||||
PATHS ${QT5_WIDGETSLIBRARYPATH}
|
|
||||||
)
|
|
||||||
ENDIF()
|
|
||||||
|
|
||||||
IF (QTSINGLEAPPLICATION_LIBRARY AND QTSINGLEAPPLICATION_INCLUDE_DIR)
|
|
||||||
|
|
||||||
SET(QTSINGLEAPPLICATION_LIBRARIES ${QTSINGLEAPPLICATION_LIBRARY})
|
|
||||||
SET(QTSINGLEAPPLICATION_FOUND TRUE)
|
|
||||||
|
|
||||||
IF (CYGWIN)
|
|
||||||
IF(BUILD_SHARED_LIBS)
|
|
||||||
# No need to define QTSINGLEAPPLICATION_USE_DLL here, because it's default for Cygwin.
|
|
||||||
ELSE(BUILD_SHARED_LIBS)
|
|
||||||
SET (QTSINGLEAPPLICATION_DEFINITIONS -DQTSINGLEAPPLICATION_STATIC)
|
|
||||||
ENDIF(BUILD_SHARED_LIBS)
|
|
||||||
ENDIF (CYGWIN)
|
|
||||||
|
|
||||||
ENDIF (QTSINGLEAPPLICATION_LIBRARY AND QTSINGLEAPPLICATION_INCLUDE_DIR)
|
|
||||||
|
|
||||||
IF (QTSINGLEAPPLICATION_FOUND)
|
|
||||||
IF (NOT QtSingleApplication_FIND_QUIETLY)
|
|
||||||
MESSAGE(STATUS "Found QtSingleApplication: ${QTSINGLEAPPLICATION_LIBRARY}")
|
|
||||||
MESSAGE(STATUS " includes: ${QTSINGLEAPPLICATION_INCLUDE_DIR}")
|
|
||||||
ENDIF (NOT QtSingleApplication_FIND_QUIETLY)
|
|
||||||
ELSE (QTSINGLEAPPLICATION_FOUND)
|
|
||||||
IF (QtSingleApplication_FIND_REQUIRED)
|
|
||||||
MESSAGE(FATAL_ERROR "Could not find QtSingleApplication library")
|
|
||||||
ENDIF (QtSingleApplication_FIND_REQUIRED)
|
|
||||||
ENDIF (QTSINGLEAPPLICATION_FOUND)
|
|
||||||
|
|
||||||
MARK_AS_ADVANCED(QTSINGLEAPPLICATION_INCLUDE_DIR QTSINGLEAPPLICATION_LIBRARY)
|
|
||||||
|
|
||||||
if(NOT TARGET QtSingleApplication::QtSingleApplication)
|
|
||||||
add_library(QtSingleApplication::QtSingleApplication UNKNOWN IMPORTED)
|
|
||||||
set_target_properties(QtSingleApplication::QtSingleApplication PROPERTIES
|
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${QTSINGLEAPPLICATION_INCLUDE_DIR}"
|
|
||||||
INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${QTSINGLEAPPLICATION_INCLUDE_DIR}"
|
|
||||||
)
|
|
||||||
if(EXISTS "${QTSINGLEAPPLICATION_LIBRARY}")
|
|
||||||
set_target_properties(QtSingleApplication::QtSingleApplication PROPERTIES
|
|
||||||
IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
|
|
||||||
IMPORTED_LOCATION "${QTSINGLEAPPLICATION_LIBRARY}")
|
|
||||||
endif()
|
|
||||||
endif(NOT TARGET QtSingleApplication::QtSingleApplication)
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
#######
|
|
||||||
# Find systemd service dir
|
|
||||||
# sets variables
|
|
||||||
# SYSTEMD_FOUND
|
|
||||||
# SYSTEMD_SERVICES_INSTALL_DIR
|
|
||||||
|
|
||||||
find_package(PkgConfig QUIET REQUIRED)
|
|
||||||
|
|
||||||
if (NOT SYSTEMD_FOUND)
|
|
||||||
pkg_check_modules(SYSTEMD "systemd")
|
|
||||||
endif(NOT SYSTEMD_FOUND)
|
|
||||||
|
|
||||||
if (SYSTEMD_FOUND AND "${SYSTEMD_SERVICES_INSTALL_DIR}" STREQUAL "")
|
|
||||||
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE}
|
|
||||||
--variable=systemdsystemunitdir systemd
|
|
||||||
OUTPUT_VARIABLE SYSTEMD_SERVICES_INSTALL_DIR)
|
|
||||||
string(REGEX REPLACE "[ \t\n]+" "" SYSTEMD_SERVICES_INSTALL_DIR
|
|
||||||
"${SYSTEMD_SERVICES_INSTALL_DIR}")
|
|
||||||
elseif (NOT SYSTEMD_FOUND AND SYSTEMD_SERVICES_INSTALL_DIR)
|
|
||||||
message (FATAL_ERROR "Variable SYSTEMD_SERVICES_INSTALL_DIR is\
|
|
||||||
defined, but we can't find systemd using pkg-config")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (SYSTEMD_FOUND)
|
|
||||||
message(STATUS "systemd services install dir: ${SYSTEMD_SERVICES_INSTALL_DIR}")
|
|
||||||
endif(SYSTEMD_FOUND)
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
# function for parsing version variables that are set in version.pri file
|
|
||||||
# the version identifiers there are defined as follows:
|
|
||||||
# VER_MAJOR = 3
|
|
||||||
# VER_MINOR = 4
|
|
||||||
# VER_BUGFIX = 0
|
|
||||||
# VER_BUILD = 0
|
|
||||||
# VER_STATUS = alpha
|
|
||||||
|
|
||||||
function(read_version priFile outMajor outMinor outBugfix outBuild outStatus)
|
|
||||||
file(STRINGS ${priFile} _priFileContents REGEX "^VER_.+")
|
|
||||||
# message(STATUS "version.pri version contents: ${_priFileContents}")
|
|
||||||
# the _priFileContents variable contains something like the following:
|
|
||||||
# VER_MAJOR = 3;VER_MINOR = 4;VER_BUGFIX = 0;VER_BUILD = 0;VER_STATUS = alpha # Should be empty for stable releases!
|
|
||||||
set(_regex "VER_MAJOR += +([0-9]+);VER_MINOR += +([0-9]+);VER_BUGFIX += +([0-9]+);VER_BUILD += +([0-9]+);VER_STATUS += +([0-9A-Za-z]+)?")
|
|
||||||
# note quotes around _regex, they are needed because the variable contains semicolons
|
|
||||||
string(REGEX MATCH "${_regex}" _tmp "${_priFileContents}")
|
|
||||||
if (NOT _tmp)
|
|
||||||
message(FATAL_ERROR "Could not detect project version number from ${priFile}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# message(STATUS "Matched version string: ${_tmp}")
|
|
||||||
|
|
||||||
set(${outMajor} ${CMAKE_MATCH_1} PARENT_SCOPE)
|
|
||||||
set(${outMinor} ${CMAKE_MATCH_2} PARENT_SCOPE)
|
|
||||||
set(${outBugfix} ${CMAKE_MATCH_3} PARENT_SCOPE)
|
|
||||||
set(${outBuild} ${CMAKE_MATCH_4} PARENT_SCOPE)
|
|
||||||
set(${outStatus} ${CMAKE_MATCH_5} PARENT_SCOPE)
|
|
||||||
endfunction()
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
macro(configure_msvc_runtime)
|
|
||||||
if(MSVC)
|
|
||||||
# Default to statically-linked runtime.
|
|
||||||
if("${MSVC_RUNTIME}" STREQUAL "")
|
|
||||||
set(MSVC_RUNTIME "static")
|
|
||||||
endif()
|
|
||||||
# Set compiler options.
|
|
||||||
set(variables
|
|
||||||
CMAKE_C_FLAGS_DEBUG
|
|
||||||
CMAKE_C_FLAGS_MINSIZEREL
|
|
||||||
CMAKE_C_FLAGS_RELEASE
|
|
||||||
CMAKE_C_FLAGS_RELWITHDEBINFO
|
|
||||||
CMAKE_CXX_FLAGS_DEBUG
|
|
||||||
CMAKE_CXX_FLAGS_MINSIZEREL
|
|
||||||
CMAKE_CXX_FLAGS_RELEASE
|
|
||||||
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
|
||||||
)
|
|
||||||
if(${MSVC_RUNTIME} STREQUAL "static")
|
|
||||||
message(STATUS
|
|
||||||
"MSVC -> forcing use of statically-linked runtime."
|
|
||||||
)
|
|
||||||
foreach(variable ${variables})
|
|
||||||
if(${variable} MATCHES "/MD")
|
|
||||||
string(REGEX REPLACE "/MD" "/MT" ${variable} "${${variable}}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
else()
|
|
||||||
message(STATUS
|
|
||||||
"MSVC -> forcing use of dynamically-linked runtime."
|
|
||||||
)
|
|
||||||
foreach(variable ${variables})
|
|
||||||
if(${variable} MATCHES "/MT")
|
|
||||||
string(REGEX REPLACE "/MT" "/MD" ${variable} "${${variable}}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
###############################################################
|
|
||||||
#
|
|
||||||
# Copyright 2011 Red Hat, Inc.
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
|
||||||
# may not use this file except in compliance with the License. You may
|
|
||||||
# obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
#
|
|
||||||
###############################################################
|
|
||||||
|
|
||||||
MACRO (GLIBC_DETECT _VERSION)
|
|
||||||
|
|
||||||
# there are multiple ways to detect glibc, but given nmi's
|
|
||||||
# cons'd up paths I will trust only gcc. I guess I could also use
|
|
||||||
# ldd --version to detect.
|
|
||||||
|
|
||||||
set(_GLIB_SOURCE_DETECT "
|
|
||||||
#include <limits.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
printf(\"%d%d\",__GLIBC__, __GLIBC_MINOR__);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
")
|
|
||||||
|
|
||||||
file (WRITE ${CMAKE_CURRENT_BINARY_DIR}/build/cmake/glibc.cpp "${_GLIB_SOURCE_DETECT}\n")
|
|
||||||
|
|
||||||
try_run(POST26_GLIBC_DETECTED
|
|
||||||
POST26_GLIBC_COMPILE
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/build/cmake
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/build/cmake/glibc.cpp
|
|
||||||
RUN_OUTPUT_VARIABLE GLIBC_VERSION )
|
|
||||||
|
|
||||||
if (GLIBC_VERSION AND POST26_GLIBC_COMPILE )
|
|
||||||
set(${_VERSION} ${GLIBC_VERSION})
|
|
||||||
else()
|
|
||||||
message(STATUS "NOTE: Could not detect GLIBC_VERSION from compiler")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
ENDMACRO (GLIBC_DETECT)
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
# - macro similar to target_link_libraries, which links Qt components
|
|
||||||
# names of the components are pased in Qt4/Qt5 agnostic way (Core, DBus, Xml...)
|
|
||||||
# and the macro links Qt4 ones if QT4_FOUND is set or Qt5 ones if not
|
|
||||||
|
|
||||||
macro (target_link_qt_components target)
|
|
||||||
if (QT4_FOUND)
|
|
||||||
foreach(_cmp ${ARGN})
|
|
||||||
if ("${_cmp}" STREQUAL "PRIVATE" OR
|
|
||||||
"${_cmp}" STREQUAL "PUBLIC" OR
|
|
||||||
"${_cmp}" STREQUAL "INTERFACE")
|
|
||||||
list(APPEND _QT_CMPNTS "${_cmp}")
|
|
||||||
else()
|
|
||||||
list(APPEND _QT_CMPNTS "Qt4::Qt${_cmp}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
else (QT4_FOUND)
|
|
||||||
foreach(_cmp ${ARGN})
|
|
||||||
if ("${_cmp}" STREQUAL "PRIVATE" OR
|
|
||||||
"${_cmp}" STREQUAL "PUBLIC" OR
|
|
||||||
"${_cmp}" STREQUAL "INTERFACE")
|
|
||||||
list(APPEND _QT_CMPNTS "${_cmp}")
|
|
||||||
else()
|
|
||||||
list(APPEND _QT_CMPNTS "Qt5::${_cmp}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif (QT4_FOUND)
|
|
||||||
target_link_libraries(${target} ${_QT_CMPNTS})
|
|
||||||
endmacro()
|
|
||||||
@@ -1,89 +0,0 @@
|
|||||||
# Sets cache variable QBT_ADDITONAL_FLAGS and QBT_ADDITONAL_CXX_FLAGS to list of additional
|
|
||||||
# compiler flags for C and C++ (QBT_ADDITONAL_FLAGS) and for C++ only (QBT_ADDITONAL_CXX_FLAGS)
|
|
||||||
# and appends them to CMAKE_XXX_FLAGS variables.
|
|
||||||
|
|
||||||
# It could use add_compile_options(), but then it is needed to use generator expressions,
|
|
||||||
# and most interesting of them are not compatible with Visual Studio :(
|
|
||||||
|
|
||||||
macro(qbt_set_compiler_options)
|
|
||||||
# if (NOT QBT_ADDITONAL_FLAGS)
|
|
||||||
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
|
||||||
#-Wshadow -Wconversion ?
|
|
||||||
set(_GCC_COMMON_C_AND_CXX_FLAGS "-Wall -Wextra"
|
|
||||||
"-Wfloat-equal -Wcast-qual -Wcast-align"
|
|
||||||
"-Wsign-conversion -Winvalid-pch -Werror=return-type -Wno-long-long"
|
|
||||||
# -fstack-protector-all
|
|
||||||
"-Werror -Wno-error=deprecated-declarations"
|
|
||||||
)
|
|
||||||
set (_GCC_COMMON_CXX_FLAGS "-fexceptions -frtti"
|
|
||||||
"-Woverloaded-virtual -Wold-style-cast -Wstrict-null-sentinel"
|
|
||||||
"-Wnon-virtual-dtor -Wfloat-equal -Wcast-qual -Wcast-align"
|
|
||||||
"-Werror=overloaded-virtual"
|
|
||||||
# "-Weffc++"
|
|
||||||
"-Werror -Wno-error=cpp"
|
|
||||||
# we should modify code to make these ones obsolete
|
|
||||||
"-Wno-error=old-style-cast -Wno-error=sign-conversion -Wno-error=float-equal"
|
|
||||||
)
|
|
||||||
|
|
||||||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.9)
|
|
||||||
# GCC 4.8 has problems with std::array and its initialization
|
|
||||||
list(APPEND _GCC_COMMON_CXX_FLAGS "-Wno-error=missing-field-initializers")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(CheckCXXCompilerFlag)
|
|
||||||
# check for -pedantic
|
|
||||||
check_cxx_compiler_flag(-pedantic _PEDANTIC_IS_SUPPORTED)
|
|
||||||
if (_PEDANTIC_IS_SUPPORTED)
|
|
||||||
list(APPEND _GCC_COMMON_CXX_FLAGS "-pedantic -pedantic-errors")
|
|
||||||
else (_PEDANTIC_IS_SUPPORTED)
|
|
||||||
list(APPEND _GCC_COMMON_CXX_FLAGS "-Wpedantic")
|
|
||||||
endif (_PEDANTIC_IS_SUPPORTED)
|
|
||||||
|
|
||||||
if (CMAKE_SYSTEM_NAME MATCHES Linux)
|
|
||||||
# if Glibc version is 2.20 or higher, set -D_DEFAULT_SOURCE
|
|
||||||
include(MacroGlibcDetect)
|
|
||||||
message(STATUS "Detecting Glibc version...")
|
|
||||||
glibc_detect(GLIBC_VERSION)
|
|
||||||
if(${GLIBC_VERSION})
|
|
||||||
if(GLIBC_VERSION LESS "220")
|
|
||||||
message(STATUS "Glibc version is ${GLIBC_VERSION}")
|
|
||||||
else(GLIBC_VERSION LESS "220")
|
|
||||||
message(STATUS "Glibc version is ${GLIBC_VERSION}, adding -D_DEFAULT_SOURCE")
|
|
||||||
add_definitions(-D_DEFAULT_SOURCE)
|
|
||||||
endif(GLIBC_VERSION LESS "220")
|
|
||||||
endif(${GLIBC_VERSION})
|
|
||||||
endif (CMAKE_SYSTEM_NAME MATCHES Linux)
|
|
||||||
|
|
||||||
string(REPLACE ";" " " _GCC_COMMON_C_AND_CXX_FLAGS_STRING "${_GCC_COMMON_C_AND_CXX_FLAGS}")
|
|
||||||
string(REPLACE ";" " " _GCC_COMMON_CXX_FLAGS_STRING "${_GCC_COMMON_CXX_FLAGS}")
|
|
||||||
|
|
||||||
string(APPEND CMAKE_C_FLAGS " ${_GCC_COMMON_C_AND_CXX_FLAGS_STRING}")
|
|
||||||
string(APPEND CMAKE_CXX_FLAGS " ${_GCC_COMMON_C_AND_CXX_FLAGS_STRING} ${_GCC_COMMON_CXX_FLAGS_STRING}")
|
|
||||||
|
|
||||||
set(QBT_ADDITONAL_FLAGS "${_GCC_COMMON_C_AND_CXX_FLAGS_STRING}" CACHE STRING
|
|
||||||
"Additional qBittorent compile flags" FORCE)
|
|
||||||
set(QBT_ADDITONAL_CXX_FLAGS "${_GCC_COMMON_CXX_FLAGS_STRING}" CACHE STRING
|
|
||||||
"Additional qBittorent C++ compile flags" FORCE)
|
|
||||||
|
|
||||||
# check whether we can enable -Og optimization for debug build
|
|
||||||
# also let's enable -march=native for debug builds
|
|
||||||
check_cxx_compiler_flag(-Og _DEBUG_OPTIMIZATION_LEVEL_IS_SUPPORTED)
|
|
||||||
|
|
||||||
if (_DEBUG_OPTIMIZATION_LEVEL_IS_SUPPORTED)
|
|
||||||
string(APPEND CMAKE_C_FLAGS_DEBUG " -Og -g3 -march=native -pipe" )
|
|
||||||
string(APPEND CMAKE_CXX_FLAGS_DEBUG " -Og -g3 -march=native -pipe" )
|
|
||||||
else(_DEBUG_OPTIMIZATION_LEVEL_IS_SUPPORTED)
|
|
||||||
string(APPEND CMAKE_C_FLAGS_DEBUG " -O0 -g3 -march=native -pipe" )
|
|
||||||
string(APPEND CMAKE_CXX_FLAGS_DEBUG " -O0 -g3 -march=native -pipe" )
|
|
||||||
endif (_DEBUG_OPTIMIZATION_LEVEL_IS_SUPPORTED)
|
|
||||||
endif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
|
||||||
|
|
||||||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
|
|
||||||
set(QBT_ADDITONAL_FLAGS "-wd4290 -wd4275 -wd4251 /W4" CACHE STRING "Additional qBittorent compile flags")
|
|
||||||
string(APPEND CMAKE_C_FLAGS " ${QBT_ADDITONAL_FLAGS}")
|
|
||||||
string(APPEND CMAKE_CXX_FLAGS " ${QBT_ADDITONAL_FLAGS}")
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
# endif (NOT QBT_ADDITONAL_FLAGS)
|
|
||||||
endmacro(qbt_set_compiler_options)
|
|
||||||
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
# a helper function which appends source to the main qBt target
|
|
||||||
# the target name is read from QBT_TARGET_NAME variable
|
|
||||||
# sources file names are relative to the the ${qbt_executable_SOURCE_DIR}
|
|
||||||
|
|
||||||
function (qbt_target_sources)
|
|
||||||
set (_sources_rel "")
|
|
||||||
foreach (_source IN ITEMS ${ARGN})
|
|
||||||
if (IS_ABSOLUTE "${_source}")
|
|
||||||
set(source_abs "${_source}")
|
|
||||||
else()
|
|
||||||
get_filename_component(_source_abs "${_source}" ABSOLUTE)
|
|
||||||
endif()
|
|
||||||
file (RELATIVE_PATH _source_rel "${qbt_executable_SOURCE_DIR}" "${_source_abs}")
|
|
||||||
list (APPEND _sources_rel "${_source_rel}")
|
|
||||||
endforeach()
|
|
||||||
target_sources (${QBT_TARGET_NAME} PRIVATE "${_sources_rel}")
|
|
||||||
endfunction (qbt_target_sources)
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
if (STACKTRACE_WIN)
|
|
||||||
if ("${WINXXBITS}" NOT STREQUAL "Win64")
|
|
||||||
add_compile_options(-fno-omit-frame-pointer)
|
|
||||||
endif ("${WINXXBITS}" NOT STREQUAL "Win64")
|
|
||||||
link_libraries(libdbghelp -Wl,--export-all-symbols)
|
|
||||||
endif (STACKTRACE_WIN)
|
|
||||||
|
|
||||||
if (("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") OR ("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo"))
|
|
||||||
link_libraries(-Wl,--dynamicbase)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# LIBS += libadvapi32 libshell32 libuser32
|
|
||||||
# LIBS += libcrypto.dll libssl.dll libwsock32 libws2_32 libz libiconv.dll
|
|
||||||
# LIBS += libpowrprof
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user