Commit Graph

337 Commits

Author SHA1 Message Date
David Sansome c36f4e46db Add "make format-diff" and "make format" commands that use clang-format to reformat source. 2014-02-12 01:20:49 +11:00
John Maguire d309d4ab27 Use c++11 instead of boost where possible. 2014-02-06 16:51:39 +01:00
John Maguire 3e46b6134e Try building on OS X with libc++
(cherry picked from commit 327181ef18)
2014-01-27 23:59:09 +01:00
David Sansome 5ac83bd463 Merge branch 'master' into gstreamer-1.2 2014-01-25 00:24:31 +11:00
David Sansome fc0a04ef38 Use the builtin taglib even when Drive is disabled. 2014-01-25 00:07:06 +11:00
Thomas Tuegel 6a476df3f8 Extra GStreamer includes
All the GStreamer headers are not necessarily in the same location.
2013-12-31 12:15:15 -06:00
Arnaud Bienner 05b76f1d81 Bump 3rd party taglib to 1.9.1 2013-12-17 19:38:05 +01:00
John Maguire 4c23072bef Link dynamically against sqlite3 but still use a copy of QSqlLiteDriver 2013-11-22 16:31:41 +00:00
David Sansome 0497e941c7 Fix a stupid typo. Fixes issue 3710 2013-10-28 14:23:52 +11:00
John Maguire 56c949815b First pass at Gstreamer 1.0 porting.
This at least compiles against gstreamer 1.2.
Things that work:
* Playing audio
* Automatically completing tags

Things that don't work
* Spotify
* Moodbar

Things I haven't tested
* Transcoding
2013-09-26 17:49:24 +02:00
David Sansome 4e8dba16d4 Make the Spotify downloader optional again on Windows and Mac 2013-09-18 01:27:13 +10:00
David Sansome b20c473ae0 Oops, typo. 2013-09-18 00:54:10 +10:00
David Sansome 2c55688601 Make the GPL spotify code non-optional 2013-09-18 00:49:29 +10:00
David Sansome d7fa0b9708 Make distro packagers feel bad. 2013-09-18 00:30:01 +10:00
David Sansome 4411b25e86 Use a newer taglib (taglib master at 89fcab5669013bd46b0ef7b7f6efbb8a21cd1ceb)
Fixes issue 3446
2013-08-18 12:55:07 +10:00
David Sansome eb20fb5945 Remove all the soruce for WMDM devices. Fixes issue 3748 2013-06-30 08:25:12 +00:00
John Maguire 3d434f1c88 Remove iDevice support as it doesn't work well for modern devices and libgpod shows no signs of updating to support them.
Fixes issue #3683
2013-05-17 15:30:56 +02:00
David Sansome 064249deeb Fix a libmygpo-qt linker error on windows 2013-05-04 14:04:00 +00:00
David Sansome ff05fc8178 Use the system's libmygpo-qt if it's available. Fixes issue 3518 2013-04-15 21:41:55 +10:00
David Sansome 6da13d0851 Sort a list 2013-04-15 21:41:55 +10:00
John Maguire d21fa8cc67 Add support for Box. 2013-02-12 17:11:18 +01:00
Martin Brodbeck d05041dfa1 Add support for Opus tags. 2013-01-26 11:18:24 +00:00
John Maguire 0b60a17a2b Add MDNS implementation for windows. 2013-01-17 14:11:15 +01:00
John Maguire ffe00ef149 Add tinysvcmdns to 3rdparty 2013-01-17 13:15:16 +01:00
Andreas fe0c1b5206 Changed xml to protocol buffers 2013-01-03 21:40:47 +01:00
David Sansome ab0faf7165 Move BUNDLE_PROJECTM_PRESETS so it's defined before it's used in libprojectm's CMakeLists.txt 2012-12-24 19:29:24 +11:00
John Maguire c4db401597 More or less working Skydrive authentication. 2012-12-12 18:34:15 +01:00
John Maguire 6bf0b4736a Start of dropbox support. Only whitelisted accounts work for now. 2012-11-29 20:48:25 +01:00
John Maguire 6c5e831a7d Remove tag encoding detection as we don't really use it anymore. 2012-11-29 13:41:20 +01:00
John Maguire ffc8d53cdb Add cmake option for Ubuntu One. 2012-11-28 16:51:19 +01:00
John Maguire 875b297278 Check for lambda support before using it. 2012-11-26 15:36:05 +01:00
John Maguire d6b84558f6 Fix unordered_map check. 2012-11-22 13:31:18 +01:00
John Maguire 8bbcd6b760 Use a better check for support for std::unordered_map. 2012-11-22 12:24:38 +01:00
John Maguire 6cf9d17f7b Disable uninitialised warning on clang. 2012-11-20 15:13:05 +01:00
John Maguire 543a6bf2fa Remove use of linked SAC shim and depend on DLL version (which doesn't exist yet) 2012-11-13 17:04:54 +01:00
David Sansome 36ac3a2ec0 Use the full protobuf instead of protobuf-lite, to hopefully fix
a crash on Windows.
2012-11-12 18:16:35 +11:00
David Sansome b42e93d29b Make the Ubuntu and Fedora packages depend on sparsehash, and use the builtin taglib by default if the system's version is too old 2012-10-30 05:45:43 +01:00
David Sansome e5b2cacb20 Make the Ubuntu and Fedora packages depend on sparsehash, and use the builtin taglib by default if the system's version is too old 2012-10-27 17:53:29 -07:00
David Sansome 66ce3b4408 Add taglib-1.8 to 3rdparty 2012-10-27 17:12:18 -07:00
John Maguire 6dbd0baafc Remove conditional code for Leopard. 2012-09-26 12:38:32 +02:00
David Sansome e385728fd1 Add the BUNDLE_PROJECTM_PRESETS option back in (removed accidentally in revision b63d1cf9f1) 2012-09-24 19:47:18 +01:00
John Maguire 27975c7a16 Separate out spotify blob downloader into a new optional component. 2012-09-03 17:38:07 +02:00
John Maguire daa40f6fe8 Avoid building against QCA when we are not building spotify core code. 2012-09-03 16:47:38 +02:00
David Sansome b63d1cf9f1 Show which packages are required to satisfy failed dependencies when running CMake. 2012-08-28 19:20:25 +01:00
David Sansome 73062bce3d Make Google Drive support optional and add a cmake option for it 2012-07-26 21:23:31 +01:00
David Sansome 5b3071e5f1 Remove the plasmarunner plugin since it doesn't work any more. Fixes issue 3037 2012-07-05 12:56:26 +01:00
David Sansome abe8d10b9c Add a compatibility header so liblastfm and liblastfm1 can both be used with the same source. 2012-06-28 18:40:20 +01:00
John Maguire 569c8295db Add qocoa and use it for the playlist search field. 2012-06-28 11:39:43 +02:00
John Maguire 9dd4f31795 Use libspotify 12.1.45.
Fixes issue #2972
2012-06-07 12:35:24 +02:00
David Sansome 638a4b9739 Bundle the gstreamer moodbar plugin, with a patch that protects calls to fftwf_plan from multiple threads. 2012-05-27 17:30:58 +01:00
David Sansome 6677d0fe30 Remove Android remote control support for now 2012-04-13 15:01:22 +01:00
David Sansome 1c80cfbadb Use libspotify 11.1.56 2012-03-27 22:01:37 +01:00
David Sansome e54a2ff5c5 Get the most popular top-level tags from gpodder.net 2012-03-06 18:39:34 +00:00
Руслан Ижбулатов 7ff1db6f0b Add proper include path for windres 2012-01-22 14:46:02 +00:00
Руслан Ижбулатов 5c45e22e28 Make SAC and WMDM optional 2012-01-22 14:35:22 +00:00
Orcan Ogetbil 9dd4b1bb94 Use SHA2 system library when available
Fixes issue 2623
2012-01-17 23:12:44 +01:00
David Sansome 4618651cf4 Merge branch 'master' into external-tagreader 2012-01-07 22:52:18 +00:00
David Sansome 6f3df9bd5f Fix linking to chromaprint on Windows 2012-01-07 17:29:35 +00:00
David Sansome d17629586f Use the system version of libchromaprint if available 2012-01-07 15:27:50 +00:00
John Maguire 598948d16e Remove echoprint. 2012-01-06 16:42:22 +00:00
John Maguire b9eec4ce38 Build & link against Chromaprint. 2012-01-06 15:57:51 +00:00
David Sansome 9041117867 Move everything around in the source tree - static libraries and external binaries now go in "ext/". Add a generic worker pool. 2012-01-05 23:25:13 +00:00
David Sansome 85f2f087cb Start work on moving everything that uses taglib out into an external process. 2012-01-05 23:24:48 +00:00
David Sansome 22e6a649b7 Remove the custom gstspotifytcpsrc and use tcpserversrc ! gdpdepay to receive data. Use a gstreamer pipeline on the other end as well to send data. 2011-11-28 18:45:12 +00:00
John Maguire e9d770a864 Remove pjsip/stun code and make PortForwarder at least compile. 2011-11-28 16:22:13 +01:00
David Sansome c38043b7e7 Require libspotify 10, update the windows installer to use the new libspotify.dll filename, add libspotify ldflags properly. 2011-11-27 18:47:02 +00:00
David Sansome ea68940b76 Don't use qca if spotify is completely disabled 2011-11-07 12:05:31 +00:00
David Sansome fccd0a5458 Don't make QCA a requirement if we're bundling the spotify blob (since we won't need to download anything at runtime) 2011-11-05 15:44:56 +00:00
David Sansome b618c4f9a9 Don't compile the spotify blob if spotify core is disabled 2011-11-05 01:21:01 +00:00
David Sansome c12b3ab399 Verify the signatures of spotify blob files downloaded at runtime. Should protect against MITM attacks, and compromises of our server. 2011-11-05 01:12:28 +00:00
David Sansome 0b4b375561 Add an option for the krunner plugin, default it to off 2011-10-30 15:16:05 +00:00
David Sansome 1f6bc7cd9a Don't update the .po files automatically from the .pot each build (Transifex will do that now). Also add source files that aren't compiled because of options being disabled to the OTHER_SOURCES list (for translation) automatically. 2011-10-29 18:37:30 +01:00
John Maguire c8ca261b33 Update summary of KDE global search. 2011-10-24 17:25:09 +02:00
John Maguire 1cc722961c Show plasma runner in cmake status 2011-10-24 17:11:26 +02:00
David Sansome 9a739a3346 Add a DBus interface onto the global search engine, and add a KDE krunner plugin that performs global searches in Clementine.
This is optional and is not compiled unless you have the plasma developer packages installed.
2011-10-19 23:17:24 +01:00
David Sansome c05a2ee182 Add a spotify gstreamer source element instead of hacking about with gsttcpserversrc. Implement seeking on spotify tracks. 2011-09-25 19:24:44 +01:00
John Maguire 0a3b5d3d75 Search for QJson using pkgconfig. 2011-09-20 10:07:55 +02:00
David Sansome 21be90a941 Change spotify protobuf namespace to something that isn't reserved, and do album loading in spotify 2011-08-29 03:32:37 +01:00
David Sansome 191e23ed13 Remove old references to libarchive 2011-08-10 16:30:36 +01:00
David Sansome 082716e9c9 Don't try to compile audio CD support if libcdio isn't installed. 2011-08-10 16:30:36 +01:00
Arnaud Bienner f7859f591c Adding CD devices in devices tab. Fixes issue 701. 2011-08-05 02:15:16 +02:00
John Maguire 8091f9d1cd Explicitly search for all the gettext executables. 2011-07-27 21:54:05 +02:00
David Sansome a1062eb96f Add sha256 and hmac-sha256 functions 2011-07-23 19:33:00 +01:00
David Sansome dd3eee63e5 Remove python scripting support 2011-07-23 15:32:12 +01:00
John Maguire 1df5db5ee3 Add Echoprint library and a new fingerprinting classs that uses it. 2011-06-25 17:30:12 +00:00
John Maguire 6e86caae2c Define QT_STRICT_ITERATORS and fix the associated bugs. 2011-06-20 15:08:06 +00:00
John Maguire 54e9299c08 libgsttag is also required to build clementine now. 2011-06-16 13:49:10 +00:00
Arnaud Bienner 272841ab73 Starting audio CD support. Starts issue 701 2011-06-09 23:08:43 +00:00
John Maguire 97a8aa54be Use SPMediaKeyTap for global media keys on Mac.
Thanks to: tyler.s.rhodes@gmail.com
2011-05-30 10:09:34 +00:00
John Maguire f246e44b92 Support making spotify playlists available offline. 2011-05-25 14:22:49 +00:00
David Sansome 417bde98a0 Remove dependency on QtUiTools, remove QtUiTools bindings and port PyQt's pure python .ui file parser to use PythonQt. Change the di.fm script to use uic again. 2011-05-21 19:08:38 +00:00
John Maguire 51e031df2b Add class for transcoding a Song into an OGG Vorbis stream. 2011-05-19 16:34:33 +00:00
David Sansome 25e63e4b42 Add QtUiTools bindings 2011-05-15 16:12:38 +00:00
David Sansome d9bb8ffd8c Add the pythonqt bindings generator and make some bindings for RadioService and UrlHandler 2011-05-15 15:45:49 +00:00
David Sansome 7c05b42dcd Add PythonQt to 3rdparty, use it in the python engine instead of SIP/PyQt. 2011-05-15 13:41:54 +00:00
David Sansome d3d2a3184b Check for protoc as well as libprotobuf 2011-04-29 21:23:56 +00:00
David Sansome 3deb371537 If the spotify blob isn't installed, try to download it from the Clementine website. Also, make the blob separate from the core Spotify code in Clementine so you can build the core code without building the blob 2011-04-29 19:44:51 +00:00
John Maguire ff7d634fa4 Spotify on mac. 2011-04-26 22:20:11 +00:00
David Sansome e152e3a3e3 Start of some spotify support - builds a binary blob linked against libspotify that Clementine starts as a separate process. 2011-04-25 19:16:26 +00:00
David Sansome 9d52951dea Add a compile time option to show the WIN32 console even outside debug mode 2011-04-24 17:02:26 +00:00
David Sansome 0b2332cbd4 Enable python scripting support by default again 2011-04-22 18:53:37 +00:00
John Maguire 18bfa12042 Add the beginnings of an ICE socket implementation.
Currently, it can be demoed using --stun-test and the icedemo from pjsip as the other client.
TODOs:
Add ability to do a full demo using only 2 clementine instances.
Complete session initiation over XMPP.
Add local & port forwarded sockets as options.
2011-04-07 13:38:27 +00:00
David Sansome e69502dfd3 Use system gtest and gmock if available. Fixes issue 1653 2011-03-29 19:05:13 +00:00
David Sansome a35602cc02 Disable breakpad by default for now 2011-03-26 16:28:58 +00:00
John Maguire d86dce4b96 Add support for Google breakpad on mac. (Uploading crash reports doesn't work yet due to redirect). 2011-03-25 11:38:03 +00:00
David Sansome d50cfaed46 Add google breakpad to 3rdparty, and gather crash reports 2011-03-23 21:53:24 +00:00
David Sansome 8921b31ffd Don't install any scripts if scripting is disabled 2011-03-19 19:10:56 +00:00
David Sansome b51566cdd9 Remove the dependencies on libtunepimp, libofa, libmusicbrainz. Use the gstreamer ofa plugin instead to fingerprint songs. 2011-03-12 21:19:41 +00:00
David Sansome 2c4102b060 Fix an error if you try to disable dbus, but enable wiimotedev. Fixes issue #1516 2011-03-12 21:19:32 +00:00
John Maguire 7ca69e009e Add libportfwd and an async wrapper. 2011-03-08 16:34:20 +00:00
David Sansome b00313920f Disable scripting and the android remote by default, and mark them as unstable 2011-03-04 21:10:00 +00:00
John Maguire 86919cc0ff Hack X-GOOGLE-TOKEN support into gloox and use it in clementine. 2011-03-01 16:03:04 +00:00
John Maguire 11445f46b2 Import gloox 1.0 and port libxrme. Probably doesn't work for receiving commands. 2011-03-01 12:52:53 +00:00
David Sansome cc28966e6e Revert "Don't enable libarchive support unless the headers were found" 2011-02-26 15:38:31 +00:00
David Sansome 6caf4707ba Don't enable libarchive support unless the headers were found 2011-02-26 15:19:05 +00:00
David Sansome 72096bf1c8 Move ArtLoader from mpris_common.h to its own file, add libxrme to 3rdparty, add a working XMPP remote. 2011-02-19 18:24:11 +00:00
David Sansome acc2c537de Require gloox 0.9 instead of 1.0 (for Lucid), do some better logging, and login after connecting 2011-02-18 20:14:17 +00:00
John Maguire 45cabc1b6b Add settings dialog for Google account with verification and stores password in secure keychain. 2011-02-17 13:47:54 +00:00
John Maguire e36a333212 Basic XMPP support using gloox. 2011-02-16 20:49:12 +00:00
David Sansome dfcffc7316 Don't add the pythondocs target if Python isn't installed 2011-02-15 21:08:28 +00:00
David Sansome 0ce8f99494 Add a utility to generate python API docs using epydoc 2011-02-15 19:18:53 +00:00
John Maguire ab2f3360e2 Add Linux variable and set -Werror for Linux builds. 2011-02-04 12:07:00 +00:00
David Sansome e4d9d54414 Link Clementine against SIP and PyQt on Windows, and add the modules to python's inittab 2011-01-31 23:44:44 +00:00
David Sansome d9f7b6750f Add a cmake option for libarchive. Fixes issue #1323 2011-01-19 11:01:44 +00:00
John Maguire 1a959b136c Mac build fixes for archived script support. 2011-01-18 14:44:52 +00:00
David Sansome 472ab04e97 Make libarchive optional, disable loading scripts from archives if it's not present. 2011-01-18 13:44:12 +00:00
David Sansome 35a61de0a4 Refactor ScriptInfo into another class, add some (currently unused) code to read scripts from archives. 2011-01-17 20:01:16 +00:00
David Sansome 587a35eab4 Install the digitallyimported script 2011-01-16 16:43:34 +00:00
Arnaud Bienner d53e74a91f Start auto tagging support (using MusicBrainz) 2011-01-15 20:00:39 +00:00
John Maguire 6cbf825c41 Make remote control support optional. 2011-01-06 16:00:40 +00:00
John Maguire c9d5b8100b More remote work. Clementine now requires QJson. 2011-01-06 15:09:09 +00:00
David Sansome 9da56fd916 Always compile basic scripting support 2011-01-02 18:44:45 +00:00
David Sansome 5b1000834f Add some basic script loading support and add python bindings for the Player class 2010-12-31 18:13:28 +00:00
David Sansome 398f5d7f66 Use qtsparkle instead of winsparkle 2010-12-30 16:20:33 +00:00
David Sansome 45a7780f95 Add winsparkle support (doesn't work yet) 2010-12-29 17:53:28 +00:00
David Sansome e3a9bd7b26 Make DBUS bits optional on Linux. Thanks Nickollai. Fixes issue #1177 2010-12-26 13:38:35 +00:00
David Sansome 6737b8a5c2 Always use the gstreamer engine, remove xine, vlc and phonon engines. 2010-12-26 13:01:35 +00:00
David Sansome a97c23d173 Fix liblastfm detection. Protip: variables can't be used before they're set. 2010-12-19 15:10:26 +00:00
John Maguire 027811767e Explicity enable/disable liblastfm support.
Fixes issue #1138
2010-12-19 13:54:30 +00:00
David Sansome a8a035a13a Use the system libechonest if it's installed 2010-12-18 18:36:56 +00:00
David Sansome 18a1eb75af Add our copy of sqlite to the include path only if it's actually being used. 2010-12-18 18:19:18 +00:00
David Sansome 28fdb147d8 Make last.fm optional. Thanks volkov0aa. Fixes issue #49 2010-12-18 17:28:02 +00:00
John Maguire f95d893945 Add support for building without Sparkle on mac. 2010-12-14 18:20:14 +00:00
John Maguire aec65c86b6 Disable some dependencies explicitly on Mac. 2010-12-14 17:07:41 +00:00
David Sansome 626c75cd45 Add MPRIS2 and gnome sound menu support 2010-11-21 15:13:26 +00:00
David Sansome 444f8ae03c Don't try to link against pthreads on windows 2010-11-03 21:11:43 +00:00
John Maguire 1967e0e53c Require at least Qt 4.5.
Thanks to: elan.ruusamae
Fixes issue #909
2010-10-21 13:59:29 +00:00
John Maguire 298137b85e Require libmtp 1.0
Fixes issue #801
2010-10-15 12:45:59 +00:00
David Sansome 48da2f996f Move the fancy tab widget into src/widgets, remove more dead code, add it to debian copyrights. 2010-10-10 14:04:05 +00:00
David Sansome d035b1abc2 Add libechonest into 3rdparty, and add a basic echonest artist info fetcher. 2010-10-02 16:23:33 +00:00