Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/1] Add first KF5 packages
Date: Tue, 13 Feb 2018 22:53:42 +0100	[thread overview]
Message-ID: <20180213225342.006e1b37@windsurf.lan> (raw)
In-Reply-To: <20180213213531.22910-1-pinaraf@pinaraf.info>

Hello,

Thanks a lot for this contribution! And for showing up on IRC! :-)

On Tue, 13 Feb 2018 22:35:31 +0100, Pierre Ducroquet wrote:
> KDE Frameworks 5 is a set of libraries built on the Qt framework providing a
> lot of powerfull classes and solutions for developers building Qt
> applications.
> Unlike the previous KDE libraries, they are split in tiny packages, reducing
> dependencies as much as possible, making them usable even for embedded
> projects.
> 
> This first commit introduce the kf5 packages folder and the first two KF5
> packages:
> - ecm - Extra CMake modules, addons for CMake used across the KF5 libraries
> - NetworkManagerQt - a Qt wrapper for the NetworkManager DBus API
> 
> Signed-off-by: Pierre Ducroquet <pinaraf@pinaraf.info>

Thanks for this contribution! See some comments below.

>  package/Config.in                                  |  1 +
>  package/kf5/Config.in                              | 12 ++++++++++++
>  package/kf5/kf5.mk                                 | 11 +++++++++++
>  package/kf5/kf5ecm/Config.in                       | 11 +++++++++++
>  package/kf5/kf5ecm/kf5ecm.hash                     |  1 +
>  package/kf5/kf5ecm/kf5ecm.mk                       | 16 ++++++++++++++++
>  package/kf5/networkmanagerqt/Config.in             | 13 +++++++++++++
>  package/kf5/networkmanagerqt/networkmanagerqt.hash |  1 +
>  package/kf5/networkmanagerqt/networkmanagerqt.mk   | 17 +++++++++++++++++

It's perhaps a bit pedantic, but it'd be nicer to split this in 3
patches: one adding kf5, one adding kf5ecm, and one adding
networkmanagerqt.

Also, please add the appropriate entries to the DEVELOPERS file when
adding new packages.

> diff --git a/package/kf5/Config.in b/package/kf5/Config.in
> new file mode 100644
> index 0000000000..a7b4fb765b
> --- /dev/null
> +++ b/package/kf5/Config.in
> @@ -0,0 +1,12 @@
> +menuconfig BR2_PACKAGE_KF5
> +	bool "KF5"
> +	depends on BR2_PACKAGE_QT5BASE

Perhaps this should be BR2_PACKAGE_QT5 instead, and you should select
BR2_PACKAGE_QT5BASE when appropriate.

> +	depends on BR2_PACKAGE_HOST_CMAKE

This last depends on is not needed.


> diff --git a/package/kf5/kf5ecm/kf5ecm.hash b/package/kf5/kf5ecm/kf5ecm.hash
> new file mode 100644
> index 0000000000..4f510c152a
> --- /dev/null
> +++ b/package/kf5/kf5ecm/kf5ecm.hash
> @@ -0,0 +1 @@

The source of hash should be specified. Either:

# http://....

if the hash is provided by upstream somewhere, or alternatively:

# Locally calculated

> +sha256 baaf60940b9ff883332629ba2800090bb86722ba49a85cc12782e4ee5b169f67 extra-cmake-modules-5.41.0.tar.xz
> diff --git a/package/kf5/kf5ecm/kf5ecm.mk b/package/kf5/kf5ecm/kf5ecm.mk
> new file mode 100644
> index 0000000000..4f6fea0b1b
> --- /dev/null
> +++ b/package/kf5/kf5ecm/kf5ecm.mk
> @@ -0,0 +1,16 @@
> +################################################################################
> +#
> +# kf5ecm
> +#
> +################################################################################
> +
> +KF5ECM_VERSION = $(KF5_VERSION)
> +KF5ECM_SITE = $(KF5_SITE)
> +KF5ECM_SOURCE = extra-cmake-modules-$(KF5ECM_VERSION).tar.xz

License information is missing.

> +
> +KF5ECM_DEPENDENCIES = host-pkgconf
> +KF5ECM_INSTALL_STAGING = YES
> +KF5ECM_INSTALL_TARGET = NO
> +KF5ECM_CONF_OPTS = 

This last line is not needed.

So, I assume this package only installs a bunch of CMake modules in
$(STAGING_DIR), and our CMake automatically picks up those additional
modules from $(STAGING_DIR) ?

> diff --git a/package/kf5/networkmanagerqt/Config.in b/package/kf5/networkmanagerqt/Config.in
> new file mode 100644
> index 0000000000..59f3b4222c
> --- /dev/null
> +++ b/package/kf5/networkmanagerqt/Config.in
> @@ -0,0 +1,13 @@
> +config BR2_PACKAGE_NETWORKMANAGERQT
> +	bool "networkmanagerqt"
> +	depends on BR2_PACKAGE_KF5ECM

Please use a "select" for this.

> +	depends on BR2_PACKAGE_NETWORK_MANAGER

I believe this one could remain a "depends on".

> +	help
> +	  KF5 is a set of Qt framework addons, extending Qt in
> +	  various ways, not only restricted in helping integration
> +	  in KDE.
> +	  
> +	  This package contains the NetworkManager Qt5 bindings from the
> +	  KF5 project.
> +
> +	  https://api.kde.org/frameworks/networkmanager-qt/html/index.html
> diff --git a/package/kf5/networkmanagerqt/networkmanagerqt.hash b/package/kf5/networkmanagerqt/networkmanagerqt.hash
> new file mode 100644
> index 0000000000..ac4013efeb
> --- /dev/null
> +++ b/package/kf5/networkmanagerqt/networkmanagerqt.hash
> @@ -0,0 +1 @@
> +sha256 9bc26e42d27f829af1b1779cd10a4bb5639aebeeab80086a35b7ccaab85bb96d  networkmanager-qt-5.41.0.tar.xz

Same comment for the hash.

> diff --git a/package/kf5/networkmanagerqt/networkmanagerqt.mk b/package/kf5/networkmanagerqt/networkmanagerqt.mk
> new file mode 100644
> index 0000000000..8cba1e29a7
> --- /dev/null
> +++ b/package/kf5/networkmanagerqt/networkmanagerqt.mk
> @@ -0,0 +1,17 @@
> +################################################################################
> +#
> +# networkmanagerqt
> +#
> +################################################################################
> +
> +NETWORKMANAGERQT_VERSION = $(KF5_VERSION)
> +NETWORKMANAGERQT_SITE = $(KF5_SITE)
> +NETWORKMANAGERQT_SOURCE = networkmanager-qt-$(KF5ECM_VERSION).tar.xz

You should use this package <pkg>_VERSION variable :-)

> +NETWORKMANAGERQT_LICENSE = LGPL-2.1+

Can you add <pkg>_LICENSE_FILES ?

> +
> +NETWORKMANAGERQT_DEPENDENCIES = host-pkgconf kf5ecm network-manager
> +NETWORKMANAGERQT_INSTALL_STAGING = YES
> +NETWORKMANAGERQT_INSTALL_TARGET = YES
> +NETWORKMANAGERQT_CONF_OPTS = 

Those last two lines are not needed.

Also, should we call the package networkmanager-qt, to match the
upstream tarball name ?

Could you take into account those comments, and submit an updated
version ?

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
http://bootlin.com

  reply	other threads:[~2018-02-13 21:53 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-13 21:35 [Buildroot] [PATCH 1/1] Add first KF5 packages Pierre Ducroquet
2018-02-13 21:53 ` Thomas Petazzoni [this message]
2018-02-13 22:02   ` Pierre
2018-02-14  5:59 ` Bernd Kuhls
2018-02-14  8:44   ` Pierre
2018-02-14 20:29   ` Thomas Petazzoni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180213225342.006e1b37@windsurf.lan \
    --to=thomas.petazzoni@bootlin.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox