You've already forked qBittorrent
							
							
				mirror of
				https://github.com/qbittorrent/qBittorrent
				synced 2025-10-28 14:50:53 +01:00 
			
		
		
		
	Compare commits
	
		
			215 Commits
		
	
	
		
			release-4.
			...
			release-3.
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 8bf23e8087 | ||
|   | 6bdfe77c80 | ||
|   | 15c785d298 | ||
|   | 577582ee0b | ||
|   | 60ab8f87e9 | ||
|   | 4420ae1996 | ||
|   | 778046439c | ||
|   | be47c35cba | ||
|   | a51a855870 | ||
|   | 6fc3c04dca | ||
|   | ae150b25ae | ||
|   | 36ddf0fd2f | ||
|   | 06d59cab2d | ||
|   | 8f519d00e7 | ||
|   | ce58a3fd4b | ||
|   | 303dbd7dbe | ||
|   | c9abcbfbd4 | ||
|   | baab8ddf75 | ||
|   | 982d4a685a | ||
|   | 52ff7a92fb | ||
|   | 8a4a3b33f8 | ||
|   | aec4f1d343 | ||
|   | 32ea862584 | ||
|   | 9f1bd86c47 | ||
|   | d2853b3a98 | ||
|   | 64cf3afe67 | ||
|   | 7729035598 | ||
|   | 021cf9fb65 | ||
|   | c2e9ce5966 | ||
|   | 75e4a004f7 | ||
|   | ac60072ded | ||
|   | 9cac51d9b0 | ||
|   | 14d590b3be | ||
|   | 86d1dc300c | ||
|   | 6787623ff3 | ||
|   | 636ff89e23 | ||
|   | 568950e63e | ||
|   | b3b973d54b | ||
|   | ff64a79594 | ||
|   | 26b635ca33 | ||
|   | 7e63908977 | ||
|   | 5c9ce2952b | ||
|   | 6ca7ff0e25 | ||
|   | 3091c30ff6 | ||
|   | 1086b940a2 | ||
|   | 9465f358c4 | ||
|   | f8cb9d09f6 | ||
|   | 01d8b24982 | ||
|   | b7604b1c82 | ||
|   | 4da4457f5f | ||
|   | 858909bf19 | ||
|   | d3bdb52b8f | ||
|   | d804445de7 | ||
|   | 5187899d7e | ||
|   | 67ad8ef7d6 | ||
|   | cbd9ccef17 | ||
|   | d6420e6876 | ||
|   | f76b1eb2fb | ||
|   | e474f53910 | ||
|   | ccac6cb5a9 | ||
|   | 92bb94ecca | ||
|   | b286351305 | ||
|   | 3873a36338 | ||
|   | f989708e31 | ||
|   | 2dbeda5985 | ||
|   | 9d5d1dfea8 | ||
|   | 3738302a3c | ||
|   | 7f58ff4c8f | ||
|   | 4c079ede83 | ||
|   | 1ee91ddb13 | ||
|   | 03fd0a36a6 | ||
|   | 266c96f03b | ||
|   | a088657619 | ||
|   | 7c164dfcb9 | ||
|   | 20f4b95180 | ||
|   | 8ac4cccc25 | ||
|   | d990af4a79 | ||
|   | 8e73c262f9 | ||
|   | 7804faa34d | ||
|   | 0bb0a5ea13 | ||
|   | d5b9e3449b | ||
|   | 753b33b8a3 | ||
|   | eb12d63d2d | ||
|   | b21ab50221 | ||
|   | 34f89d3174 | ||
|   | 54227c20ff | ||
|   | 515c578188 | ||
|   | 74bba9ecfe | ||
|   | 41e052498b | ||
|   | 3a51c5bf85 | ||
|   | cad542f3f4 | ||
|   | 54a444d37f | ||
|   | 1c5e6980e8 | ||
|   | 8b7d995447 | ||
|   | 0b83ea9fcf | ||
|   | 04e582793e | ||
|   | 07e2e88e79 | ||
|   | e120a6764b | ||
|   | c4a311cc09 | ||
|   | 278872eb12 | ||
|   | c3d9321865 | ||
|   | 882f5e325a | ||
|   | bf7bec61c2 | ||
|   | 72af954b65 | ||
|   | 514abca0ea | ||
|   | 643224800f | ||
|   | 8e25ec7dbf | ||
|   | 07b36f313b | ||
|   | 34d2bdadc0 | ||
|   | 92ef98080b | ||
|   | 34bf09b539 | ||
|   | 06f46eae24 | ||
|   | ae5b2fa4a4 | ||
|   | 9b7c2e669e | ||
|   | e6e087d391 | ||
|   | bf6b723206 | ||
|   | 0bce0fc6c1 | ||
|   | 4d913d123c | ||
|   | a00bbf349a | ||
|   | c61566d133 | ||
|   | a675a13587 | ||
|   | ebe0e7bb71 | ||
|   | e30df4ed70 | ||
|   | 9dcb9848ae | ||
|   | 7034d14eba | ||
|   | 08c8b6f77d | ||
|   | be91f749ee | ||
|   | 4ec2a37f5d | ||
|   | cc471dbd3c | ||
|   | ab62cbdf3f | ||
|   | cd708bb665 | ||
|   | c1a47279af | ||
|   | fec6c8af27 | ||
|   | fc605b119e | ||
|   | 7892f37d3e | ||
|   | 26cb71458d | ||
|   | 069bd05d37 | ||
|   | c4f043a14d | ||
|   | 16b9a28531 | ||
|   | 1da29a450c | ||
|   | 9095545425 | ||
|   | 01dbc01635 | ||
|   | bd7fd47d9f | ||
|   | 429dad3f70 | ||
|   | ca70f2ce5c | ||
|   | 98a4b8c199 | ||
|   | 6dd94ccc1d | ||
|   | e83a8393a4 | ||
|   | 8fa79a0690 | ||
|   | 0423a28f30 | ||
|   | 18f32fae90 | ||
|   | 057b998e0f | ||
|   | 855ac43aca | ||
|   | 5a6302af59 | ||
|   | 174861274b | ||
|   | 718983a4d6 | ||
|   | a77e550bf9 | ||
|   | aac6a4526c | ||
|   | 23842a8ec3 | ||
|   | 422db313de | ||
|   | 07bbe70baf | ||
|   | f46eafc9fd | ||
|   | 86df2520ad | ||
|   | 640e0ea34d | ||
|   | cd03c511a5 | ||
|   | 98533ede13 | ||
|   | 09dedd0f22 | ||
|   | 639f5b2d20 | ||
|   | e758f4ec26 | ||
|   | aae1a3564d | ||
|   | 68e29df2ae | ||
|   | 183643d77b | ||
|   | d8838363b8 | ||
|   | a0877fd57c | ||
|   | 271b37885f | ||
|   | 00b32a0996 | ||
|   | 75979cc4d5 | ||
|   | cf41f41b16 | ||
|   | 12ad2c7368 | ||
|   | 86b21dacfd | ||
|   | 7ce343c28f | ||
|   | fc3e85f449 | ||
|   | fb32408ba1 | ||
|   | 32eec624a1 | ||
|   | 8122ae4739 | ||
|   | 49cce9b2fc | ||
|   | bded737c3c | ||
|   | a94b317150 | ||
|   | 6d34f86c51 | ||
|   | 6dfd962a13 | ||
|   | 89cfd41c5f | ||
|   | 9fbd19b2ca | ||
|   | 1577a366e0 | ||
|   | 19506ea323 | ||
|   | b0d321d729 | ||
|   | a63648b769 | ||
|   | cfe5f8e518 | ||
|   | 56f842dd6d | ||
|   | 95c8d078f1 | ||
|   | 4b3d3f6ea6 | ||
|   | d783787ceb | ||
|   | 1ef9a1151d | ||
|   | baa586a6f7 | ||
|   | c0454fbd02 | ||
|   | 03fb897717 | ||
|   | 43cd295b0c | ||
|   | 80b2d00c7a | ||
|   | 83e4059cea | ||
|   | 92a250cdb3 | ||
|   | 1a52368f79 | ||
|   | cbc0e2527a | ||
|   | 52f8f9beb4 | ||
|   | 3f110dabed | ||
|   | 5af4dde3f3 | ||
|   | 10880e10f1 | 
| @@ -1,58 +0,0 @@ | ||||
| version: '{branch}-{build}' | ||||
|  | ||||
| # Do not build on tags (GitHub only) | ||||
| skip_tags: true | ||||
|  | ||||
| image: Visual Studio 2017 | ||||
|  | ||||
| branches: | ||||
|   except:  # blacklist | ||||
|     - coverity_scan | ||||
|  | ||||
| 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 | ||||
|  | ||||
| clone_depth: 50 | ||||
|  | ||||
| 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 | ||||
| @@ -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 | ||||
							
								
								
									
										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): | ||||
|  | ||||
							
								
								
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -17,7 +17,6 @@ Makefile* | ||||
|  | ||||
| # Generated MOC, resource and UI files | ||||
| moc_*.cpp | ||||
| moc_*.h | ||||
| qrc_*.cpp | ||||
| ui_*.h | ||||
| *.moc | ||||
| @@ -31,6 +30,3 @@ src/qbittorrent.app | ||||
| aclocal.m4 | ||||
| autom4te.cache/* | ||||
| config.status | ||||
| src/icons/qbt-theme/build-icons/node_modules/ | ||||
| src/icons/skin/build-icons/node_modules/ | ||||
| src/icons/skin/build-icons/icons/*.png | ||||
|   | ||||
							
								
								
									
										186
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										186
									
								
								.travis.yml
									
									
									
									
									
								
							| @@ -1,28 +1,18 @@ | ||||
| language: cpp | ||||
|  | ||||
| os: | ||||
|   - linux | ||||
|   - osx | ||||
| osx_image: xcode7.3 | ||||
|  | ||||
| env: | ||||
|   matrix: | ||||
|     # 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=false | ||||
|     - lt_branch=RC_1_0 gui=true build_system=cmake | ||||
|     - lt_branch=RC_1_0 gui=false build_system=cmake | ||||
|     - lt_branch=RC_1_0 gui=true build_system=qmake | ||||
|     - lt_branch=RC_1_0 gui=false build_system=qmake | ||||
|     #- lt_branch=dist   gui=true | ||||
|     #- lt_branch=dist   gui=false | ||||
|     - lt_branch=RC_0_16 gui=true | ||||
|     - lt_branch=RC_0_16 gui=false | ||||
|     - lt_branch=RC_1_0  gui=true | ||||
|     - lt_branch=RC_1_0  gui=false | ||||
|   global: | ||||
|     - secure: "OI9CUjj4lTb0HwwIZU5PbECU3hLlAL6KC8KsbwohG8/O3j5fLcnmDsK4Ad9us5cC39sS11Jcd1kDP2qRcCuST/glVNhLkcjKkiQerOfd5nQ/qL4JYfz/1mfP5mdpz9jHKzpLUIG+TXkbSTjP6VVmsb5KPT+3pKEdRFZB+Pu9+J8=" | ||||
|     - 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: | ||||
|   except: | ||||
|     - search_encoding_windows | ||||
| @@ -33,15 +23,11 @@ notifications: | ||||
|     on_success: change | ||||
|     on_failure: change | ||||
|  | ||||
| cache: | ||||
|   ccache: true | ||||
|   directories: | ||||
|     - $HOME/hombebrew_cache | ||||
|  | ||||
| # opt-in Ubuntu Trusty | ||||
| dist: trusty | ||||
| # container-based builds | ||||
| sudo: false | ||||
| cache: | ||||
|   directories: | ||||
|     - $HOME/.ccache | ||||
|  | ||||
| addons: | ||||
|   coverity_scan: | ||||
| @@ -53,144 +39,58 @@ addons: | ||||
|     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' | ||||
|       - sourceline: 'ppa:adrozdoff/cmake' | ||||
|     packages: | ||||
|       # packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise | ||||
|       - [autoconf, automake, colormake] | ||||
|       - [cmake, ninja-build] | ||||
|       - libssl-dev | ||||
|       - [libboost-dev, libboost-system-dev] | ||||
|       - libtorrent-rasterbar-dev | ||||
|       - [qt55base, qt55svg, qt55tools] | ||||
|       - [gcc-6, g++-6] | ||||
|     # packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise | ||||
|     - autoconf | ||||
|     - automake | ||||
|     - colormake | ||||
|     - libssl-dev | ||||
|     - libboost-dev | ||||
|     - libboost-system-dev | ||||
|     - libgeoip-dev | ||||
|     - libqt4-dev | ||||
|     # 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 | ||||
|     #- libboost-filesystem-dev | ||||
|  | ||||
| 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 -a "$build_system" = "qmake" ]; then exit ; fi | ||||
|   # Only allow specific build for coverity scan, others will stop | ||||
|   - if [ "$TRAVIS_BRANCH" = "$coverity_branch" ] && ! [[ "$lt_branch" == "RC_1_0" && "$gui" == "true" ]]; then exit ; fi | ||||
|  | ||||
|   - shopt -s expand_aliases | ||||
|   - if ! [ "$TRAVIS_BRANCH" = "$coverity_branch" ]; then dpkg-query -L ccache && export PATH="/usr/lib/ccache/:$PATH" ; fi | ||||
|   - 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" | ||||
|  | ||||
|   - libt_path="$HOME/libt_install" | ||||
|   - qbt_path="$HOME/qbt_install" | ||||
|   - qbtconf="$qbtconf --prefix="$qbt_path" PKG_CONFIG_PATH="$libt_path/lib/pkgconfig":/opt/qt55/lib/pkgconfig:$PKG_CONFIG_PATH" | ||||
|   - ltconf="$ltconf --prefix="$libt_path" --with-libgeoip=system" | ||||
|   - qbtconf="$qbtconf --prefix="$qbt_path" PKG_CONFIG_PATH="$libt_path/lib/pkgconfig":$PKG_CONFIG_PATH" | ||||
|  | ||||
|   # options for specific branches | ||||
|   - if [ "$gui" = false ]; then qbtconf="$qbtconf --disable-gui" ; fi | ||||
|   - | | ||||
|     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 ; | ||||
|   # Options for specific branches | ||||
|   - if [[ "$lt_branch" == "RC_0_16" ]]; then qbtconf="$qbtconf --with-libtorrent-rasterbar0.16" ; fi | ||||
|   # Also setup a virtual display for after_success target when gui == true | ||||
|   - 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 | ||||
|  | ||||
|       # Qt 5 | ||||
|       PATH=/opt/qt55/bin:${PATH} | ||||
|  | ||||
|       if [ "$build_system" = "cmake" ]; then | ||||
|           COMPILER_VERSION=6 | ||||
|           export CXX="${CXX}-${COMPILER_VERSION}" CC="${CC}-${COMPILER_VERSION}" | ||||
|       fi | ||||
|     fi | ||||
|  | ||||
|   # print settings | ||||
|   # Print settings | ||||
|   - echo $lt_branch | ||||
|   - echo $gui | ||||
|   - echo $build_system | ||||
|   - echo $ltconf | ||||
|   - echo $qbtconf | ||||
|   - ccache -V && ccache --show-stats && ccache --zero-stats | ||||
|  | ||||
| install: | ||||
|   #- | | ||||
|     #if [ "$TRAVIS_OS_NAME" = "linux" ]; then | ||||
|       # 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 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 | ||||
|       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+git20170910.6d5625e0ea.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+git20170910.6d5625e0ea.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 | ||||
|   - if ! [ "$lt_branch" == "dist" ]; then cd "$HOME" && pwd && git clone --depth 1 https://github.com/arvidn/libtorrent.git --branch $lt_branch --single-branch ; fi | ||||
|   - if ! [ "$lt_branch" == "dist" ]; then cd libtorrent && ./autotool.sh && ./configure $ltconf && make install && cd "$TRAVIS_BUILD_DIR" ; fi | ||||
|  | ||||
| script: | ||||
|   - if [ "$TRAVIS_BRANCH" = "$coverity_branch" ]; then exit ; fi # skip usual build when running coverity scan | ||||
|   - | | ||||
|     cd "$TRAVIS_BUILD_DIR" | ||||
|     if [ "$build_system" = "cmake" ]; then | ||||
|       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 | ||||
|       ./bootstrap.sh && ./configure $qbtconf | ||||
|       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 | ||||
|       BUILD_TOOL="make" | ||||
|     fi | ||||
|   - $BUILD_TOOL && $BUILD_TOOL install | ||||
|   - if [ "$TRAVIS_BRANCH" = "$coverity_branch" ]; then exit ; fi # Skip usual build when running coverity scan | ||||
|   - ./bootstrap.sh && ./configure $qbtconf | ||||
|   - make install | ||||
|  | ||||
| after_success: | ||||
|   - 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" = "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 | ||||
|   - cd "$qbt_path/bin" | ||||
|   - export LD_PRELOAD="$libt_path/lib/libtorrent-rasterbar.so:$LD_PRELOAD" | ||||
|   - if $gui ; then ./qbittorrent --version ; else ./qbittorrent-nox --version ; fi | ||||
|  | ||||
| after_script: | ||||
|   - if [ "$use_ccache" = true ]; then ccache --show-stats ; fi | ||||
|   - ccache --show-stats | ||||
|   | ||||
| @@ -1,9 +1,8 @@ | ||||
| [main] | ||||
| host = https://www.transifex.com | ||||
|  | ||||
| [qbittorrent.qbittorrent_master] | ||||
| [qbittorrent.qbittorrent_v3_2_x] | ||||
| file_filter = src/lang/qbittorrent_<lang>.ts | ||||
| lang_map = pt: pt_PT | ||||
| source_file = src/lang/qbittorrent_en.ts | ||||
| source_lang = en | ||||
| type = QT | ||||
|   | ||||
							
								
								
									
										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----- | ||||
							
								
								
									
										21
									
								
								AUTHORS
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								AUTHORS
									
									
									
									
									
								
							| @@ -34,14 +34,6 @@ Code from other projects: | ||||
|   license: GPLv2/3 | ||||
|  | ||||
| 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 | ||||
|   copyright: Gnome Icon Theme | ||||
|   license: GPLv2 | ||||
| @@ -52,10 +44,10 @@ Images Authors: | ||||
|   license: LGPL | ||||
|   url: http://www.oxygen-icons.org | ||||
|  | ||||
| * files: src/icons/flags/*.svg | ||||
|   copyright: lipis/flag-icon-css | ||||
|   license: MIT | ||||
|   url: https://github.com/lipis/flag-icon-css/ | ||||
| * files: src/icons/flags/*.png | ||||
|   copyright: Mark James <mjames@gmail.com> | ||||
|   license: Public Domain | ||||
|   url: http://www.famfamfam.com | ||||
|  | ||||
| * files: src/icons/skin/*.png | ||||
|   files: src/menuicons/YYxYY/*.png | ||||
| @@ -87,11 +79,6 @@ Images Authors: | ||||
|  | ||||
| * 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: | ||||
| * files: src/lang/*.ts | ||||
|   | ||||
| @@ -1,56 +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}) | ||||
|  | ||||
| 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(SYSTEM_QTSINGLEAPPLICATION | ||||
|     "Use the system qtsingleapplication library or shipped one otherwise") | ||||
|  | ||||
| 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 | ||||
|                        Version 2, June 1991 | ||||
| 		    GNU GENERAL PUBLIC LICENSE | ||||
| 		       Version 2, June 1991 | ||||
|  | ||||
|  Copyright (C) 1989, 1991 Free Software Foundation, Inc. | ||||
|                        51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA | ||||
|  Everyone is permitted to copy and distribute verbatim copies | ||||
|  of this license document, but changing it is not allowed. | ||||
|  | ||||
|                             Preamble | ||||
| 			    Preamble | ||||
|  | ||||
|   The licenses for most software are designed to take away your | ||||
| 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 | ||||
| modification follow. | ||||
|  | ||||
|                     GNU GENERAL PUBLIC LICENSE | ||||
| 		    GNU GENERAL PUBLIC LICENSE | ||||
|    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | ||||
|  | ||||
|   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 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 | ||||
| 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 | ||||
| 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 | ||||
|  | ||||
|     - libtorrent-rasterbar by Arvid Norberg (>= 1.0.6) | ||||
|     - libtorrent-rasterbar by Arvid Norberg (>= 0.15.0) | ||||
|         -> http://www.libtorrent.net | ||||
|         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) | ||||
|         * Run time only dependency | ||||
| @@ -40,7 +44,7 @@ qBittorrent - A BitTorrent client in C++ / Qt4 | ||||
|  | ||||
|     - pkg-config executable | ||||
|  | ||||
|     - libtorrent-rasterbar by Arvid Norberg (>= v1.0.6) | ||||
|     - libtorrent-rasterbar by Arvid Norberg (>= v0.15.0) | ||||
|         -> http://www.libtorrent.net | ||||
|         Be careful: another library (the one used by rTorrent) uses a similar name. | ||||
|  | ||||
|   | ||||
							
								
								
									
										15
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,8 +1,7 @@ | ||||
| qBittorrent - A BitTorrent client in Qt | ||||
| ------------------------------------------ | ||||
|  | ||||
| [](https://travis-ci.org/qbittorrent/qBittorrent) | ||||
| [](https://ci.appveyor.com/project/qbittorrent/qBittorrent) | ||||
| [](https://travis-ci.org/qbittorrent/qBittorrent) | ||||
| [](https://scan.coverity.com/projects/5494) | ||||
| ******************************** | ||||
| ### Description: | ||||
| @@ -14,7 +13,7 @@ out there. qBittorrent is fast, stable and provides unicode | ||||
| support as well as many features. | ||||
|  | ||||
| This product includes GeoLite data created by MaxMind, available from | ||||
| https://www.maxmind.com/ | ||||
| http://maxmind.com/ | ||||
|  | ||||
| ### Installation: | ||||
| For installation, follow the instructions from INSTALL file, but simple: | ||||
| @@ -27,22 +26,12 @@ qbittorrent | ||||
|  | ||||
| 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: | ||||
| http://www.qbittorrent.org | ||||
|  | ||||
| or our wiki here: | ||||
| http://wiki.qbittorrent.org | ||||
|  | ||||
| Use the forum for troubleshooting before reporting bugs: | ||||
| http://forum.qbittorrent.org | ||||
|  | ||||
| Please report any bug (or feature request) to: | ||||
| http://bugs.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 beginn ##### | ||||
| 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> | ||||
|  | ||||
|  | ||||
| @@ -1,4 +1,4 @@ | ||||
| #!/bin/sh | ||||
| #!/bin/bash | ||||
|  | ||||
| aclocal -I m4 | ||||
| autoconf | ||||
|   | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -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(Qt5Core_FOUND) | ||||
|     message(STATUS "Looking for Qt5 single application library") | ||||
|     FOREACH(TOP_INCLUDE_PATH in ${Qt5Core_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_CORELIBRARY Qt5::Core LOCATION) | ||||
|     GET_FILENAME_COMPONENT(_QT5_CORELIBRARYPATH ${_QT5_CORELIBRARY} PATH) | ||||
|  | ||||
|     FIND_LIBRARY(QTSINGLEAPPLICATION_LIBRARY | ||||
|         NAMES ${QTSINGLEAPPLICATION_NAMES} | ||||
|         PATHS ${_QT5_CORELIBRARYPATH} | ||||
|     ) | ||||
| 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=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,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 | ||||
| @@ -1,21 +0,0 @@ | ||||
| if (STACKTRACE_WIN) | ||||
|     if ("${WINXXBITS}" STREQUAL "Win64") | ||||
|         add_compile_options(-Zi) | ||||
|     else ("${WINXXBITS}" STREQUAL "Win64") | ||||
|         # i686 arch requires frame pointer preservation | ||||
|         add_compile_options(-Oy-) | ||||
|     endif ("${WINXXBITS}" STREQUAL "Win64") | ||||
|     link_libraries(dbghelp.lib) | ||||
| endif (STACKTRACE_WIN) | ||||
|  | ||||
| # Enable Wide characters | ||||
| add_definitions(-DTORRENT_USE_WPATH) | ||||
|  | ||||
| if (NOT QT5) | ||||
|     # Qt4 does not detect it itself | ||||
|     add_definitions(-DQ_COMPILER_INITIALIZER_LISTS) | ||||
| endif (NOT QT5) | ||||
|  | ||||
| include(MacroConfigureMSVCRuntime) | ||||
| set(MSVC_RUNTIME "dynamic") | ||||
| configure_msvc_runtime() | ||||
| @@ -1,92 +0,0 @@ | ||||
| # Settings for compiling qBittorrent on Windows | ||||
|  | ||||
| list(APPEND CMAKE_LIBRARY_PATH "$ENV{LIB}") | ||||
|  | ||||
| # We want to link with static version of | ||||
| # libtorrent | ||||
| set(LibtorrentRasterbar_USE_STATIC_LIBS True) | ||||
| set(LibtorrentRasterbar_CUSTOM_DEFINITIONS | ||||
|     -DBOOST_ALL_NO_LIB -DBOOST_ASIO_HASH_MAP_BUCKETS=1021 | ||||
|     -DBOOST_ASIO_SEPARATE_COMPILATION | ||||
|     -DBOOST_EXCEPTION_DISABLE | ||||
|     -DBOOST_SYSTEM_STATIC_LINK=1 | ||||
|     -DTORRENT_USE_OPENSSL | ||||
|     -D__USE_W32_SOCKETS | ||||
|     -D_FILE_OFFSET_BITS=64) | ||||
|  | ||||
| add_definitions(-DUNICODE | ||||
|     -D_UNICODE | ||||
|     -DWIN32 | ||||
|     -D_WIN32 | ||||
|     -DWIN32_LEAN_AND_MEAN | ||||
|     -DNTDDI_VERSION=0x05010000 | ||||
|     -D_WIN32_WINNT=0x0501 | ||||
|     -D_WIN32_IE=0x0501 | ||||
|     -D_CRT_SECURE_NO_DEPRECATE | ||||
|     -D_SCL_SECURE_NO_DEPRECATE | ||||
|     -DNOMINMAX | ||||
| ) | ||||
| # and boost | ||||
| set(Boost_USE_STATIC_LIBS  True) | ||||
| # set(Boost_USE_STATIC_RUNTIME True) | ||||
|  | ||||
| # Here we assume that all required libraries are installed into the same prefix | ||||
| # with usual unix subdirectories (bin, lib, include) | ||||
| # 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) | ||||
| set(COMMON_INSTALL_PREFIX "c:/usr" CACHE PATH "Prefix used to install all the required libraries") | ||||
| list(APPEND CMAKE_SYSTEM_PREFIX_PATH "${COMMON_INSTALL_PREFIX}") | ||||
|  | ||||
| # 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(QT5_INSTALL_PREFIX "${COMMON_INSTALL_PREFIX}/lib/qt5" CACHE PATH "Prefix where Qt5 is installed") | ||||
|  | ||||
| # it is safe to set Qt dirs even if their files are directly in the prefix | ||||
| # Qt4 | ||||
| if(NOT QT5) | ||||
|     # for qt 4 we need qmake, Qt5 provides cmake config files | ||||
|     LIST(APPEND CMAKE_PROGRAM_PATH  "${QT4_INSTALL_PREFIX}/bin/") | ||||
| endif(NOT QT5) | ||||
|  | ||||
| # Qt5 | ||||
| set(Qt5_DIR "${QT5_INSTALL_PREFIX}/lib/cmake/Qt5") | ||||
|  | ||||
| # And now we can set specific values for the Boost and libtorrent libraries. | ||||
| # The following values are generated from the paths listed above just for an example | ||||
| # they have to be set to actual locations | ||||
|  | ||||
| # Boost | ||||
| # set(BOOST_ROOT "${COMMON_INSTALL_PREFIX}") | ||||
| # set(Boost_version_suffix "1_59") | ||||
| # if a link like boost-version/boost -> boost was created or the boost directory was renamed in the same way, | ||||
| # the following needs adjustment | ||||
| # set(BOOST_INCLUDEDIR "${COMMON_INSTALL_PREFIX}/include/boost-${Boost_version_suffix}") | ||||
| # set(BOOST_LIBRARYDIR "${COMMON_INSTALL_PREFIX}/lib/") | ||||
|  | ||||
| # libtorrent | ||||
|  | ||||
| # set(PC_LIBTORRENT_RASTERBAR_INCLUDEDIR "${COMMON_INSTALL_PREFIX}") | ||||
| # set(PC_LIBTORRENT_RASTERBAR_LIBDIR "${COMMON_INSTALL_PREFIX}/lib") | ||||
|  | ||||
| set(AUTOGEN_TARGETS_FOLDER "generated") | ||||
|  | ||||
| set(CMAKE_INSTALL_BINDIR ".") | ||||
|  | ||||
| # Test 32/64 bits | ||||
| if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") | ||||
|     message(STATUS "Target is 64 bits") | ||||
|     if (WIN32) | ||||
|         set(WINXXBITS Win64) | ||||
|     endif(WIN32) | ||||
| else("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") | ||||
|     message(STATUS "Target is 32 bits") | ||||
|     if (WIN32) | ||||
|         set(WINXXBITS Win32) | ||||
|     endif(WIN32) | ||||
| endif("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") | ||||
|  | ||||
| if (MSVC) | ||||
|     include(winconf-msvc) | ||||
| else (MSVC) | ||||
|     include(winconf-mingw) | ||||
| endif (MSVC) | ||||
| @@ -1,39 +0,0 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE QtCreatorCodeStyle> | ||||
| <!-- Written by QtCreator 3.2.82, 2014-11-26T02:08:28. --> | ||||
| <qtcreator> | ||||
|  <data> | ||||
|   <variable>CodeStyleData</variable> | ||||
|   <valuemap type="QVariantMap"> | ||||
|    <value type="bool" key="AlignAssignments">true</value> | ||||
|    <value type="bool" key="AutoSpacesForTabs">false</value> | ||||
|    <value type="bool" key="BindStarToIdentifier">false</value> | ||||
|    <value type="bool" key="BindStarToLeftSpecifier">true</value> | ||||
|    <value type="bool" key="BindStarToRightSpecifier">false</value> | ||||
|    <value type="bool" key="BindStarToTypeName">true</value> | ||||
|    <value type="bool" key="ExtraPaddingForConditionsIfConfusingAlign">false</value> | ||||
|    <value type="bool" key="IndentAccessSpecifiers">false</value> | ||||
|    <value type="bool" key="IndentBlockBody">true</value> | ||||
|    <value type="bool" key="IndentBlockBraces">false</value> | ||||
|    <value type="bool" key="IndentBlocksRelativeToSwitchLabels">false</value> | ||||
|    <value type="bool" key="IndentClassBraces">false</value> | ||||
|    <value type="bool" key="IndentControlFlowRelativeToSwitchLabels">true</value> | ||||
|    <value type="bool" key="IndentDeclarationsRelativeToAccessSpecifiers">true</value> | ||||
|    <value type="bool" key="IndentEnumBraces">false</value> | ||||
|    <value type="bool" key="IndentFunctionBody">true</value> | ||||
|    <value type="bool" key="IndentFunctionBraces">false</value> | ||||
|    <value type="bool" key="IndentNamespaceBody">true</value> | ||||
|    <value type="bool" key="IndentNamespaceBraces">false</value> | ||||
|    <value type="int" key="IndentSize">4</value> | ||||
|    <value type="bool" key="IndentStatementsRelativeToSwitchLabels">true</value> | ||||
|    <value type="bool" key="IndentSwitchLabels">false</value> | ||||
|    <value type="int" key="PaddingMode">1</value> | ||||
|    <value type="bool" key="SpacesForTabs">true</value> | ||||
|    <value type="int" key="TabSize">4</value> | ||||
|   </valuemap> | ||||
|  </data> | ||||
|  <data> | ||||
|   <variable>DisplayName</variable> | ||||
|   <value type="QString">qBittorrent</value> | ||||
|  </data> | ||||
| </qtcreator> | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user