[Buildroot] [PATCH 2/2] package/libfuse: common files from libfuse3 are prefered
Arnout Vandecappelle
arnout at mind.be
Sun Mar 10 15:20:45 UTC 2019
Hi Norbert,
On 06/03/2019 17:30, Norbert Lange wrote:
> if both libfuse and libfuse3 are installed,
> make sure libfuse3 will be build first and
> use the auxiliary files from the newer package.
Which files are those?
You could also verify if the packages that currently use libfuse can also use
libfuse3: curlftpfs e2fsprogs exfat gvfs libostree lua-flu ntfs-3g openvmtools
owfs sshfs unionfs xenomai. If many of them can also work with libfuse3, it
might be worth making a virtual package out of it.
>
> Also fix the missing setuid bit for fusermount.
This should be a separate patch, it's independent of the other changes. The
"Also" is a hint :-)
>
> Signed-off-by: Norbert Lange <norbert.lange at andritz.com>
> ---
> package/libfuse/libfuse.mk | 10 ++++++++--
> package/libfuse3/libfuse3.mk | 1 +
> 2 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/package/libfuse/libfuse.mk b/package/libfuse/libfuse.mk
> index e8a79a3166..cf7bb2a8e0 100644
> --- a/package/libfuse/libfuse.mk
> +++ b/package/libfuse/libfuse.mk
> @@ -10,15 +10,21 @@ LIBFUSE_SITE = https://github.com/libfuse/libfuse/releases/download/fuse-$(LIBFU
> LIBFUSE_LICENSE = GPL-2.0, LGPL-2.1
> LIBFUSE_LICENSE_FILES = COPYING COPYING.LIB
> LIBFUSE_INSTALL_STAGING = YES
> -LIBFUSE_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv)
> +LIBFUSE_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv) $(if $(BR2_PACKAGE_FUSE3),fuse3)
libfuse3, not fuse3.
> LIBFUSE_CONF_OPTS = \
> --disable-example \
> --enable-lib \
> --enable-util
>
> define LIBFUSE_INSTALL_TARGET_CMDS
> - cp -dpf $(STAGING_DIR)/usr/bin/fusermount $(TARGET_DIR)/usr/bin/
> + $(if $(BR2_PACKAGE_FUSE3),, \
> + $(INSTALL) -D -m 0755 $(STAGING_DIR)/usr/bin/fusermount $(TARGET_DIR)/usr/bin/ )
In the libfuse3 package it's called fusermount3, so what is the conflict?
> cp -dpf $(STAGING_DIR)/usr/lib/libfuse.so* $(TARGET_DIR)/usr/lib/
> endef
>
> +define LIBFUSE_PERMISSIONS
> + $(if $(BR2_PACKAGE_FUSE3),, \
> + /usr/bin/fusermount f 4755 0 0 - - - - -)
> +endef
> +
> $(eval $(autotools-package))
> diff --git a/package/libfuse3/libfuse3.mk b/package/libfuse3/libfuse3.mk
> index eecdb248d3..be3bf4c746 100644
> --- a/package/libfuse3/libfuse3.mk
> +++ b/package/libfuse3/libfuse3.mk
> @@ -21,6 +21,7 @@ define LIBFUSE3_INSTALL_TARGET_CMDS
> $(if $(filter y,$(BR2_STATIC_LIBS)),,cp -dpf $(STAGING_DIR)/usr/lib/libfuse3.so* $(TARGET_DIR)/usr/lib/)
> mkdir -p $(TARGET_DIR)/lib/udev/rules.d
> $(INSTALL) -m 0644 $(STAGING_DIR)/lib/udev/rules.d/*-fuse3.rules $(TARGET_DIR)/lib/udev/rules.d
> + ln -sf fusermount3 $(TARGET_DIR)/usr/bin/fusermount
Ah, here it is :-)
Why do you need to make this symlink?
Regards,
Arnout
> endef
>
> define LIBFUSE3_PERMISSIONS
>
More information about the buildroot
mailing list