All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0
@ 2020-07-23  1:07 aduskett at gmail.com
  2020-07-23  1:07 ` [Buildroot] [PATCH 01/12] package/gcr: fix gpg path aduskett at gmail.com
                   ` (13 more replies)
  0 siblings, 14 replies; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:07 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

Hello!

I was bored and needed a small challenge. I remembered that I was finally
finishing up the GOI series around the same time that Giulio was helping me by
testing against a newer version of udisks.

As Giulio is currently not working on software development, I asked him via
Facebook messenger if he was OK with me taking over this patch series. He was
more than happy to give me this gigantic mess!

We thought that newer versions of udisks required GOI, but it
turns out this is not true! Hooray!

Still, this is a pretty hefty patch series, weighing in at 10 in total for the
basics, plus two additional patches at the end to enable GOI support.

Here is a quick summary of my trials and tribulations for anybody who has
made it this far into my ramblings:

Three new packages are necessary:
  - libbytesize
  - libblockdev
  - volume-key

libbytesize is pretty straight forward and doesn't require any significant
system dependencies?just a few small target packages.

libblockdev is an extensive helper library with a ton of plugins. I did test
all of the plugins that it * could * do, but for this patch series, I have
only included the bare minimum needed to get the udisks package version up to
modern standards.

Volume-key: This is a nasty requirement and includes a bunch of encryption
handling. libblockdev doesn't require this package, but udisks does. Because
of the numerous dependencies that volume-key requires, I decided to skip the
traditional "enable this package feature if a user happens to select the
dependent package" in favor of a simple menu config option.

After successfully compiling in Fedora 32, I loaded up CentOS7 with confidence.
Of course, my confidence was my undoing, and udisks immediately choked on
trying to build due to CentOS7 having an ancient pre-spidermonkey polkit.
After a few hours of fiddling around, I finally figured out what the issue
was, added host variants of spidermonkey and polkit, and then added
host-polkit as a dependency to udisks and everything compiled cleanly.

I have tested this patch series with a test-pkg -a in CentOS7, and I recieved
no errors (Other than me running out of hard drive space and having to restart
the test series!)

The size difference between the old and new versions of udisks, even with the
additional dependencies is:

Old: 56M
New: 69M

That's not too bad considering the 6 years of updates that udisks has gone
through!

I am sure there will be some additional changes requested, as this is a hefty
patch series, but * hopefully, * it is broken down enough that Thomas won't
complain too much! :)

Thanks for reading!
Adam

PS.
I added GOI support to libblockdev and udisks because I can. :)

Adam Duskett (12):
  package/gcr: fix gpg path
  package/libbytesize: add new package
  package/volume-key: new package
  package/libblockdev: new package
  package/libblockdev: add cryptography support
  package/libblockdev: add fs plugin support
  package/spidermonkey: add host variant
  package/polkit: add host variant
  package/udisks/Config.in: alphabatize the package selection
  package/udisks: bump version to 2.9.0
  package/libblockdev: add gobject-introspection support
  package/udisks: add gobject-introspection support

 DEVELOPERS                                    |  3 +
 package/Config.in                             |  3 +
 package/gcr/gcr.mk                            |  2 +-
 package/libblockdev/Config.in                 | 46 +++++++++++
 package/libblockdev/libblockdev.hash          |  3 +
 package/libblockdev/libblockdev.mk            | 62 ++++++++++++++
 package/libbytesize/Config.in                 | 10 +++
 package/libbytesize/libbytesize.hash          |  3 +
 package/libbytesize/libbytesize.mk            | 21 +++++
 package/polkit/polkit.mk                      | 13 +++
 package/spidermonkey/spidermonkey.mk          | 15 ++++
 ...-fix-build-with-newer-glibc-versions.patch | 29 -------
 .../0002-Fix-systemd-service-file.patch       | 33 --------
 ...issue-with-missing-sys-sysmacros.h-i.patch | 81 -------------------
 package/udisks/Config.in                      | 29 ++++---
 package/udisks/udisks.hash                    |  4 +-
 package/udisks/udisks.mk                      | 30 +++++--
 ...ove-po-Makefile.in-entry-from-AC_CON.patch | 28 +++++++
 package/volume-key/Config.in                  | 38 +++++++++
 package/volume-key/volume-key.hash            |  3 +
 package/volume-key/volume-key.mk              | 31 +++++++
 21 files changed, 324 insertions(+), 163 deletions(-)
 create mode 100644 package/libblockdev/Config.in
 create mode 100644 package/libblockdev/libblockdev.hash
 create mode 100644 package/libblockdev/libblockdev.mk
 create mode 100644 package/libbytesize/Config.in
 create mode 100644 package/libbytesize/libbytesize.hash
 create mode 100644 package/libbytesize/libbytesize.mk
 delete mode 100644 package/udisks/0001-fix-build-with-newer-glibc-versions.patch
 delete mode 100644 package/udisks/0002-Fix-systemd-service-file.patch
 delete mode 100644 package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch
 create mode 100644 package/volume-key/0001-configure.ac-remove-po-Makefile.in-entry-from-AC_CON.patch
 create mode 100644 package/volume-key/Config.in
 create mode 100644 package/volume-key/volume-key.hash
 create mode 100644 package/volume-key/volume-key.mk

-- 
2.26.2

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 01/12] package/gcr: fix gpg path
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
@ 2020-07-23  1:07 ` aduskett at gmail.com
  2020-07-23  7:44   ` Thomas Petazzoni
  2020-07-23  1:08 ` [Buildroot] [PATCH 02/12] package/libbytesize: new package aduskett at gmail.com
                   ` (12 subsequent siblings)
  13 siblings, 1 reply; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:07 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

gnugpg2 does not create /usr/bin/gpg2, instead, /usr/bin/gpg2 is typically
a symlink to /usr/bin/gpg.

Buildroot does not create this symlink, so this path is not valid.
Change the path to /usr/bin/gpg to fix this issue.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/gcr/gcr.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/gcr/gcr.mk b/package/gcr/gcr.mk
index 97a0e22064..b4f0d582a5 100644
--- a/package/gcr/gcr.mk
+++ b/package/gcr/gcr.mk
@@ -15,7 +15,7 @@ GCR_DEPENDENCIES = \
 	p11-kit \
 	$(TARGET_NLS_DEPENDENCIES)
 GCR_INSTALL_STAGING = YES
-GCR_CONF_ENV = ac_cv_path_GNUPG=/usr/bin/gpg2
+GCR_CONF_ENV = ac_cv_path_GNUPG=/usr/bin/gpg
 GCR_CONF_OPTS = \
 	--disable-gtk-doc \
 	--with-libgcrypt-prefix=$(STAGING_DIR)/usr
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 02/12] package/libbytesize: new package
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
  2020-07-23  1:07 ` [Buildroot] [PATCH 01/12] package/gcr: fix gpg path aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  7:54   ` Thomas Petazzoni
  2020-07-23  1:08 ` [Buildroot] [PATCH 03/12] package/volume-key: " aduskett at gmail.com
                   ` (11 subsequent siblings)
  13 siblings, 1 reply; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

Libbytesize is a tiny library providing a C "class" for working with
arbitrary big sizes in bytes.

libblockdev depends on this package.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 DEVELOPERS                           |  1 +
 package/Config.in                    |  1 +
 package/libbytesize/Config.in        | 10 ++++++++++
 package/libbytesize/libbytesize.hash |  3 +++
 package/libbytesize/libbytesize.mk   | 21 +++++++++++++++++++++
 5 files changed, 36 insertions(+)
 create mode 100644 package/libbytesize/Config.in
 create mode 100644 package/libbytesize/libbytesize.hash
 create mode 100644 package/libbytesize/libbytesize.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 043e8ce3f4..5dc05afa4e 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -43,6 +43,7 @@ F:	package/gstreamer1/gst1-vaapi/
 F:	package/imx-usb-loader/
 F:	package/janus-gateway/
 F:	package/json-for-modern-cpp/
+F:	package/libbytesize/
 F:	package/libcpprestsdk/
 F:	package/libcutl/
 F:	package/libodb/
diff --git a/package/Config.in b/package/Config.in
index e6500123f6..789996e20b 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1829,6 +1829,7 @@ menu "Other"
 	source "package/libavl/Config.in"
 	source "package/libb64/Config.in"
 	source "package/libbsd/Config.in"
+	source "package/libbytesize/Config.in"
 	source "package/libcap/Config.in"
 	source "package/libcap-ng/Config.in"
 	source "package/libcgroup/Config.in"
diff --git a/package/libbytesize/Config.in b/package/libbytesize/Config.in
new file mode 100644
index 0000000000..6cc550e488
--- /dev/null
+++ b/package/libbytesize/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_LIBBYTESIZE
+	bool "libbytesize"
+	select BR2_PACKAGE_GMP
+	select BR2_PACKAGE_MPFR
+	select BR2_PACKAGE_PCRE2
+	help
+	  A tiny library that facilitates the common operations with
+	  sizes in bytes
+
+	  https://github.com/storaged-project/libbytesize/
diff --git a/package/libbytesize/libbytesize.hash b/package/libbytesize/libbytesize.hash
new file mode 100644
index 0000000000..34cb3b210f
--- /dev/null
+++ b/package/libbytesize/libbytesize.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  3c74113fc8cd1a2fbd8870fa0ed7cef2ef24d60ef91e7145fbc041f9aa144479  libbytesize-2.3.tar.gz
+sha256  97bdc721d875501b6243a456333fdfdb1ab64d31c4da2554de845caf4674b946  LICENSE
diff --git a/package/libbytesize/libbytesize.mk b/package/libbytesize/libbytesize.mk
new file mode 100644
index 0000000000..130c5ed81c
--- /dev/null
+++ b/package/libbytesize/libbytesize.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# libbytesize
+#
+################################################################################
+
+LIBBYTESIZE_VERSION = 2.3
+LIBBYTESIZE_SITE = https://github.com/storaged-project/libbytesize/releases/download/$(LIBBYTESIZE_VERSION)
+LIBBYTESIZE_LICENSE = LGPL-2.1+
+LIBBYTESIZE_LICENSE_FILES = LICENSE
+LIBBYTESIZE_INSTALL_STAGING = YES
+
+# gettext-gnu is needed for msgcat which gettext-tiny does not provide,
+LIBBYTESIZE_DEPENDENCIES = \
+	host-pkgconf \
+	host-gettext-gnu \
+	gmp \
+	mpfr \
+	pcre2
+
+$(eval $(autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 03/12] package/volume-key: new package
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
  2020-07-23  1:07 ` [Buildroot] [PATCH 01/12] package/gcr: fix gpg path aduskett at gmail.com
  2020-07-23  1:08 ` [Buildroot] [PATCH 02/12] package/libbytesize: new package aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  8:58   ` Thomas Petazzoni
  2020-07-23  1:08 ` [Buildroot] [PATCH 04/12] package/libblockdev: " aduskett at gmail.com
                   ` (10 subsequent siblings)
  13 siblings, 1 reply; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

The volume-key project provides a library for manipulating storage volume
encryption keys and storing them separately from volumes, and an associated
command-line tool, named volume_key.

The main goal of the software is to allow restoring access to an encrypted
hard drive if the primary user forgets the passphrase. The encryption key back
up can also be useful for extracting data after a hardware or software failure
that corrupts the header of the encrypted volume, or to access the company
data after an employee leaves abruptly.

Updated versions of udisks are dependent on this package.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 DEVELOPERS                                    |  1 +
 package/Config.in                             |  1 +
 ...ove-po-Makefile.in-entry-from-AC_CON.patch | 28 ++++++++++++++
 package/volume-key/Config.in                  | 38 +++++++++++++++++++
 package/volume-key/volume-key.hash            |  3 ++
 package/volume-key/volume-key.mk              | 31 +++++++++++++++
 6 files changed, 102 insertions(+)
 create mode 100644 package/volume-key/0001-configure.ac-remove-po-Makefile.in-entry-from-AC_CON.patch
 create mode 100644 package/volume-key/Config.in
 create mode 100644 package/volume-key/volume-key.hash
 create mode 100644 package/volume-key/volume-key.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 72216b8fce..a4b6708c35 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -92,6 +92,7 @@ F:	package/setools/
 F:	package/sngrep/
 F:	package/spidermonkey/
 F:	package/systemd/
+F:	package/volume-key/
 F:	support/testing/tests/package/test_gst1_python.py
 F:	support/testing/tests/package/test_python_gobject.py
 
diff --git a/package/Config.in b/package/Config.in
index 8fa8324f35..0a93eebbf9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1340,6 +1340,7 @@ menu "Crypto"
 	source "package/tpm2-tss/Config.in"
 	source "package/trousers/Config.in"
 	source "package/ustream-ssl/Config.in"
+	source "package/volume-key/Config.in"
 	source "package/wolfssl/Config.in"
 endmenu
 
diff --git a/package/volume-key/0001-configure.ac-remove-po-Makefile.in-entry-from-AC_CON.patch b/package/volume-key/0001-configure.ac-remove-po-Makefile.in-entry-from-AC_CON.patch
new file mode 100644
index 0000000000..2f6a025fd0
--- /dev/null
+++ b/package/volume-key/0001-configure.ac-remove-po-Makefile.in-entry-from-AC_CON.patch
@@ -0,0 +1,28 @@
+From d1142e667f4f2f2fcd2d36a006919325c1a4377e Mon Sep 17 00:00:00 2001
+From: Giulio Benetti <giulio.benetti@benettiengineering.com>
+Date: Sat, 25 Jan 2020 17:24:38 +0100
+Subject: [PATCH] configure.ac: remove po/Makefile.in entry from AC_CONFIG_FILES
+
+AC_CONFIG_FILES should not contain po/Makefile.because gettextize will
+re-add it causing build failure.
+
+Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
+Signed-off-by: Adam Duskett <aduskett@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 7d3d27a..f4295ff 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -244,5 +244,5 @@ if test "$GCC" = yes ; then
+ fi
+ 
+ dnl po/Makefile
+-AC_CONFIG_FILES([Makefile contrib/Makefile doc/Makefile lib/Makefile po/Makefile.in python/Makefile python/python/Makefile python/python3/Makefile src/Makefile tests/Makefile])
++AC_CONFIG_FILES([Makefile contrib/Makefile doc/Makefile lib/Makefile python/Makefile python/python/Makefile python/python3/Makefile src/Makefile tests/Makefile])
+ AC_OUTPUT
+-- 
+2.20.1
+
diff --git a/package/volume-key/Config.in b/package/volume-key/Config.in
new file mode 100644
index 0000000000..776e9d97fb
--- /dev/null
+++ b/package/volume-key/Config.in
@@ -0,0 +1,38 @@
+config BR2_PACKAGE_VOLUME_KEY
+	bool "volume-key"
+	depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # gpg2, libgpgme, libassuan
+	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnss
+	depends on BR2_USE_MMU # gpg2, cryptsetup, libassuan, libglib2, libgpgme
+	depends on BR2_USE_WCHAR # libglib2
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # cryptsetup
+	depends on BR2_TOOLCHAIN_HAS_THREADS # cryptsetup, gpg2, libassuan, libglib2, libgpgme, libnss
+	depends on !BR2_STATIC_LIBS # gpg2, cryptsetup, libnss
+	select BR2_PACKAGE_CRYPTSETUP
+	select BR2_PACKAGE_GNUPG2 # runtime
+	select BR2_PACKAGE_LIBASSUAN
+	select BR2_PACKAGE_LIBGLIB2
+	select BR2_PACKAGE_LIBGPGME
+	select BR2_PACKAGE_LIBNSS
+	select BR2_PACKAGE_UTIL_LINUX # runtime
+	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID # runtime
+	help
+	  The volume-key project provides a library for manipulating
+	  storage volume encryption keys and storing them separately
+	  from volumes, and an associated command-line tool, named
+	  volume_key.
+
+	  The main goal of the software is to allow restoring access to
+	  an encrypted hard drive if the primary user forgets the
+	  passphrase. The encryption key back up can also be useful for
+	  extracting data after a hardware or software failure that
+	  corrupts the header of the encrypted volume, or to access the
+	  company data after an employee leaves abruptly.
+
+	  https://pagure.io/volume_key
+
+comment "volume-key needs a toolchain w/ wchar, threads, dynamic library"
+	depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
+	depends on BR2_USE_MMU
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4
+	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/volume-key/volume-key.hash b/package/volume-key/volume-key.hash
new file mode 100644
index 0000000000..881a949d78
--- /dev/null
+++ b/package/volume-key/volume-key.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  85abbd65b640cb9ecfa87746484c12e631e554c85a73ca3771b2bc06fa5d37ca  volume-key-volume_key-0.3.12.tar.gz
+sha256  8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING
diff --git a/package/volume-key/volume-key.mk b/package/volume-key/volume-key.mk
new file mode 100644
index 0000000000..7c3f125434
--- /dev/null
+++ b/package/volume-key/volume-key.mk
@@ -0,0 +1,31 @@
+################################################################################
+#
+# volume-key
+#
+################################################################################
+
+VOLUME_KEY_VERSION = volume_key-0.3.12
+VOLUME_KEY_SITE = https://pagure.io/volume_key.git
+VOLUME_KEY_SITE_METHOD = git
+VOLUME_KEY_LICENSE = GPL-2.0
+VOLUME_KEY_LICENSE_FILES = COPYING
+VOLUME_KEY_INSTALL_STAGING = YES
+VOLUME_KEY_AUTORECONF = YES
+VOLUME_KEY_GETTEXTIZE = YES
+VOLUME_KEY_DEPENDENCIES = \
+	cryptsetup \
+	gnupg2 \
+	libglib2 \
+	libgpgme \
+	libnss \
+	util-linux \
+	$(TARGET_NLS_DEPENDENCIES)
+
+VOLUME_KEY_CONF_ENV += ac_cv_path_GPG=/usr/bin/gpg
+
+VOLUME_KEY_CONF_OPTS = \
+	--with-gpgme-prefix=$(STAGING_DIR)/usr \
+	--without-python \
+	--without-python3
+
+$(eval $(autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 04/12] package/libblockdev: new package
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (2 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 03/12] package/volume-key: " aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  8:57   ` Thomas Petazzoni
  2020-07-23  1:08 ` [Buildroot] [PATCH 05/12] package/libblockdev: add cryptography support aduskett at gmail.com
                   ` (9 subsequent siblings)
  13 siblings, 1 reply; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

libblockdev is a C library supporting GObject introspection for manipulation
of block devices. It has a plugin-based architecture where each technology
(like LVM, Btrfs, MD RAID, Swap,...) is implemented in a separate plugin,
possibly with multiple implementations.

Gobject-introspection is not a strict dependency and may be disabled via a
configure flag.

This is the base package with everything disabled, the subsequent patches in
this series will add more options necessary to bump udisk to the latest
version.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 DEVELOPERS                           |  1 +
 package/Config.in                    |  1 +
 package/libblockdev/Config.in        | 30 +++++++++++++++++++++
 package/libblockdev/libblockdev.hash |  3 +++
 package/libblockdev/libblockdev.mk   | 40 ++++++++++++++++++++++++++++
 5 files changed, 75 insertions(+)
 create mode 100644 package/libblockdev/Config.in
 create mode 100644 package/libblockdev/libblockdev.hash
 create mode 100644 package/libblockdev/libblockdev.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 5dc05afa4e..72216b8fce 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -43,6 +43,7 @@ F:	package/gstreamer1/gst1-vaapi/
 F:	package/imx-usb-loader/
 F:	package/janus-gateway/
 F:	package/json-for-modern-cpp/
+F:	package/libblockdev/
 F:	package/libbytesize/
 F:	package/libcpprestsdk/
 F:	package/libcutl/
diff --git a/package/Config.in b/package/Config.in
index 789996e20b..8fa8324f35 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1494,6 +1494,7 @@ menu "Hardware handling"
 	source "package/let-me-create/Config.in"
 	source "package/libaio/Config.in"
 	source "package/libatasmart/Config.in"
+	source "package/libblockdev/Config.in"
 	source "package/libcec/Config.in"
 	source "package/libfreefare/Config.in"
 	source "package/libftdi/Config.in"
diff --git a/package/libblockdev/Config.in b/package/libblockdev/Config.in
new file mode 100644
index 0000000000..a7e9952bc0
--- /dev/null
+++ b/package/libblockdev/Config.in
@@ -0,0 +1,30 @@
+config BR2_PACKAGE_LIBBLOCKDEV
+	bool "libblockdev"
+	depends on BR2_ENABLE_LOCALE # parted
+	depends on BR2_USE_MMU # libglib2, lvm2
+	depends on BR2_USE_WCHAR # libglib2, parted
+	depends on !BR2_STATIC_LIBS # kmod, lvm2
+	depends on BR2_PACKAGE_HAS_UDEV
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2, lvm2
+	depends on !BR2_TOOLCHAIN_USES_UCLIBC # parted
+	select BR2_PACKAGE_KMOD
+	select BR2_PACKAGE_LIBBYTESIZE
+	select BR2_PACKAGE_LIBGLIB2
+	select BR2_PACKAGE_LIBYAML
+	select BR2_PACKAGE_LVM2
+	select BR2_PACKAGE_PARTED
+	help
+	  libblockdev is a C library supporting GObject introspection
+	  for manipulation of block devices. It has a plugin-based
+	  architecture where each technology (like LVM, Btrfs, MD RAID,
+	  Swap,...) is implemented in a separate plugin, possibly with
+	  multiple implementations.
+
+	  https://github.com/storaged-project/libblockdev/
+
+comment "libblockdev needs udev /dev management and a glibc or musl toolchain w/ locale, wchar, threads, dynamic library"
+	depends on BR2_USE_MMU
+	depends on !BR2_PACKAGE_HAS_UDEV
+	depends on BR2_TOOLCHAIN_USES_UCLIBC || \
+		BR2_STATIC_LIBS || !BR2_ENABLE_LOCALE || \
+		!BR2_USE_WCHAR || BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/libblockdev/libblockdev.hash b/package/libblockdev/libblockdev.hash
new file mode 100644
index 0000000000..1c4b1ec7bf
--- /dev/null
+++ b/package/libblockdev/libblockdev.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  dc207c70dbef52c818a8abbcb6b8e298a6b63c0b78a5e1f2773b5f7b89300773  libblockdev-2.24.tar.gz
+sha256  97bdc721d875501b6243a456333fdfdb1ab64d31c4da2554de845caf4674b946  LICENSE
diff --git a/package/libblockdev/libblockdev.mk b/package/libblockdev/libblockdev.mk
new file mode 100644
index 0000000000..87c614a35e
--- /dev/null
+++ b/package/libblockdev/libblockdev.mk
@@ -0,0 +1,40 @@
+################################################################################
+#
+# libblockdev
+#
+################################################################################
+
+LIBBLOCKDEV_VERSION = 2.24
+LIBBLOCKDEV_SITE = https://github.com/storaged-project/libblockdev/releases/download/$(LIBBLOCKDEV_VERSION)-1
+LIBBLOCKDEV_LICENSE = LGPL-2.1+
+LIBBLOCKDEV_LICENSE_FILES = LICENSE
+LIBBLOCKDEV_INSTALL_STAGING = YES
+
+LIBBLOCKDEV_DEPENDENCIES = \
+	host-pkgconf \
+	kmod \
+	libbytesize \
+	libglib2 \
+	libyaml \
+	lvm2 \
+	parted \
+	udev
+
+LIBBLOCKDEV_CONF_OPTS = \
+	--enable-introspection=no \
+	--without-bcache \
+	--without-btrfs \
+	--without-crypto \
+	--without-escrow \
+	--without-fs \
+	--without-dm \
+	--without-dmraid \
+	--without-nvdimm \
+	--without-tools \
+	--without-python2 \
+	--without-vdo \
+	--with-lvm \
+	--with-part \
+	--with-swap
+
+$(eval $(autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 05/12] package/libblockdev: add cryptography support
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (3 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 04/12] package/libblockdev: " aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23 12:06   ` Thomas Petazzoni
  2020-07-23  1:08 ` [Buildroot] [PATCH 06/12] package/libblockdev: add fs plugin support aduskett at gmail.com
                   ` (8 subsequent siblings)
  13 siblings, 1 reply; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

The cryptography plugin requires the volume-key package. Because of the large
number of required dependencies needed to build volume-key, adding a separate
config option to libblockdev's Config.in is preferable than checking if a user
selected the volume-key package independently.

This option is needed for newer versions of udisks.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/libblockdev/Config.in      | 13 +++++++++++++
 package/libblockdev/libblockdev.mk | 12 ++++++++++--
 2 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/package/libblockdev/Config.in b/package/libblockdev/Config.in
index 19a6ed0974..6740b7ac6c 100644
--- a/package/libblockdev/Config.in
+++ b/package/libblockdev/Config.in
@@ -22,6 +22,19 @@ config BR2_PACKAGE_LIBBLOCKDEV
 
 	  https://github.com/storaged-project/libblockdev/
 
+if BR2_PACKAGE_LIBBLOCKDEV
+
+config BR2_PACKAGE_LIBBLOCKDEV_CRYPTO
+	bool "Crypto plugin"
+	depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # gpg2, libgpgme, libassuan
+	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # volume-key -> libnss -> libnspr
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # volume-key -> cryptsetup -> json-c
+	select BR2_PACKAGE_CRYPTSETUP
+	select BR2_PACKAGE_LIBNSS
+	select BR2_PACKAGE_VOLUME_KEY
+
+endif
+
 comment "libblockdev needs udev /dev management and a glibc or musl toolchain w/ locale, wchar, threads, dynamic library"
 	depends on BR2_USE_MMU
 	depends on !BR2_PACKAGE_HAS_UDEV
diff --git a/package/libblockdev/libblockdev.mk b/package/libblockdev/libblockdev.mk
index f48adbcdee..72163d8a94 100644
--- a/package/libblockdev/libblockdev.mk
+++ b/package/libblockdev/libblockdev.mk
@@ -24,8 +24,6 @@ LIBBLOCKDEV_CONF_OPTS = \
 	--enable-introspection=no \
 	--without-bcache \
 	--without-btrfs \
-	--without-crypto \
-	--without-escrow \
 	--without-fs \
 	--without-dm \
 	--without-dmraid \
@@ -37,4 +35,14 @@ LIBBLOCKDEV_CONF_OPTS = \
 	--with-part \
 	--with-swap
 
+ifeq ($(BR2_PACKAGE_LIBBLOCKDEV_CRYPTO),y)
+LIBBLOCKDEV_CONF_OPTS += --with-crypto --with-escrow
+LIBBLOCKDEV_DEPENDENCIES += \
+	cryptsetup \
+	libnss \
+	volume-key
+else
+LIBBLOCKDEV_CONF_OPTS += --without-crypto --without-escrow
+endif
+
 $(eval $(autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 06/12] package/libblockdev: add fs plugin support
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (4 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 05/12] package/libblockdev: add cryptography support aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  1:08 ` [Buildroot] [PATCH 07/12] package/spidermonkey: add host variant aduskett at gmail.com
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

This plugin enables the fs plugin for the libblockdev library, which is
required for newer versions of the udisks package.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/libblockdev/Config.in      | 4 ++++
 package/libblockdev/libblockdev.mk | 7 ++++++-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/package/libblockdev/Config.in b/package/libblockdev/Config.in
index 6740b7ac6c..db67afd648 100644
--- a/package/libblockdev/Config.in
+++ b/package/libblockdev/Config.in
@@ -33,6 +33,10 @@ config BR2_PACKAGE_LIBBLOCKDEV_CRYPTO
 	select BR2_PACKAGE_LIBNSS
 	select BR2_PACKAGE_VOLUME_KEY
 
+config BR2_PACKAGE_LIBBLOCKDEV_FS
+	bool "Filesystem plugin"
+	select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
+
 endif
 
 comment "libblockdev needs udev /dev management and a glibc or musl toolchain w/ locale, wchar, threads, dynamic library"
diff --git a/package/libblockdev/libblockdev.mk b/package/libblockdev/libblockdev.mk
index 72163d8a94..2fd24e6103 100644
--- a/package/libblockdev/libblockdev.mk
+++ b/package/libblockdev/libblockdev.mk
@@ -24,7 +24,6 @@ LIBBLOCKDEV_CONF_OPTS = \
 	--enable-introspection=no \
 	--without-bcache \
 	--without-btrfs \
-	--without-fs \
 	--without-dm \
 	--without-dmraid \
 	--without-nvdimm \
@@ -45,4 +44,10 @@ else
 LIBBLOCKDEV_CONF_OPTS += --without-crypto --without-escrow
 endif
 
+ifeq ($(BR2_PACKAGE_LIBBLOCKDEV_FS),y)
+LIBBLOCKDEV_CONF_OPTS += --with-fs
+else
+LIBBLOCKDEV_CONF_OPTS += --without-fs
+endif
+
 $(eval $(autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 07/12] package/spidermonkey: add host variant
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (5 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 06/12] package/libblockdev: add fs plugin support aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  1:08 ` [Buildroot] [PATCH 08/12] package/polkit: " aduskett at gmail.com
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

New versions of udisks require an updated version of polkit to build the
udisks policy file. If a user builds on a distribution that does not include
polkit, or a distribution such as CentOS7 which provides a polkit version too
old to use spidermonkey, compiling fails.

Building a host variant of polkit is necessary to fix this issue, which
requires a host variant of spidermonkey.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/spidermonkey/spidermonkey.mk | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/package/spidermonkey/spidermonkey.mk b/package/spidermonkey/spidermonkey.mk
index 50afdc1758..b65bd5ca9e 100644
--- a/package/spidermonkey/spidermonkey.mk
+++ b/package/spidermonkey/spidermonkey.mk
@@ -20,6 +20,11 @@ SPIDERMONKEY_DEPENDENCIES = \
 	libnspr \
 	zlib
 
+HOST_SPIDERMONKEY_DEPENDENCIES = \
+	host-python \
+	host-libnspr \
+	host-zlib
+
 SPIDERMONKEY_CONF_ENV = \
 	PYTHON="$(HOST_DIR)/bin/python2"
 
@@ -35,6 +40,17 @@ SPIDERMONKEY_CONF_OPTS = \
 	--with-system-nspr \
 	--with-nspr-exec-prefix="$(STAGING_DIR)/usr"
 
+# The only reason to build the host variant is to build the host variant of
+# polkit. As such, only the bare minimum is selected.
+HOST_SPIDERMONKEY_CONF_OPTS = \
+	--host=$(GNU_HOST_NAME) \
+	--target=$(GNU_HOST_NAME) \
+	--disable-jemalloc \
+	--enable-shared-js \
+	--with-system-zlib \
+	--with-system-nspr \
+	--with-nspr-exec-prefix="$(HOST_DIR)/usr"
+
 ifeq ($(BR2_PACKAGE_SPIDERMONKEY_JIT_ARCH_SUPPORTS),y)
 SPIDERMONKEY_CONF_OPTS += --enable-ion
 else
@@ -62,3 +78,4 @@ endef
 SPIDERMONKEY_POST_INSTALL_TARGET_HOOKS += SPIDERMONKEY_CLEANUP
 
 $(eval $(autotools-package))
+$(eval $(host-autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 08/12] package/polkit: add host variant
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (6 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 07/12] package/spidermonkey: add host variant aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  1:08 ` [Buildroot] [PATCH 09/12] package/udisks/Config.in: alphabatize package selection aduskett at gmail.com
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

Building a host variant of polkit ensures that building the new version of the
udisks package succeeds on distributions that do not provide a new enough
version of Polkit.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/polkit/polkit.mk | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/package/polkit/polkit.mk b/package/polkit/polkit.mk
index 3ae42b2312..5f9914482a 100644
--- a/package/polkit/polkit.mk
+++ b/package/polkit/polkit.mk
@@ -14,6 +14,9 @@ POLKIT_INSTALL_STAGING = YES
 POLKIT_DEPENDENCIES = \
 	libglib2 host-intltool expat spidermonkey $(TARGET_NLS_DEPENDENCIES)
 
+HOST_POLKIT_DEPENDENCIES = \
+	host-libglib2 host-intltool host-expat host-spidermonkey
+
 # spidermonkey needs C++11
 POLKIT_CONF_ENV = \
 	CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11" \
@@ -26,6 +29,17 @@ POLKIT_CONF_OPTS = \
 	--disable-libelogind \
 	--disable-libsystemd-login
 
+# The only reason for building the host polkit is to build udisks.
+# As such, only the bare minimum is enabled.
+HOST_POLKIT_CONF_OPTS = \
+	--with-os-type=unknown \
+	--disable-man-pages \
+	--disable-examples \
+	--disable-libelogind \
+	--disable-libsystemd-login \
+	--disable-introspection \
+	--with-authfw=shadow
+
 ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
 POLKIT_CONF_OPTS += --enable-introspection
 POLKIT_DEPENDENCIES += gobject-introspection
@@ -57,3 +71,4 @@ define POLKIT_INSTALL_INIT_SYSTEMD
 endef
 
 $(eval $(autotools-package))
+$(eval $(host-autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 09/12] package/udisks/Config.in: alphabatize package selection
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (7 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 08/12] package/polkit: " aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  1:08 ` [Buildroot] [PATCH 10/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

This patch makes the upcoming udisk2 version bump patch easier to read,
and also fixes the Config.in, so it follows Buildroot's package guidelines.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/udisks/Config.in | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/package/udisks/Config.in b/package/udisks/Config.in
index 04a632dd8d..2c0d0dab52 100644
--- a/package/udisks/Config.in
+++ b/package/udisks/Config.in
@@ -13,12 +13,12 @@ config BR2_PACKAGE_UDISKS
 	depends on !BR2_STATIC_LIBS # lvm2, spidermonkey
 	select BR2_PACKAGE_DBUS
 	select BR2_PACKAGE_DBUS_GLIB
-	select BR2_PACKAGE_SG3_UTILS
-	select BR2_PACKAGE_POLKIT
-	select BR2_PACKAGE_PARTED
-	select BR2_PACKAGE_LVM2
 	select BR2_PACKAGE_LIBATASMART
 	select BR2_PACKAGE_LIBGUDEV
+	select BR2_PACKAGE_LVM2
+	select BR2_PACKAGE_PARTED
+	select BR2_PACKAGE_POLKIT
+	select BR2_PACKAGE_SG3_UTILS
 	help
 	  The udisks project provides
 
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 10/12] package/udisks: bump version to 2.9.0
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (8 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 09/12] package/udisks/Config.in: alphabatize package selection aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  1:08 ` [Buildroot] [PATCH 11/12] package/libblockdev: add gobject-introspection support aduskett at gmail.com
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

Changes include:
  - Remove upstream patches
  - Change the upstream url from freedesktop to github.
    Instead of using the github macro, download the provided release tarball.
    This prevents having to use autoreconf.

  - Add host-polkit, libblockdev, and libxslt as dependencies.
  - Remove the --disable-remote-access and --disable-man-pages conf opt, as
    they no longer exist.
  - Disable all new options by default.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 ...-fix-build-with-newer-glibc-versions.patch | 29 -------
 .../0002-Fix-systemd-service-file.patch       | 33 --------
 ...issue-with-missing-sys-sysmacros.h-i.patch | 81 -------------------
 package/udisks/Config.in                      | 21 +++--
 package/udisks/udisks.hash                    |  4 +-
 package/udisks/udisks.mk                      | 22 +++--
 6 files changed, 33 insertions(+), 157 deletions(-)
 delete mode 100644 package/udisks/0001-fix-build-with-newer-glibc-versions.patch
 delete mode 100644 package/udisks/0002-Fix-systemd-service-file.patch
 delete mode 100644 package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch

diff --git a/package/udisks/0001-fix-build-with-newer-glibc-versions.patch b/package/udisks/0001-fix-build-with-newer-glibc-versions.patch
deleted file mode 100644
index 336fc440a6..0000000000
--- a/package/udisks/0001-fix-build-with-newer-glibc-versions.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Fix build with newer glibc versions
-
-This patch has been backported from upstream:
-
-http://cgit.freedesktop.org/udisks/commit/?h=udisks1&id=9829152b12a8924d2e091a00133ed1a3a7ba75c0
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-
-From 9829152b12a8924d2e091a00133ed1a3a7ba75c0 Mon Sep 17 00:00:00 2001
-From: Alexandre Rostovtsev <tetromino@gentoo.org>
-Date: Fri, 29 May 2015 21:09:39 -0400
-Subject: fix build with newer glibc versions
-
-https://bugs.freedesktop.org/show_bug.cgi?id=90778
-
-diff --git a/src/helpers/job-drive-detach.c b/src/helpers/job-drive-detach.c
-index eeafcab..d122a1f 100644
---- a/src/helpers/job-drive-detach.c
-+++ b/src/helpers/job-drive-detach.c
-@@ -18,6 +18,7 @@
-  *
-  */
- 
-+#include <sys/stat.h>
- #include <stdio.h>
- #include <string.h>
- #include <errno.h>
--- 
-cgit v0.10.2
diff --git a/package/udisks/0002-Fix-systemd-service-file.patch b/package/udisks/0002-Fix-systemd-service-file.patch
deleted file mode 100644
index ea347aef73..0000000000
--- a/package/udisks/0002-Fix-systemd-service-file.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From bf8b4362cef24a6f747e4329305a4939c8f585d1 Mon Sep 17 00:00:00 2001
-From: David King <amigadave@amigadave.com>
-Date: Thu, 2 Jul 2015 13:49:22 +0100
-Subject: [PATCH] Fix systemd service file
-
-udisks-daemon is installed to $(libexecdir), not $(prefix)/lib/udisks.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=1238664
-https://bugs.freedesktop.org/show_bug.cgi?id=91191
-
-[This patch has been backported from upstream:
-https://cgit.freedesktop.org/udisks/commit/?h=udisks1&id=bf8b4362cef24a6f747e4329305a4939c8f585d1]
-Signed-off-by: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
----
- data/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/data/Makefile.am b/data/Makefile.am
-index 411ea0f..08af5f4 100644
---- a/data/Makefile.am
-+++ b/data/Makefile.am
-@@ -31,7 +31,7 @@ systemdservicedir       = $(systemdsystemunitdir)
- systemdservice_DATA     = $(systemdservice_in_files:.service.in=.service)
- 
- $(systemdservice_DATA): $(systemdservice_in_files) Makefile
--	@sed -e "s|\@libexecdir\@|$(prefix)/lib/udisks|" $< > $@
-+	@sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
- endif
- 
- udevrulesdir = $(slashlibdir)/udev/rules.d
--- 
-2.7.4
-
diff --git a/package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch b/package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch
deleted file mode 100644
index 71152e5de3..0000000000
--- a/package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From d934b0fa5ce24a8fd1987b916e435ba991c2ef64 Mon Sep 17 00:00:00 2001
-From: Vadim Kochan <vadim.kochan@petcube.com>
-Date: Mon, 31 Dec 2018 11:00:46 +0200
-Subject: [PATCH] Fix compilation issue due to missing sys/sysmacros.h include
-
-glibc 2.28+ no longer include <sys/sysmacros.h> from <sys/types.h>, so
-<sys/sysmacros.h> must now be explicitly included to use the major,
-minor and makedev macros.
-
-Signed-off-by: Vadim Kochan <vadim.kochan@petcube.com>
----
- src/daemon.c          | 1 +
- src/device.c          | 1 +
- src/mount-monitor.c   | 1 +
- tools/udisks.c        | 1 +
- tools/umount-udisks.c | 1 +
- 5 files changed, 5 insertions(+)
-
-diff --git a/src/daemon.c b/src/daemon.c
-index fafcf9a..4303a6d 100644
---- a/src/daemon.c
-+++ b/src/daemon.c
-@@ -45,6 +45,7 @@
- #include <sys/socket.h>
- #include <sys/un.h>
- #include <sys/utsname.h>
-+#include <sys/sysmacros.h>
- #include <net/if_arp.h>
- #include <fcntl.h>
- #include <signal.h>
-diff --git a/src/device.c b/src/device.c
-index 2ae7f38..20920df 100644
---- a/src/device.c
-+++ b/src/device.c
-@@ -33,6 +33,7 @@
- #include <sys/stat.h>
- #include <sys/time.h>
- #include <sys/resource.h>
-+#include <sys/sysmacros.h>
- #include <fcntl.h>
- #include <pwd.h>
- #include <grp.h>
-diff --git a/src/mount-monitor.c b/src/mount-monitor.c
-index 573a69c..0cfa167 100644
---- a/src/mount-monitor.c
-+++ b/src/mount-monitor.c
-@@ -29,6 +29,7 @@
- #include <string.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <mntent.h>
- 
- #include <glib.h>
-diff --git a/tools/udisks.c b/tools/udisks.c
-index 97e80d7..22a7d87 100644
---- a/tools/udisks.c
-+++ b/tools/udisks.c
-@@ -31,6 +31,7 @@
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <sys/wait.h>
-+#include <sys/sysmacros.h>
- #include <fcntl.h>
- #include <pwd.h>
- #include <grp.h>
-diff --git a/tools/umount-udisks.c b/tools/umount-udisks.c
-index 2813fe0..d915660 100644
---- a/tools/umount-udisks.c
-+++ b/tools/umount-udisks.c
-@@ -30,6 +30,7 @@
- #include <string.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <fcntl.h>
- #include <pwd.h>
- #include <grp.h>
--- 
-2.14.1
-
diff --git a/package/udisks/Config.in b/package/udisks/Config.in
index 2c0d0dab52..f400e9d946 100644
--- a/package/udisks/Config.in
+++ b/package/udisks/Config.in
@@ -1,20 +1,27 @@
 config BR2_PACKAGE_UDISKS
 	bool "udisks"
-	depends on BR2_ENABLE_LOCALE # parted
+	depends on BR2_ENABLE_LOCALE # libblockdev, parted
 	depends on BR2_HOST_GCC_AT_LEAST_4_9 # spidermonkey
 	depends on BR2_INSTALL_LIBSTDCPP # spidermonkey
 	depends on BR2_PACKAGE_HAS_UDEV
+	depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libblockdev -> gpg2, libgpgme, libassuan
+	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libblockdev -> volume-key
 	depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS # spidermonkey
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # spidermonkey
 	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # polkit
-	depends on BR2_USE_MMU # lvm2
-	depends on BR2_USE_WCHAR # dbus-glib -> glib2
-	depends on !BR2_TOOLCHAIN_USES_UCLIBC # polkit, lvm2, parted
-	depends on !BR2_STATIC_LIBS # lvm2, spidermonkey
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libblockdev -> volume-key -> cryptsetup
+	depends on BR2_USE_MMU # libblockdev, dbus, lvm2, volume-key
+	depends on BR2_USE_WCHAR # dbus-glib -> glib2, libblockdev -> volume-key
+	depends on !BR2_TOOLCHAIN_USES_UCLIBC # libblockdev, polkit, lvm2, parted
+	depends on !BR2_STATIC_LIBS # lvm2, spidermonkey, libblockdev -> volume-key
 	select BR2_PACKAGE_DBUS
 	select BR2_PACKAGE_DBUS_GLIB
 	select BR2_PACKAGE_LIBATASMART
+	select BR2_PACKAGE_LIBBLOCKDEV
+	select BR2_PACKAGE_LIBBLOCKDEV_CRYPTO
+	select BR2_PACKAGE_LIBBLOCKDEV_FS
 	select BR2_PACKAGE_LIBGUDEV
+	select BR2_PACKAGE_LIBXSLT
 	select BR2_PACKAGE_LVM2
 	select BR2_PACKAGE_PARTED
 	select BR2_PACKAGE_POLKIT
@@ -43,7 +50,6 @@ config BR2_PACKAGE_UDISKS_LVM2
 
 comment "lvm2 support needs a glibc toolchain"
 	depends on !BR2_TOOLCHAIN_USES_GLIBC
-
 endif
 
 comment "udisks needs udev /dev management"
@@ -52,7 +58,10 @@ comment "udisks needs udev /dev management"
 
 comment "udisks needs a glibc or musl toolchain with locale, C++, wchar, dynamic library, NPTL, gcc >= 4.9"
 	depends on BR2_USE_MMU
+	depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
 	depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4
 	depends on !BR2_ENABLE_LOCALE || BR2_TOOLCHAIN_USES_UCLIBC || \
 		!BR2_INSTALL_LIBSTDCPP || \
 		BR2_STATIC_LIBS || \
diff --git a/package/udisks/udisks.hash b/package/udisks/udisks.hash
index b40161e323..7f81e5bbe5 100644
--- a/package/udisks/udisks.hash
+++ b/package/udisks/udisks.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 f2ec82eb0ea7e01dc299b5b29b3c18cdf861236ec43dcff66b3552b4b31c6f71  udisks-1.0.5.tar.gz
-sha256 7d30f41a79a9b453b4972a6d7e3425ff104b39232891bde8ba659f1adb21f771  COPYING
+sha256  25b09265d71b9b97069e4a2fae10f696a851e0b812e69b20bcc4b23efee1ad34  udisks-2.9.0.tar.bz2
+sha256  98046e932dc6c739001e79d7079a3bd958fc55475dcd917d27f884c0c93525cc  COPYING
diff --git a/package/udisks/udisks.mk b/package/udisks/udisks.mk
index fe8932a92e..d76d51cb1b 100644
--- a/package/udisks/udisks.mk
+++ b/package/udisks/udisks.mk
@@ -4,16 +4,16 @@
 #
 ################################################################################
 
-UDISKS_VERSION = 1.0.5
-UDISKS_SITE = http://hal.freedesktop.org/releases
+UDISKS_VERSION = 2.9.0
+UDISKS_SOURCE = udisks-$(UDISKS_VERSION).tar.bz2
+UDISKS_SITE = https://github.com/storaged-project/udisks/releases/download/udisks-$(UDISKS_VERSION)
 UDISKS_LICENSE = GPL-2.0+
 UDISKS_LICENSE_FILES = COPYING
-# For 0002-Fix-systemd-service-file.patch
-UDISKS_AUTORECONF = YES
 
 UDISKS_DEPENDENCIES = \
 	sg3_utils \
 	host-pkgconf \
+	host-polkit \
 	udev \
 	dbus \
 	dbus-glib \
@@ -21,9 +21,19 @@ UDISKS_DEPENDENCIES = \
 	parted \
 	lvm2 \
 	libatasmart \
-	libgudev
+	libgudev \
+	libblockdev \
+	libxslt
 
-UDISKS_CONF_OPTS = --disable-remote-access --disable-man-pages
+UDISKS_CONF_OPTS = \
+	--disable-bcache \
+	--disable-btrfs \
+	--disable-introspection \
+	--disable-iscsi \
+	--disable-lsm \
+	--disable-man \
+	--disable-vdo \
+	--disable-zram
 
 ifeq ($(BR2_PACKAGE_UDISKS_LVM2),y)
 UDISKS_CONF_OPTS += --enable-lvm2
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 11/12] package/libblockdev: add gobject-introspection support
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (9 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 10/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23 12:08   ` Thomas Petazzoni
  2020-07-23  1:08 ` [Buildroot] [PATCH 12/12] package/udisks: " aduskett at gmail.com
                   ` (2 subsequent siblings)
  13 siblings, 1 reply; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/libblockdev/libblockdev.mk | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/package/libblockdev/libblockdev.mk b/package/libblockdev/libblockdev.mk
index 2fd24e6103..da5c76c946 100644
--- a/package/libblockdev/libblockdev.mk
+++ b/package/libblockdev/libblockdev.mk
@@ -21,7 +21,6 @@ LIBBLOCKDEV_DEPENDENCIES = \
 	udev
 
 LIBBLOCKDEV_CONF_OPTS = \
-	--enable-introspection=no \
 	--without-bcache \
 	--without-btrfs \
 	--without-dm \
@@ -50,4 +49,11 @@ else
 LIBBLOCKDEV_CONF_OPTS += --without-fs
 endif
 
+ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
+LIBBLOCKDEV_DEPENDENCIES += gobject-introspection
+LIBBLOCKDEV_CONF_OPTS += --enable-introspection=yes
+else
+LIBBLOCKDEV_CONF_OPTS += --enable-introspection=no
+endif
+
 $(eval $(autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 12/12] package/udisks: add gobject-introspection support
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (10 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 11/12] package/libblockdev: add gobject-introspection support aduskett at gmail.com
@ 2020-07-23  1:08 ` aduskett at gmail.com
  2020-07-23  7:47 ` [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 Thomas Petazzoni
  2020-07-23 14:31 ` Thomas Petazzoni
  13 siblings, 0 replies; 22+ messages in thread
From: aduskett at gmail.com @ 2020-07-23  1:08 UTC (permalink / raw)
  To: buildroot

From: Adam Duskett <Aduskett@gmail.com>

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
 package/udisks/udisks.mk | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/package/udisks/udisks.mk b/package/udisks/udisks.mk
index d934b51cfd..44889382e9 100644
--- a/package/udisks/udisks.mk
+++ b/package/udisks/udisks.mk
@@ -28,7 +28,6 @@ UDISKS_DEPENDENCIES = \
 UDISKS_CONF_OPTS = \
 	--disable-bcache \
 	--disable-btrfs \
-	--disable-introspection \
 	--disable-iscsi \
 	--disable-lsm \
 	--disable-man \
@@ -39,4 +38,11 @@ UDISKS_DEPENDENCIES += lvm2
 UDISKS_CONF_OPTS += --enable-lvm2
 endif
 
+ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
+UDISKS_DEPENDENCIES += gobject-introspection
+UDISKS_CONF_OPTS += --enable-introspection
+else
+UDISKS_CONF_OPTS += --disable-introspection
+endif
+
 $(eval $(autotools-package))
-- 
2.26.2

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 01/12] package/gcr: fix gpg path
  2020-07-23  1:07 ` [Buildroot] [PATCH 01/12] package/gcr: fix gpg path aduskett at gmail.com
@ 2020-07-23  7:44   ` Thomas Petazzoni
  0 siblings, 0 replies; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23  7:44 UTC (permalink / raw)
  To: buildroot

Hello Adam,

Thanks for picking up the work on udisks!

On Wed, 22 Jul 2020 18:07:59 -0700
aduskett at gmail.com wrote:

> From: Adam Duskett <Aduskett@gmail.com>
> 
> gnugpg2 does not create /usr/bin/gpg2, instead, /usr/bin/gpg2 is typically
> a symlink to /usr/bin/gpg.
> 
> Buildroot does not create this symlink, so this path is not valid.
> Change the path to /usr/bin/gpg to fix this issue.
> 
> Signed-off-by: Adam Duskett <Aduskett@gmail.com>

Back when gcr was introduced in commit
ec069dcf54cc69c19701a69106acaffdd07023bf, it already had:

+GCR_CONF_ENV = ac_cv_path_GNUPG=/usr/bin/gpg2

so presumably this was working then.

So I think it is probably 86dfb429ae1770550beb49299ef08ef05605c190 that
broke that, as it changed the name of the binaries installed by the
gnupg2 package.

This is the kind of research I would like to see when doing such
changes: don't just fix the current situation, try to find out how we
ended up here, so that we understand since when the problem has been
occurring, whether we need to backport to LTS/stable, etc.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (11 preceding siblings ...)
  2020-07-23  1:08 ` [Buildroot] [PATCH 12/12] package/udisks: " aduskett at gmail.com
@ 2020-07-23  7:47 ` Thomas Petazzoni
  2020-07-23 14:31 ` Thomas Petazzoni
  13 siblings, 0 replies; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23  7:47 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 22 Jul 2020 18:07:58 -0700
aduskett at gmail.com wrote:

> The size difference between the old and new versions of udisks, even with the
> additional dependencies is:
> 
> Old: 56M
> New: 69M

Wow, that's still huge. Do you have a breakdown of that size
per-package, i.e a "make graph-size" output for both the old and new
situations ?

I guess the fact that polkit uses spidermonkey is contributing quite a
lot to overall size.

> I am sure there will be some additional changes requested, as this is a hefty
> patch series, but * hopefully, * it is broken down enough that Thomas won't
> complain too much! :)

Hehe :-)

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 02/12] package/libbytesize: new package
  2020-07-23  1:08 ` [Buildroot] [PATCH 02/12] package/libbytesize: new package aduskett at gmail.com
@ 2020-07-23  7:54   ` Thomas Petazzoni
  0 siblings, 0 replies; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23  7:54 UTC (permalink / raw)
  To: buildroot

Hello Adam,

In Cc, I'm adding Vadim as there are some gettext-tiny questions below.

On Wed, 22 Jul 2020 18:08:00 -0700
aduskett at gmail.com wrote:

> Libbytesize is a tiny library providing a C "class" for working with
> arbitrary big sizes in bytes.

"tiny library", which needs gmp, mpfr and pcre2 :-)

> +LIBBYTESIZE_VERSION = 2.3
> +LIBBYTESIZE_SITE = https://github.com/storaged-project/libbytesize/releases/download/$(LIBBYTESIZE_VERSION)
> +LIBBYTESIZE_LICENSE = LGPL-2.1+
> +LIBBYTESIZE_LICENSE_FILES = LICENSE
> +LIBBYTESIZE_INSTALL_STAGING = YES
> +
> +# gettext-gnu is needed for msgcat which gettext-tiny does not provide,

Meh, this is not great :-/

I had a quick look, and there is interestingly an issue on the
gettext-tiny tracker:

  https://github.com/sabotage-linux/gettext-tiny/issues/34

and it precisely says that msgcat and msgfilter are missing to build
libbytesize. It says msgcat is in fact not used/needed by libbytesize,
and the msgfilter tool is only used for the Serbian translation.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 04/12] package/libblockdev: new package
  2020-07-23  1:08 ` [Buildroot] [PATCH 04/12] package/libblockdev: " aduskett at gmail.com
@ 2020-07-23  8:57   ` Thomas Petazzoni
  0 siblings, 0 replies; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23  8:57 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 22 Jul 2020 18:08:02 -0700
aduskett at gmail.com wrote:

> +LIBBLOCKDEV_VERSION = 2.24
> +LIBBLOCKDEV_SITE = https://github.com/storaged-project/libblockdev/releases/download/$(LIBBLOCKDEV_VERSION)-1
> +LIBBLOCKDEV_LICENSE = LGPL-2.1+
> +LIBBLOCKDEV_LICENSE_FILES = LICENSE
> +LIBBLOCKDEV_INSTALL_STAGING = YES
> +
> +LIBBLOCKDEV_DEPENDENCIES = \
> +	host-pkgconf \
> +	kmod \
> +	libbytesize \
> +	libglib2 \
> +	libyaml \
> +	lvm2 \
> +	parted \
> +	udev

Are you sure all those dependencies are needed ?

For example, libyaml seems to only be needed when:

AS_IF([test "x$with_vdo" != "xno"],
      [LIBBLOCKDEV_PKG_CHECK_MODULES([YAML], [yaml-0.1])]
      [])

and you're passing --without-vdo.

Instead of passing --with-lvm, perhaps you could use --without-lvm,
this would avoid the need for the lvm2 dependency I believe.

Also, why --with-part and --with-swap ?

The part plugin is what brings the parted dependency:

AS_IF([test "x$with_part" != "xno" -o "x$with_fs" != "xno"],
      [LIBBLOCKDEV_PKG_CHECK_MODULES([PARTED], [libparted >= 3.1])]
      [])

libbytesize is also not always needed:

AS_IF([test "x$with_btrfs" != "xno" -o "x$with_mdraid" != "xno" -o "x$with_kbd" != "xno" -o "x$with_vdo" != "xno" -o "x$with_tools" != "xno"],
      [LIBBLOCKDEV_PKG_CHECK_MODULES([BYTESIZE], [bytesize >= 0.1])],
      [])

Could you revisit the set of dependencies, and make them optional as
they should be ?

> +
> +LIBBLOCKDEV_CONF_OPTS = \
> +	--enable-introspection=no \

	--disable-introspection

is preferred.

> +	--without-bcache \
> +	--without-btrfs \
> +	--without-crypto \
> +	--without-escrow \
> +	--without-fs \
> +	--without-dm \
> +	--without-dmraid \
> +	--without-nvdimm \
> +	--without-tools \
> +	--without-python2 \
> +	--without-vdo \
> +	--with-lvm \
> +	--with-part \
> +	--with-swap

As said above, these last 3 should probably not be unconditionally
enabled.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 03/12] package/volume-key: new package
  2020-07-23  1:08 ` [Buildroot] [PATCH 03/12] package/volume-key: " aduskett at gmail.com
@ 2020-07-23  8:58   ` Thomas Petazzoni
  0 siblings, 0 replies; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23  8:58 UTC (permalink / raw)
  To: buildroot

On Wed, 22 Jul 2020 18:08:01 -0700
aduskett at gmail.com wrote:

> From: Adam Duskett <Aduskett@gmail.com>
> 
> The volume-key project provides a library for manipulating storage volume
> encryption keys and storing them separately from volumes, and an associated
> command-line tool, named volume_key.
> 
> The main goal of the software is to allow restoring access to an encrypted
> hard drive if the primary user forgets the passphrase. The encryption key back
> up can also be useful for extracting data after a hardware or software failure
> that corrupts the header of the encrypted volume, or to access the company
> data after an employee leaves abruptly.
> 
> Updated versions of udisks are dependent on this package.
> 
> Signed-off-by: Adam Duskett <Aduskett@gmail.com>

Why is this package introduced ? According to udisks it was at some
point a dependency of libblockdev:

+	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libblockdev -> volume-key -> cryptsetup

But I don't see where it is used in the libblockdev package.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 05/12] package/libblockdev: add cryptography support
  2020-07-23  1:08 ` [Buildroot] [PATCH 05/12] package/libblockdev: add cryptography support aduskett at gmail.com
@ 2020-07-23 12:06   ` Thomas Petazzoni
  0 siblings, 0 replies; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23 12:06 UTC (permalink / raw)
  To: buildroot

On Wed, 22 Jul 2020 18:08:03 -0700
aduskett at gmail.com wrote:

> +config BR2_PACKAGE_LIBBLOCKDEV_CRYPTO
> +	bool "Crypto plugin"
> +	depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # gpg2, libgpgme, libassuan

The comment should say that this comes from volume-key, otherwise it's
a bit weird, as you don't directly select gpg2 here.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 11/12] package/libblockdev: add gobject-introspection support
  2020-07-23  1:08 ` [Buildroot] [PATCH 11/12] package/libblockdev: add gobject-introspection support aduskett at gmail.com
@ 2020-07-23 12:08   ` Thomas Petazzoni
  0 siblings, 0 replies; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23 12:08 UTC (permalink / raw)
  To: buildroot

On Wed, 22 Jul 2020 18:08:09 -0700
aduskett at gmail.com wrote:

> +ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
> +LIBBLOCKDEV_DEPENDENCIES += gobject-introspection
> +LIBBLOCKDEV_CONF_OPTS += --enable-introspection=yes

Just --enable-introspection

> +else
> +LIBBLOCKDEV_CONF_OPTS += --enable-introspection=no

--disable-introspection

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0
  2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
                   ` (12 preceding siblings ...)
  2020-07-23  7:47 ` [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 Thomas Petazzoni
@ 2020-07-23 14:31 ` Thomas Petazzoni
  2020-07-23 16:54   ` Adam Duskett
  13 siblings, 1 reply; 22+ messages in thread
From: Thomas Petazzoni @ 2020-07-23 14:31 UTC (permalink / raw)
  To: buildroot

On Wed, 22 Jul 2020 18:07:58 -0700
aduskett at gmail.com wrote:

> After successfully compiling in Fedora 32, I loaded up CentOS7 with confidence.
> Of course, my confidence was my undoing, and udisks immediately choked on
> trying to build due to CentOS7 having an ancient pre-spidermonkey polkit.
> After a few hours of fiddling around, I finally figured out what the issue
> was, added host variants of spidermonkey and polkit, and then added
> host-polkit as a dependency to udisks and everything compiled cleanly.

Do you have more details about what it does with host-polkit? Indeed,
having to build host-spidermonkey and host-polkit is quite a big hammer :-/

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0
  2020-07-23 14:31 ` Thomas Petazzoni
@ 2020-07-23 16:54   ` Adam Duskett
  0 siblings, 0 replies; 22+ messages in thread
From: Adam Duskett @ 2020-07-23 16:54 UTC (permalink / raw)
  To: buildroot

On Thu, Jul 23, 2020 at 7:31 AM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> On Wed, 22 Jul 2020 18:07:58 -0700
> aduskett at gmail.com wrote:
>
> > After successfully compiling in Fedora 32, I loaded up CentOS7 with confidence.
> > Of course, my confidence was my undoing, and udisks immediately choked on
> > trying to build due to CentOS7 having an ancient pre-spidermonkey polkit.
> > After a few hours of fiddling around, I finally figured out what the issue
> > was, added host variants of spidermonkey and polkit, and then added
> > host-polkit as a dependency to udisks and everything compiled cleanly.
>
> Do you have more details about what it does with host-polkit? Indeed,
> having to build host-spidermonkey and host-polkit is quite a big hammer :-/
>
Yeah, udisks attempts to build it's org.freedesktop.UDisks2.policy file.
If the hosts polkit is too old, then a user will receive the error:
"/usr/bin/msgfmt: cannot locate ITS rules for org.freedesktop.UDisks2.policy.in"

Adam
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2020-07-23 16:54 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-23  1:07 [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
2020-07-23  1:07 ` [Buildroot] [PATCH 01/12] package/gcr: fix gpg path aduskett at gmail.com
2020-07-23  7:44   ` Thomas Petazzoni
2020-07-23  1:08 ` [Buildroot] [PATCH 02/12] package/libbytesize: new package aduskett at gmail.com
2020-07-23  7:54   ` Thomas Petazzoni
2020-07-23  1:08 ` [Buildroot] [PATCH 03/12] package/volume-key: " aduskett at gmail.com
2020-07-23  8:58   ` Thomas Petazzoni
2020-07-23  1:08 ` [Buildroot] [PATCH 04/12] package/libblockdev: " aduskett at gmail.com
2020-07-23  8:57   ` Thomas Petazzoni
2020-07-23  1:08 ` [Buildroot] [PATCH 05/12] package/libblockdev: add cryptography support aduskett at gmail.com
2020-07-23 12:06   ` Thomas Petazzoni
2020-07-23  1:08 ` [Buildroot] [PATCH 06/12] package/libblockdev: add fs plugin support aduskett at gmail.com
2020-07-23  1:08 ` [Buildroot] [PATCH 07/12] package/spidermonkey: add host variant aduskett at gmail.com
2020-07-23  1:08 ` [Buildroot] [PATCH 08/12] package/polkit: " aduskett at gmail.com
2020-07-23  1:08 ` [Buildroot] [PATCH 09/12] package/udisks/Config.in: alphabatize package selection aduskett at gmail.com
2020-07-23  1:08 ` [Buildroot] [PATCH 10/12] package/udisks: bump version to 2.9.0 aduskett at gmail.com
2020-07-23  1:08 ` [Buildroot] [PATCH 11/12] package/libblockdev: add gobject-introspection support aduskett at gmail.com
2020-07-23 12:08   ` Thomas Petazzoni
2020-07-23  1:08 ` [Buildroot] [PATCH 12/12] package/udisks: " aduskett at gmail.com
2020-07-23  7:47 ` [Buildroot] [PATCH 00/12] package/udisks: bump version to 2.9.0 Thomas Petazzoni
2020-07-23 14:31 ` Thomas Petazzoni
2020-07-23 16:54   ` Adam Duskett

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.