Message ID | 20250509014212.88296-1-rubacha.jack03@gmail.com |
---|---|
State | Superseded |
Headers | show |
Series | [v2] package/qt6/qt6grpc: new package | expand |
Hi Jack, Nice clean up. fre. 9. mai 2025 kl. 03:45 skrev Jack Rubacha <rubacha.jack03@gmail.com>: > Adds the QT GRPC module (containing Qt Protobuf as well). > > Signed-off-by: Jack Rubacha <rubacha.jack03@gmail.com> > > --- > Changes v1 -> v2: > - Remove 'selects BR2_PACKAGE_HOST_QT6BASE' as it is a make dependency > - Changes help text to clearly state both modules > - Adds a git repository link to the help text > - Cleans up license files to show all necessary files, matches hashfile > - Make multiline clauses alphabetically ordered > > --- > package/qt6/Config.in | 1 + > package/qt6/qt6grpc/Config.in | 7 +++++ > package/qt6/qt6grpc/qt6grpc.hash | 10 +++++++ > package/qt6/qt6grpc/qt6grpc.mk | 46 ++++++++++++++++++++++++++++++++ > 4 files changed, 64 insertions(+) > create mode 100644 package/qt6/qt6grpc/Config.in > create mode 100644 package/qt6/qt6grpc/qt6grpc.hash > create mode 100644 package/qt6/qt6grpc/qt6grpc.mk > > diff --git a/package/qt6/Config.in b/package/qt6/Config.in > index 10594691cf..9c297b321e 100644 > --- a/package/qt6/Config.in > +++ b/package/qt6/Config.in > @@ -48,6 +48,7 @@ source "package/qt6/qt6charts/Config.in" > source "package/qt6/qt6core5compat/Config.in" > source "package/qt6/qt6declarative/Config.in" > source "package/qt6/qt6graphs/Config.in" > +source "package/qt6/qt6grpc/Config.in" > source "package/qt6/qt6languageserver/Config.in" > source "package/qt6/qt6mqtt/Config.in" > source "package/qt6/qt6multimedia/Config.in" > diff --git a/package/qt6/qt6grpc/Config.in b/package/qt6/qt6grpc/Config.in > new file mode 100644 > index 0000000000..3d82cfcb0c > --- /dev/null > +++ b/package/qt6/qt6grpc/Config.in > @@ -0,0 +1,7 @@ > +config BR2_PACKAGE_QT6GRPC > + bool "qt6grpc" > + help > + This package provides the Qt GRPC and Protobuf modules: > + > + https://doc.qt.io/qt-6/qtgrpc-index.html > + https://code.qt.io/cgit/qt/qtgrpc.git/ > diff --git a/package/qt6/qt6grpc/qt6grpc.hash > b/package/qt6/qt6grpc/qt6grpc.hash > new file mode 100644 > index 0000000000..06da9f0700 > --- /dev/null > +++ b/package/qt6/qt6grpc/qt6grpc.hash > @@ -0,0 +1,10 @@ > +# Hash from: > https://download.qt.io/official_releases/qt/6.8/6.8.1/submodules/qtgrpc-everywhere-src-6.8.1.tar.xz.sha256 > +sha256 > <https://download.qt.io/official_releases/qt/6.8/6.8.1/submodules/qtgrpc-everywhere-src-6.8.1.tar.xz.sha256+sha256> > b1615c7096b012e5f42aea57c420d2ce21c906d0eda3ea373b09a47cf40b5e80 > qtgrpc-everywhere-src-6.8.1.tar.xz > + > +# Hashes for license files: > +sha256 e3ba223bb1423f0aad8c3dfce0fe3148db48926d41e6fbc3afbbf5ff9e1c89cb > LICENSE.Apache-2.0.txt > +sha256 9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce > LICENSES/BSD-3-Clause.txt > +sha256 110535522396708cea37c72a802c5e7e81391139f5f7985631c93ef242b206a4 > LICENSES/GFDL-1.3-no-invariants-only.txt > +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 > LICENSES/GPL-3.0-only.txt > +sha256 6e5e117324afd944dcf67f36cf329843bc1a92229a8cd9bb573d7a83130fea7d > LICENSES/LicenseRef-protobuf.txt > +sha256 40678d338ce53cd93f8b22b281a2ecbcaa3ee65ce60b25ffb0c462b0530846b2 > LICENSES/Qt-GPL-exception-1.0.txt > diff --git a/package/qt6/qt6grpc/qt6grpc.mk b/package/qt6/qt6grpc/ > qt6grpc.mk > new file mode 100644 > index 0000000000..b8bc2e4651 > --- /dev/null > +++ b/package/qt6/qt6grpc/qt6grpc.mk > @@ -0,0 +1,46 @@ > > +################################################################################ > +# > +# qt6grpc > +# > > +################################################################################ > + > +QT6GRPC_VERSION = $(QT6_VERSION) > +QT6GRPC_SITE = $(QT6_SITE) > +QT6GRPC_SOURCE = > qtgrpc-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6GRPC_VERSION).tar.xz > +QT6GRPC_INSTALL_STAGING = YES > +QT6GRPC_SUPPORTS_IN_SOURCE_BUILD = NO > +QT6GRPC_CMAKE_BACKEND = ninja > When you break your Makefile variable definition over multiple lines you should add a single newline before and after. > +QT6GRPC_LICENSE = \ > + GPL-3.0-only, \ > + Apache-2.0 (tests), \ > + BSD-3-Clause (infrastructure), \ > + GFDL-1.3-no-invariants-only (documentation) > But i think only this one line is preferred: QT6GRPC_LICENSE = GPL-3.0-only Only the toplevel license and for the stuff that ends up on target, I believe the maintainers arrived at this conclusion in a prior discussion. For consistency and improved readability you should also add a newline here: +QT6GRPC_LICENSE_FILES = \ > + LICENSE.Apache-2.0.txt \ > + LICENSES/BSD-3-Clause.txt \ > + LICENSES/GFDL-1.3-no-invariants-only.txt \ > + LICENSES/GPL-3.0-only.txt \ > + LICENSES/LicenseRef-protobuf.txt \ > + LICENSES/Qt-GPL-exception-1.0.txt > + > In my opinion it is good to add all the license files here, as you have done. Its probably better to ship too much than too little legal-info. > +QT6GRPC_CONF_OPTS = \ > + -DBUILD_WITH_PCH=OFF \ > + -DQT_BUILD_EXAMPLES=OFF \ > + -DQT_BUILD_TESTS=OFF \ > + -DQT_HOST_PATH=$(HOST_DIR) > + > +QT6GRPC_DEPENDENCIES = \ > + host-pkgconf \ > + host-qt6grpc \ > + qt6base > + > +ifeq ($(BR2_PACKAGE_QT6DECLARATIVE),y) > +QT6GRPC_DEPENDENCIES += qt6declarative > +endif > + > +HOST_QT6GRPC_DEPENDENCIES = \ > + host-qt6base \ > + host-protobuf > You could also order the above dependencies alphabetically > + > +$(eval $(cmake-package)) > +$(eval $(host-cmake-package)) > -- > 2.49.0 > Regards, Roy
diff --git a/package/qt6/Config.in b/package/qt6/Config.in index 10594691cf..9c297b321e 100644 --- a/package/qt6/Config.in +++ b/package/qt6/Config.in @@ -48,6 +48,7 @@ source "package/qt6/qt6charts/Config.in" source "package/qt6/qt6core5compat/Config.in" source "package/qt6/qt6declarative/Config.in" source "package/qt6/qt6graphs/Config.in" +source "package/qt6/qt6grpc/Config.in" source "package/qt6/qt6languageserver/Config.in" source "package/qt6/qt6mqtt/Config.in" source "package/qt6/qt6multimedia/Config.in" diff --git a/package/qt6/qt6grpc/Config.in b/package/qt6/qt6grpc/Config.in new file mode 100644 index 0000000000..3d82cfcb0c --- /dev/null +++ b/package/qt6/qt6grpc/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_QT6GRPC + bool "qt6grpc" + help + This package provides the Qt GRPC and Protobuf modules: + + https://doc.qt.io/qt-6/qtgrpc-index.html + https://code.qt.io/cgit/qt/qtgrpc.git/ diff --git a/package/qt6/qt6grpc/qt6grpc.hash b/package/qt6/qt6grpc/qt6grpc.hash new file mode 100644 index 0000000000..06da9f0700 --- /dev/null +++ b/package/qt6/qt6grpc/qt6grpc.hash @@ -0,0 +1,10 @@ +# Hash from: https://download.qt.io/official_releases/qt/6.8/6.8.1/submodules/qtgrpc-everywhere-src-6.8.1.tar.xz.sha256 +sha256 b1615c7096b012e5f42aea57c420d2ce21c906d0eda3ea373b09a47cf40b5e80 qtgrpc-everywhere-src-6.8.1.tar.xz + +# Hashes for license files: +sha256 e3ba223bb1423f0aad8c3dfce0fe3148db48926d41e6fbc3afbbf5ff9e1c89cb LICENSE.Apache-2.0.txt +sha256 9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce LICENSES/BSD-3-Clause.txt +sha256 110535522396708cea37c72a802c5e7e81391139f5f7985631c93ef242b206a4 LICENSES/GFDL-1.3-no-invariants-only.txt +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSES/GPL-3.0-only.txt +sha256 6e5e117324afd944dcf67f36cf329843bc1a92229a8cd9bb573d7a83130fea7d LICENSES/LicenseRef-protobuf.txt +sha256 40678d338ce53cd93f8b22b281a2ecbcaa3ee65ce60b25ffb0c462b0530846b2 LICENSES/Qt-GPL-exception-1.0.txt diff --git a/package/qt6/qt6grpc/qt6grpc.mk b/package/qt6/qt6grpc/qt6grpc.mk new file mode 100644 index 0000000000..b8bc2e4651 --- /dev/null +++ b/package/qt6/qt6grpc/qt6grpc.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# qt6grpc +# +################################################################################ + +QT6GRPC_VERSION = $(QT6_VERSION) +QT6GRPC_SITE = $(QT6_SITE) +QT6GRPC_SOURCE = qtgrpc-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6GRPC_VERSION).tar.xz +QT6GRPC_INSTALL_STAGING = YES +QT6GRPC_SUPPORTS_IN_SOURCE_BUILD = NO +QT6GRPC_CMAKE_BACKEND = ninja +QT6GRPC_LICENSE = \ + GPL-3.0-only, \ + Apache-2.0 (tests), \ + BSD-3-Clause (infrastructure), \ + GFDL-1.3-no-invariants-only (documentation) +QT6GRPC_LICENSE_FILES = \ + LICENSE.Apache-2.0.txt \ + LICENSES/BSD-3-Clause.txt \ + LICENSES/GFDL-1.3-no-invariants-only.txt \ + LICENSES/GPL-3.0-only.txt \ + LICENSES/LicenseRef-protobuf.txt \ + LICENSES/Qt-GPL-exception-1.0.txt + +QT6GRPC_CONF_OPTS = \ + -DBUILD_WITH_PCH=OFF \ + -DQT_BUILD_EXAMPLES=OFF \ + -DQT_BUILD_TESTS=OFF \ + -DQT_HOST_PATH=$(HOST_DIR) + +QT6GRPC_DEPENDENCIES = \ + host-pkgconf \ + host-qt6grpc \ + qt6base + +ifeq ($(BR2_PACKAGE_QT6DECLARATIVE),y) +QT6GRPC_DEPENDENCIES += qt6declarative +endif + +HOST_QT6GRPC_DEPENDENCIES = \ + host-qt6base \ + host-protobuf + +$(eval $(cmake-package)) +$(eval $(host-cmake-package))
Adds the QT GRPC module (containing Qt Protobuf as well). Signed-off-by: Jack Rubacha <rubacha.jack03@gmail.com> --- Changes v1 -> v2: - Remove 'selects BR2_PACKAGE_HOST_QT6BASE' as it is a make dependency - Changes help text to clearly state both modules - Adds a git repository link to the help text - Cleans up license files to show all necessary files, matches hashfile - Make multiline clauses alphabetically ordered --- package/qt6/Config.in | 1 + package/qt6/qt6grpc/Config.in | 7 +++++ package/qt6/qt6grpc/qt6grpc.hash | 10 +++++++ package/qt6/qt6grpc/qt6grpc.mk | 46 ++++++++++++++++++++++++++++++++ 4 files changed, 64 insertions(+) create mode 100644 package/qt6/qt6grpc/Config.in create mode 100644 package/qt6/qt6grpc/qt6grpc.hash create mode 100644 package/qt6/qt6grpc/qt6grpc.mk