Jump to content

Amarok/Development/KF5port: Difference between revisions

From KDE Community Wiki
Ochurlaud (talk | contribs)
Ochurlaud (talk | contribs)
Line 16: Line 16:
* The inclusions of header should be reorganize to follow the rule <QXxxx>, then <KXxxx>, then "Xxxx.h" and follow the alphabetical order.
* The inclusions of header should be reorganize to follow the rule <QXxxx>, then <KXxxx>, then "Xxxx.h" and follow the alphabetical order.
* While porting some KUrl to QUrl, some methods were <code>method(KUrl)</code> and used as <code>method(myString)</code> with <code>myString</code> being a <code>QString</code>. It doesn't work anymore: now the method is used as <code>method( QUrl(myString) )</code> which is not so nice, although it compiles.
* While porting some KUrl to QUrl, some methods were <code>method(KUrl)</code> and used as <code>method(myString)</code> with <code>myString</code> being a <code>QString</code>. It doesn't work anymore: now the method is used as <code>method( QUrl(myString) )</code> which is not so nice, although it compiles.
== General ==
There have been some changes like inclusion of headers, conversion from QString to QUrl (by using QUrl::fromUserInput or QUrl::fromLocalFile), conversion from "signals" to "Q_SIGNALS", changing of style of the cmake files, that haven't been mentioned explicitly for the different files.
== Status ==
== Status ==
The current status of the port of the individual methods can be found here: [[Amarok/Development/KF5port/Status|Status page]]
The current status of the port of the individual methods can be found here: [[Amarok/Development/KF5port/Status|Status page]]

Revision as of 12:18, 2 September 2015

This page is meant as a guide to port Amarok to Qt5/Frameworks5 and Plasma5.

Stages of port

The broad plan involves the porting of the code-base to compile by using KF5::KDELibs4Support. After this the plan involves porting Amarok away from KF5::KDELibs4Support. We are still in the first part now i.e the current aim is to let Amarok compile by using KF5::KDELibs4Support(with LOTS and LOTS of depreciated warnings).

  1. Restoring build on Qt5/KF5: Port of cmake files and all code, so everything builds at least again by using KF5::KDELibs4Support. In this part the primary focus is on building it back again. INCOMPLETE
  2. All tests should pass after the above has been done. TODO
  3. Porting away from KF5::KDELibs4Support. TODO

General

The commits containing the ongoing port of Amarok to Qt5/KF5 are made to the kf5 branch.


Todo overview

  • The inclusions of header should be reorganize to follow the rule <QXxxx>, then <KXxxx>, then "Xxxx.h" and follow the alphabetical order.
  • While porting some KUrl to QUrl, some methods were method(KUrl) and used as method(myString) with myString being a QString. It doesn't work anymore: now the method is used as method( QUrl(myString) ) which is not so nice, although it compiles.

Status

The current status of the port of the individual methods can be found here: Status page

New Dependencies

If you would like to build it then you have to install the following development packages (apart from the existing dependencies like Taglib, zlib, googlemock, etc ) containing the following components for your respective system :

Dependency Version
Extra CMake Modules (ECM) 1.7.0
Qt5::Core
Qt5::DBus
Qt5::Widgets
Qt5::Test
Qt5::Gui
Qt5::Svg
Qt5::Xml
Qt5::Script
Qt5::Sql
Qt5::Quick
Qt5::Qml
Qt5::ScriptTools
Qt5::WebKitWidgets
Qca-Qt5
Phonon4Qt5
KF5::CoreAddons
KF5::Solid
KF5::Codecs
KF5::I18n
KF5::ThreadWeaver
KF5::KDELibs4Support
KF5::Codecs
KF5::I18n
KF5::ThreadWeaver
KF5::Plasma
KF5::PlasmaQuick
KF5::KCMUtils
KF5::NewStuff
KF5::TextEditor
KF5::GlobalAccel
KF5::KIO
KF5::NotifyConfig
KF5::Archive
KF5::DNSSD

This list has been kept dynamic to avoid pulling unwanted dependencies which means more components will be added when the need arises.

Extra

Some references: