You've already forked qBittorrent
							
							
				mirror of
				https://github.com/qbittorrent/qBittorrent
				synced 2025-10-28 14:50:53 +01:00 
			
		
		
		
	Compare commits
	
		
			1 Commits
		
	
	
		
			release-3.
			...
			release-1.
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | f3456284ed | 
							
								
								
									
										15
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -1,15 +0,0 @@ | ||||
| src/geoip/GeoIP.dat | ||||
| src/qbittorrent | ||||
| qbittorrent.pro.user* | ||||
| conf.pri | ||||
| Makefile | ||||
| *.pyc | ||||
| *.log | ||||
| # Compiled object files | ||||
| *.o | ||||
| # Generated MOC, resource and UI files | ||||
| moc_*.cpp | ||||
| qrc_*.cpp | ||||
| ui_*.h | ||||
| *.moc | ||||
| src/lang/qbittorrent_*.qm | ||||
							
								
								
									
										53
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										53
									
								
								.travis.yml
									
									
									
									
									
								
							| @@ -1,53 +0,0 @@ | ||||
| language: | ||||
|   - cpp | ||||
|  | ||||
| env: | ||||
|   # use libtorrent 0.15.10 | ||||
|   - lt_source=from_dist gui=true | ||||
|   - lt_source=from_dist gui=false | ||||
|   # use libtorrent 0.16.X from RC_0_16 svn branch | ||||
|   - lt_source=from_svn gui=true | ||||
|   - lt_source=from_svn gui=false | ||||
|  | ||||
| branches: | ||||
|   except: | ||||
|     - search_encoding_windows | ||||
|     - v2_9_x | ||||
|  | ||||
| notifications: | ||||
|   email: | ||||
|     on_success: change | ||||
|     on_failure: change  | ||||
|  | ||||
| before_install: | ||||
|   - shopt -s expand_aliases | ||||
|   - alias sudo="sudo " | ||||
|   # Using nprocs/2 sometimes may fail (gcc is killed by system), just use two threads | ||||
|   - alias make="colormake -j2 " | ||||
|  | ||||
|   # 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 | ||||
|   - ltconf=" --with-libgeoip=system" | ||||
|  | ||||
|   - echo settings | ||||
|   - echo $lt_source | ||||
|   - echo $ltconf | ||||
|   - echo $gui | ||||
|   - echo $qbtconf | ||||
|  | ||||
|   - sudo apt-get -qq update | ||||
|   # Travis can stall during heavy load if these packages are installed in one step - split the command | ||||
|   - sudo apt-get -qq install debhelper qconf colormake libssl-dev libgeoip-dev | ||||
|   - sudo apt-get -qq install libboost-dev libboost-filesystem-dev libboost-system-dev | ||||
|   - sudo apt-get -qq install libqt4-dev  | ||||
|  | ||||
| install: | ||||
|   - if [[ "$lt_source" == "from_dist" ]]; then sudo apt-get -qq install libtorrent-rasterbar-dev; fi | ||||
|   - if [[ "$lt_source" == "from_svn" ]]; then cd .. && svn co svn://svn.code.sf.net/p/libtorrent/code/branches/RC_0_16 ./libtorrent && (cd libtorrent && ./autotool.sh && ./configure $ltconf && sudo make install) && sudo ldconfig /usr/local/lib && cd $TRAVIS_BUILD_DIR ; fi | ||||
|  | ||||
| script: | ||||
|   - qt-qconf | ||||
|   - ./configure $qbtconf && sudo make install | ||||
|    | ||||
| after_success: | ||||
|   - if $gui ; then qbittorrent --version ; else qbittorrent-nox --version ; fi | ||||
							
								
								
									
										18
									
								
								.tx/config
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								.tx/config
									
									
									
									
									
								
							| @@ -1,18 +0,0 @@ | ||||
| [main] | ||||
| host = https://www.transifex.com | ||||
|  | ||||
| [qbittorrent.qbittorrent_v3_1_x] | ||||
| file_filter = src/lang/qbittorrent_<lang>.ts | ||||
| source_file = src/lang/qbittorrent_en.ts | ||||
| source_lang = en | ||||
| type = QT | ||||
| minimum_perc = 23 | ||||
| mode = developer | ||||
|  | ||||
|  | ||||
| [qbittorrent.qbittorrentdesktop_master] | ||||
| source_file = src/Icons/qBittorrent.desktop | ||||
| source_lang = en | ||||
| type = DESKTOP | ||||
| minimum_perc = 23 | ||||
| mode = developer | ||||
							
								
								
									
										88
									
								
								AUTHORS
									
									
									
									
									
								
							
							
						
						
									
										88
									
								
								AUTHORS
									
									
									
									
									
								
							| @@ -1,38 +1,16 @@ | ||||
| Current maintainer: | ||||
| * Sledgehammer999 <sledgehammer999@qbittorrent.org> | ||||
|  | ||||
| Original author: | ||||
| Author: | ||||
| * Christophe Dumez <chris@qbittorrent.org> | ||||
|  | ||||
| Contributors: | ||||
| * Vladimir Golovnev <glassez@yandex.ru> | ||||
| * Stefanos Antaris <santaris@csd.auth.gr> | ||||
| * Mohammad Dib <mdib@qbittorrent.org> | ||||
| * Mirco Chinelli <infinity89@fastwebmail.it> | ||||
| * Ishan Arora <ishan@qbittorrent.org> | ||||
| * Arnaud Demaizière <arnaud@qbittorrent.org> | ||||
| * Ishan Arora <ishan@qbittorrent.org> | ||||
| * Grigis Gaëtan <cipher16@gmail.com> | ||||
| * Christian Kandeler <zambesi@users.sourceforge.net> | ||||
| * Silvan Scherrer <silvan.scherrer@aroa.ch> | ||||
| * Nick Tiskov <daymansmail@gmail.com> | ||||
|  | ||||
| Code from other projects: | ||||
| * files src/qtsingleapp/* src/lineedit/* | ||||
|   copyright: Nokia Corporation | ||||
|   license: LGPL | ||||
|  | ||||
| * files src/ico.cpp src/ico.h | ||||
|   copyright: Malte Starostik <malte@kde.org> | ||||
|   license: LGPL | ||||
|  | ||||
| * files src/search_engine/socks.py | ||||
|   copyright: Dan Haim <negativeiq@users.sourceforge.net> | ||||
|   license: BSD | ||||
|  | ||||
| * file src/stacktrace_win.h | ||||
|   copyright: Quassel Project | ||||
|   license: GPLv2/3 | ||||
|  | ||||
| Images Authors: | ||||
| * files: src/Icons/*.png | ||||
|   copyright: Gnome Icon Theme | ||||
| @@ -45,9 +23,9 @@ Images Authors: | ||||
|   url: http://www.oxygen-icons.org | ||||
|  | ||||
| * files: src/Icons/flags/*.png | ||||
|   copyright: Mark James <mjames@gmail.com> | ||||
|   license: Public Domain | ||||
|   url: http://www.famfamfam.com | ||||
|   copyright: Open Clip Art Library | ||||
|   license: Creative Commons Public Domain Dedication | ||||
|   url: http://www.openclipart.org | ||||
|  | ||||
| * files: src/Icons/skin/*.png | ||||
|   files: src/menuicons/YYxYY/*.png | ||||
| @@ -58,10 +36,6 @@ Images Authors: | ||||
|   copyright: Greg Houston <gregory.houston@gmail.com> | ||||
|   license: MIT | ||||
|  | ||||
| * file: src/Icons/skin/qbittorrent_mono* | ||||
|   copyright: Daniel Eguren <deguren@gmail.com> | ||||
|   license: LGPL | ||||
|  | ||||
| * file: src/search_engine/engines/btjunkie.png | ||||
|   copyright: Downloaded from btjunkie.org | ||||
|  | ||||
| @@ -79,46 +53,32 @@ Images Authors: | ||||
|  | ||||
| Translations authors: | ||||
| * files: src/lang/*.ts | ||||
| * file: src/Icons/qBittorrent.desktop | ||||
|   copyright: | ||||
|   - Arabic: SDERAWI (abz8868@msn.com), sn51234 (nesseyan@gmail.com) and  Ibrahim Saed ibraheem_alex(Transifex) | ||||
|   - Armenian: Hrant Ohanyan (hrantohanyan@mail.am) | ||||
|   - Basque: Xabier Aramendi (azpidatziak@gmail.com) | ||||
|   - Belarusian: Mihas Varantsou (meequz@gmail.com) | ||||
|   - Bulgarian: Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net) | ||||
|   - Catalan: Francisco Luque Contreras (frannoe@ya.com) | ||||
|   - Brazilian: Nick Marinho (nickmarinho@gmail.com) | ||||
|   - Bulgarian: Tsvetan & Boiko Bankov (emerge_life@users.sourceforge.net) | ||||
|   - Catalan: Gekko Dam Beer (gekko04@users.sourceforge.net) | ||||
|   - Chinese (Simplified): Guo Yue (yue.guo0418@gmail.com) | ||||
|   - Chinese (Traditional): Yi-Shun Wang (dnextstep@gmail.com) and 冥王歐西里斯 s8321414(Transifex) | ||||
|   - Croatian: Oliver Mucafir (oliver.untwist@gmail.com) | ||||
|   - Czech: Jirka Vilim (web@tets.cz) and Petr Cernobila abr(Transifex) | ||||
|   - Chinese (Traditional): Yi-Shun Wang (dnextstep@gmail.com) | ||||
|   - Czech: Jirka Vilim (web@tets.cz) | ||||
|   - Danish: Mathias Nielsen (comoneo@gmail.com) | ||||
|   - Dutch: Pieter Heyvaert (pieter_heyvaert@hotmail.com) | ||||
|   - Dutch: Joost Schipper (heavyjoost@users.sourceforge.net) | ||||
|   - English: Christophe Dumez (chris@qbittorrent.org) | ||||
|   - English(Australia): Robert Readman readmanr(Transifex) | ||||
|   - English(United Kingdom): Robert Readman readmanr(Transifex) | ||||
|   - Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net), Pekka Niemi (pekka.niemi@iki.fi) and Jiri Grönroos artnay(Transifex) | ||||
|   - Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net) | ||||
|   - French: Christophe Dumez (chris@qbittorrent.org) | ||||
|   - Galician: Marcos Lans (marcoslansgarza@gmail.com) and antiparvos(Transifex) | ||||
|   - Georgian: Beqa Arabuli (arabulibeqa@yahoo.com) | ||||
|   - German: Niels Hoffmann (zentralmaschine@users.sourceforge.net) | ||||
|   - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net), Stephanos Antaris (santaris@csd.auth.gr), sledgehammer999(hammered999@gmail.com) and Γιάννης Ανθυμίδης Evropi(Transifex) | ||||
|   - Hebrew: David Deutsch (d.deffo@gmail.com) | ||||
|   - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net) | ||||
|   - Hungarian: Majoros Péter (majoros.j.p@t-online.hu) | ||||
|   - Italian: bovirus (bovirus@live.it) and Matteo Sechi (bu17714@gmail.com) | ||||
|   - Japanese: Masato Hashimoto (cabezon.hashimoto@gmail.com) | ||||
|   - Italian: Mirko Ferrari (mirkoferrari@gmail.com) and Ferraro Luciano (luciano.ferraro@gmail.com) | ||||
|   - Japanese: Nardog (nardog@e2umail.com) | ||||
|   - Korean: Jin Woo Sin (jin828sin@users.sourceforge.net) | ||||
|   - Lithuanian: Naglis Jonaitis (njonaitis@gmail.com) | ||||
|   - Norwegian: Tomaso | ||||
|   - Polish: Mariusz Fik (fisiu@opensuse.org) | ||||
|   - Portuguese: Sérgio Marques smarquespt(Transifex) | ||||
|   - Portuguese(Brazil): Nick Marinho (nickmarinho@gmail.com) | ||||
|   - Romanian: Obada Denis (obadadenis@users.sourceforge.net), Adrian Gabor Adriannho(Transifex) and Mihai Coman z0id(Transifex) | ||||
|   - Russian: Nick Khazov (m2k3d0n at users.sourceforge.net), Alexey Morsov (samurai@ricom.ru), Nick Tiskov Dayman(daymansmail (at) gmail (dot) com), Dmitry DmitryKX(Transifex) and kraleksandr kraleksandr(Transifex) | ||||
|   - Serbian: Anaximandar Milet (anaximandar at operamail.com) | ||||
|   - Norwegian: Lars-Erik Labori (hamil@users.sourceforge.net) | ||||
|   - Polish: Jarek Smieja (ajep9691@wp.pl) | ||||
|   - Portuguese: Nick Marinho (nickmarinho@gmail.com) | ||||
|   - Romanian: Obada Denis (obadadenis@users.sourceforge.net) | ||||
|   - Russian: Nick Khazov (m2k3d0n at users.sourceforge.net) | ||||
|   - Slovak:  helix84 | ||||
|   - Spanish: Francisco Luque Contreras (frannoe@ya.com), Alfredo Monclus alfrix(Transifex) and José Antonio Moray moray33(Transifex) | ||||
|   - Swedish: Daniel Nylander (po@danielnylander.se) and Emil Hammarberg Ooglogput(Transifex) | ||||
|   - Turkish: Hasan Yilmaz (iletisim@hedefturkce.com) | ||||
|   - Ukrainian: Oleh Prypin (blaxpirit@gmail.com) and zubr139(Transifex) | ||||
|   - Vietnamese: Anh Phan ppanhh(Transifex) | ||||
|   - Spanish: Vicente Raul Plata Fonseca (silverxnt@users.sourceforge.net) | ||||
|   - Swedish: Daniel Nylander (po@danielnylander.se) | ||||
|   - Turkish: Erdem Bingöl (erdem84@gmail.com) | ||||
|   - Ukrainian: Andrey Shpachenko (masterfix@users.sourceforge.net) | ||||
|   license: GPLv2 | ||||
|   | ||||
							
								
								
									
										10
									
								
								COPYING
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								COPYING
									
									
									
									
									
								
							| @@ -69,7 +69,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 | ||||
|    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | ||||
|  | ||||
| @@ -124,7 +124,7 @@ above, provided that you also meet all of these conditions: | ||||
|     License.  (Exception: if the Program itself is interactive but | ||||
|     does not normally print such an announcement, your work based on | ||||
|     the Program is not required to print an announcement.) | ||||
|  | ||||
|  | ||||
| These requirements apply to the modified work as a whole.  If | ||||
| identifiable sections of that work are not derived from the Program, | ||||
| and can be reasonably considered independent and separate works in | ||||
| @@ -182,7 +182,7 @@ access to copy from a designated place, then offering equivalent | ||||
| access to copy the source code from the same place counts as | ||||
| distribution of the source code, even though third parties are not | ||||
| compelled to copy the source along with the object code. | ||||
|  | ||||
|  | ||||
|   4. You may not copy, modify, sublicense, or distribute the Program | ||||
| except as expressly provided under this License.  Any attempt | ||||
| otherwise to copy, modify, sublicense or distribute the Program is | ||||
| @@ -239,7 +239,7 @@ impose that choice. | ||||
|  | ||||
| This section is intended to make thoroughly clear what is believed to | ||||
| be a consequence of the rest of this License. | ||||
|  | ||||
|  | ||||
|   8. If the distribution and/or use of the Program is restricted in | ||||
| certain countries either by patents or by copyrighted interfaces, the | ||||
| original copyright holder who places the Program under this License | ||||
| @@ -292,7 +292,7 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE | ||||
| POSSIBILITY OF SUCH DAMAGES. | ||||
|  | ||||
| 		     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 | ||||
|   | ||||
							
								
								
									
										65
									
								
								INSTALL
									
									
									
									
									
								
							
							
						
						
									
										65
									
								
								INSTALL
									
									
									
									
									
								
							| @@ -1,55 +1,42 @@ | ||||
| qBittorrent - A BitTorrent client in C++ / Qt4 | ||||
| ------------------------------------------ | ||||
|  | ||||
| 1) Compile and install qBittorrent with Qt4 Graphical Interface | ||||
| *** Necessary if qt3 is default on your system *** | ||||
| export QTDIR=/usr/include/qt4 | ||||
| export PATH=$QTDIR/bin:$PATH | ||||
| export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QTDIR/lib | ||||
| *** End *** | ||||
|  | ||||
|   $ ./configure | ||||
|   $ make && make install | ||||
|   $ qbittorrent | ||||
| ./configure | ||||
| make && make install | ||||
| qbittorrent | ||||
|  | ||||
|   will install and execute qBittorrent hopefully without any problems. | ||||
| will install and execute qBittorrent hopefully without any problems. | ||||
|  | ||||
|   Dependencies: | ||||
|     - Qt >= 4.6.0 (libqtgui, libqtcore, libqtnetwork, libqtxml, libqtdbus/optional) | ||||
| Dependencies: | ||||
| - Qt >= 4.3.0 (libqt-devel, libqtgui, libqtcore, libqtnetwork, libqtxml) | ||||
|   Qt >= 4.4.0 is advised | ||||
|  | ||||
|     - pkg-config executable | ||||
| - libtorrent-rasterbar by Arvid Norberg (>= v0.14.0 REQUIRED) | ||||
|     -> http://www.qbittorrent.org/download.php (advised) | ||||
|     -> http://www.libtorrent.net | ||||
|     Be careful: another library (the one used by rTorrent) uses a similar name. | ||||
|  | ||||
|     - 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: libboost-filesystem, libboost-date-time, libboost-thread, libboost-serialization | ||||
|  | ||||
|     - 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 | ||||
| - libcurl | ||||
|  | ||||
|     - python >= 2.3 (needed by search engine) | ||||
|         * Run time only dependency | ||||
| - python >= 2.3 (needed by search engine) | ||||
|  | ||||
|     - geoip-database (optional) | ||||
|         * If qBittorrent cannot find this database, it will try to resolve countries using the Internet but it will be a lot slower. | ||||
|         * Run time only dependency | ||||
| - libmagick++ (advised, not required) | ||||
|   * Needed for favicons support (RSS / Search plugins) | ||||
|  | ||||
| 2) Compile and install qBittorrent without Qt4 Graphical interface | ||||
|  | ||||
|   $ ./configure --disable-gui | ||||
|   $ make && make install | ||||
|   $ qbittorrent | ||||
|  | ||||
|   will install and execute qBittorrent hopefully without any problems. | ||||
|  | ||||
|   Dependencies: | ||||
|     - Qt >= 4.4.0 (libqt-devel, libqtcore, libqtnetwork) | ||||
|  | ||||
|     - pkg-config executable | ||||
|  | ||||
|     - 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. | ||||
|  | ||||
|     - libboost: libboost-filesystem, libboost-date-time, libboost-thread, libboost-serialization | ||||
| - libzzip (advised, not required) | ||||
|   * Needed for zip support (Search plugins) | ||||
|  | ||||
| NOTE FOR NON-KDE USERS: | ||||
| - qt4-qtconfig package is advised when using other systems than KDE. | ||||
|   You can also change qBittorrent style to Cleanlooks (GNOME like) | ||||
|  | ||||
| DOCUMENTATION: | ||||
| Please note that there is a documentation with a "compiling howto" at http://wiki.qbittorrent.org. | ||||
|   | ||||
							
								
								
									
										34
									
								
								README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | ||||
| qBittorrent - A BitTorrent client in Qt4 | ||||
| ------------------------------------------ | ||||
|  | ||||
| Description: | ||||
| ******************************** | ||||
| qBittorrent is a bittorrent client programmed in C++ / Qt4 that uses | ||||
| libtorrent (sometimes called rblibtorrent) by Arvid Norberg. | ||||
|  | ||||
| It aims to be a good alternative to all other bittorrent clients | ||||
| out there. qBittorrent is fast, stable and provides unicode | ||||
| support as well as many features. | ||||
|  | ||||
| Installation: | ||||
| ******************************** | ||||
| For installation, follow the instructions from INSTALL file, but simple: | ||||
|  | ||||
| ./configure | ||||
| make && make install | ||||
| qbittorrent | ||||
|  | ||||
| will install and execute qBittorrent hopefully without any problem. | ||||
|  | ||||
| For more information please visit: | ||||
| http://www.qbittorrent.org | ||||
|  | ||||
| Please report any bug (or feature request) to: | ||||
| http://bugs.qbittorrent.org | ||||
|  | ||||
| You can also meet me (chris-qBT) on IRC: | ||||
| #qbittorrent on irc.freenode.net | ||||
|  | ||||
| ------------------------------------------ | ||||
| Christophe Dumez <chris@qbittorrent.org> | ||||
|  | ||||
							
								
								
									
										42
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,42 +0,0 @@ | ||||
| qBittorrent - A BitTorrent client in Qt | ||||
| ------------------------------------------ | ||||
|  | ||||
| [](https://travis-ci.org/qbittorrent/qBittorrent) | ||||
| ******************************** | ||||
| ###Description: | ||||
| qBittorrent is a bittorrent client programmed in C++ / Qt that uses | ||||
| libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg. | ||||
|  | ||||
| It aims to be a good alternative to all other bittorrent clients | ||||
| 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 | ||||
| http://maxmind.com/ | ||||
|  | ||||
| ### Installation: | ||||
| For installation, follow the instructions from INSTALL file, but simple: | ||||
|  | ||||
| ``` | ||||
| ./configure | ||||
| make && make install | ||||
| qbittorrent | ||||
| ``` | ||||
|  | ||||
| will install and execute qBittorrent hopefully without any problem. | ||||
|  | ||||
| For more information please visit: | ||||
| http://www.qbittorrent.org | ||||
|  | ||||
| or our wiki here: | ||||
| http://wiki.qbittorrent.org | ||||
|  | ||||
| Please report any bug (or feature request) to: | ||||
| http://bugs.qbittorrent.org | ||||
|  | ||||
| You can also meet me (sledgehammer_999) on IRC: | ||||
| `#qbittorrent on irc.freenode.net` | ||||
|  | ||||
| ------------------------------------------ | ||||
| sledgehammer999 <sledgehammer999@qbittorrent.org> | ||||
|  | ||||
							
								
								
									
										74
									
								
								README.os2
									
									
									
									
									
								
							
							
						
						
									
										74
									
								
								README.os2
									
									
									
									
									
								
							| @@ -1,74 +0,0 @@ | ||||
| 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,44 +0,0 @@ | ||||
| .\" This manpage has been automatically generated by docbook2man | ||||
| .\" from a DocBook document.  This tool can be found at: | ||||
| .\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>. | ||||
| .TH "QBITTORRENT\-NOX" "1" "January 16th 2010" "Command line Bittorrent client written in C++ / Qt4" "" | ||||
|  | ||||
| .SH "NAME" | ||||
| qBittorrent\-nox \- a command line Bittorrent client written in C++ / Qt4 | ||||
|  | ||||
| .SH "SYNOPSIS" | ||||
|  | ||||
| \fBqbittorrent\-nox\fR [\-\-d|\-\-daemon] [\-\-webui-port=x] [TORRENT_FILE | URL]... | ||||
|  | ||||
| \fBqbittorrent\-nox\fR \-\-help | ||||
|  | ||||
| \fBqbittorrent\-nox\fR \-\-version | ||||
|  | ||||
| .PP | ||||
| .SH "DESCRIPTION" | ||||
|  | ||||
| \fBqBittorrent-nox\fR is an advanced command-line Bittorrent client written in C++ / Qt4, | ||||
| using the \fBlibtorrent-rasterbar\fR library by Arvid Norberg. qBittorrent\-nox aims | ||||
| to be a good alternative to other command line bittorrent clients and provides features similar to popular graphical clients. | ||||
|  | ||||
| qBittorrent\-nox is fast, stable, light and it supports unicode.  | ||||
| It also comes with UPnP port forwarding / NAT-PMP, encryption (Vuze compatible),  | ||||
| FAST extension (mainline) and PeX support (utorrent compatible). | ||||
|  | ||||
| qBittorrent\-nox is meant to be controlled via its feature-rich Web UI which is accessible as a default on http://localhost:8080. The Web UI access is secured and the default account user name is "admin" with "adminadmin" as a password. | ||||
|  | ||||
| .SH "OPTIONS" | ||||
|  | ||||
| \fB--help\fR Prints the command line options. | ||||
|  | ||||
| \fB--version\fR Prints qbittorrent program version number. | ||||
|  | ||||
| \fB--webui-port=x\fR Changes Web UI port to x (default: 8080). | ||||
|  | ||||
| .SH "BUGS" | ||||
|  | ||||
| If you find a bug, please report it at http://bugs.qbittorrent.org | ||||
|  | ||||
| .SH "AUTHOR" | ||||
|  | ||||
| Christophe Dumez <chris@qbittorrent.org> | ||||
| @@ -1,42 +1,28 @@ | ||||
| .\" This manpage has been automatically generated by docbook2man | ||||
| .\" from a DocBook document.  This tool can be found at: | ||||
| .\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>. | ||||
| .TH "QBITTORRENT" "1" "January 16th 2010" "Bittorrent client written in C++ / Qt4" "" | ||||
| .TH "QBITTORRENT" "1" "September 1st 2007" "Bittorrent client written in C++ / Qt4" "" | ||||
|  | ||||
| .SH "NAME" | ||||
| .SH NAME | ||||
| qBittorrent \- a Bittorrent client written in C++ / Qt4 | ||||
| .SH SYNOPSIS | ||||
|  | ||||
| .SH "SYNOPSIS" | ||||
|  | ||||
| \fBqbittorrent\fR [\-\-no-splash] [\-\-webui-port=x] [TORRENT_FILE | URL]... | ||||
| \fBqbittorrent\fR [FILE | URL] [FILE | URL...] | ||||
|  | ||||
| \fBqbittorrent\fR \-\-help | ||||
|  | ||||
| \fBqbittorrent\fR \-\-version | ||||
|  | ||||
| .PP | ||||
| .SH "DESCRIPTION" | ||||
|  | ||||
| \fBqBittorrent\fR is an advanced Bittorrent client written in C++ / Qt4, | ||||
| using the \fBlibtorrent-rasterbar\fR library by Arvid Norberg. qBittorrent is similar to uTorrent. qBittorrent | ||||
| using the \fBrblibtorrent\fR library by Arvid Norberg. qBittorrent aims | ||||
| to be a good alternative to all other bittorrent clients out there. qBittorrent | ||||
| is fast, stable, light, it supports unicode and it provides a good integrated search engine. | ||||
| It also comes with UPnP port forwarding / NAT-PMP, encryption (Vuze compatible),  | ||||
| FAST extension (mainline) and PeX support (utorrent compatible). | ||||
|  | ||||
| .SH "OPTIONS" | ||||
|  | ||||
| \fB--help\fR Prints the command line options. | ||||
|  | ||||
| \fB--version\fR Prints qbittorrent program version number. | ||||
|  | ||||
| \fB--no-splash\fR Disables splash screen on startup. | ||||
|  | ||||
| \fB--webui-port=x\fR Changes Web UI port to x (default: 8080). | ||||
|  | ||||
| .SH "BUGS" | ||||
|  | ||||
| If you find a bug, please report it at http://bugs.qbittorrent.org | ||||
| It also comes with UPnP port forwarding / NAT-PMP, encryption (Azureus compatible), FAST extension (mainline) and PeX support (utorrent compatible). | ||||
|  | ||||
| Please report any problem to http://bugs.qbittorrent.org | ||||
| .PP | ||||
| .SH "AUTHOR" | ||||
|  | ||||
| Christophe Dumez <chris@qbittorrent.org> | ||||
|   | ||||
							
								
								
									
										187
									
								
								install.os2
									
									
									
									
									
								
							
							
						
						
									
										187
									
								
								install.os2
									
									
									
									
									
								
							| @@ -1,187 +0,0 @@ | ||||
| QBittorrent installation | ||||
|  | ||||
|  | ||||
|  | ||||
| 0. CONTENTS OF THIS FILE | ||||
| ======================== | ||||
|  | ||||
| 1. INTRODUCTION | ||||
|  | ||||
| 2. REQUIREMENTS | ||||
|  | ||||
| 3. INSTALLATION | ||||
|  | ||||
| 4. BUGREPORTS | ||||
|  | ||||
| 5. CREDITS | ||||
|  | ||||
| 6. SUPPORT AND DONATIONS | ||||
|  | ||||
| 7. HISTORY | ||||
|  | ||||
|  | ||||
| 1. INTRODUCTION | ||||
| =============== | ||||
|  | ||||
| Welcome to QBittorrent port for OS/2 and eComStation. | ||||
|  | ||||
|  | ||||
| 2. REQUIREMENTS | ||||
| =============== | ||||
|  | ||||
| The following requirements can be installed either by rpm or by zip files. | ||||
|  | ||||
| RPM Installation: | ||||
|  | ||||
| klibc | ||||
| ----- | ||||
|  | ||||
|   1. yum install libc | ||||
|  | ||||
| openssl 1.0 | ||||
| ----------- | ||||
|  | ||||
|   1. yum install openssl | ||||
|  | ||||
| pthread | ||||
| ------- | ||||
|  | ||||
|   1. yum install pthread | ||||
|  | ||||
| GCC4Core | ||||
| -------- | ||||
|  | ||||
|   1. yum install libgcc | ||||
|   2. yum install gcc-stack-protector | ||||
|   3. yum install gcc-stdc++-shared-library | ||||
|   4. yum install gcc-supc++-shared-library | ||||
|  | ||||
| Qt4 dll | ||||
| ------- | ||||
|  | ||||
|   1. yum install libqt4 | ||||
|  | ||||
|  | ||||
| ZIP Installation: | ||||
|  | ||||
| klibc | ||||
| ----- | ||||
|  | ||||
|   1. Download klibc 0.6.5 or better (see http://svn.netlabs.org/libc for more information) | ||||
|   2. Install the files to your libpath eg x:\ecs\dll | ||||
|  | ||||
| openssl 1.0 | ||||
| ----------- | ||||
|  | ||||
|   1. Download the zip file from http://rpm.netlabs.org/release/00/zip | ||||
|   2. Install the files to your libpath eg. x:\ecs\dll | ||||
|  | ||||
| pthread | ||||
| ------- | ||||
|  | ||||
|   1. Download pthread 2012-03-13 or better from http://rpm.netlabs.org/release/00/zip | ||||
|   2. Install the files to your libpath eg. x:\ecs\dll | ||||
|  | ||||
| GCC4Core | ||||
| -------- | ||||
|  | ||||
|   1. Download GCC4Core 1.2.1 or better from http://ftp.netlabs.org/pub/gcc | ||||
|   2. Install the files to your libpath eg. x:\ecs\dll | ||||
|  | ||||
| Qt4 dll | ||||
| ------- | ||||
|  | ||||
|   1. Download Qt4 4.7.3 or better (see http://svn.netlabs.org/qt4 for more information) | ||||
|   2. Install the files according to the readme | ||||
|  | ||||
|  | ||||
| 3. INSTALLATION | ||||
| =============== | ||||
|            | ||||
| To install QBittorrent, do the following: | ||||
|  | ||||
|   1. Create a directory for QBittorrent. | ||||
|   2. Extract the QBittorrent package to the new directory. | ||||
|   3. Create a WPS object for QBittorrent.exe. | ||||
|   4. Start QBittorrent | ||||
|   5. Happy torrenting | ||||
|    | ||||
|  | ||||
| 4. BUGREPORTS | ||||
| ============= | ||||
|  | ||||
| Please create bugreports at http://svn.netlabs.org/qtapps | ||||
| Only bug reports with a reproducable bug are accepted. :-) | ||||
|  | ||||
|  | ||||
| 5. CREDITS | ||||
| ========== | ||||
|  | ||||
| The port was done by: | ||||
|  | ||||
| Silvan Scherrer aka _diver | ||||
|  | ||||
| Thanks go to: | ||||
|  | ||||
|   * Dmitry A. Kuminov | ||||
|  | ||||
| They either helped me when I had some nasty questions or did some testing for | ||||
| me. | ||||
|  | ||||
|  | ||||
| 6. SUPPORT AND DONATIONS | ||||
| ======================== | ||||
|  | ||||
| QBittorrent port is based on volunteer work. If you would like to support further | ||||
| development, you can do so in one of the following ways: | ||||
|  | ||||
|  | ||||
|   * Donate to the Qt4 project: see qt.netlabs.org for more information | ||||
|  | ||||
|   * Contribute to the project: Besides actual development, this also includes | ||||
|     maintaining the documentation and the project web site as well as help | ||||
|     for users. | ||||
|  | ||||
|  | ||||
| 7. HISTORY | ||||
| ========== | ||||
|  | ||||
| 2012-09-19 | ||||
|  | ||||
|   * updated to 3.0.4 code level of QBittorrent | ||||
|   * updated libtorrent to 0.16.3 level | ||||
|  | ||||
| 2012-09-06 | ||||
|  | ||||
|   * updated to 3.0.2 code level of QBittorrent | ||||
|  | ||||
| 2012-05-14 | ||||
|  | ||||
|   * updated to 2.9.8 code level of QBittorrent | ||||
|  | ||||
| 2012-03-15 | ||||
|  | ||||
|   * updated to 2.9.5 code level of QBittorrent | ||||
|  | ||||
| 2011-09-26 | ||||
|  | ||||
|   * updated to 2.8.5 code level of QBittorrent | ||||
|   * updated to Qt 4.7.3 | ||||
|  | ||||
| 2011-06-20 | ||||
|  | ||||
|   * updated to 2.7.3 code level of QBittorrent | ||||
|   * updated libtorrent to 0.15.6 level | ||||
|  | ||||
| 2010-12-23 | ||||
|  | ||||
|   * updated to 2.5.2 code level of QBittorrent | ||||
|  | ||||
| 2010-11-22 | ||||
|  | ||||
|   * updated to 2.4.11 code level of QBittorrent | ||||
|  | ||||
| 2010-xx-xx | ||||
|  | ||||
|   * initial port | ||||
|  | ||||
							
								
								
									
										67
									
								
								macxconf.pri
									
									
									
									
									
								
							
							
						
						
									
										67
									
								
								macxconf.pri
									
									
									
									
									
								
							| @@ -1,67 +0,0 @@ | ||||
| PREFIX = /usr/local | ||||
| BINDIR = /usr/local/bin | ||||
| DATADIR = /usr/local/share | ||||
|  | ||||
| # Use pkg-config to get all necessary libtorrent DEFINES | ||||
| CONFIG += link_pkgconfig | ||||
| PKGCONFIG += libtorrent-rasterbar | ||||
| DEFINES += BOOST_ASIO_DYN_LINK | ||||
|  | ||||
| # Special include/libs paths (macports) | ||||
| INCLUDEPATH += /usr/include/openssl /usr/include /opt/local/include/boost /opt/local/include | ||||
| LIBS += -L/opt/local/lib | ||||
|  | ||||
| # OpenSSL lib | ||||
| LIBS += -lssl -lcrypto | ||||
| # Boost system lib | ||||
| LIBS += -lboost_system-mt | ||||
| # Boost filesystem lib (Not needed for libtorrent >= 0.16.0) | ||||
| #LIBS += -lboost_filesystem-mt | ||||
| # Carbon | ||||
| LIBS += -framework Carbon -framework IOKit | ||||
| # Zlib | ||||
| LIBS += -lz | ||||
|  | ||||
| document_icon.path = Contents/Resources | ||||
| document_icon.files = mac/qBitTorrentDocument.icns | ||||
| QMAKE_BUNDLE_DATA += document_icon | ||||
|  | ||||
| qt_conf.path = Contents/Resources | ||||
| qt_conf.files = mac/qt.conf | ||||
| QMAKE_BUNDLE_DATA += qt_conf | ||||
|  | ||||
| qt_translations.path = Contents/MacOS/translations | ||||
| qt_translations.files = qt-translations/qt_ar.qm \ | ||||
|                         qt-translations/qt_bg.qm \ | ||||
|                         qt-translations/qt_ca.qm \ | ||||
|                         qt-translations/qt_cs.qm \ | ||||
|                         qt-translations/qt_da.qm \ | ||||
|                         qt-translations/qt_de.qm \ | ||||
|                         qt-translations/qt_es.qm \ | ||||
|                         qt-translations/qt_fi.qm \ | ||||
|                         qt-translations/qt_fr.qm \ | ||||
|                         qt-translations/qt_gl.qm \ | ||||
|                         qt-translations/qt_he.qm \ | ||||
|                         qt-translations/qt_hu.qm \ | ||||
|                         qt-translations/qt_it.qm \ | ||||
|                         qt-translations/qt_ja.qm \ | ||||
|                         qt-translations/qt_ko.qm \ | ||||
|                         qt-translations/qt_lt.qm \ | ||||
|                         qt-translations/qt_nl.qm \ | ||||
|                         qt-translations/qt_pl.qm \ | ||||
|                         qt-translations/qt_pt.qm \ | ||||
|                         qt-translations/qt_pt_BR.qm \ | ||||
|                         qt-translations/qt_ru.qm \ | ||||
|                         qt-translations/qt_sk.qm \ | ||||
|                         qt-translations/qt_sv.qm \ | ||||
|                         qt-translations/qt_tr.qm \ | ||||
|                         qt-translations/qt_uk.qm \ | ||||
|                         qt-translations/qt_zh_CN.qm \ | ||||
|                         qt-translations/qt_zh_TW.qm | ||||
| QMAKE_BUNDLE_DATA += qt_translations | ||||
|  | ||||
| ICON = mac/qbittorrent_mac.icns | ||||
| QMAKE_INFO_PLIST = mac/Info.plist | ||||
|  | ||||
| DEFINES += WITH_GEOIP_EMBEDDED | ||||
| message("On Mac OS X, GeoIP database must be embedded.") | ||||
							
								
								
									
										19
									
								
								os2conf.pri
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								os2conf.pri
									
									
									
									
									
								
							| @@ -1,19 +0,0 @@ | ||||
| exists(conf.pri) { | ||||
|     # to the conf.pri goes all system dependent stuff | ||||
|     include(conf.pri) | ||||
| } | ||||
|  | ||||
| LIBS += -ltorrent-rasterbar \ | ||||
|         -lboost_thread \ | ||||
|         -lboost_system \ | ||||
|         -lboost_filesystem \ | ||||
|         -lssl -lcrypto -lidn -lpthread -lz | ||||
|  | ||||
| RC_FILE = qbittorrent_os2.rc | ||||
|  | ||||
| # LIBTORRENT DEFINES | ||||
| DEFINES += WITH_SHIPPED_GEOIP_H | ||||
| DEFINES += BOOST_ASIO_DYN_LINK | ||||
|  | ||||
| DEFINES += WITH_GEOIP_EMBEDDED | ||||
| message("On eCS(OS/2), GeoIP database must be embedded.") | ||||
							
								
								
									
										199
									
								
								qBittorrent.kdevelop
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										199
									
								
								qBittorrent.kdevelop
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,199 @@ | ||||
| <?xml version = '1.0'?> | ||||
| <kdevelop> | ||||
|   <general> | ||||
|     <author>Christophe Dumez</author> | ||||
|     <email>chris@qbittorrent.org</email> | ||||
|     <version>1.0.0</version> | ||||
|     <projectmanagement>KDevTrollProject</projectmanagement> | ||||
|     <primarylanguage>C++</primarylanguage> | ||||
|     <keywords> | ||||
|       <keyword>Qt</keyword> | ||||
|     </keywords> | ||||
|     <projectname>qBittorrent</projectname> | ||||
|     <ignoreparts/> | ||||
|     <projectdirectory>.</projectdirectory> | ||||
|     <absoluteprojectpath>false</absoluteprojectpath> | ||||
|     <description/> | ||||
|     <defaultencoding/> | ||||
|     <versioncontrol>kdevsubversion</versioncontrol> | ||||
|   </general> | ||||
|   <kdevfileview> | ||||
|     <groups> | ||||
|       <group pattern="*.cpp;*.cxx;*.h" name="Sources" /> | ||||
|       <group pattern="*.ui" name="User Interface" /> | ||||
|       <group pattern="*.png" name="Icons" /> | ||||
|       <group pattern="*" name="Others" /> | ||||
|       <hidenonprojectfiles>false</hidenonprojectfiles> | ||||
|       <hidenonlocation>false</hidenonlocation> | ||||
|     </groups> | ||||
|     <tree> | ||||
|       <hidepatterns>*.o,*.lo,CVS</hidepatterns> | ||||
|       <hidenonprojectfiles>false</hidenonprojectfiles> | ||||
|       <showvcsfields>false</showvcsfields> | ||||
|     </tree> | ||||
|   </kdevfileview> | ||||
|   <kdevdoctreeview> | ||||
|     <ignoretocs> | ||||
|       <toc>bash</toc> | ||||
|       <toc>bash_bugs</toc> | ||||
|       <toc>clanlib</toc> | ||||
|       <toc>w3c-dom-level2-html</toc> | ||||
|       <toc>fortran_bugs_gcc</toc> | ||||
|       <toc>gnome1</toc> | ||||
|       <toc>gnustep</toc> | ||||
|       <toc>gtk</toc> | ||||
|       <toc>gtk_bugs</toc> | ||||
|       <toc>haskell</toc> | ||||
|       <toc>haskell_bugs_ghc</toc> | ||||
|       <toc>java_bugs_gcc</toc> | ||||
|       <toc>java_bugs_sun</toc> | ||||
|       <toc>kde2book</toc> | ||||
|       <toc>opengl</toc> | ||||
|       <toc>pascal_bugs_fp</toc> | ||||
|       <toc>php</toc> | ||||
|       <toc>php_bugs</toc> | ||||
|       <toc>perl</toc> | ||||
|       <toc>perl_bugs</toc> | ||||
|       <toc>python</toc> | ||||
|       <toc>python_bugs</toc> | ||||
|       <toc>qt-kdev3</toc> | ||||
|       <toc>ruby</toc> | ||||
|       <toc>ruby_bugs</toc> | ||||
|       <toc>sdl</toc> | ||||
|       <toc>stl</toc> | ||||
|       <toc>w3c-svg</toc> | ||||
|       <toc>sw</toc> | ||||
|       <toc>w3c-uaag10</toc> | ||||
|       <toc>wxwidgets_bugs</toc> | ||||
|     </ignoretocs> | ||||
|     <ignoredoxygen> | ||||
|       <toc>KDE Libraries (Doxygen)</toc> | ||||
|     </ignoredoxygen> | ||||
|   </kdevdoctreeview> | ||||
|   <kdevdebugger> | ||||
|     <general> | ||||
|       <dbgshell/> | ||||
|       <gdbpath/> | ||||
|       <configGdbScript/> | ||||
|       <runShellScript/> | ||||
|       <runGdbScript/> | ||||
|       <breakonloadinglibs>true</breakonloadinglibs> | ||||
|       <separatetty>false</separatetty> | ||||
|       <floatingtoolbar>false</floatingtoolbar> | ||||
|     </general> | ||||
|     <display> | ||||
|       <staticmembers>false</staticmembers> | ||||
|       <demanglenames>true</demanglenames> | ||||
|       <outputradix>10</outputradix> | ||||
|     </display> | ||||
|   </kdevdebugger> | ||||
|   <kdevcppsupport> | ||||
|     <qt> | ||||
|       <version>4</version> | ||||
|       <used>true</used> | ||||
|       <includestyle>4</includestyle> | ||||
|       <designerintegration>ExternalDesigner</designerintegration> | ||||
|       <root>/usr/lib/qt4</root> | ||||
|       <qmake>/usr/bin/qmake</qmake> | ||||
|       <designer>/usr/bin/designer</designer> | ||||
|       <designerpluginpaths/> | ||||
|     </qt> | ||||
|     <references> | ||||
|       <pcs>automatic_%2Fhome%2Fishanarora%2Fprojects%2Fqbittorrent</pcs> | ||||
|     </references> | ||||
|     <codecompletion> | ||||
|       <automaticCodeCompletion>true</automaticCodeCompletion> | ||||
|       <automaticArgumentsHint>true</automaticArgumentsHint> | ||||
|       <automaticHeaderCompletion>true</automaticHeaderCompletion> | ||||
|       <codeCompletionDelay>250</codeCompletionDelay> | ||||
|       <argumentsHintDelay>400</argumentsHintDelay> | ||||
|       <headerCompletionDelay>250</headerCompletionDelay> | ||||
|       <showOnlyAccessibleItems>false</showOnlyAccessibleItems> | ||||
|       <completionBoxItemOrder>0</completionBoxItemOrder> | ||||
|       <howEvaluationContextMenu>true</howEvaluationContextMenu> | ||||
|       <showCommentWithArgumentHint>true</showCommentWithArgumentHint> | ||||
|       <statusBarTypeEvaluation>false</statusBarTypeEvaluation> | ||||
|       <namespaceAliases>std=_GLIBCXX_STD;__gnu_cxx=std</namespaceAliases> | ||||
|       <processPrimaryTypes>true</processPrimaryTypes> | ||||
|       <processFunctionArguments>true</processFunctionArguments> | ||||
|       <preProcessAllHeaders>true</preProcessAllHeaders> | ||||
|       <parseMissingHeadersExperimental>true</parseMissingHeadersExperimental> | ||||
|       <resolveIncludePathsUsingMakeExperimental>true</resolveIncludePathsUsingMakeExperimental> | ||||
|       <alwaysParseInBackground>true</alwaysParseInBackground> | ||||
|       <usePermanentCaching>true</usePermanentCaching> | ||||
|       <alwaysIncludeNamespaces>false</alwaysIncludeNamespaces> | ||||
|       <includePaths>.;</includePaths> | ||||
|     </codecompletion> | ||||
|     <creategettersetter> | ||||
|       <prefixGet>get</prefixGet> | ||||
|       <prefixSet>set</prefixSet> | ||||
|       <prefixVariable>m_,_</prefixVariable> | ||||
|       <parameterName>theValue</parameterName> | ||||
|       <inlineGet>true</inlineGet> | ||||
|       <inlineSet>true</inlineSet> | ||||
|     </creategettersetter> | ||||
|     <splitheadersource> | ||||
|       <enabled>false</enabled> | ||||
|       <synchronize>true</synchronize> | ||||
|       <orientation>Vertical</orientation> | ||||
|     </splitheadersource> | ||||
|   </kdevcppsupport> | ||||
|   <kdevfilecreate> | ||||
|     <filetypes/> | ||||
|     <useglobaltypes> | ||||
|       <type ext="ui" /> | ||||
|       <type ext="cpp" /> | ||||
|       <type ext="h" /> | ||||
|     </useglobaltypes> | ||||
|   </kdevfilecreate> | ||||
|   <kdevtrollproject> | ||||
|     <general> | ||||
|       <activedir>src</activedir> | ||||
|     </general> | ||||
|     <run> | ||||
|       <directoryradio>executable</directoryradio> | ||||
|       <mainprogram>/home/ishanarora/projects/qbittorrent/src/qbittorrent</mainprogram> | ||||
|       <programargs/> | ||||
|       <globaldebugarguments/> | ||||
|       <globalcwd>/home/ishanarora/projects/qbittorrent</globalcwd> | ||||
|       <useglobalprogram>true</useglobalprogram> | ||||
|       <terminal>false</terminal> | ||||
|       <autocompile>true</autocompile> | ||||
|       <autoinstall>false</autoinstall> | ||||
|       <autokdesu>false</autokdesu> | ||||
|       <envvars/> | ||||
|     </run> | ||||
|     <make> | ||||
|       <abortonerror>true</abortonerror> | ||||
|       <runmultiplejobs>false</runmultiplejobs> | ||||
|       <numberofjobs>1</numberofjobs> | ||||
|       <dontact>false</dontact> | ||||
|       <makebin/> | ||||
|       <prio>0</prio> | ||||
|       <envvars/> | ||||
|     </make> | ||||
|     <qmake> | ||||
|       <savebehaviour>2</savebehaviour> | ||||
|       <replacePaths>false</replacePaths> | ||||
|       <disableDefaultOpts>true</disableDefaultOpts> | ||||
|     </qmake> | ||||
|   </kdevtrollproject> | ||||
|   <cppsupportpart> | ||||
|     <filetemplates> | ||||
|       <interfacesuffix>.h</interfacesuffix> | ||||
|       <implementationsuffix>.cpp</implementationsuffix> | ||||
|     </filetemplates> | ||||
|   </cppsupportpart> | ||||
|   <ctagspart> | ||||
|     <customArguments/> | ||||
|     <customTagfilePath>/home/ishanarora/projects/qbittorrent/tags</customTagfilePath> | ||||
|     <activeTagsFiles/> | ||||
|   </ctagspart> | ||||
|   <kdevdocumentation> | ||||
|     <projectdoc> | ||||
|       <docsystem/> | ||||
|       <docurl/> | ||||
|       <usermanualurl/> | ||||
|     </projectdoc> | ||||
|   </kdevdocumentation> | ||||
| </kdevelop> | ||||
| @@ -1,19 +1,6 @@ | ||||
| TEMPLATE = subdirs | ||||
|  | ||||
| include(conf.pri) | ||||
|  | ||||
| SUBDIRS += src | ||||
|  | ||||
| include(version.pri) | ||||
| include(qm_gen.pri) | ||||
|  | ||||
| # Dist | ||||
| dist.commands += rm -fR ../$${PROJECT_NAME}-$${PROJECT_VERSION}/ && | ||||
| dist.commands += git clone . ../$${PROJECT_NAME}-$${PROJECT_VERSION} && | ||||
| dist.commands += rm -fR ../$${PROJECT_NAME}-$${PROJECT_VERSION}/.git && | ||||
| dist.commands += rm -f ../$${PROJECT_NAME}-$${PROJECT_VERSION}/.gitignore && | ||||
| dist.commands += cd .. && | ||||
| dist.commands += tar czf $${PROJECT_NAME}-$${PROJECT_VERSION}.tar.gz $${PROJECT_NAME}-$${PROJECT_VERSION} && | ||||
| dist.commands += tar cf $${PROJECT_NAME}-$${PROJECT_VERSION}.tar $${PROJECT_NAME}-$${PROJECT_VERSION} && | ||||
| dist.commands += xz -f $${PROJECT_NAME}-$${PROJECT_VERSION}.tar && | ||||
| dist.commands += rm -fR $${PROJECT_NAME}-$${PROJECT_VERSION} | ||||
|  | ||||
| QMAKE_EXTRA_TARGETS += dist | ||||
|   | ||||
| @@ -6,20 +6,14 @@ | ||||
|   <dep type='qt4'> | ||||
|     <required/> | ||||
|   </dep> | ||||
|   <dep type='qt-dbus'> | ||||
|   </dep> | ||||
|   <dep type='pkg-config'> | ||||
|     <required/> | ||||
|   </dep> | ||||
|   <dep type='libtorrent-rasterbar'> | ||||
|     <required/> | ||||
|   </dep> | ||||
|   <dep type='libboost'> | ||||
|     <required/> | ||||
|   </dep> | ||||
|   <dep type='geoip-database'> | ||||
|   </dep> | ||||
|   <dep type='qtsingleapplication'> | ||||
|   <dep type='libcurl'> | ||||
|     <required/> | ||||
|   </dep> | ||||
|   <dep type='libzzip'/> | ||||
| </qconf> | ||||
|   | ||||
| @@ -1,37 +0,0 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: geoip-database | ||||
| arg: with-geoip-database-embedded, Geoip Database will be embedded in qBittorrent executable (please follow instructions in src/geoip/README) | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| // see  Conf::findPkgConfig | ||||
| class qc_geoip_database : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_geoip_database(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "GeoIP Database (optional)"; } | ||||
| 	QString shortname() const { return "GeoIP Database"; } | ||||
|         QString checkString() const { | ||||
|                 if(!conf->getenv("QC_DISABLE_geoip_database").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||
|                         return ""; | ||||
|                 return ConfObj::checkString(); | ||||
|         } | ||||
| 	bool exec() { | ||||
| 	if(!conf->getenv("QC_DISABLE_geoip_database").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||
| 		return false; | ||||
| 	} | ||||
| #ifdef Q_WS_X11 | ||||
| 		if(!conf->getenv("QC_WITH_GEOIP_DATABASE_EMBEDDED").isEmpty()) { | ||||
| #endif | ||||
| 			conf->addDefine("WITH_GEOIP_EMBEDDED"); | ||||
|                         printf(" embedded and"); | ||||
| 			return true; | ||||
| #ifdef Q_WS_X11 | ||||
| 		} | ||||
|                 if(QFile::exists("/usr/share/GeoIP/GeoIP.dat") || QFile::exists("/usr/local/share/GeoIP/GeoIP.dat") || QFile::exists("/var/lib/GeoIP/GeoIP.dat")) | ||||
| 			return true; | ||||
|                 printf("\nWarning: GeoIP database was not found at /usr/share/GeoIP/GeoIP.dat or /var/lib/GeoIP/GeoIP.dat\nCountry resolution will be slow."); | ||||
| 		return false; | ||||
| #endif | ||||
| 	} | ||||
| }; | ||||
							
								
								
									
										133
									
								
								qcm/libboost.qcm
									
									
									
									
									
								
							
							
						
						
									
										133
									
								
								qcm/libboost.qcm
									
									
									
									
									
								
							| @@ -2,96 +2,55 @@ | ||||
| -----BEGIN QCMOD----- | ||||
| name: libboost | ||||
| arg: with-libboost-inc=[path], Path to libboost include files | ||||
| arg: with-libboost-lib=[path], Path to libboost library files | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| #include <boost/version.hpp> | ||||
| #include <libtorrent/version.hpp> | ||||
|  | ||||
| class qc_libboost : public ConfObj | ||||
| { | ||||
| public: | ||||
|   qc_libboost(Conf *c) : ConfObj(c) {} | ||||
|   QString name() const { return "libboost"; } | ||||
|   QString shortname() const { return "libboost"; } | ||||
|  | ||||
|   QString findBoostLib(QString path, QString lib) const { | ||||
|     QString name; | ||||
|     QDir libDir(path); | ||||
|     QStringList filters; | ||||
|     filters << "libboost_"+lib+"*-mt*.so"; | ||||
|     QStringList result = libDir.entryList(filters, QDir::Files); | ||||
|     if(!result.empty()) { | ||||
|       name = result.first().mid(3); | ||||
|       // Remove .so | ||||
|       name.chop(3); | ||||
|     } else { | ||||
|       // Fall back to non -mt boost lib | ||||
|       filters.clear(); | ||||
|       filters << "libboost_"+lib+"*.so"; | ||||
|       result = libDir.entryList(filters, QDir::Files); | ||||
|       if(!result.empty()) { | ||||
|         name = result.first().mid(3); | ||||
|         // Remove .so | ||||
|         name.chop(3); | ||||
|       } | ||||
|     } | ||||
|     return name; | ||||
|   } | ||||
|  | ||||
|   bool exec(){ | ||||
|     QStringList sl; | ||||
|     QString s = conf->getenv("QC_WITH_LIBBOOST_INC"); | ||||
|     if (!s.isEmpty()) | ||||
|       sl << s; | ||||
|     sl << "/usr/include"; | ||||
|     sl << "/usr/local/include"; | ||||
|     bool found = false; | ||||
|     foreach (s, sl) { | ||||
|       if (conf->checkHeader(s, "boost/format.hpp") | ||||
| #if LIBTORRENT_VERSION_MAJOR == 0 && LIBTORRENT_VERSION_MINOR < 16 | ||||
|           && conf->checkHeader(s, "boost/filesystem/path.hpp") | ||||
| #endif | ||||
|          ) { | ||||
|         found = true; | ||||
|         break; | ||||
|       } | ||||
|     } | ||||
|     if (!found) | ||||
|       return false; | ||||
|  | ||||
|     conf->addIncludePath(s); | ||||
|  | ||||
|     // Find library | ||||
|     s = conf->getenv("QC_WITH_LIBBOOST_LIB"); | ||||
|     QStringList required_libs; | ||||
| #if BOOST_VERSION >= 103500 | ||||
|       required_libs << "system";  | ||||
| #endif | ||||
| #if LIBTORRENT_VERSION_MAJOR == 0 && LIBTORRENT_VERSION_MINOR < 16 | ||||
|     required_libs << "filesystem" ; | ||||
| #endif | ||||
|     //required_libs << "thread"; | ||||
|     QStringList libDirs; | ||||
|     if (!s.isEmpty()) | ||||
|       libDirs << s; | ||||
|     libDirs << "/usr/lib/" << "/usr/lib/i386-linux-gnu/" << "/usr/lib64/" << "/usr/lib/x86_64-linux-gnu/" << "/usr/local/lib/" << "/usr/lib/local/i386-linux-gnu/" << "/usr/local/lib64/" << "/usr/local/lib/x86_64-linux-gnu/"; | ||||
|  | ||||
|     foreach(const QString& lib, required_libs) { | ||||
|       bool found = false; | ||||
|       foreach(const QString& libDir, libDirs) { | ||||
|         QString detected_name = findBoostLib(libDir, lib); | ||||
|         if(!detected_name.isEmpty()) { | ||||
|           conf->addLib("-l"+detected_name); | ||||
|           found = true; | ||||
|           break; | ||||
|         } | ||||
|       } | ||||
|       if(!found) { | ||||
|         printf("Could not find boost %s library!\n", qPrintable(lib)); | ||||
|         return false; | ||||
|       } | ||||
|     } | ||||
|     return true; | ||||
|   } | ||||
| 	qc_libboost(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "libboost"; } | ||||
| 	QString shortname() const { return "libboost"; } | ||||
| 	bool exec(){ | ||||
|         	QString s; | ||||
| 		s = conf->getenv("QC_WITH_LIBBOOST_INC"); | ||||
| 		if(!s.isEmpty()) { | ||||
| 			if(!conf->checkHeader(s, "boost/format.hpp")) { | ||||
| 				return false; | ||||
|       			} | ||||
| 			if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) { | ||||
| 				return false; | ||||
|       			} | ||||
| 			if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) { | ||||
| 				return false; | ||||
|       			} | ||||
| 			if(!conf->checkHeader(s, "boost/thread.hpp")) { | ||||
| 				return false; | ||||
|       			} | ||||
| 		}else{ | ||||
| 			QStringList sl; | ||||
| 			sl << "/usr/include"; | ||||
| 			sl << "/usr/local/include"; | ||||
| 			bool found = false; | ||||
| 			foreach(s, sl){ | ||||
| 				if(conf->checkHeader(s, "boost/format.hpp")){ | ||||
| 					found = true; | ||||
| 					break; | ||||
| 				} | ||||
| 			} | ||||
| 			if(!found) { | ||||
| 				return false; | ||||
|           		} | ||||
| 			if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) { | ||||
| 				return false; | ||||
|       			} | ||||
| 			if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) { | ||||
| 				return false; | ||||
|       			} | ||||
| 			if(!conf->checkHeader(s, "boost/thread.hpp")) { | ||||
| 				return false; | ||||
|       			} | ||||
| 		} | ||||
| 		conf->addIncludePath(s); | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
|   | ||||
							
								
								
									
										61
									
								
								qcm/libcurl.qcm
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								qcm/libcurl.qcm
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,61 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: libcommoncpp2 | ||||
| arg: with-libcurl-inc=[path], Path to libcurl include files | ||||
| arg: with-libcurl-lib=[path], Path to libcurl library files | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| class qc_libcurl : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_libcurl(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "libcurl"; } | ||||
| 	QString shortname() const { return "libcurl"; } | ||||
| 	bool exec(){ | ||||
|     QString s; | ||||
| 		s = conf->getenv("QC_WITH_LIBCURL_INC"); | ||||
| 		if(!s.isEmpty()) { | ||||
| 			if(!conf->checkHeader(s, "curl/curl.h")) { | ||||
| 				return false; | ||||
|     	} | ||||
| 		}else{ | ||||
| 			QStringList sl; | ||||
| 			sl << "/usr/include"; | ||||
| 			sl << "/usr/local/include"; | ||||
| 			bool found = false; | ||||
| 			foreach(s, sl){ | ||||
| 				if(conf->checkHeader(s, "curl/curl.h")){ | ||||
| 					found = true; | ||||
| 					break; | ||||
| 				} | ||||
| 			} | ||||
| 			if(!found) { | ||||
| 				return false; | ||||
|       } | ||||
| 		} | ||||
| 		conf->addIncludePath(s); | ||||
|  | ||||
| 		s = conf->getenv("QC_WITH_LIBCURL_LIB"); | ||||
| 		if(!s.isEmpty()) { | ||||
| 			if(!QFile::exists(s+QString("/libcurl.so"))) | ||||
| 		          return false; | ||||
|     	conf->addLib(QString("-L") + s); | ||||
| 		}else{ | ||||
| 			QStringList sl; | ||||
| 			sl << "/usr/lib/"; | ||||
| 			sl << "/usr/lib64/"; | ||||
| 			sl << "/usr/local/lib/"; | ||||
| 			sl << "/usr/local/lib64/"; | ||||
| 			bool found = false; | ||||
| 			foreach(s, sl){ | ||||
| 				if(QFile::exists(s+QString("libcurl.so"))){ | ||||
| 					found = true; | ||||
| 					break; | ||||
| 				} | ||||
| 			} | ||||
| 			if(!found) return false; | ||||
| 			conf->addLib(QString("-L") + s); | ||||
| 		} | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
| @@ -1,60 +0,0 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: libnotify | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| // see  Conf::findPkgConfig | ||||
| class qc_libnotify : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_libnotify(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "libnotify >= 0.4.2 (optional)"; } | ||||
| 	QString shortname() const { return "libnotify"; } | ||||
|         QString checkString() const { | ||||
|                 if(!conf->getenv("QC_DISABLE_libnotify").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||
|                         return ""; | ||||
|                 return ConfObj::checkString(); | ||||
|         } | ||||
| 	bool exec(){ | ||||
| 		if(!conf->getenv("QC_DISABLE_libnotify").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||
| 			return false; | ||||
| 		} | ||||
| 		QStringList incs; | ||||
| 		QString req_ver = "0.4.2"; | ||||
| 		QString version, libs, other; | ||||
| 		VersionMode mode = VersionMin; | ||||
| 		if(conf->findPkgConfig("libnotify", mode, req_ver, &version, &incs, &libs, &other)) { | ||||
| 			conf->addExtra("CONFIG += libnotify"); | ||||
| 			for(int n = 0; n < incs.count(); ++n) | ||||
| 				conf->addIncludePath(incs[n]); | ||||
| 			if(!libs.isEmpty()) | ||||
| 				conf->addLib(libs); | ||||
| 			QStringList incs2; | ||||
| 			QString req_ver2 = "2.0"; | ||||
| 			QString version2, libs2, other2; | ||||
| 			if(conf->findPkgConfig("glib-2.0", mode, req_ver2, &version2, &incs2, &libs2, &other2)) { | ||||
| 				for(int n = 0; n < incs2.count(); ++n) | ||||
| 				conf->addIncludePath(incs2[n]); | ||||
| 				if(!libs2.isEmpty()) | ||||
| 					conf->addLib(libs2); | ||||
| 			} else { | ||||
| 				return false; | ||||
| 			} | ||||
| 			QStringList incs3; | ||||
|                         QString req_ver3 = "2.0"; | ||||
|                         QString version3, libs3, other3; | ||||
| 			if(conf->findPkgConfig("gtk+-2.0", mode, req_ver3, &version3, &incs3, &libs3, &other3)) { | ||||
|                                 for(int n = 0; n < incs3.count(); ++n) | ||||
|                                 conf->addIncludePath(incs3[n]); | ||||
|                                 if(!libs3.isEmpty()) | ||||
|                                         conf->addLib(libs3); | ||||
|                         } else { | ||||
|                                 return false; | ||||
|                         } | ||||
| 		} else { | ||||
| 			return false; | ||||
| 		} | ||||
|  | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
| @@ -8,17 +8,22 @@ class qc_libtorrent_rasterbar : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_libtorrent_rasterbar(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "libtorrent-rasterbar >= 0.15.0"; } | ||||
| 	QString name() const { return "libtorrent-rasterbar >= 0.14.0 (>= 0.14.4 advised)"; } | ||||
| 	QString shortname() const { return "libtorrent-rasterbar"; } | ||||
| 	bool exec(){ | ||||
| 		QStringList incs; | ||||
| 		QString req_ver = "0.15.0"; | ||||
| 		QString req_ver = "0.14.0"; | ||||
| 		QString adv_ver = "0.14.4"; | ||||
| 		QString version, libs, other; | ||||
| 		VersionMode mode = VersionMin; | ||||
| 		if(!conf->findPkgConfig("libtorrent-rasterbar", mode, req_ver, &version, &incs, &libs, &other)) | ||||
| 			return false; | ||||
| 		for(int n = 0; n < incs.count(); ++n) | ||||
| 			conf->addIncludePath(incs[n]); | ||||
| 		if(!libs.isEmpty()) | ||||
| 			conf->addLib(libs); | ||||
| 		if(!conf->findPkgConfig("libtorrent-rasterbar", mode, adv_ver, &version, &incs, &libs, &other)) | ||||
| 			printf("\nWarning: libtorrent-rasterbar v%s was detected. Although it will compile and run, you will probably experience some bugs. Please consider updating to v%s!\n", version.toLocal8Bit().data(), adv_ver.toUtf8().data()); | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
|   | ||||
							
								
								
									
										71
									
								
								qcm/libzzip.qcm
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								qcm/libzzip.qcm
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,71 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: libzzip | ||||
| arg: with-libzzip-inc=[path], Path to libzzip++ include files | ||||
| arg: with-libzzip-lib=[path], Path to libzzip++ library files | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| #include <QProcess> | ||||
| class qc_libzzip : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_libzzip(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "Zzip library (libzzip)"; } | ||||
| 	QString shortname() const { return "libzzip"; } | ||||
| 	QString checkString() const { | ||||
| 		if(!conf->getenv("QC_DISABLE_LIBZZIP").isEmpty()) | ||||
| 			return ""; | ||||
| 		return ConfObj::checkString(); | ||||
| 	} | ||||
| 	bool exec(){ | ||||
| 		if(!conf->getenv("QC_DISABLE_LIBZZIP").isEmpty()) | ||||
| 			return false; | ||||
| 		QString s; | ||||
| 		s = conf->getenv("QC_WITH_LIBZZIP_INC"); | ||||
| 		if(!s.isEmpty()) { | ||||
| 			if(!conf->checkHeader(s, "zzip/zzip.h")) { | ||||
| 				return false; | ||||
|     			} | ||||
| 		}else{ | ||||
| 			QStringList sl; | ||||
| 			sl << "/usr/include"; | ||||
| 			sl << "/usr/local/include"; | ||||
| 			bool found = false; | ||||
| 			foreach(s, sl){ | ||||
| 				if(conf->checkHeader(s, "zzip/zzip.h")){ | ||||
| 					found = true; | ||||
| 					break; | ||||
| 				} | ||||
| 			} | ||||
| 			if(!found) | ||||
| 				return false; | ||||
| 		} | ||||
| 		conf->addIncludePath(s); | ||||
|  | ||||
| 		s = conf->getenv("QC_WITH_LIBZZIP_LIB"); | ||||
| 		if(!s.isEmpty()) { | ||||
| 			if(!QFile::exists(s+QString("/libzzip.so"))){ | ||||
|                           return false; | ||||
|                         } | ||||
| 		}else{ | ||||
| 			QStringList sl; | ||||
| 			sl << "/usr/lib/"; | ||||
| 			sl << "/usr/lib64/"; | ||||
| 			sl << "/usr/local/lib/"; | ||||
| 			sl << "/usr/local/lib64/"; | ||||
| 			bool found = false; | ||||
| 			foreach(s, sl){ | ||||
| 				if(QFile::exists(s+QString("libzzip.so"))){ | ||||
| 					found = true; | ||||
| 					break; | ||||
| 				} | ||||
| 			} | ||||
| 			if(!found) | ||||
|                          	return false; | ||||
| 		} | ||||
| 		conf->addLib(QString("-L") + s); | ||||
| 		conf->addLib("-lzzip"); | ||||
| 		conf->addDefine("HAVE_ZZIP"); | ||||
| 		return true; | ||||
| 	} | ||||
| }; | ||||
| @@ -1,16 +0,0 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: pkg-config | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| #include <QProcess> | ||||
| class qc_pkg_config : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_pkg_config(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "pkg-config executable"; } | ||||
| 	QString shortname() const { return "pkg-config"; } | ||||
| 	bool exec(){ | ||||
| 		return !conf->findProgram("pkg-config").isEmpty(); | ||||
| 	} | ||||
| }; | ||||
| @@ -1,31 +0,0 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: qt-dbus | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| // see  Conf::findPkgConfig | ||||
| class qc_qt_dbus : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_qt_dbus(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "QtDBus >= 4.5"; } | ||||
| 	QString shortname() const { return "qt-dbus"; } | ||||
|         QString checkString() const { | ||||
|                 if(!conf->getenv("QC_DISABLE_qt_dbus").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||
|                         return ""; | ||||
|                 return ConfObj::checkString(); | ||||
|         } | ||||
| 	bool exec(){ | ||||
|                 if(!conf->getenv("QC_DISABLE_qt_dbus").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||
|                   return false; | ||||
| 		QStringList incs; | ||||
| 		QString req_ver = "4.5.0"; | ||||
| 		QString version, libs, other; | ||||
| 		VersionMode mode = VersionMin; | ||||
| 		if(conf->findPkgConfig("QtDBus", mode, req_ver, &version, &incs, &libs, &other)) { | ||||
|                         conf->addExtra("CONFIG += dbus"); | ||||
| 			return true; | ||||
|                 } | ||||
| 		return false; | ||||
| 	} | ||||
| }; | ||||
| @@ -1,31 +0,0 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: qt-svg | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| // see  Conf::findPkgConfig | ||||
| class qc_qt_svg : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_qt_svg(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "QtSvg >= 4.5"; } | ||||
| 	QString shortname() const { return "qt-svg"; } | ||||
|         QString checkString() const { | ||||
|                 if(!conf->getenv("QC_DISABLE_qt_svg").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||
|                         return ""; | ||||
|                 return ConfObj::checkString(); | ||||
|         } | ||||
| 	bool exec(){ | ||||
|                 if(!conf->getenv("QC_DISABLE_qt_svg").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||
|                   return false; | ||||
| 		QStringList incs; | ||||
| 		QString req_ver = "4.5.0"; | ||||
| 		QString version, libs, other; | ||||
| 		VersionMode mode = VersionMin; | ||||
| 		if(conf->findPkgConfig("QtSvg", mode, req_ver, &version, &incs, &libs, &other)) { | ||||
|                         conf->addExtra("CONFIG += svg"); | ||||
| 			return true; | ||||
|                 } | ||||
| 		return false; | ||||
| 	} | ||||
| }; | ||||
							
								
								
									
										30
									
								
								qcm/qt4.qcm
									
									
									
									
									
								
							
							
						
						
									
										30
									
								
								qcm/qt4.qcm
									
									
									
									
									
								
							| @@ -1,36 +1,20 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: Qt >= 4.6 | ||||
| arg: enable-debug, Enable debug mode | ||||
| arg: disable-gui, Disable qBittorrent Graphical user interface for headless running | ||||
| name: Qt >= 4.3 | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| class qc_qt4 : public ConfObj | ||||
| { | ||||
| public: | ||||
| 	qc_qt4(Conf *c) : ConfObj(c) {} | ||||
| 	QString name() const { return "Qt >= 4.6"; } | ||||
| 	QString shortname() const { return "Qt 4.6"; } | ||||
| 	QString name() const { return "Qt >= 4.3"; } | ||||
| 	QString shortname() const { return "Qt 4.3"; } | ||||
| 	bool exec() | ||||
| 	{ | ||||
|                 // NOX mode | ||||
| 		if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||
| 			conf->addExtra("CONFIG += nox"); | ||||
| 		if(QT_VERSION >= 0x040400) { | ||||
| 			conf->addDefine("QT_4_4"); | ||||
| 		} | ||||
|                 // Debug mode | ||||
|                 if(!conf->getenv("QC_ENABLE_DEBUG").isEmpty()) { | ||||
|                   conf->addExtra("CONFIG -= release"); | ||||
|                   conf->addExtra("CONFIG += debug"); | ||||
|                 } else { | ||||
|                   conf->addExtra("CONFIG -= debug"); | ||||
|                   conf->addExtra("CONFIG += release"); | ||||
|                 } | ||||
|                 #ifdef Q_OS_FREEBSD | ||||
|                   conf->addLib("-lexecinfo"); | ||||
|                   conf->addExtra("MANPREFIX = $$PREFIX"); | ||||
|                 #else | ||||
|                   conf->addExtra("MANPREFIX = $$PREFIX/share");  | ||||
|                 #endif | ||||
| 		return(QT_VERSION >= 0x040600); | ||||
| 		return(QT_VERSION >= 0x040300); | ||||
| 		 | ||||
| 	} | ||||
| }; | ||||
|   | ||||
| @@ -1,26 +0,0 @@ | ||||
| /* | ||||
| -----BEGIN QCMOD----- | ||||
| name: qtsingleapplication | ||||
| arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one | ||||
| -----END QCMOD----- | ||||
| */ | ||||
| class qc_qtsingleapplication : public ConfObj | ||||
| { | ||||
| public: | ||||
|         qc_qtsingleapplication(Conf *c) : ConfObj(c) {} | ||||
|         QString name() const { return "qtsingleapplication library"; } | ||||
|         QString shortname() const { return "qtsingleapplication"; } | ||||
|  | ||||
|         bool exec(){ | ||||
|                 QString s; | ||||
|                 s = conf->getenv("QC_WITH_QTSINGLEAPPLICATION"); | ||||
|                 if(s.compare("system", Qt::CaseInsensitive) == 0) { | ||||
|                   // System | ||||
|                   conf->addExtra("CONFIG += usesystemqtsingleapplication"); | ||||
|                   printf(" [system] "); | ||||
|                 } else { | ||||
|                   printf(" [shipped] "); | ||||
|                 } | ||||
|                 return true; | ||||
|         } | ||||
| }; | ||||
							
								
								
									
										19
									
								
								qm_gen.pri
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								qm_gen.pri
									
									
									
									
									
								
							| @@ -1,19 +0,0 @@ | ||||
| TS_IN = $$fromfile(src/src.pro,TRANSLATIONS) | ||||
| TS_IN_NOEXT = $$replace(TS_IN,".ts","") | ||||
|               | ||||
| isEmpty(QMAKE_LRELEASE) { | ||||
|     win32|os2:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]\\lrelease.exe | ||||
|     else:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease | ||||
|     unix { | ||||
|         !exists($$QMAKE_LRELEASE) { QMAKE_LRELEASE = lrelease-qt4 } | ||||
|     } else { | ||||
|         !exists($$QMAKE_LRELEASE) { QMAKE_LRELEASE = lrelease } | ||||
|     } | ||||
| } | ||||
|  | ||||
| message("Building translations") | ||||
| for(L,TS_IN_NOEXT) { | ||||
|     message("Processing $${L}") | ||||
|     system("$$QMAKE_LRELEASE -silent src/$${L}.ts -qm src/$${L}.qm") | ||||
|     !exists("src/$${L}.qm"):error("Building translations failed, cannot continue") | ||||
| } | ||||
							
								
								
									
										116
									
								
								src/DLListDelegate.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										116
									
								
								src/DLListDelegate.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,116 @@ | ||||
| /* | ||||
|  * Bittorrent Client using Qt4 and libtorrent. | ||||
|  * Copyright (C) 2006  Christophe Dumez | ||||
|  * | ||||
|  * 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 Street, Fifth Floor, Boston, MA  02110-1301, USA. | ||||
|  * | ||||
|  * In addition, as a special exception, the copyright holders give permission to | ||||
|  * link this program with the OpenSSL project's "OpenSSL" library (or with | ||||
|  * modified versions of it that use the same license as the "OpenSSL" library), | ||||
|  * and distribute the linked executables. You must obey the GNU General Public | ||||
|  * License in all respects for all of the code used other than "OpenSSL".  If you | ||||
|  * modify file(s), you may extend this exception to your version of the file(s), | ||||
|  * but you are not obligated to do so. If you do not wish to do so, delete this | ||||
|  * exception statement from your version. | ||||
|  * | ||||
|  * Contact : chris@qbittorrent.org | ||||
|  */ | ||||
|  | ||||
| #ifndef DLLISTDELEGATE_H | ||||
| #define DLLISTDELEGATE_H | ||||
|  | ||||
| #include <QItemDelegate> | ||||
| #include <QModelIndex> | ||||
| #include <QPainter> | ||||
| #include <QStyleOptionProgressBarV2> | ||||
| #include <QStyleOptionViewItemV2> | ||||
| #include <QProgressBar> | ||||
| #include <QApplication> | ||||
| #include "misc.h" | ||||
|  | ||||
| // Defines for download list list columns | ||||
| #define NAME 0 | ||||
| #define SIZE 1 | ||||
| #define PROGRESS 2 | ||||
| #define DLSPEED 3 | ||||
| #define UPSPEED 4 | ||||
| #define SEEDSLEECH 5 | ||||
| #define RATIO 6 | ||||
| #define ETA 7 | ||||
| #define PRIORITY 8 | ||||
| #define HASH 9 | ||||
|  | ||||
| class DLListDelegate: public QItemDelegate { | ||||
|   Q_OBJECT | ||||
|  | ||||
|   public: | ||||
|     DLListDelegate(QObject *parent) : QItemDelegate(parent){} | ||||
|  | ||||
|     ~DLListDelegate(){} | ||||
|  | ||||
|     void paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const{ | ||||
|       QStyleOptionViewItemV2 opt = QItemDelegate::setOptions(index, option); | ||||
|       switch(index.column()){ | ||||
|         case SIZE: | ||||
|           QItemDelegate::drawBackground(painter, opt, index); | ||||
|           QItemDelegate::drawDisplay(painter, opt, option.rect, misc::friendlyUnit(index.data().toLongLong())); | ||||
|           break; | ||||
|         case ETA: | ||||
|           QItemDelegate::drawBackground(painter, opt, index); | ||||
|           QItemDelegate::drawDisplay(painter, opt, option.rect, misc::userFriendlyDuration(index.data().toLongLong())); | ||||
|           break; | ||||
|         case UPSPEED: | ||||
|         case DLSPEED:{ | ||||
|           QItemDelegate::drawBackground(painter, opt, index); | ||||
|           double speed = index.data().toDouble(); | ||||
|           QItemDelegate::drawDisplay(painter, opt, opt.rect, QString(QByteArray::number(speed/1024., 'f', 1))+QString::fromUtf8(" ")+tr("KiB/s")); | ||||
|           break; | ||||
|         } | ||||
|         case RATIO:{ | ||||
|           QItemDelegate::drawBackground(painter, opt, index); | ||||
|           double ratio = index.data().toDouble(); | ||||
|           if(ratio > 100.) | ||||
|               QItemDelegate::drawDisplay(painter, opt, opt.rect, QString::fromUtf8("∞")); | ||||
|           else | ||||
|               QItemDelegate::drawDisplay(painter, opt, opt.rect, QString(QByteArray::number(ratio, 'f', 1))); | ||||
|           break; | ||||
|         } | ||||
|         case PROGRESS:{ | ||||
|           QStyleOptionProgressBarV2 newopt; | ||||
|           double progress = index.data().toDouble()*100.; | ||||
|           newopt.rect = opt.rect; | ||||
|           newopt.text = QString(QByteArray::number(progress, 'f', 1))+QString::fromUtf8("%"); | ||||
|           newopt.progress = (int)progress; | ||||
|           newopt.maximum = 100; | ||||
|           newopt.minimum = 0; | ||||
|           newopt.state |= QStyle::State_Enabled; | ||||
|           newopt.textVisible = true; | ||||
|           QApplication::style()->drawControl(QStyle::CE_ProgressBar, &newopt, | ||||
|           painter); | ||||
|           break; | ||||
|         } | ||||
|         default: | ||||
|           QItemDelegate::paint(painter, option, index); | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     QWidget* createEditor(QWidget*, const QStyleOptionViewItem &, const QModelIndex &) const { | ||||
|       // No editor here | ||||
|       return 0; | ||||
|     } | ||||
|  | ||||
| }; | ||||
|  | ||||
| #endif | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user