Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ifuse for openSUSE:Factory checked in at 2025-06-20 16:49:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ifuse (Old) and /work/SRC/openSUSE:Factory/.ifuse.new.31170 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ifuse" Fri Jun 20 16:49:39 2025 rev:15 rq:1286907 version:1.1.4 Changes: -------- --- /work/SRC/openSUSE:Factory/ifuse/ifuse.changes 2021-02-03 19:56:44.197747848 +0100 +++ /work/SRC/openSUSE:Factory/.ifuse.new.31170/ifuse.changes 2025-06-20 16:51:17.640936911 +0200 @@ -1,0 +2,10 @@ +Thu Jun 19 11:08:52 UTC 2025 - Michal Suchanek <msucha...@suse.de> + +- Fix build on 32bit + +------------------------------------------------------------------- +Fri Apr 25 17:33:13 UTC 2025 - Andreas Stieger <andreas.stie...@gmx.de> + +- switch to fuse3, add ifuse-1.1.4-fuse3.patch from upstream + +------------------------------------------------------------------- New: ---- ifuse-1.1.4-fuse3.patch ----------(New B)---------- New: - switch to fuse3, add ifuse-1.1.4-fuse3.patch from upstream ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ifuse.spec ++++++ --- /var/tmp/diff_new_pack.ZxBAde/_old 2025-06-20 16:51:18.188959576 +0200 +++ /var/tmp/diff_new_pack.ZxBAde/_new 2025-06-20 16:51:18.192959742 +0200 @@ -2,6 +2,7 @@ # spec file for package ifuse # # Copyright (c) 2021 SUSE LLC +# Copyright (c) 2025 Andreas Stieger <andreas.stie...@gmx.de> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,10 +25,14 @@ Group: System/Filesystems URL: https://www.libimobiledevice.org Source: https://github.com/libimobiledevice/ifuse/releases/download/%{version}/%{name}-%{version}.tar.bz2 -BuildRequires: fuse-devel +Patch0: ifuse-1.1.4-fuse3.patch +# for ifuse-1.1.4-fuse3.patch +BuildRequires: autoconf +BuildRequires: automake BuildRequires: libimobiledevice-devel >= 1.3.0 BuildRequires: libplist-2_0-devel >= 2.2.0 BuildRequires: pkgconfig +BuildRequires: pkgconfig(fuse3) %description iFuse is a FUSE filesystem driver which uses `libimobiledevice` to connect to @@ -36,17 +41,19 @@ to access the iPhone's, iPod Touch's or iPad's media files under Linux. %prep -%setup -q +%autosetup -p1 %build +export CPPFLAGS=-D_FILE_OFFSET_BITS=64 +# for ifuse-1.1.4-fuse3.patch +autoreconf -fiv %configure %make_build %install %make_install -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%ldconfig_scriptlets %files %license COPYING ++++++ ifuse-1.1.4-fuse3.patch ++++++ >From 36956a5179e224f57ebb9d0f01314c09c8bf0f97 Mon Sep 17 00:00:00 2001 From: mojyack <mojy...@gmail.com> Date: Sun, 20 Oct 2024 02:44:21 +0900 Subject: [PATCH] Switch to fuse3 --- configure.ac | 2 +- src/ifuse.c | 31 +++++++++---------------------- 2 files changed, 10 insertions(+), 23 deletions(-) diff --git a/configure.ac b/configure.ac index 506f1be..f30e7d9 100644 --- a/configure.ac +++ b/configure.ac @@ -14,7 +14,7 @@ AM_PROG_CC_C_O # Checks for libraries. PKG_CHECK_MODULES(libimobiledevice, libimobiledevice-1.0 >= 1.3.0) -PKG_CHECK_MODULES(libfuse, fuse >= 2.7.0) +PKG_CHECK_MODULES(libfuse, fuse3 >= 3.0.0) PKG_CHECK_MODULES(libplist, libplist-2.0 >= 2.2.0) # Checks for header files. diff --git a/src/ifuse.c b/src/ifuse.c index 9b813f5..7a76db5 100644 --- a/src/ifuse.c +++ b/src/ifuse.c @@ -19,7 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#define FUSE_USE_VERSION 26 +#define FUSE_USE_VERSION 30 #ifdef HAVE_CONFIG_H #include <config.h> @@ -205,7 +205,7 @@ static int get_afc_file_mode(afc_file_mode_t *afc_mode, int flags) return 0; } -static int ifuse_getattr(const char *path, struct stat *stbuf) +static int ifuse_getattr(const char *path, struct stat *stbuf, struct fuse_file_info *fi) { int i; int res = 0; @@ -275,7 +275,7 @@ static int ifuse_getattr(const char *path, struct stat *stbuf) return res; } -static int ifuse_readdir(const char *path, void *buf, fuse_fill_dir_t filler, off_t offset, struct fuse_file_info *fi) +static int ifuse_readdir(const char *path, void *buf, fuse_fill_dir_t filler, off_t offset, struct fuse_file_info *fi, enum fuse_readdir_flags flags) { int i; char **dirs = NULL; @@ -287,7 +287,7 @@ static int ifuse_readdir(const char *path, void *buf, fuse_fill_dir_t filler, of return -ENOENT; for (i = 0; dirs[i]; i++) { - filler(buf, dirs[i], NULL, 0); + filler(buf, dirs[i], NULL, 0, 0); } free_dictionary(dirs); @@ -366,7 +366,7 @@ static int ifuse_write(const char *path, const char *buf, size_t size, off_t off return bytes; } -static int ifuse_utimens(const char *path, const struct timespec tv[2]) +static int ifuse_utimens(const char *path, const struct timespec tv[2], struct fuse_file_info *fi) { afc_client_t afc = fuse_get_context()->private_data; uint64_t mtime = (uint64_t)tv[1].tv_sec * (uint64_t)1000000000 + (uint64_t)tv[1].tv_nsec; @@ -398,11 +398,11 @@ static int ifuse_release(const char *path, struct fuse_file_info *fi) return 0; } -void *ifuse_init(struct fuse_conn_info *conn) +void *ifuse_init(struct fuse_conn_info *conn, struct fuse_config *cfg) { afc_client_t afc = NULL; - conn->async_read = 0; + conn->want &= FUSE_CAP_ASYNC_READ; if (house_arrest) { afc_client_new_from_house_arrest_client(house_arrest, &afc); @@ -482,7 +482,7 @@ int ifuse_statfs(const char *path, struct statvfs *stats) return 0; } -int ifuse_truncate(const char *path, off_t size) +int ifuse_truncate(const char *path, off_t size, struct fuse_file_info *fi) { afc_client_t afc = fuse_get_context()->private_data; afc_error_t err = afc_truncate(afc, path, size); @@ -493,18 +493,6 @@ int ifuse_truncate(const char *path, off_t size) return 0; } -int ifuse_ftruncate(const char *path, off_t size, struct fuse_file_info *fi) -{ - afc_client_t afc = fuse_get_context()->private_data; - - afc_error_t err = afc_file_truncate(afc, fi->fh, size); - if (err != AFC_E_SUCCESS) { - int res = get_afc_error_as_errno(err); - return -res; - } - return 0; -} - int ifuse_readlink(const char *path, char *linktarget, size_t buflen) { int i, ret; @@ -566,7 +554,7 @@ int ifuse_unlink(const char *path) return -get_afc_error_as_errno(err); } -int ifuse_rename(const char *from, const char *to) +int ifuse_rename(const char *from, const char *to, unsigned int flags) { afc_client_t afc = fuse_get_context()->private_data; @@ -599,7 +587,6 @@ static struct fuse_operations ifuse_oper = { .read = ifuse_read, .write = ifuse_write, .truncate = ifuse_truncate, - .ftruncate = ifuse_ftruncate, .readlink = ifuse_readlink, .symlink = ifuse_symlink, .link = ifuse_link,