aboutsummaryrefslogtreecommitdiffstats
path: root/lib/meson.build
AgeCommit message (Collapse)AuthorLines
2022-09-04API update for fuse_loop_config additionsBernd Schubert-1/+1
struct fuse_loop_config was passed as a plain struct, without any version identifer. This had two implications 1) Any addition of new parameters required a FUSE_SYMVER for fuse_session_loop_mt() and fuse_loop_mt() as otherwise a read beyond end-of previous struct size might have happened. 2) Filesystems also might have been recompiled and the developer might not have noticed the struct extensions and unexpected for the developer (or people recomliling the code) uninitialized parameters would have been passed. Code is updated to have struct fuse_loop_config as an opaque/private data type for file systems that want version 312 (FUSE_MAKE_VERSION(3, 12)). The deprecated fuse_loop_config_v1 is visible, but should not be used outside of internal conversion functions File systems that want version >= 32 < 312 get the previous struct (through ifdefs) and the #define of fuse_loop_mt and fuse_session_loop_mt ensures that these recompiled file systems call into the previous API, which then converts the struct. This is similar to existing compiled applications when just libfuse updated, but binaries it is solved with the FUSE_SYMVER ABI compact declarations. Signed-off-by: Bernd Schubert <bschubert@ddn.com>
2019-12-31Make ioctl prototype conditional on FUSE_USE_VERSION. (#482)Bill Zissimopoulos-1/+1
Define FUSE_USE_VERSION < 35 to get old ioctl prototype with int commands; define FUSE_USE_VERSION >= 35 to get new ioctl prototype with unsigned int commands. Fixes #463.
2019-09-04Introduce callback for loggingStefan Hajnoczi-1/+2
Introduce an API for custom log handler functions. This allows libfuse applications to send messages to syslog(3) or other logging systems. See include/fuse_log.h for details. Convert libfuse from fprintf(stderr, ...) to log_fuse(level, ...). Most messages are error messages with FUSE_LOG_ERR log level. There are also some debug messages which now use the FUSE_LOG_DEBUG log level. Note that lib/mount_util.c is used by both libfuse and fusermount3. Since fusermount3 does not link against libfuse, we cannot call fuse_log() from lib/mount_util.c. This file will continue to use fprintf(stderr, ...) until someone figures out how to split it up. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-03-04Link against libiconv when possible (#372)HazelFZ-1/+5
2018-11-19examples: add copy_file_range() support to passthrough(_fh)Niels de Vos-1/+1
The passthrough example filesystem can be used for validating the API and the implementation in the FUSE kernel module.
2018-11-11Fix build on non-LinuxRoman Bogorodskiy-2/+2
* Update meson.build to add mount_util.c to libfuse_sources unconditionally, it's non Linux-only * FreeBSD, like NetBSD, doesn't have mntent.h, so don't include that and define IGNORE_MTAB for both * FreeBSD, like NetBSD, has no umount2() sysctl, so similarly define it to unmount()
2018-10-09Add unprivileged option in `mount.fuse3`Mattias Nissler-1/+1
The unprivileged option allows to run the FUSE file system process without privileges by dropping capabilities and preventing them from being re-acquired via setuid / fscaps etc. To accomplish this, mount.fuse sets up the `/dev/fuse` file descriptor and mount itself and passes the file descriptor via the `/dev/fd/%u` mountpoint syntax to the FUSE file system.
2018-08-25Make meson build scripts subprojects friendlyMartin Blanchard-1/+3
Multiple meson build scripts improvements including: * Bump meson requirement to 0.40.1 (0.40 already required) * Declare a dependency object for main library * Stop using add_global_arguments() * Various minor style fixes
2017-09-25Link with -lrt to support ancient libcNikolaus Rath-1/+4
Fixes: #207.
2017-09-19Correctly define fusermount3 path.Nikolaus Rath-1/+1
2017-08-24Add idle_threads mount option.Joseph Dodge-1/+1
2017-08-22Allow building without iconv.Nikolaus Rath-1/+1
cfg.has('HAVE_ICONV') was always true.
2017-07-08Added public fuse_lib_help(), bumped minor versionNikolaus Rath-3/+3
2017-07-07Don't use emacs' python-mode for meson filesNikolaus Rath-3/+0
There is a proper meson-mode now.
2017-05-24lib/meson.build: don't crash if there's no libdlNikolaus Rath-1/+1
For example, FreeBSD doesn't have it. Fixes: #173.
2017-01-12Added experimental support for building with Meson+NinjaNikolaus Rath-0/+47