From: Nikolaus Rath Date: Tue, 22 Aug 2017 10:10:50 +0000 (+0200) Subject: Allow building without iconv. X-Git-Tag: fuse-3.2.0~26 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=19eaea2e7741f98739eeded839abc5d631dcf826;p=qemu-gpiodev%2Flibfuse.git Allow building without iconv. cfg.has('HAVE_ICONV') was always true. --- diff --git a/ChangeLog.rst b/ChangeLog.rst index ee1941e..844f662 100644 --- a/ChangeLog.rst +++ b/ChangeLog.rst @@ -1,6 +1,8 @@ Unreleased Changes ================== +* libfuse can now be build without libiconv. + * Fixed support for `FUSE_CAP_POSIX_ACL`: setting this capability flag had no effect in the previous versions of libfuse 3.x; now ACLs should actually work. diff --git a/lib/fuse.c b/lib/fuse.c index b013072..a5df0b8 100644 --- a/lib/fuse.c +++ b/lib/fuse.c @@ -198,7 +198,9 @@ struct fuse_context_i { /* Defined by FUSE_REGISTER_MODULE() in lib/modules/subdir.c and iconv.c. */ extern fuse_module_factory_t fuse_module_subdir_factory; +#ifdef HAVE_ICONV extern fuse_module_factory_t fuse_module_iconv_factory; +#endif static pthread_key_t fuse_context_key; static pthread_mutex_t fuse_context_lock = PTHREAD_MUTEX_INITIALIZER; @@ -4476,7 +4478,9 @@ void fuse_lib_help(struct fuse_args *args) /* Print help for builtin modules */ print_module_help("subdir", &fuse_module_subdir_factory); +#ifdef HAVE_ICONV print_module_help("iconv", &fuse_module_iconv_factory); +#endif /* Parse command line options in case we need to activate more modules */ @@ -4661,7 +4665,9 @@ struct fuse *fuse_new_31(struct fuse_args *args, if (builtin_modules_registered == 0) { /* If not, register them. */ fuse_register_module("subdir", fuse_module_subdir_factory, NULL); +#ifdef HAVE_ICONV fuse_register_module("iconv", fuse_module_iconv_factory, NULL); +#endif builtin_modules_registered= 1; } pthread_mutex_unlock(&fuse_context_lock); diff --git a/lib/meson.build b/lib/meson.build index 1cfface..b07c06c 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -9,7 +9,7 @@ else libfuse_sources += [ 'mount_bsd.c' ] endif -if cfg.has('HAVE_ICONV') +if cfg.get('HAVE_ICONV') libfuse_sources += [ 'modules/iconv.c' ] endif