From 503e32d01e4db00e90d7acfd81ab05386559069f Mon Sep 17 00:00:00 2001 From: Nikolaus Rath Date: Sat, 8 Jul 2017 13:11:47 +0200 Subject: Fixup symbol versioning for GCC 4.x GCC 4.8 doesn't like to rename fuse_new_30 to fuse_new, if we also define an implementation for fuse_new. --- lib/fuse.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/fuse.c b/lib/fuse.c index ce29819..5160eb1 100644 --- a/lib/fuse.c +++ b/lib/fuse.c @@ -4626,10 +4626,8 @@ void fuse_stop_cleanup_thread(struct fuse *f) } -/* Emulates 3.0-style fuse_new(), which processes - --help */ +/* Emulates 3.0-style fuse_new(), which processes --help */ FUSE_SYMVER(".symver fuse_new_30,fuse_new@FUSE_3.0"); -FUSE_SYMVER(".symver fuse_new,fuse_new@@FUSE_3.1"); struct fuse *fuse_new_30(struct fuse_args *args, const struct fuse_operations *op, size_t op_size, void *user_data) @@ -4652,7 +4650,12 @@ struct fuse *fuse_new_30(struct fuse_args *args, return fuse_new(args, op, op_size, user_data); } -struct fuse *fuse_new(struct fuse_args *args, +/* Explicit prototype to prevent compiler warnings + (fuse.h only defines fuse_new()) */ +struct fuse *fuse_new_31(struct fuse_args *args, const struct fuse_operations *op, + size_t op_size, void *private_data); +FUSE_SYMVER(".symver fuse_new_31,fuse_new@@FUSE_3.1"); +struct fuse *fuse_new_31(struct fuse_args *args, const struct fuse_operations *op, size_t op_size, void *user_data) { -- cgit v1.2.3