You've already forked qBittorrent
mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-11-02 08:10:54 +01:00
Compare commits
262 Commits
v4_0_x
...
release-3.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0795320086 | ||
|
|
bd6877a0bd | ||
|
|
b47292c39f | ||
|
|
3d2b1b876b | ||
|
|
843472e663 | ||
|
|
e952e3167e | ||
|
|
67f05edf71 | ||
|
|
3ab76cb985 | ||
|
|
509d97b0ad | ||
|
|
67ae08df3c | ||
|
|
38de6b1e41 | ||
|
|
72b179805d | ||
|
|
beeda5e0b2 | ||
|
|
356db2f2f7 | ||
|
|
19acbf587f | ||
|
|
5eee3f7357 | ||
|
|
8f990d5d7e | ||
|
|
f0ec94c31c | ||
|
|
e37dfa96f9 | ||
|
|
4b48db3273 | ||
|
|
545002a809 | ||
|
|
e2e9470e10 | ||
|
|
0bf1abba6a | ||
|
|
24165856e9 | ||
|
|
657f0640b9 | ||
|
|
faffefc4ff | ||
|
|
0619aacf1f | ||
|
|
9edbbb6473 | ||
|
|
87ee720c0c | ||
|
|
b7ca036bc3 | ||
|
|
c4442c98b9 | ||
|
|
fee8036a7a | ||
|
|
94bd4308c7 | ||
|
|
5e5785435a | ||
|
|
d7f02a7ee7 | ||
|
|
e6480f9dff | ||
|
|
e9f6cfc2e8 | ||
|
|
4f68d263d4 | ||
|
|
6a672472a2 | ||
|
|
3590ac2997 | ||
|
|
98fe5e11dd | ||
|
|
9df5c0292b | ||
|
|
1f2d25a1ff | ||
|
|
f1dd7a091c | ||
|
|
5457bde8d0 | ||
|
|
2e325d9506 | ||
|
|
0264a7bf58 | ||
|
|
32fe930b88 | ||
|
|
72883ffb73 | ||
|
|
f2c24dd8c3 | ||
|
|
8904139c6d | ||
|
|
571f46886f | ||
|
|
0cd691e167 | ||
|
|
4f65e2d468 | ||
|
|
35981f6ef5 | ||
|
|
dc493880f3 | ||
|
|
872e78ca21 | ||
|
|
7b601796d7 | ||
|
|
09ef552aea | ||
|
|
b4c9cae0d1 | ||
|
|
6d2a0ae83b | ||
|
|
238a925000 | ||
|
|
cce01cfb8e | ||
|
|
b2db1972f3 | ||
|
|
8b851fe2b9 | ||
|
|
e3c9488fb0 | ||
|
|
c27fb110f8 | ||
|
|
ec61f24099 | ||
|
|
130ee5a71e | ||
|
|
cb3e7e6bd6 | ||
|
|
7fd65d5428 | ||
|
|
442f521bf5 | ||
|
|
016052aea1 | ||
|
|
411982e2b0 | ||
|
|
4b93ccd4e4 | ||
|
|
6603a8947a | ||
|
|
031e354577 | ||
|
|
ec7fb331e0 | ||
|
|
a232b77104 | ||
|
|
8c11245469 | ||
|
|
60857d3b8e | ||
|
|
2fe6b76968 | ||
|
|
6c7350fce0 | ||
|
|
c770f4d0bc | ||
|
|
876e96911f | ||
|
|
5620fd120e | ||
|
|
ea7f6046b4 | ||
|
|
fddac5d679 | ||
|
|
2c4bc68af1 | ||
|
|
7676f49612 | ||
|
|
e879279019 | ||
|
|
84b7680718 | ||
|
|
be180140a3 | ||
|
|
c051c279d4 | ||
|
|
964dcc4d8a | ||
|
|
64cf93b889 | ||
|
|
365737afe1 | ||
|
|
2cf14f0120 | ||
|
|
46bb25ba9f | ||
|
|
ee5a72c570 | ||
|
|
18b56f4d0a | ||
|
|
f626276218 | ||
|
|
e28554f85c | ||
|
|
a0a3447b2e | ||
|
|
4049ca7308 | ||
|
|
c28151ba92 | ||
|
|
81e1a050a2 | ||
|
|
34d5824c4a | ||
|
|
bb875df400 | ||
|
|
61f47d366a | ||
|
|
8347eb157d | ||
|
|
dd22c9b138 | ||
|
|
7f6ad55042 | ||
|
|
55b06ab9ba | ||
|
|
21f0a5eb76 | ||
|
|
16ed11623f | ||
|
|
c184cf8d7d | ||
|
|
6a90214eb2 | ||
|
|
226ec0610a | ||
|
|
694bd7cb95 | ||
|
|
9e807e7151 | ||
|
|
78fe7fcf9d | ||
|
|
c2465f931e | ||
|
|
8d50325961 | ||
|
|
570a651a59 | ||
|
|
0eaa2aeef2 | ||
|
|
2c7e309493 | ||
|
|
ded3cf5798 | ||
|
|
4edac3e974 | ||
|
|
53885fb5e4 | ||
|
|
3942c095f6 | ||
|
|
94be3b930d | ||
|
|
09bc14cc57 | ||
|
|
51b93b4284 | ||
|
|
9c50ea14cb | ||
|
|
42a74ea78e | ||
|
|
1ac68a9192 | ||
|
|
29b5d460ea | ||
|
|
a441bca4de | ||
|
|
e2da3f2ebd | ||
|
|
f235d412f8 | ||
|
|
60b103b062 | ||
|
|
0fdb23098b | ||
|
|
51c296ac69 | ||
|
|
a120842ba2 | ||
|
|
8911de9349 | ||
|
|
013a1b8403 | ||
|
|
1492a24391 | ||
|
|
bf1559320b | ||
|
|
d5648a67ae | ||
|
|
a6ec82682d | ||
|
|
bd359ad498 | ||
|
|
458f48b290 | ||
|
|
a0ae21148a | ||
|
|
5dc9b5c2dd | ||
|
|
48175bbb85 | ||
|
|
3b03bb286e | ||
|
|
23fdf3a0bc | ||
|
|
4cf7618c52 | ||
|
|
6fd9413dae | ||
|
|
120d073a04 | ||
|
|
8fa2adb6fc | ||
|
|
70105d5834 | ||
|
|
05961faf42 | ||
|
|
386706f05b | ||
|
|
1813e96a42 | ||
|
|
eaf6e47391 | ||
|
|
8ba82064cd | ||
|
|
5d5a0de694 | ||
|
|
145180c2a1 | ||
|
|
50881b9972 | ||
|
|
a115932bc1 | ||
|
|
c7fd0fbe45 | ||
|
|
d513d002cc | ||
|
|
a570bd5e2c | ||
|
|
bdacfd540c | ||
|
|
c89b9edf27 | ||
|
|
0fdf788624 | ||
|
|
f0ae30070b | ||
|
|
8fb8f4b467 | ||
|
|
c3a2e50191 | ||
|
|
b045b5ebf7 | ||
|
|
6436152c75 | ||
|
|
9c3ae53330 | ||
|
|
acd5fcfb00 | ||
|
|
9a6f8ab402 | ||
|
|
0f854014af | ||
|
|
a11175afba | ||
|
|
c5776c3bf1 | ||
|
|
19d566253f | ||
|
|
0d59d6a03e | ||
|
|
c7b2ee367f | ||
|
|
510ec029ea | ||
|
|
1f2daed9d6 | ||
|
|
08b854ce74 | ||
|
|
6b34803c59 | ||
|
|
fca224b9d0 | ||
|
|
4f5009351f | ||
|
|
c1f77d45ab | ||
|
|
60f0447603 | ||
|
|
6ae208a661 | ||
|
|
781c8034a5 | ||
|
|
4cf8359257 | ||
|
|
3ed4de3043 | ||
|
|
a374b99ba2 | ||
|
|
601734a59b | ||
|
|
69cc97c3dd | ||
|
|
226f74a866 | ||
|
|
cf35392cd2 | ||
|
|
27319e9e64 | ||
|
|
69b8544e26 | ||
|
|
41e5dc8911 | ||
|
|
ba1ffa4e54 | ||
|
|
4edc073373 | ||
|
|
1f00d2e5d7 | ||
|
|
d87e42ba00 | ||
|
|
975b1d5257 | ||
|
|
5f84363afb | ||
|
|
545c526e2f | ||
|
|
06fcc57619 | ||
|
|
06c6a444c9 | ||
|
|
8474d0d199 | ||
|
|
0f4610c127 | ||
|
|
d753988729 | ||
|
|
a6b948077a | ||
|
|
3276cc4987 | ||
|
|
71557fe784 | ||
|
|
29fc5bc80d | ||
|
|
db07551e4c | ||
|
|
8f6eb795e3 | ||
|
|
0a37799e6e | ||
|
|
76d6d9a4f9 | ||
|
|
0c8abd0abb | ||
|
|
ddc8420810 | ||
|
|
a4ff039abc | ||
|
|
c8be062e19 | ||
|
|
29443a2c10 | ||
|
|
e402556e91 | ||
|
|
4ed4ebcdb7 | ||
|
|
a280467270 | ||
|
|
9b1090332b | ||
|
|
18a520c9f9 | ||
|
|
af871ef8af | ||
|
|
3af7eb8e03 | ||
|
|
3439300cda | ||
|
|
a8027565c9 | ||
|
|
3d4e1a8127 | ||
|
|
7b6a1a1955 | ||
|
|
3f8dc60680 | ||
|
|
9be449dd7f | ||
|
|
c46f2ba097 | ||
|
|
c2c441ed08 | ||
|
|
c1e52fa1cd | ||
|
|
fbed5dc606 | ||
|
|
97978068c6 | ||
|
|
006e34880a | ||
|
|
1fd5c5d8b5 | ||
|
|
68ac9fda2d | ||
|
|
c5d807ef65 | ||
|
|
e17f10ae6b | ||
|
|
78c5d1c12f | ||
|
|
26fb54299b |
@@ -1,12 +0,0 @@
|
|||||||
# EditorConfig is awesome: http://EditorConfig.org
|
|
||||||
|
|
||||||
root = true
|
|
||||||
|
|
||||||
[*]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 4
|
|
||||||
insert_final_newline = true
|
|
||||||
trim_trailing_whitespace = true
|
|
||||||
|
|
||||||
[**.yml]
|
|
||||||
indent_size = 2
|
|
||||||
20
.github/ISSUE_TEMPLATE.md
vendored
20
.github/ISSUE_TEMPLATE.md
vendored
@@ -1,20 +0,0 @@
|
|||||||
**Please provide the following information**
|
|
||||||
|
|
||||||
### qBittorrent version and Operating System
|
|
||||||
(type here)
|
|
||||||
|
|
||||||
### If on linux, libtorrent and Qt version
|
|
||||||
(type here)
|
|
||||||
|
|
||||||
### What is the problem
|
|
||||||
(type here)
|
|
||||||
|
|
||||||
### What is the expected behavior
|
|
||||||
(type here)
|
|
||||||
|
|
||||||
### Steps to reproduce
|
|
||||||
(type here)
|
|
||||||
|
|
||||||
### Extra info(if any)
|
|
||||||
(type here)
|
|
||||||
|
|
||||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -17,7 +17,6 @@ Makefile*
|
|||||||
|
|
||||||
# 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
|
||||||
@@ -31,6 +30,3 @@ src/qbittorrent.app
|
|||||||
aclocal.m4
|
aclocal.m4
|
||||||
autom4te.cache/*
|
autom4te.cache/*
|
||||||
config.status
|
config.status
|
||||||
src/icons/qbt-theme/build-icons/node_modules/
|
|
||||||
src/icons/skin/build-icons/node_modules/
|
|
||||||
src/icons/skin/build-icons/icons/*.png
|
|
||||||
|
|||||||
185
.travis.yml
185
.travis.yml
@@ -3,26 +3,21 @@ language: cpp
|
|||||||
os:
|
os:
|
||||||
- linux
|
- linux
|
||||||
- osx
|
- osx
|
||||||
osx_image: xcode7.3
|
osx_image: xcode7
|
||||||
|
|
||||||
env:
|
env:
|
||||||
matrix:
|
matrix:
|
||||||
# Uncomment when Travis upgraded "Ubuntu 12.04 LTS" to a newer version whose repo will have a more up-to-date libtorrent package
|
# Uncomment when Travis upgraded "Ubuntu 12.04 LTS" to a newer version whose repo will have a more up-to-date libtorrent package
|
||||||
#- lt_branch=dist gui=true
|
#- lt_branch=dist gui=true
|
||||||
#- lt_branch=dist gui=false
|
#- lt_branch=dist gui=false
|
||||||
- lt_branch=RC_1_0 gui=true build_system=cmake
|
- lt_branch=RC_1_0 qt=5 gui=true
|
||||||
- lt_branch=RC_1_0 gui=false build_system=cmake
|
- lt_branch=RC_1_0 qt=5 gui=false
|
||||||
- lt_branch=RC_1_0 gui=true build_system=qmake
|
- lt_branch=RC_1_0 qt=4 gui=true
|
||||||
- lt_branch=RC_1_0 gui=false build_system=qmake
|
- lt_branch=RC_1_0 qt=4 gui=false
|
||||||
global:
|
global:
|
||||||
- secure: "OI9CUjj4lTb0HwwIZU5PbECU3hLlAL6KC8KsbwohG8/O3j5fLcnmDsK4Ad9us5cC39sS11Jcd1kDP2qRcCuST/glVNhLkcjKkiQerOfd5nQ/qL4JYfz/1mfP5mdpz9jHKzpLUIG+TXkbSTjP6VVmsb5KPT+3pKEdRFZB+Pu9+J8="
|
- secure: "OI9CUjj4lTb0HwwIZU5PbECU3hLlAL6KC8KsbwohG8/O3j5fLcnmDsK4Ad9us5cC39sS11Jcd1kDP2qRcCuST/glVNhLkcjKkiQerOfd5nQ/qL4JYfz/1mfP5mdpz9jHKzpLUIG+TXkbSTjP6VVmsb5KPT+3pKEdRFZB+Pu9+J8="
|
||||||
- coverity_branch: coverity_scan
|
- coverity_branch: coverity_scan
|
||||||
|
|
||||||
matrix:
|
|
||||||
allow_failures:
|
|
||||||
- env: lt_branch=RC_1_0 gui=true build_system=cmake
|
|
||||||
- env: lt_branch=RC_1_0 gui=false build_system=cmake
|
|
||||||
|
|
||||||
branches:
|
branches:
|
||||||
except:
|
except:
|
||||||
- search_encoding_windows
|
- search_encoding_windows
|
||||||
@@ -33,15 +28,16 @@ notifications:
|
|||||||
on_success: change
|
on_success: change
|
||||||
on_failure: change
|
on_failure: change
|
||||||
|
|
||||||
cache:
|
# container-based builds
|
||||||
ccache: true
|
#sudo: false
|
||||||
directories:
|
# TODO: osx builder does not enable cache yet, see: https://github.com/travis-ci/travis-ci/issues/4011
|
||||||
- $HOME/hombebrew_cache
|
#cache:
|
||||||
|
#directories:
|
||||||
|
#- $HOME/.ccache
|
||||||
|
|
||||||
# opt-in Ubuntu Trusty
|
# opt-in Ubuntu Trusty
|
||||||
|
sudo: required
|
||||||
dist: trusty
|
dist: trusty
|
||||||
# container-based builds
|
|
||||||
sudo: false
|
|
||||||
|
|
||||||
addons:
|
addons:
|
||||||
coverity_scan:
|
coverity_scan:
|
||||||
@@ -53,150 +49,95 @@ addons:
|
|||||||
branch_pattern: $coverity_branch
|
branch_pattern: $coverity_branch
|
||||||
notification_email: sledgehammer999@qbittorrent.org
|
notification_email: sledgehammer999@qbittorrent.org
|
||||||
apt:
|
apt:
|
||||||
sources:
|
#sources:
|
||||||
# sources list: https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json
|
# sources list: https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json
|
||||||
- ubuntu-toolchain-r-test
|
#- ubuntu-toolchain-r-test
|
||||||
#- boost-latest
|
#- boost-latest
|
||||||
- sourceline: 'ppa:qbittorrent-team/qbittorrent-stable'
|
|
||||||
- sourceline: 'ppa:beineri/opt-qt551-trusty'
|
|
||||||
- sourceline: 'ppa:adrozdoff/cmake'
|
|
||||||
packages:
|
packages:
|
||||||
# packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise
|
# packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise
|
||||||
- [autoconf, automake, colormake]
|
- autoconf
|
||||||
- [cmake, ninja-build]
|
- automake
|
||||||
- libssl-dev
|
- colormake
|
||||||
- [libboost-dev, libboost-system-dev]
|
- libssl-dev
|
||||||
- libtorrent-rasterbar-dev
|
- libboost-dev
|
||||||
- [qt55base, qt55svg, qt55tools]
|
- libboost-system-dev
|
||||||
- [gcc-6, g++-6]
|
# uncomment when Travis upgraded "Ubuntu 12.04 LTS" to a newer version whose repo will have a more up-to-date libtorrent package
|
||||||
|
#- libtorrent-rasterbar6
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
# only allow specific build for coverity scan, others will stop
|
# 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 -a "$build_system" = "qmake" ]; then exit ; fi
|
- 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 make="colormake -j3" # Using nprocs/2 sometimes may fail (gcc is killed by system)
|
||||||
|
#- libt_path="$HOME/libt_install"
|
||||||
|
#- ltconf="$ltconf --prefix="$libt_path" --disable-geoip"
|
||||||
- qbt_path="$HOME/qbt_install"
|
- qbt_path="$HOME/qbt_install"
|
||||||
- |
|
- qbtconf="$qbtconf --prefix="$qbt_path" PKG_CONFIG_PATH="$libt_path/lib/pkgconfig":$PKG_CONFIG_PATH"
|
||||||
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
|
||||||
qbtconf="$qbtconf --prefix="$qbt_path" PKG_CONFIG_PATH=/opt/qt55/lib/pkgconfig:$PKG_CONFIG_PATH"
|
|
||||||
else
|
|
||||||
qbtconf="$qbtconf --prefix="$qbt_path""
|
|
||||||
fi
|
|
||||||
|
|
||||||
# options for specific branches
|
# options for specific branches
|
||||||
|
- if [ "$qt" = 4 ]; then qbtconf="$qbtconf --with-qt4" ; fi
|
||||||
- if [ "$gui" = false ]; then qbtconf="$qbtconf --disable-gui" ; fi
|
- if [ "$gui" = false ]; then qbtconf="$qbtconf --disable-gui" ; fi
|
||||||
- |
|
- |
|
||||||
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||||
|
# ccache
|
||||||
|
#if [ "$TRAVIS_BRANCH" != "$coverity_branch" ]; then
|
||||||
|
#dpkg-query -L ccache && export PATH="/usr/lib/ccache/:$PATH" && export use_ccache=true ;
|
||||||
|
#ccache -V && ccache --show-stats && ccache --zero-stats ;
|
||||||
|
#fi ;
|
||||||
|
|
||||||
# setup virtual display for after_success target
|
# 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 ;
|
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 ;
|
||||||
|
fi
|
||||||
# Qt 5
|
- |
|
||||||
PATH=/opt/qt55/bin:${PATH}
|
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
||||||
|
qbtconf="$qbtconf --disable-qt-dbus" ;
|
||||||
if [ "$build_system" = "cmake" ]; then
|
|
||||||
COMPILER_VERSION=6
|
|
||||||
export CXX="${CXX}-${COMPILER_VERSION}" CC="${CC}-${COMPILER_VERSION}"
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# print settings
|
# print settings
|
||||||
- echo $lt_branch
|
- echo $lt_branch
|
||||||
- echo $gui
|
- echo $gui
|
||||||
- echo $build_system
|
|
||||||
- echo $ltconf
|
- echo $ltconf
|
||||||
- echo $qbtconf
|
- echo $qbtconf
|
||||||
|
|
||||||
install:
|
install:
|
||||||
#- |
|
- |
|
||||||
#if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||||
|
# libtorrent
|
||||||
|
sudo add-apt-repository --yes ppa:qbittorrent-team/qbittorrent-stable ;
|
||||||
|
sudo apt-get update -qq ;
|
||||||
|
sudo apt-get install -qq libtorrent-rasterbar-dev ;
|
||||||
|
|
||||||
# build libtorrent from source
|
# build libtorrent from source
|
||||||
#if [ "$lt_branch" != "dist" ]; then
|
#if [ "$lt_branch" != "dist" ]; then
|
||||||
#cd "$HOME" && pwd && git clone --depth 1 https://github.com/arvidn/libtorrent.git --branch $lt_branch
|
#cd "$HOME" && pwd && git clone --depth 1 https://github.com/arvidn/libtorrent.git --branch $lt_branch ;
|
||||||
#cd libtorrent && ./autotool.sh && ./configure $ltconf && make install
|
#cd libtorrent && ./autotool.sh && ./configure $ltconf && make install ;
|
||||||
#fi
|
#fi ;
|
||||||
#fi
|
|
||||||
|
# Qt
|
||||||
|
if [ "$qt" = 4 ]; then sudo apt-get -qq install qt4-default libqt4-dev ; fi ;
|
||||||
|
if [ "$qt" = 5 ]; then sudo apt-get -qq install qt5-default qtbase5-dev qttools5-dev-tools ; fi ;
|
||||||
|
fi
|
||||||
- |
|
- |
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
||||||
# dependencies
|
# dependencies
|
||||||
brew update > /dev/null
|
brew update > /dev/null && brew install colormake libtorrent-rasterbar ;
|
||||||
brew outdated "pkg-config" || brew upgrade "pkg-config"
|
|
||||||
brew install colormake ccache zlib qt
|
|
||||||
PATH="/usr/local/opt/ccache/libexec:$PATH"
|
|
||||||
brew link --force zlib qt
|
|
||||||
|
|
||||||
wget https://builds.shiki.hu/homebrew/version
|
# Qt
|
||||||
if ! cmp --quiet "version" "$HOME/hombebrew_cache/version" ; then
|
if [ "$qt" = 4 ]; then brew install qt ; fi ;
|
||||||
echo "Cached files are different from server. Downloading new ones."
|
if [ "$qt" = 5 ]; then brew install qt5 && brew link --force qt5 ; fi ;
|
||||||
# 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.1.6+git20180101.b45acf28a5+patched-configure.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.1.6+git20180101.b45acf28a5+patched-configure.el_capitan.bottle.tar.gz" "$(brew --cache)"
|
|
||||||
brew install "$HOME/hombebrew_cache/libtorrent-rasterbar.rb"
|
|
||||||
|
|
||||||
if [ "$build_system" = "cmake" ]; then
|
|
||||||
brew outdated cmake || brew upgrade cmake
|
|
||||||
brew install ninja
|
|
||||||
|
|
||||||
ln -s /usr/local/opt/qt/mkspecs /usr/local/mkspecs
|
|
||||||
ln -s /usr/local/opt/qt/plugins /usr/local/plugins
|
|
||||||
fi
|
|
||||||
|
|
||||||
MY_CMAKE_OPENSSL_HINT="-DOPENSSL_ROOT_DIR=/usr/local/opt/openssl/"
|
|
||||||
fi
|
|
||||||
- |
|
|
||||||
if [ "$TRAVIS_BRANCH" != "$coverity_branch" ]; then
|
|
||||||
export use_ccache=true
|
|
||||||
ccache -V && ccache --show-stats && ccache --zero-stats
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- if [ "$TRAVIS_BRANCH" = "$coverity_branch" ]; then exit ; fi # skip usual build when running coverity scan
|
- if [ "$TRAVIS_BRANCH" = "$coverity_branch" ]; then exit ; fi # skip usual build when running coverity scan
|
||||||
- |
|
- cd "$TRAVIS_BUILD_DIR" && ./bootstrap.sh && ./configure $qbtconf
|
||||||
cd "$TRAVIS_BUILD_DIR"
|
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then sed -i "" -e 's/^\(CXXFLAGS.*\)$/\1 -Wno-unused-local-typedefs/' src/Makefile ; fi
|
||||||
if [ "$build_system" = "cmake" ]; then
|
- make && make install
|
||||||
mkdir build
|
|
||||||
cd build
|
|
||||||
cmake -DGUI=${gui} -DCMAKE_INSTALL_PREFIX="$qbt_path" "$MY_CMAKE_OPENSSL_HINT" \
|
|
||||||
-G "Ninja" -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE ..
|
|
||||||
BUILD_TOOL="ninja"
|
|
||||||
fi
|
|
||||||
if [ "$build_system" = "qmake" ]; then
|
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
|
||||||
# For some reason for RC_1_1 we need to also specify the OpenSSL compiler/linker flags
|
|
||||||
# Homebrew doesn't symlink OpenSSL for security reasons
|
|
||||||
./bootstrap.sh && ./configure $qbtconf CXXFLAGS="$(PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig:$PKG_CONFIG_PATH" pkg-config --cflags openssl)" LDFLAGS="$(PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig:$PKG_CONFIG_PATH" pkg-config --libs openssl)"
|
|
||||||
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
|
|
||||||
else
|
|
||||||
./bootstrap.sh && ./configure $qbtconf
|
|
||||||
fi
|
|
||||||
BUILD_TOOL="make"
|
|
||||||
fi
|
|
||||||
- $BUILD_TOOL && $BUILD_TOOL install
|
|
||||||
|
|
||||||
after_success:
|
after_success:
|
||||||
- if [ "$gui" = true ]; then qbt_exe="qbittorrent" ; else qbt_exe="qbittorrent-nox" ; fi
|
- if [ "$gui" = true ]; then qbt_exe="qbittorrent" ; else qbt_exe="qbittorrent-nox" ; fi
|
||||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then cd "$qbt_path/bin" ; fi
|
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then cd "$qbt_path/bin" ; fi
|
||||||
- |
|
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then cd "$TRAVIS_BUILD_DIR/src/$qbt_exe.app/Contents/MacOS" ; fi
|
||||||
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
|
||||||
if [ "$build_system" = "qmake" ]; then
|
|
||||||
macdeployqt "$TRAVIS_BUILD_DIR/src/$qbt_exe.app"
|
|
||||||
cd "$TRAVIS_BUILD_DIR/src/$qbt_exe.app/Contents/MacOS"
|
|
||||||
else
|
|
||||||
cd "$qbt_path/$qbt_exe.app/Contents/MacOS"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
- ./$qbt_exe --version
|
- ./$qbt_exe --version
|
||||||
|
|
||||||
after_script:
|
after_script:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
[main]
|
[main]
|
||||||
host = https://www.transifex.com
|
host = https://www.transifex.com
|
||||||
|
|
||||||
[qbittorrent.qbittorrent_master]
|
[qbittorrent.qbittorrent_v3_3_x]
|
||||||
file_filter = src/lang/qbittorrent_<lang>.ts
|
file_filter = src/lang/qbittorrent_<lang>.ts
|
||||||
lang_map = pt: pt_PT
|
lang_map = pt: pt_PT
|
||||||
source_file = src/lang/qbittorrent_en.ts
|
source_file = src/lang/qbittorrent_en.ts
|
||||||
|
|||||||
53
520EC6F6.asc
Normal file
53
520EC6F6.asc
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
Version: GnuPG v2
|
||||||
|
|
||||||
|
mQINBFb4b5EBEADTUsyDNPWdujfhx4ncy52MNdkw6EI8W7kxWypHCOr0EAcr9Xaq
|
||||||
|
lGbstcu0v//f5E5Wvi7gNK7DJkgky4L1GKIufe61e9HXLI8Ekju0j1ojkgR8m4md
|
||||||
|
BhIkQNB897xItKCYCtnHm/51dKxYDtSCdJ4a9RbfKyH6YqvM8R+s4jD472mvekHm
|
||||||
|
lMeek+Tv85Thx2IR6NpUUaJZOUskhMpuhZDjLzI78ZWlnielxoGKysMke7iAekiL
|
||||||
|
2scQYRmC/IrHIgf/mmaAvwJf82a3GqYRfC49RFBXaPAAGCJzu3WWqTrmLe9yRdB4
|
||||||
|
HpQ6d8D28HpWfnLTfR9bkBHdy6/8dche4wCNbBXkvjoqMUTA7hgzPmJFW0GE8Omp
|
||||||
|
SnFEj+8WVLCkBTp1zEdiYUzD30Itn/4YnzEQdExOnQRrKo5E9vLbdom8VXWrmO7v
|
||||||
|
jXU4u8o9FDbYcMOmje2LFW1UQhP3pfMeIA/nKRfJivgz+76jtg3OU53tKKeHWHfa
|
||||||
|
z88Mn+9QmBbC6l7/d308K9wlERwsv6uMFNrD1mIRIPW3Bvzgzc/nR/IfmIhizg+C
|
||||||
|
vJvm1eAOnRTnMZAggW0dK65tclu3hL198IySvEcZ7TRdC6Wzqbzg+SgIn/JiWoKz
|
||||||
|
dVAuGn4TD0D1R9SlGoGMFQUvHZAPsPCQHjyPsGwtxiqFJSvVE10id2lwSQARAQAB
|
||||||
|
tG5zbGVkZ2VoYW1tZXI5OTkgKFVzZWQgZm9yIHNpZ25pbmcgcUJpdHRvcnJlbnQg
|
||||||
|
c291cmNlIHRhcmJhbGxzIGFuZCBiaW5hcmllcy4pIDxzbGVkZ2VoYW1tZXI5OTlA
|
||||||
|
cWJpdHRvcnJlbnQub3JnPokCNwQTAQgAIQUCVvhvkQIbAwULCQgHAgYVCAkKCwIE
|
||||||
|
FgIDAQIeAQIXgAAKCRChrMrkUg7G9vW/EAC/A9yt5F3fW4yvLz3ZGPmWUQw1ah6B
|
||||||
|
o8c8khCh9JATCTwoV+1ZAxEKMfFW8AQ52MwX34S45Fi1Ik860yD5Ea7HMg2dpq/1
|
||||||
|
sZ1dK9LHVlSXHUTZi8dVUntxryz1hR5JS7UUvGtclHrjNTB1jkbiPN2LrcURg+K7
|
||||||
|
WSJ+jaX9Wt6hzGwuAe4QqXQF1DRHK945hOe2by1VmV7IXtz4xXUIzVdbUI/fFuaV
|
||||||
|
26ImAHKLuNRHO0DxGZX6f56T+zG+tEaERiHls8w7I3HIKAjTEHQwytB10tq/IRpK
|
||||||
|
Rg1uDAutOIHe2Gm9XxOX5wwFiEGB0Dq2TxLjMZ42n/PaNk0JOvJkbmkM/NtInvOx
|
||||||
|
xk807cpIgUf6CrBgavQ1DxSKL+OqowTQ3aNT1Cg8VI8yf0hOwXU/CyRe6o55+T8M
|
||||||
|
d+FZk2eILJEeyJ1O7GdW8L7QK6vVIep/eFmuXkXE8kpnud9X84Fzh1mK7dzblWnS
|
||||||
|
2SUB6vXQhnsIgGfp1maYLYVDK08BdSh4eg6kNVcyx/6/t8PUZjO5tDNhKflyddt/
|
||||||
|
vRDxET8nULIKEct7g3X4w87klj9hxZzGz6zyv8JBdJYuwxfsZJ58M/vGZOrmdllb
|
||||||
|
T9tC5AtcvaKLDulvkLzHvIgVCyk29fzGAJNb7pqoZP4oht8StTBlo+pVqfeE7m6/
|
||||||
|
u45vAoX6l1sVlbkCDQRW+G+RARAAsR1sFdq8cUZUbYAiwP1ERdzKfhZx4qQCqUZs
|
||||||
|
D1/fka7jttqAd2rCHWPtFmy2KTZVcNeWq9+9zG3jvykpapXhZ+r2/H13NE2FrTy8
|
||||||
|
AcuQgCaXfnD6fR8cifJwSYeEDRZ6vJEuIv2Vn/ZJVkhM+M72LliNfkh/E+VIlybX
|
||||||
|
OQm1sazCUAd+EMUT6/uEitJy3n2JlDK2ctkpO06pb647nC3dgtyU0aKto8ol3da3
|
||||||
|
eWLzkoOzq9IQTHZ7x89ptVO+I8vR0itSV0Clt0Ab7AL3jwI8hZUvx5q3YmZrRrZy
|
||||||
|
fmdhG61jyvaD9eM0dPZcmoLMEv23KaLHRY1+Mwf5a8kfzRgYQLimEsWt3NljmhQd
|
||||||
|
04Fm1eTXBJ30TMSnJoIa0W1MQ36J7TFYxE44ySCL6uB2woHiqq6ydznbjtyTaHF7
|
||||||
|
Fx2K2vZhHQT+V1B22XzuwBoVYqH4Q+Zw7f9yqDd1NU7+SwcUtapqqHM+OERRvR2s
|
||||||
|
ddsttVMIC5e75MlhvRCvskm6yCxFYKnZLTIRW6W/xYfksXRwupk3TICRN9fmiDxx
|
||||||
|
uZZRMurpV365kYowHUW2uY/dQTLazKCC1/folsmMIhqumhijkK81/vYSFPk3NmXi
|
||||||
|
v6HljMCd0vmzJRdwzWgaLoFoazErmPiGkmQSup6BjJjE0CHldpvmLaGkWkbP7zWu
|
||||||
|
VeYV79EAEQEAAYkCHwQYAQgACQUCVvhvkQIbDAAKCRChrMrkUg7G9hSQD/9WcAID
|
||||||
|
FPTt/pcrVIGZ8/1EVrhuVlyC0UNKnZuCnbggr1UKs67ivhkv6lXBi4sS1VZoKUQZ
|
||||||
|
xII+VnPzQGDDYUfkwExOSkZBqN0Tm3Ly1/xgAr46V4F6vZPs8D+fpvmXaHs4CrhA
|
||||||
|
LVgWN3kYOtd5a5z0tomVLOKlh7iip0UBIx+j2CV2lqowL/OG7AXcq6iSbH4gEr7z
|
||||||
|
G4wbPnRrvSqZ5oM0nGhXgYGG8HE4jaaRG6TBdWL6YcLKZmtueSIOGQAmqNwT3Vnw
|
||||||
|
2kDfk+KNHQPTTZQ9KMUE/4c6mcoYIDDPo9POlf6ShvxipdLGKUFUz+MAkv5Oci4/
|
||||||
|
I3RMnDdgfAzsppFlQ5IN3laipTcViPu9SLIzXcf1TMi4f9x3Lqm4r9x6KcLX8uC1
|
||||||
|
ncOHqrqBnI5mm45EhJTahyFEGd+eTvsOSThdUEgkdRSln72cymh+iisdGSEMXinw
|
||||||
|
nS/6WOYnW9a6s1J90ql7P/qA3sA7RA1AHRL5tKdYVM+2OFU1asLWRbdLVmQR2dgM
|
||||||
|
3+0u3HBjkKd3/8iGcP1CfLvur9eh4FHkVYKIepz5ALBGdUQbc96p+Le4VFedvxDR
|
||||||
|
Wz/9MJI/oK6ij90b6LF2eR47oTyYRGzaeMk4WjmHCqlK/mUABng9n+U3H2OzihYy
|
||||||
|
x8m1+aYiYlKfcKWm1nKQG0hF04Axq5AYezjKvA==
|
||||||
|
=Zdwm
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
||||||
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-----
|
|
||||||
16
AUTHORS
16
AUTHORS
@@ -34,14 +34,6 @@ Code from other projects:
|
|||||||
license: GPLv2/3
|
license: GPLv2/3
|
||||||
|
|
||||||
Images Authors:
|
Images Authors:
|
||||||
* files: src/icons/skin/qbittorrent-tray.svg (and related pngs)
|
|
||||||
copyright: Provided by HVS <hvs linuxmail org> (raster first proposal) and Atif Afzal(@atfzl github) <atif5801@gmail.com> (vectorized and modified)
|
|
||||||
license: GPLv2+
|
|
||||||
|
|
||||||
* files: src/qbittorrent_file.ico src/icons/fileicon.svg
|
|
||||||
copyright: 'uknown.svg' (LGPLv3+) from Oxygen Icon Theme was used as base which was slightly modified and 'qbittorrent-tray.svg' (GPLv2+) was overlayed above it.
|
|
||||||
license: GPLv3+
|
|
||||||
|
|
||||||
* files: src/icons/*.png
|
* files: src/icons/*.png
|
||||||
copyright: Gnome Icon Theme
|
copyright: Gnome Icon Theme
|
||||||
license: GPLv2
|
license: GPLv2
|
||||||
@@ -52,10 +44,10 @@ Images Authors:
|
|||||||
license: LGPL
|
license: LGPL
|
||||||
url: http://www.oxygen-icons.org
|
url: http://www.oxygen-icons.org
|
||||||
|
|
||||||
* files: src/icons/flags/*.svg
|
* files: src/icons/flags/*.png
|
||||||
copyright: lipis/flag-icon-css
|
copyright: Mark James <mjames@gmail.com>
|
||||||
license: MIT
|
license: Public Domain
|
||||||
url: https://github.com/lipis/flag-icon-css/
|
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
|
||||||
|
|||||||
@@ -1,14 +1,15 @@
|
|||||||
cmake_minimum_required(VERSION 3.5)
|
cmake_minimum_required(VERSION 3.2)
|
||||||
cmake_policy(VERSION 3.5)
|
cmake_policy(VERSION 3.2)
|
||||||
|
|
||||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules)
|
project(qBittorrent VERSION 3.4.0.0)
|
||||||
include(FunctionReadVersion)
|
|
||||||
|
|
||||||
read_version("${CMAKE_CURRENT_SOURCE_DIR}/version.pri" VER_MAJOR VER_MINOR VER_BUGFIX VER_BUILD VER_STATUS)
|
set(VER_MAJOR ${qBittorrent_VERSION_MAJOR})
|
||||||
# message(STATUS "Project version is: ${VER_MAJOR}.${VER_MINOR}.${VER_BUGFIX}.${VER_BUILD} (${VER_STATUS})")
|
set(VER_MINOR ${qBittorrent_VERSION_MINOR})
|
||||||
|
set(VER_BUGFIX ${qBittorrent_VERSION_PATCH})
|
||||||
project(qBittorrent VERSION ${VER_MAJOR}.${VER_MINOR}.${VER_BUGFIX}.${VER_BUILD})
|
set(VER_BUILD ${qBittorrent_VERSION_TWEAK})
|
||||||
|
set(VER_STATUS "alpha") # Should be empty for stable releases!
|
||||||
|
|
||||||
|
# Don't touch the rest part
|
||||||
set(PROJECT_VERSION "${VER_MAJOR}.${VER_MINOR}.${VER_BUGFIX}")
|
set(PROJECT_VERSION "${VER_MAJOR}.${VER_MINOR}.${VER_BUGFIX}")
|
||||||
|
|
||||||
if (NOT VER_BUILD EQUAL 0)
|
if (NOT VER_BUILD EQUAL 0)
|
||||||
@@ -17,14 +18,19 @@ endif()
|
|||||||
|
|
||||||
set(PROJECT_VERSION "${PROJECT_VERSION}${VER_STATUS}")
|
set(PROJECT_VERSION "${PROJECT_VERSION}${VER_STATUS}")
|
||||||
|
|
||||||
add_definitions(-DQBT_VERSION_MAJOR=${VER_MAJOR})
|
add_definitions(-DVERSION_MAJOR=${VER_MAJOR})
|
||||||
add_definitions(-DQBT_VERSION_MINOR=${VER_MINOR})
|
add_definitions(-DVERSION_MINOR=${VER_MINOR})
|
||||||
add_definitions(-DQBT_VERSION_BUGFIX=${VER_BUGFIX})
|
add_definitions(-DVERSION_BUGFIX=${VER_BUGFIX})
|
||||||
add_definitions(-DQBT_VERSION_BUILD=${VER_BUILD})
|
add_definitions(-DVERSION_BUILD=${VER_BUILD})
|
||||||
|
|
||||||
add_definitions(-DQBT_VERSION="v${PROJECT_VERSION}")
|
# os2 {
|
||||||
add_definitions(-DQBT_VERSION_2="${PROJECT_VERSION}")
|
# DEFINES += VERSION=\'\"v$${PROJECT_VERSION}\"\'
|
||||||
|
# } else {
|
||||||
|
add_definitions(-DVERSION="v${PROJECT_VERSION}")
|
||||||
|
# }
|
||||||
|
list(APPEND CMAKE_MODULE_PATH ${qBittorrent_SOURCE_DIR}/cmake/Modules)
|
||||||
|
|
||||||
|
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Og")
|
||||||
if (UNIX AND NOT APPLE)
|
if (UNIX AND NOT APPLE)
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
endif (UNIX AND NOT APPLE)
|
endif (UNIX AND NOT APPLE)
|
||||||
@@ -36,8 +42,11 @@ endif(WIN32)
|
|||||||
# we need options here, because they are used not only in "src" subdir, but in the "dist" dir too
|
# we need options here, because they are used not only in "src" subdir, but in the "dist" dir too
|
||||||
include(CMakeDependentOption)
|
include(CMakeDependentOption)
|
||||||
|
|
||||||
|
option(QT5 "Compile using Qt5" ON)
|
||||||
option(SYSTEM_QTSINGLEAPPLICATION
|
option(SYSTEM_QTSINGLEAPPLICATION
|
||||||
"Use the system qtsingleapplication library or shipped one otherwise")
|
"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(GUI "Allows to disable GUI for headless running. Disables QtDBus and the GeoIP Database" ON)
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
# Filing an issue
|
# Filing an issue
|
||||||
|
|
||||||
### Must read
|
### 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.
|
* If you aren't sure, you can ask on the [**forum**](http://forum.qbittorrent.org) or read our [**wiki**](http://wiki.qbittorrent.org) first.
|
||||||
@@ -6,11 +6,12 @@
|
|||||||
* Write in **English**!
|
* Write in **English**!
|
||||||
* Provide **version** information: (You can find version numbers at menu `Help -> About -> Libraries`)
|
* Provide **version** information: (You can find version numbers at menu `Help -> About -> Libraries`)
|
||||||
```
|
```
|
||||||
qBittorrent:
|
qBittorrent:
|
||||||
Qt:
|
Qt:
|
||||||
libtorrent:
|
libtorrent:
|
||||||
boost:
|
boost:
|
||||||
OS version:
|
OS version:
|
||||||
|
|
||||||
```
|
```
|
||||||
* Provide **steps** to reproduce the problem, it will be easier to pinpoint the fault.
|
* 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)
|
* **Screenshots**! A screenshot is worth a thousand words. just upload it. [(How?)](https://help.github.com/articles/file-attachments-on-issues-and-pull-requests)
|
||||||
|
|||||||
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.
|
||||||
|
|||||||
@@ -29,13 +29,12 @@ will install and execute qBittorrent hopefully without any problem.
|
|||||||
|
|
||||||
### Public key:
|
### Public key:
|
||||||
Starting from v3.3.4 all source tarballs and binaries are signed.<br />
|
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 />
|
The key currently used is 4096R/[520EC6F6](https://pgp.mit.edu/pks/lookup?op=get&search=0xA1ACCAE4520EC6F6) with fingerprint `F4A5FD201B117B1C2AB590E2A1ACCAE4520EC6F6`.<br />
|
||||||
You can also download it from [here](https://github.com/qbittorrent/qBittorrent/raw/master/5B7CC9A2.asc).<br />
|
You can also download it from [here](https://github.com/qbittorrent/qBittorrent/raw/master/520EC6F6.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:
|
### Misc:
|
||||||
For more information please visit:
|
For more information please visit:
|
||||||
https://www.qbittorrent.org
|
http://www.qbittorrent.org
|
||||||
|
|
||||||
or our wiki here:
|
or our wiki here:
|
||||||
http://wiki.qbittorrent.org
|
http://wiki.qbittorrent.org
|
||||||
|
|||||||
74
README.os2
Normal file
74
README.os2
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
qBittorrent - A BitTorrent client in Qt4
|
||||||
|
------------------------------------------
|
||||||
|
|
||||||
|
This is the eComStation (OS/2) qBittorrent part of the readme. See also README for more general information.
|
||||||
|
|
||||||
|
|
||||||
|
Building qBittorrent
|
||||||
|
********************
|
||||||
|
|
||||||
|
|
||||||
|
Requirements
|
||||||
|
============
|
||||||
|
|
||||||
|
- gcc based build env (recommended gcc v4.4.2 or greater)
|
||||||
|
|
||||||
|
- Qt4 for eCS (OS/2) dev package (see http://svn.netlabs.org/qt4 for more information)
|
||||||
|
|
||||||
|
- libtorrent-rasterbar for eCS (OS/2) port (see http://svn.netlabs.org/ports for more information)
|
||||||
|
|
||||||
|
- boost for eCS (OS/2) port (see http://svn.netlabs.org/ports for more information)
|
||||||
|
|
||||||
|
|
||||||
|
How to build
|
||||||
|
============
|
||||||
|
|
||||||
|
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:
|
||||||
|
|
||||||
|
##### conf.pri content begin #####
|
||||||
|
BINDIR = ./bin
|
||||||
|
INCDIR = ./include
|
||||||
|
LIBDIR = ./lib
|
||||||
|
DATADIR = ./share
|
||||||
|
|
||||||
|
CONFIG += staticlib
|
||||||
|
INCLUDEPATH += x:/trees/libtorrent/trunk/include
|
||||||
|
LIBS += -Lx:/trees/libtorrent/trunk/src/.libs \
|
||||||
|
-Lx:/trees/boost/trunk/stage/lib \
|
||||||
|
-Lx:/trees/openssl \
|
||||||
|
-Lx:/extras/lib
|
||||||
|
##### conf.pri content end #####
|
||||||
|
|
||||||
|
Of course all the above path references have to be adjusted to your build env.
|
||||||
|
|
||||||
|
Now you can either do a normal build or a shadow build. A shadow build has the
|
||||||
|
advantage that no created files are in the same dir as the sources are.
|
||||||
|
|
||||||
|
For a normal build do the following:
|
||||||
|
|
||||||
|
Simply type:
|
||||||
|
$ qmake
|
||||||
|
|
||||||
|
Followed by:
|
||||||
|
$ make
|
||||||
|
|
||||||
|
For a shadow build do the following:
|
||||||
|
given your sources are in x:\trees\qbittorrent\trunk create a
|
||||||
|
x:\trees\qbittorrent\build directory
|
||||||
|
|
||||||
|
Now switch to the created directory and type:
|
||||||
|
$ qmake ..\trunk
|
||||||
|
|
||||||
|
Followed by:
|
||||||
|
$ make
|
||||||
|
|
||||||
|
If all works fine you should get a working qbittorrent executable.
|
||||||
|
|
||||||
|
If you have any question regarding the eCS (OS/2) port of qBittorrent you can meet me (_diver) on IRC:
|
||||||
|
#netlabs on irc.freenode.net
|
||||||
|
|
||||||
|
------------------------------------------
|
||||||
|
Silvan Scherrer <silvan.scherrer@aroa.ch>
|
||||||
|
|
||||||
|
|
||||||
@@ -3,18 +3,14 @@ version: '{branch}-{build}'
|
|||||||
# Do not build on tags (GitHub only)
|
# Do not build on tags (GitHub only)
|
||||||
skip_tags: true
|
skip_tags: true
|
||||||
|
|
||||||
image: Visual Studio 2017
|
os: Visual Studio 2015
|
||||||
|
|
||||||
branches:
|
|
||||||
except: # blacklist
|
|
||||||
- coverity_scan
|
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
REPO_DIR: &REPO_DIR c:\qbittorrent
|
REPO_DIR: &REPO_DIR c:\qbittorrent
|
||||||
CACHE_DIR: &CACHE_DIR c:\qbt_cache
|
CACHE_DIR: &CACHE_DIR c:\qbt_cache
|
||||||
|
|
||||||
QBT_VER_URL: https://builds.shiki.hu/appveyor/version
|
QBT_VER_URL: http://builds.shiki.hu/appveyor/version
|
||||||
QBT_LIB_URL: https://builds.shiki.hu/appveyor/qbt_libraries.7z
|
QBT_LIB_URL: http://builds.shiki.hu/appveyor/qbt_libraries.7z
|
||||||
|
|
||||||
# project directory
|
# project directory
|
||||||
clone_folder: *REPO_DIR
|
clone_folder: *REPO_DIR
|
||||||
@@ -24,8 +20,6 @@ clone_folder: *REPO_DIR
|
|||||||
cache:
|
cache:
|
||||||
- *CACHE_DIR
|
- *CACHE_DIR
|
||||||
|
|
||||||
clone_depth: 50
|
|
||||||
|
|
||||||
install:
|
install:
|
||||||
# check if library needs update
|
# check if library needs update
|
||||||
- appveyor DownloadFile "%QBT_VER_URL%" -FileName "c:\version_new" && SET /P newVersion=<"c:\version_new"
|
- appveyor DownloadFile "%QBT_VER_URL%" -FileName "c:\version_new" && SET /P newVersion=<"c:\version_new"
|
||||||
@@ -42,7 +36,7 @@ install:
|
|||||||
|
|
||||||
before_build:
|
before_build:
|
||||||
# setup env
|
# setup env
|
||||||
- CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat"
|
- CALL "c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\vcvars32.bat"
|
||||||
- SET PATH=%PATH%;c:\qbt\qt5_32\bin;%CACHE_DIR%\jom;
|
- SET PATH=%PATH%;c:\qbt\qt5_32\bin;%CACHE_DIR%\jom;
|
||||||
# setup project
|
# setup project
|
||||||
- COPY /Y "%CACHE_DIR%\winconf.pri" "%REPO_DIR%"
|
- COPY /Y "%CACHE_DIR%\winconf.pri" "%REPO_DIR%"
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
#!/bin/sh
|
#!/bin/bash
|
||||||
|
|
||||||
aclocal -I m4
|
aclocal -I m4
|
||||||
autoconf
|
autoconf
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -14,11 +14,6 @@
|
|||||||
find_package(Threads REQUIRED)
|
find_package(Threads REQUIRED)
|
||||||
find_package(PkgConfig QUIET)
|
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)
|
if(PKG_CONFIG_FOUND)
|
||||||
pkg_check_modules(PC_LIBTORRENT_RASTERBAR QUIET libtorrent-rasterbar)
|
pkg_check_modules(PC_LIBTORRENT_RASTERBAR QUIET libtorrent-rasterbar)
|
||||||
endif()
|
endif()
|
||||||
@@ -67,38 +62,19 @@ endif()
|
|||||||
set(LibtorrentRasterbar_LIBRARIES ${LibtorrentRasterbar_LIBRARY} ${CMAKE_THREAD_LIBS_INIT})
|
set(LibtorrentRasterbar_LIBRARIES ${LibtorrentRasterbar_LIBRARY} ${CMAKE_THREAD_LIBS_INIT})
|
||||||
set(LibtorrentRasterbar_INCLUDE_DIRS ${LibtorrentRasterbar_INCLUDE_DIR})
|
set(LibtorrentRasterbar_INCLUDE_DIRS ${LibtorrentRasterbar_INCLUDE_DIR})
|
||||||
|
|
||||||
# Without pkg-config, we can't possibly figure out the correct boost dependencies
|
if(NOT Boost_SYSTEM_FOUND OR NOT Boost_CHRONO_FOUND OR NOT Boost_RANDOM_FOUND)
|
||||||
if (LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES)
|
find_package(Boost REQUIRED COMPONENTS date_time system chrono random thread)
|
||||||
set(_boost_components "${LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES}")
|
set(LibtorrentRasterbar_LIBRARIES
|
||||||
else(LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES)
|
${LibtorrentRasterbar_LIBRARIES} ${Boost_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
|
||||||
if(PC_LIBTORRENT_RASTERBAR_FOUND)
|
set(LibtorrentRasterbar_INCLUDE_DIRS
|
||||||
_detect_boost_components(_boost_components "${PC_LIBTORRENT_RASTERBAR_LIBRARIES}")
|
${LibtorrentRasterbar_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS})
|
||||||
else()
|
endif()
|
||||||
# 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)
|
list(FIND LibtorrentRasterbar_DEFINITIONS -DTORRENT_USE_OPENSSL LibtorrentRasterbar_ENCRYPTION_INDEX)
|
||||||
if(LibtorrentRasterbar_ENCRYPTION_INDEX GREATER -1)
|
if(LibtorrentRasterbar_ENCRYPTION_INDEX GREATER -1)
|
||||||
find_package(OpenSSL REQUIRED)
|
find_package(OpenSSL REQUIRED)
|
||||||
set(LibtorrentRasterbar_LIBRARIES ${LibtorrentRasterbar_LIBRARIES} OpenSSL::SSL OpenSSL::Crypto)
|
set(LibtorrentRasterbar_LIBRARIES ${LibtorrentRasterbar_LIBRARIES} ${OPENSSL_LIBRARIES})
|
||||||
|
set(LibtorrentRasterbar_INCLUDE_DIRS ${LibtorrentRasterbar_INCLUDE_DIRS} ${OPENSSL_INCLUDE_DIRS})
|
||||||
set(LibtorrentRasterbar_OPENSSL_ENABLED ON)
|
set(LibtorrentRasterbar_OPENSSL_ENABLED ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -107,21 +83,11 @@ include(FindPackageHandleStandardArgs)
|
|||||||
# if all listed variables are TRUE
|
# if all listed variables are TRUE
|
||||||
find_package_handle_standard_args(LibtorrentRasterbar DEFAULT_MSG
|
find_package_handle_standard_args(LibtorrentRasterbar DEFAULT_MSG
|
||||||
LibtorrentRasterbar_LIBRARY
|
LibtorrentRasterbar_LIBRARY
|
||||||
LibtorrentRasterbar_INCLUDE_DIR)
|
LibtorrentRasterbar_INCLUDE_DIR
|
||||||
|
Boost_SYSTEM_FOUND
|
||||||
|
Boost_CHRONO_FOUND
|
||||||
|
Boost_RANDOM_FOUND)
|
||||||
|
|
||||||
mark_as_advanced(LibtorrentRasterbar_INCLUDE_DIR LibtorrentRasterbar_LIBRARY
|
mark_as_advanced(LibtorrentRasterbar_INCLUDE_DIR LibtorrentRasterbar_LIBRARY
|
||||||
LibtorrentRasterbar_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES
|
LibtorrentRasterbar_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES
|
||||||
LibtorrentRasterbar_ENCRYPTION_INDEX)
|
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()
|
|
||||||
|
|||||||
@@ -30,9 +30,9 @@ IF(QT4_FOUND)
|
|||||||
NAMES ${QTSINGLEAPPLICATION_NAMES}
|
NAMES ${QTSINGLEAPPLICATION_NAMES}
|
||||||
PATHS ${QT_LIBRARY_DIR}
|
PATHS ${QT_LIBRARY_DIR}
|
||||||
)
|
)
|
||||||
ELSEIF(Qt5Core_FOUND)
|
ELSEIF(Qt5Widgets_FOUND)
|
||||||
message(STATUS "Looking for Qt5 single application library")
|
message(STATUS "Looking for Qt5 single application library")
|
||||||
FOREACH(TOP_INCLUDE_PATH in ${Qt5Core_INCLUDE_DIRS} ${FRAMEWORK_INCLUDE_DIR})
|
FOREACH(TOP_INCLUDE_PATH in ${Qt5Widgets_INCLUDE_DIRS} ${FRAMEWORK_INCLUDE_DIR})
|
||||||
FIND_PATH(QTSINGLEAPPLICATION_INCLUDE_DIR QtSingleApplication ${TOP_INCLUDE_PATH}/QtSolutions)
|
FIND_PATH(QTSINGLEAPPLICATION_INCLUDE_DIR QtSingleApplication ${TOP_INCLUDE_PATH}/QtSolutions)
|
||||||
|
|
||||||
IF(QTSINGLEAPPLICATION_INCLUDE_DIR)
|
IF(QTSINGLEAPPLICATION_INCLUDE_DIR)
|
||||||
@@ -43,12 +43,12 @@ ELSEIF(Qt5Core_FOUND)
|
|||||||
SET(QTSINGLEAPPLICATION_NAMES ${QTSINGLEAPPLICATION_NAMES}
|
SET(QTSINGLEAPPLICATION_NAMES ${QTSINGLEAPPLICATION_NAMES}
|
||||||
Qt5Solutions_SingleApplication-2.6 libQt5Solutions_SingleApplication-2.6
|
Qt5Solutions_SingleApplication-2.6 libQt5Solutions_SingleApplication-2.6
|
||||||
QtSolutions_SingleApplication-2.6 libQtSolutions_SingleApplication-2.6)
|
QtSolutions_SingleApplication-2.6 libQtSolutions_SingleApplication-2.6)
|
||||||
GET_TARGET_PROPERTY(_QT5_CORELIBRARY Qt5::Core LOCATION)
|
GET_TARGET_PROPERTY(QT5_WIDGETSLIBRARY Qt5::Widgets LOCATION)
|
||||||
GET_FILENAME_COMPONENT(_QT5_CORELIBRARYPATH ${_QT5_CORELIBRARY} PATH)
|
GET_FILENAME_COMPONENT(QT5_WIDGETSLIBRARYPATH ${QT5_WIDGETSLIBRARY} PATH)
|
||||||
|
|
||||||
FIND_LIBRARY(QTSINGLEAPPLICATION_LIBRARY
|
FIND_LIBRARY(QTSINGLEAPPLICATION_LIBRARY
|
||||||
NAMES ${QTSINGLEAPPLICATION_NAMES}
|
NAMES ${QTSINGLEAPPLICATION_NAMES}
|
||||||
PATHS ${_QT5_CORELIBRARYPATH}
|
PATHS ${QT5_WIDGETSLIBRARYPATH}
|
||||||
)
|
)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
@@ -79,16 +79,3 @@ ELSE (QTSINGLEAPPLICATION_FOUND)
|
|||||||
ENDIF (QTSINGLEAPPLICATION_FOUND)
|
ENDIF (QTSINGLEAPPLICATION_FOUND)
|
||||||
|
|
||||||
MARK_AS_ADVANCED(QTSINGLEAPPLICATION_INCLUDE_DIR QTSINGLEAPPLICATION_LIBRARY)
|
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)
|
|
||||||
|
|||||||
@@ -3,9 +3,6 @@
|
|||||||
# sets variables
|
# sets variables
|
||||||
# SYSTEMD_FOUND
|
# SYSTEMD_FOUND
|
||||||
# SYSTEMD_SERVICES_INSTALL_DIR
|
# SYSTEMD_SERVICES_INSTALL_DIR
|
||||||
|
|
||||||
find_package(PkgConfig QUIET REQUIRED)
|
|
||||||
|
|
||||||
if (NOT SYSTEMD_FOUND)
|
if (NOT SYSTEMD_FOUND)
|
||||||
pkg_check_modules(SYSTEMD "systemd")
|
pkg_check_modules(SYSTEMD "systemd")
|
||||||
endif(NOT SYSTEMD_FOUND)
|
endif(NOT 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,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)
|
|
||||||
@@ -5,23 +5,11 @@
|
|||||||
macro (target_link_qt_components target)
|
macro (target_link_qt_components target)
|
||||||
if (QT4_FOUND)
|
if (QT4_FOUND)
|
||||||
foreach(_cmp ${ARGN})
|
foreach(_cmp ${ARGN})
|
||||||
if ("${_cmp}" STREQUAL "PRIVATE" OR
|
list(APPEND _QT_CMPNTS "Qt4::Qt${_cmp}")
|
||||||
"${_cmp}" STREQUAL "PUBLIC" OR
|
|
||||||
"${_cmp}" STREQUAL "INTERFACE")
|
|
||||||
list(APPEND _QT_CMPNTS "${_cmp}")
|
|
||||||
else()
|
|
||||||
list(APPEND _QT_CMPNTS "Qt4::Qt${_cmp}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
endforeach()
|
||||||
else (QT4_FOUND)
|
else (QT4_FOUND)
|
||||||
foreach(_cmp ${ARGN})
|
foreach(_cmp ${ARGN})
|
||||||
if ("${_cmp}" STREQUAL "PRIVATE" OR
|
list(APPEND _QT_CMPNTS "Qt5::${_cmp}")
|
||||||
"${_cmp}" STREQUAL "PUBLIC" OR
|
|
||||||
"${_cmp}" STREQUAL "INTERFACE")
|
|
||||||
list(APPEND _QT_CMPNTS "${_cmp}")
|
|
||||||
else()
|
|
||||||
list(APPEND _QT_CMPNTS "Qt5::${_cmp}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
endforeach()
|
||||||
endif (QT4_FOUND)
|
endif (QT4_FOUND)
|
||||||
target_link_libraries(${target} ${_QT_CMPNTS})
|
target_link_libraries(${target} ${_QT_CMPNTS})
|
||||||
|
|||||||
@@ -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=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,16 +0,0 @@
|
|||||||
# a helper function which appends source to the main qBt target
|
|
||||||
# sources file names are relative to the the ${qBittorrent_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 (qBittorrent PRIVATE "${_sources_rel}")
|
|
||||||
endfunction (qbt_target_sources)
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
set(BU_CHMOD_BUNDLE_ITEMS ON)
|
|
||||||
include(DeployQt5)
|
|
||||||
|
|
||||||
set(plugins "")
|
|
||||||
|
|
||||||
get_property(svgIconPluginLocation TARGET Qt5::QSvgIconPlugin
|
|
||||||
PROPERTY LOCATION_RELEASE)
|
|
||||||
list(APPEND plugins "${svgIconPluginLocation}")
|
|
||||||
get_property(svgPluginLocation TARGET Qt5::QSvgPlugin
|
|
||||||
PROPERTY LOCATION_RELEASE)
|
|
||||||
list(APPEND plugins "${svgPluginLocation}")
|
|
||||||
|
|
||||||
set(sfx "")
|
|
||||||
if(APPLE)
|
|
||||||
set(sfx ".app")
|
|
||||||
elseif(WIN32)
|
|
||||||
set(sfx "${CMAKE_EXECUTABLE_SUFFIX}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
get_target_property(exe qBittorrent OUTPUT_NAME)
|
|
||||||
install_qt5_executable("${exe}${sfx}" "${plugins}" "" "" "")
|
|
||||||
@@ -1,31 +1,26 @@
|
|||||||
# Settings for compiling qBittorrent on Windows
|
# Settings for compiling qBittorrent on Windows
|
||||||
|
|
||||||
list(APPEND CMAKE_LIBRARY_PATH "$ENV{LIB}")
|
|
||||||
|
|
||||||
# We want to link with static version of
|
# We want to link with static version of
|
||||||
# libtorrent
|
# libtorrent
|
||||||
set(LibtorrentRasterbar_USE_STATIC_LIBS True)
|
set(LibtorrentRasterbar_USE_STATIC_LIBS True)
|
||||||
set(LibtorrentRasterbar_CUSTOM_DEFINITIONS
|
set(LibtorrentRasterbar_CUSTOM_DEFINITIONS
|
||||||
-DBOOST_ALL_NO_LIB -DBOOST_ASIO_HASH_MAP_BUCKETS=1021
|
-DBOOST_ALL_NO_LIB -DBOOST_ASIO_HASH_MAP_BUCKETS=1021
|
||||||
-DBOOST_ASIO_SEPARATE_COMPILATION
|
-DBOOST_ASIO_SEPARATE_COMPILATION
|
||||||
-DBOOST_EXCEPTION_DISABLE
|
-DBOOST_EXCEPTION_DISABLE
|
||||||
-DBOOST_SYSTEM_STATIC_LINK=1
|
-DBOOST_SYSTEM_STATIC_LINK=1
|
||||||
-DTORRENT_USE_OPENSSL
|
-DTORRENT_USE_OPENSSL
|
||||||
-D__USE_W32_SOCKETS
|
-DUNICODE
|
||||||
-D_FILE_OFFSET_BITS=64)
|
|
||||||
|
|
||||||
add_definitions(-DUNICODE
|
|
||||||
-D_UNICODE
|
-D_UNICODE
|
||||||
-DWIN32
|
-DWIN32
|
||||||
-D_WIN32
|
-D_WIN32
|
||||||
-DWIN32_LEAN_AND_MEAN
|
-DWIN32_LEAN_AND_MEAN
|
||||||
-DNTDDI_VERSION=0x05010000
|
|
||||||
-D_WIN32_WINNT=0x0501
|
-D_WIN32_WINNT=0x0501
|
||||||
-D_WIN32_IE=0x0501
|
-D_WIN32_IE=0x0500
|
||||||
-D_CRT_SECURE_NO_DEPRECATE
|
-D_CRT_SECURE_NO_DEPRECATE
|
||||||
-D_SCL_SECURE_NO_DEPRECATE
|
-D_SCL_SECURE_NO_DEPRECATE
|
||||||
-DNOMINMAX
|
-D__USE_W32_SOCKETS
|
||||||
)
|
-D_FILE_OFFSET_BITS=64)
|
||||||
|
|
||||||
# and boost
|
# and boost
|
||||||
set(Boost_USE_STATIC_LIBS True)
|
set(Boost_USE_STATIC_LIBS True)
|
||||||
# set(Boost_USE_STATIC_RUNTIME True)
|
# set(Boost_USE_STATIC_RUNTIME True)
|
||||||
@@ -34,17 +29,16 @@ set(Boost_USE_STATIC_LIBS True)
|
|||||||
# with usual unix subdirectories (bin, lib, include)
|
# with usual unix subdirectories (bin, lib, include)
|
||||||
# if so, we just need to set CMAKE_SYSTEM_PREFIX_PATH
|
# if so, we just need to set CMAKE_SYSTEM_PREFIX_PATH
|
||||||
# If it is not the case, individual paths need to be specified manually (see below)
|
# If it is not the case, individual paths need to be specified manually (see below)
|
||||||
set(COMMON_INSTALL_PREFIX "c:/usr" CACHE PATH "Prefix used to install all the required libraries")
|
set(COMMON_INSTALL_PREFIX "c:/usr")
|
||||||
list(APPEND CMAKE_SYSTEM_PREFIX_PATH "${COMMON_INSTALL_PREFIX}")
|
list(APPEND CMAKE_SYSTEM_PREFIX_PATH "${COMMON_INSTALL_PREFIX}")
|
||||||
|
|
||||||
# If two version of Qt are installed, separate prefixes are needed most likely
|
# If two version of Qt are installed, separate prefixes are needed most likely
|
||||||
set(QT4_INSTALL_PREFIX "${COMMON_INSTALL_PREFIX}/lib/qt4" CACHE PATH "Prefix where Qt4 is installed")
|
set(QT4_INSTALL_PREFIX "${COMMON_INSTALL_PREFIX}/lib/qt4")
|
||||||
set(QT5_INSTALL_PREFIX "${COMMON_INSTALL_PREFIX}/lib/qt5" CACHE PATH "Prefix where Qt5 is installed")
|
set(QT5_INSTALL_PREFIX "${COMMON_INSTALL_PREFIX}/lib/qt5")
|
||||||
|
|
||||||
# it is safe to set Qt dirs even if their files are directly in the prefix
|
# it is safe to set Qt dirs even if their files are directly in the prefix
|
||||||
# Qt4
|
# Qt4
|
||||||
if(NOT QT5)
|
if(NOT QT5)
|
||||||
# for qt 4 we need qmake, Qt5 provides cmake config files
|
|
||||||
LIST(APPEND CMAKE_PROGRAM_PATH "${QT4_INSTALL_PREFIX}/bin/")
|
LIST(APPEND CMAKE_PROGRAM_PATH "${QT4_INSTALL_PREFIX}/bin/")
|
||||||
endif(NOT QT5)
|
endif(NOT QT5)
|
||||||
|
|
||||||
|
|||||||
12
conf.pri.in
12
conf.pri.in
@@ -6,16 +6,8 @@ DATADIR = @EXPAND_DATADIR@
|
|||||||
MANPREFIX = @EXPAND_MANDIR@
|
MANPREFIX = @EXPAND_MANDIR@
|
||||||
|
|
||||||
QMAKE_CXXFLAGS += @QBT_CONF_EXTRA_CFLAGS@
|
QMAKE_CXXFLAGS += @QBT_CONF_EXTRA_CFLAGS@
|
||||||
|
INCLUDEPATH += @QBT_CONF_INCLUDES@
|
||||||
EXTERNAL_INCLUDES = @QBT_CONF_INCLUDES@
|
LIBS += @LDFLAGS@ @LIBS@
|
||||||
EXTERNAL_INCLUDES -= $$QMAKE_DEFAULT_INCDIRS
|
|
||||||
# added /usr/local/include due to Qt 5.7.0 bug on macOS
|
|
||||||
macx: EXTERNAL_INCLUDES += "/usr/local/include"
|
|
||||||
INCLUDEPATH += $$EXTERNAL_INCLUDES
|
|
||||||
|
|
||||||
EXTERNAL_LIBS = @LDFLAGS@ @LIBS@
|
|
||||||
EXTERNAL_LIBS -= $$QMAKE_DEFAULT_LIBDIRS
|
|
||||||
LIBS += $$EXTERNAL_LIBS
|
|
||||||
|
|
||||||
CONFIG += @QBT_ADD_CONFIG@
|
CONFIG += @QBT_ADD_CONFIG@
|
||||||
CONFIG -= @QBT_REMOVE_CONFIG@
|
CONFIG -= @QBT_REMOVE_CONFIG@
|
||||||
|
|||||||
@@ -1,61 +0,0 @@
|
|||||||
# Adapt these paths
|
|
||||||
# Point these to the include folders
|
|
||||||
INCLUDEPATH += $$quote(C:/qBittorrent/boost)
|
|
||||||
INCLUDEPATH += $$quote(C:/qBittorrent/libtorrent/include)
|
|
||||||
INCLUDEPATH += $$quote(C:/qBittorrent/zlib/include)
|
|
||||||
INCLUDEPATH += $$quote(C:/qBittorrent/openssl/include)
|
|
||||||
# Point these to the lib folders
|
|
||||||
LIBS += $$quote(-LC:/qBittorrent/boost/stage/lib)
|
|
||||||
LIBS += $$quote(-LC:/qBittorrent/libtorrent/lib)
|
|
||||||
LIBS += $$quote(-LC:/qBittorrent/zlib/lib)
|
|
||||||
LIBS += $$quote(-LC:/qBittorrent/openssl/lib)
|
|
||||||
|
|
||||||
# Adapt the lib names/versions accordingly
|
|
||||||
# If you want to use Boost auto-linking then disable
|
|
||||||
# BOOST_ALL_NO_LIB below and omit Boost libraries here
|
|
||||||
CONFIG(debug, debug|release) {
|
|
||||||
LIBS += libtorrentd.lib \
|
|
||||||
libboost_system-vc140-mt-sgd-1_64.lib
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
LIBS += libtorrent.lib \
|
|
||||||
libboost_system-vc140-mt-s-1_64.lib
|
|
||||||
}
|
|
||||||
LIBS += libeay32.lib ssleay32.lib
|
|
||||||
LIBS += zlib.lib
|
|
||||||
# ...or if you use MinGW
|
|
||||||
#CONFIG(debug, debug|release) {
|
|
||||||
# LIBS += libtorrent-rasterbar \
|
|
||||||
# libboost_system-mt
|
|
||||||
#}
|
|
||||||
#else {
|
|
||||||
# LIBS += libtorrent-rasterbar \
|
|
||||||
# libboost_system-mt
|
|
||||||
#}
|
|
||||||
#LIBS += libcrypto libssl
|
|
||||||
#LIBS += libz
|
|
||||||
|
|
||||||
DEFINES += NTDDI_VERSION=0x05010000
|
|
||||||
DEFINES += _WIN32_WINNT=0x0501
|
|
||||||
DEFINES += _WIN32_IE=0x0501
|
|
||||||
|
|
||||||
# Disable to use Boost auto-linking
|
|
||||||
DEFINES += BOOST_ALL_NO_LIB
|
|
||||||
# Use one of the following options
|
|
||||||
DEFINES += BOOST_SYSTEM_STATIC_LINK
|
|
||||||
#DEFINES += BOOST_SYSTEM_DYN_LINK
|
|
||||||
# Boost 1.60+ defaults to Vista+ support. The define below enables XP support again.
|
|
||||||
DEFINES += BOOST_USE_WINAPI_VERSION=0x0501
|
|
||||||
# Enable if building against libtorrent 1.0.x (RC_1_0) (static linking)
|
|
||||||
#DEFINES += BOOST_ASIO_SEPARATE_COMPILATION
|
|
||||||
# Enable if building against libtorrent 1.0.x (RC_1_0) (dynamic linking)
|
|
||||||
#DEFINES += BOOST_ASIO_DYN_LINK
|
|
||||||
|
|
||||||
# Enable if building against libtorrent 1.1.x (RC_1_1)
|
|
||||||
# built with this flag defined
|
|
||||||
#DEFINES += TORRENT_NO_DEPRECATE
|
|
||||||
# Enable if linking dynamically against libtorrent
|
|
||||||
#DEFINES += TORRENT_LINKING_SHARED
|
|
||||||
|
|
||||||
# Enable stack trace support
|
|
||||||
CONFIG += strace_win
|
|
||||||
84
configure.ac
84
configure.ac
@@ -1,4 +1,4 @@
|
|||||||
AC_INIT([qbittorrent], [v4.0.4], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/])
|
AC_INIT([qbittorrent], [v3.2.0alpha], [bugs.qbittorrent.org], [], [http://www.qbittorrent.org/])
|
||||||
AC_CONFIG_AUX_DIR([build-aux])
|
AC_CONFIG_AUX_DIR([build-aux])
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
@@ -12,12 +12,24 @@ AM_INIT_AUTOMAKE
|
|||||||
|
|
||||||
# Define --wth-* and --enable-* arguments
|
# Define --wth-* and --enable-* arguments
|
||||||
|
|
||||||
|
AC_ARG_WITH(qt4,
|
||||||
|
[AS_HELP_STRING([--with-qt4],
|
||||||
|
[Compile using Qt4 (default=no)])],
|
||||||
|
[],
|
||||||
|
[with_qt4=no])
|
||||||
|
|
||||||
AC_ARG_WITH(qtsingleapplication,
|
AC_ARG_WITH(qtsingleapplication,
|
||||||
[AS_HELP_STRING([--with-qtsingleapplication=@<:@system|shipped@:>@],
|
[AS_HELP_STRING([--with-qtsingleapplication=@<:@system|shipped@:>@],
|
||||||
[Use the shipped qtsingleapplication library or the system one (default=shipped)])],
|
[Use the shipped qtsingleapplication library or the system one (default=shipped)])],
|
||||||
[],
|
[],
|
||||||
[with_qtsingleapplication=shipped])
|
[with_qtsingleapplication=shipped])
|
||||||
|
|
||||||
|
AC_ARG_WITH(qjson,
|
||||||
|
[AS_HELP_STRING([--with-qjson=@<:@system|shipped@:>@],
|
||||||
|
[Use the shipped qjson library or the system one (default=shipped) (Qt4 only)])],
|
||||||
|
[],
|
||||||
|
[with_qjson=shipped])
|
||||||
|
|
||||||
AC_ARG_ENABLE(debug,
|
AC_ARG_ENABLE(debug,
|
||||||
[AS_HELP_STRING([--enable-debug],
|
[AS_HELP_STRING([--enable-debug],
|
||||||
[Enable debug build])],
|
[Enable debug build])],
|
||||||
@@ -55,12 +67,6 @@ AS_IF([expr "$host_os" : ".*freebsd.*" > /dev/null],
|
|||||||
LIBS="-lexecinfo $LIBS"],
|
LIBS="-lexecinfo $LIBS"],
|
||||||
[AC_MSG_RESULT([no])])
|
[AC_MSG_RESULT([no])])
|
||||||
|
|
||||||
AC_MSG_CHECKING([whether OS is macOS])
|
|
||||||
AS_IF([expr "$host_os" : ".*darwin.*" > /dev/null],
|
|
||||||
[AC_MSG_RESULT([yes])
|
|
||||||
enable_qt_dbus=no],
|
|
||||||
[AC_MSG_RESULT([no])])
|
|
||||||
|
|
||||||
# Require 0.23 pkg-config
|
# Require 0.23 pkg-config
|
||||||
PKG_PROG_PKG_CONFIG([0.23])
|
PKG_PROG_PKG_CONFIG([0.23])
|
||||||
AS_IF([test "x$PKG_CONFIG" = "x"],
|
AS_IF([test "x$PKG_CONFIG" = "x"],
|
||||||
@@ -115,13 +121,20 @@ AS_CASE(["x$enable_webui"],
|
|||||||
[AC_MSG_RESULT([$enable_webui])
|
[AC_MSG_RESULT([$enable_webui])
|
||||||
AC_MSG_ERROR([Unknown option "$enable_webui". Use either "yes" or "no".])])
|
AC_MSG_ERROR([Unknown option "$enable_webui". Use either "yes" or "no".])])
|
||||||
|
|
||||||
FIND_QT5()
|
AC_MSG_CHECKING([whether Qt4 should be enabled])
|
||||||
|
AS_CASE(["x$with_qt4"],
|
||||||
|
["xno"],
|
||||||
|
[AC_MSG_RESULT([no])
|
||||||
|
FIND_QT5()],
|
||||||
|
["xyes"],
|
||||||
|
[AC_MSG_RESULT([yes])
|
||||||
|
FIND_QT4()],
|
||||||
|
[AC_MSG_RESULT([$with_qt4])
|
||||||
|
AC_MSG_ERROR([Unknown option "$with_qt4". Use either "yes" or "no".])])
|
||||||
AS_IF([test "x$QT_QMAKE" = "x"],
|
AS_IF([test "x$QT_QMAKE" = "x"],
|
||||||
[AC_MSG_ERROR([Could not find qmake])
|
[AC_MSG_ERROR([Could not find qmake])
|
||||||
])
|
])
|
||||||
AS_IF([test "x$enable_gui" = "xyes"],
|
|
||||||
[PKG_CHECK_MODULES(Qt5Svg, [Qt5Svg >= 5.5.1])
|
|
||||||
])
|
|
||||||
AC_MSG_CHECKING([whether QtDBus should be enabled])
|
AC_MSG_CHECKING([whether QtDBus should be enabled])
|
||||||
AS_CASE(["x$enable_qt_dbus"],
|
AS_CASE(["x$enable_qt_dbus"],
|
||||||
["xyes"],
|
["xyes"],
|
||||||
@@ -138,16 +151,22 @@ AS_CASE(["x$enable_qt_dbus"],
|
|||||||
AC_MSG_ERROR([Unknown option "$enable_qt_dbus". Use either "yes" or "no".])])
|
AC_MSG_ERROR([Unknown option "$enable_qt_dbus". Use either "yes" or "no".])])
|
||||||
|
|
||||||
|
|
||||||
AX_BOOST_BASE([1.35],
|
AX_BOOST_BASE([1.35])
|
||||||
[AC_MSG_NOTICE([Boost CPPFLAGS: "$BOOST_CPPFLAGS"
|
# HAVE_BOOST is set to an empty value when Boost is found. I don't know
|
||||||
Boost LDFLAGS: "$BOOST_LDFLAGS"])],
|
# how to test for a set vs unset variable.
|
||||||
[AC_MSG_ERROR([Could not find Boost])])
|
AS_IF([test "x$BOOST_CPPFLAGS" = "x"],
|
||||||
CPPFLAGS="$BOOST_CPPFLAGS $CPPFLAGS"
|
[AC_MSG_ERROR([Could not find Boost])],
|
||||||
LDFLAGS="$BOOST_LDFLAGS $LDFLAGS"
|
[AC_MSG_NOTICE([Boost CPPFLGAS: $BOOST_CPPFLAGS])
|
||||||
|
CPPFLAGS="$BOOST_CPPFLAGS $CPPFLAGS"
|
||||||
|
LDFLAGS="$BOOST_LDFLAGS $LDFLAGS"])
|
||||||
|
|
||||||
AX_BOOST_SYSTEM()
|
AX_BOOST_SYSTEM()
|
||||||
AC_MSG_NOTICE([Boost.System LIB: "$BOOST_SYSTEM_LIB"])
|
# HAVE_BOOST_SYSTEM is set to an empty value when Boost.System is found.
|
||||||
LIBS="$BOOST_SYSTEM_LIB $LIBS"
|
# I don't know how to test for a set vs unset variable.
|
||||||
|
AS_IF([test "x$BOOST_SYSTEM_LIB" = "x"],
|
||||||
|
[AC_MSG_ERROR([Could not find Boost.System])],
|
||||||
|
[AC_MSG_NOTICE([Boost.System LIB: $BOOST_SYSTEM_LIB])
|
||||||
|
LIBS="$BOOST_SYSTEM_LIB $LIBS"])
|
||||||
|
|
||||||
AC_MSG_CHECKING([which qtsingleapplication to use])
|
AC_MSG_CHECKING([which qtsingleapplication to use])
|
||||||
AS_CASE(["x$with_qtsingleapplication"],
|
AS_CASE(["x$with_qtsingleapplication"],
|
||||||
@@ -160,13 +179,30 @@ AS_CASE(["x$with_qtsingleapplication"],
|
|||||||
[AC_MSG_RESULT([$with_qtsingleapplication])
|
[AC_MSG_RESULT([$with_qtsingleapplication])
|
||||||
AC_MSG_ERROR([Unknown option "$with_qtsingleapplication". Use either "system" or "shipped".])])
|
AC_MSG_ERROR([Unknown option "$with_qtsingleapplication". Use either "system" or "shipped".])])
|
||||||
|
|
||||||
|
AS_IF([test "x$with_qt4" = "xyes"],
|
||||||
|
[AC_MSG_CHECKING([which qjson to use])
|
||||||
|
AS_CASE(["x$with_qjson"],
|
||||||
|
["xshipped"],
|
||||||
|
[AC_MSG_RESULT([shipped])
|
||||||
|
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG usesystemqjson"],
|
||||||
|
["xsystem"],
|
||||||
|
[AC_MSG_RESULT([system])
|
||||||
|
PKG_CHECK_MODULES(qjson,
|
||||||
|
[QJson >= 0.8.1],
|
||||||
|
[CPPFLAGS="$qjson_CFLAGS $CPPFLAGS"
|
||||||
|
LIBS="$qjson_LIBS $LIBS"])
|
||||||
|
QBT_ADD_CONFIG="$QBT_ADD_CONFIG usesystemqjson"],
|
||||||
|
[AC_MSG_RESULT([$with_qjson])
|
||||||
|
AC_MSG_ERROR([Unknown option "$with_qjson". Use either "system" or "shipped".])])
|
||||||
|
])
|
||||||
|
|
||||||
PKG_CHECK_MODULES(libtorrent,
|
PKG_CHECK_MODULES(libtorrent,
|
||||||
[libtorrent-rasterbar >= 1.0.6],
|
[libtorrent-rasterbar >= 1.0.6],
|
||||||
[CPPFLAGS="$libtorrent_CFLAGS $CPPFLAGS"
|
[CPPFLAGS="$libtorrent_CFLAGS $CPPFLAGS"
|
||||||
LIBS="$libtorrent_LIBS $LIBS"])
|
LIBS="$libtorrent_LIBS $LIBS"])
|
||||||
|
|
||||||
PKG_CHECK_MODULES(zlib,
|
PKG_CHECK_MODULES(zlib,
|
||||||
[zlib >= 1.2.5.2],
|
[zlib],
|
||||||
[CPPFLAGS="$zlib_CFLAGS $CPPFLAGS"
|
[CPPFLAGS="$zlib_CFLAGS $CPPFLAGS"
|
||||||
LIBS="$zlib_LIBS $LIBS"])
|
LIBS="$zlib_LIBS $LIBS"])
|
||||||
|
|
||||||
@@ -190,7 +226,7 @@ extract() {
|
|||||||
new_line='
|
new_line='
|
||||||
'
|
'
|
||||||
# Convert " -" to "\n" if not between quotes and remove possible leading white spaces
|
# Convert " -" to "\n" if not between quotes and remove possible leading white spaces
|
||||||
string=$(echo " $*" | $SED -e "s: -:\\${new_line}:g" -e 's:"\(.*\)\n\(.*\)":\"\1 -\2":g' -e "s:'\(.*\)\n\(.*\)':\'\1 -\2':g" -e 's/^[[[:space:]]]*//')
|
string=$(echo " $*" | $SED -e "s: -:\\${new_line}:g" -e 's:"\(.*\)\n\(.*\)":\"\1 -\2":g' -e "s:'\(.*\)\n\(.*\)':\'\1 -\2':g" -e 's/^[[:space:]]*//')
|
||||||
SAVEIFS=$IFS
|
SAVEIFS=$IFS
|
||||||
IFS=$(printf "\n\b")
|
IFS=$(printf "\n\b")
|
||||||
for i in $string; do
|
for i in $string; do
|
||||||
@@ -204,8 +240,9 @@ extract() {
|
|||||||
IFS=$SAVEIFS
|
IFS=$SAVEIFS
|
||||||
}
|
}
|
||||||
|
|
||||||
extract "$CFLAGS $CPPFLAGS $CXXFLAGS"
|
extract $CPPFLAGS
|
||||||
QBT_ADD_DEFINES="$QBT_ADD_DEFINES $QBT_CONF_DEFINES"
|
QBT_ADD_DEFINES="$QBT_ADD_DEFINES $QBT_CONF_DEFINES"
|
||||||
|
QBT_CONF_EXTRA_CFLAGS="$QBT_CONF_EXTRA_CFLAGS $CXXFLAGS"
|
||||||
|
|
||||||
# Substitute the values of these vars in conf.pri.in
|
# Substitute the values of these vars in conf.pri.in
|
||||||
AC_SUBST(QBT_CONF_INCLUDES)
|
AC_SUBST(QBT_CONF_INCLUDES)
|
||||||
@@ -217,7 +254,7 @@ AC_SUBST(QBT_REMOVE_DEFINES)
|
|||||||
|
|
||||||
AC_OUTPUT(conf.pri)
|
AC_OUTPUT(conf.pri)
|
||||||
AS_IF([test "x$enable_systemd" = "xyes"],
|
AS_IF([test "x$enable_systemd" = "xyes"],
|
||||||
[AC_OUTPUT(dist/unix/systemd/qbittorrent-nox@.service)])
|
[AC_OUTPUT(dist/unix/systemd/qbittorrent-nox.service)])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -233,3 +270,4 @@ AS_IF([test "x$ret" = "x0"],
|
|||||||
[AC_MSG_NOTICE([Good, your configure finished.])],
|
[AC_MSG_NOTICE([Good, your configure finished.])],
|
||||||
[AC_MSG_ERROR([Failed running $QT_QMAKE to generate the makefile])])
|
[AC_MSG_ERROR([Failed running $QT_QMAKE to generate the makefile])])
|
||||||
AS_ECHO()
|
AS_ECHO()
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user