Re: git: 0045d6d45fde - main - sysutils/fusefs-httpdirfs: Update to 1.2.6

From: Vladimir Druzenko <vvd_at_freebsd.org>
Date: Sat, 02 Nov 2024 14:20:09 UTC
02.11.2024 15:10, Daniel Engberg пишет:
> The branch main has been updated by diizzy:
>
> URL: https://cgit.FreeBSD.org/ports/commit/?id=0045d6d45fde1ad21fb7d9baa160b21fd2d62e8b
>
> commit 0045d6d45fde1ad21fb7d9baa160b21fd2d62e8b
> Author:     Daniel Engberg <diizzy@FreeBSD.org>
> AuthorDate: 2024-11-02 12:03:43 +0000
> Commit:     Daniel Engberg <diizzy@FreeBSD.org>
> CommitDate: 2024-11-02 12:03:46 +0000
>
>      sysutils/fusefs-httpdirfs: Update to 1.2.6
>      
>      Changelog: https://github.com/fangfufu/httpdirfs/releases/tag/1.2.6
>      
>      Backport upstream commits 43bdf7e71fde43084519e86051533a6b20c31474 and
>      08700415d7b61d9f611a858481b26858fe92eb7a
>      
>      References:
>      https://github.com/fangfufu/httpdirfs/commit/43bdf7e71fde43084519e86051533a6b20c31474
>      https://github.com/fangfufu/httpdirfs/commit/08700415d7b61d9f611a858481b26858fe92eb7a
>      
>      PR:             282451
>      Reviewed by:    0mp (maintainer)
> ---
>   sysutils/fusefs-httpdirfs/Makefile             | 19 ++++++++-----------
>   sysutils/fusefs-httpdirfs/distinfo             | 10 +++++++---
>   sysutils/fusefs-httpdirfs/files/patch-Makefile | 19 -------------------
>   3 files changed, 15 insertions(+), 33 deletions(-)
>
> diff --git a/sysutils/fusefs-httpdirfs/Makefile b/sysutils/fusefs-httpdirfs/Makefile
> index 1b1d5d97ab59..ae574033d018 100644
> --- a/sysutils/fusefs-httpdirfs/Makefile
> +++ b/sysutils/fusefs-httpdirfs/Makefile
> @@ -1,9 +1,12 @@
>   PORTNAME=	httpdirfs
> -DISTVERSION=	1.2.3
> -PORTREVISION=	1
> +DISTVERSION=	1.2.6
>   CATEGORIES=	sysutils
>   PKGNAMEPREFIX=	fusefs-
>   
> +PATCH_SITES=	https://github.com/fangfufu/httpdirfs/commit/
> +PATCHFILES=	43bdf7e71fde43084519e86051533a6b20c31474.patch:-p1 \
> +		08700415d7b61d9f611a858481b26858fe92eb7a.patch:-p1
> +
>   MAINTAINER=	0mp@FreeBSD.org
>   COMMENT=	FUSE filesystem to mount HTTP directory listings, with a permanent cache
>   WWW=		https://github.com/fangfufu/httpdirfs
> @@ -18,22 +21,16 @@ LIB_DEPENDS=	libcurl.so:ftp/curl \
>   		libgumbo.so:devel/gumbo \
>   		libuuid.so:misc/e2fsprogs-libuuid
>   
> -USES=		fuse gmake localbase pkgconfig ssl
> -USE_CSTD=	c99
> +USES=		fuse:3 meson pkgconfig ssl
> +
>   USE_GITHUB=	yes
>   GH_ACCOUNT=	fangfufu
>   
> -MAKE_ENV=	prefix=${PREFIX}
> -
> -PLIST_FILES=	bin/httpdirfs \
> -		share/man/man1/httpdirfs.1.gz
> +PLIST_FILES=	bin/httpdirfs
>   PORTDOCS=	README.md
>   
>   OPTIONS_DEFINE=	DOCS
>   
> -post-install:
> -	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/httpdirfs
> -
>   post-install-DOCS-on:
>   	@${MKDIR} ${STAGEDIR}${DOCSDIR}
>   	${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}/
> diff --git a/sysutils/fusefs-httpdirfs/distinfo b/sysutils/fusefs-httpdirfs/distinfo
> index 443feebd991f..49205edda4c0 100644
> --- a/sysutils/fusefs-httpdirfs/distinfo
> +++ b/sysutils/fusefs-httpdirfs/distinfo
> @@ -1,3 +1,7 @@
> -TIMESTAMP = 1633425176
> -SHA256 (fangfufu-httpdirfs-1.2.3_GH0.tar.gz) = 15d721ed776ef447ba5aaf94d809950fb59b5577f35693d9a28a51e16256af2d
> -SIZE (fangfufu-httpdirfs-1.2.3_GH0.tar.gz) = 77543
> +TIMESTAMP = 1730405732
> +SHA256 (fangfufu-httpdirfs-1.2.6_GH0.tar.gz) = 0d5b7f846947c2cf61e7851658f29501a7934d23a6a2c914e76efb889d7e1993
> +SIZE (fangfufu-httpdirfs-1.2.6_GH0.tar.gz) = 81582
> +SHA256 (43bdf7e71fde43084519e86051533a6b20c31474.patch) = f6022cf2d14226606a6dbca676f31e7f0f859ca634725e87f0d299d063145004
> +SIZE (43bdf7e71fde43084519e86051533a6b20c31474.patch) = 4476
> +SHA256 (08700415d7b61d9f611a858481b26858fe92eb7a.patch) = fb01a8e7e6a8416ff549147a89bd6ddf865a08e74c5d7808cc9fb7710732aa6d
> +SIZE (08700415d7b61d9f611a858481b26858fe92eb7a.patch) = 1726
> diff --git a/sysutils/fusefs-httpdirfs/files/patch-Makefile b/sysutils/fusefs-httpdirfs/files/patch-Makefile
> deleted file mode 100644
> index 9304cbac3dc6..000000000000
> --- a/sysutils/fusefs-httpdirfs/files/patch-Makefile
> +++ /dev/null
> @@ -1,19 +0,0 @@
> ---- Makefile.orig	2021-08-31 18:54:03 UTC
> -+++ Makefile
> -@@ -1,6 +1,6 @@
> - VERSION = 1.2.3
> -
> --CFLAGS += -O2 -Wall -Wextra -Wshadow -rdynamic -D_GNU_SOURCE\
> -+CFLAGS += -Wall -Wextra -Wshadow -D_GNU_SOURCE\
> - 	-D_FILE_OFFSET_BITS=64 -DVERSION=\"$(VERSION)\"\
> - 	`pkg-config --cflags-only-I gumbo libcurl fuse uuid expat`
> - LDFLAGS += `pkg-config --libs-only-L gumbo libcurl fuse uuid expat`
> -@@ -44,7 +44,7 @@ ifeq ($(OS),FreeBSD)
> - 		$(DESTDIR)$(prefix)/bin/httpdirfs
> - 	gzip -f -k doc/man/httpdirfs.1
> - 	install -m 644 doc/man/httpdirfs.1.gz \
> --		$(DESTDIR)$(prefix)/man/man1/httpdirfs.1.gz
> -+		$(DESTDIR)$(prefix)/share/man/man1/httpdirfs.1.gz
> - endif
> - ifeq ($(OS),Darwin)
> - 	install -d $(DESTDIR)$(prefix)/bin

Hello!

===>  Building for fusefs-httpdirfs-1.2.6
[  9% 4/11] cc -Ihttpdirfs.p -I. -I.. -I/usr/local/include 
-I/usr/local/include/fuse3 -I/usr/local/include/uuid 
-fdiagnostics-color=never -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch 
-Wextra -Wpedantic -Werror -O2 -pipe -march=core2 
-fstack-protector-strong -fno-strict-aliasing -Wstrict-prototypes 
-pthread -D_GNU_SOURCE '-DVERSION="1.2.6"' -MD -MQ 
httpdirfs.p/src_fuse_local.c.o -MF httpdirfs.p/src_fuse_local.c.o.d -o 
httpdirfs.p/src_fuse_local.c.o -c ../src/fuse_local.c
FAILED: httpdirfs.p/src_fuse_local.c.o
cc -Ihttpdirfs.p -I. -I.. -I/usr/local/include 
-I/usr/local/include/fuse3 -I/usr/local/include/uuid 
-fdiagnostics-color=never -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch 
-Wextra -Wpedantic -Werror -O2 -pipe -march=core2 
-fstack-protector-strong -fno-strict-aliasing -Wstrict-prototypes 
-pthread -D_GNU_SOURCE '-DVERSION="1.2.6"' -MD -MQ 
httpdirfs.p/src_fuse_local.c.o -MF httpdirfs.p/src_fuse_local.c.o.d -o 
httpdirfs.p/src_fuse_local.c.o -c ../src/fuse_local.c
../src/fuse_local.c:16:58: error: declaration of 'struct fuse_config' 
will not be visible outside of this function [-Werror,-Wvisibility]
    16 | static void *fs_init(struct fuse_conn_info *conn, struct 
fuse_config *cfg)
       | ^
../src/fuse_local.c:144:58: error: ISO C forbids forward references to 
'enum' types [-Werror,-Wpedantic]
   144 |            off_t offset, struct fuse_file_info *fi, enum 
fuse_readdir_flags fr_flags)
       | ^
../src/fuse_local.c:144:58: error: declaration of 'enum 
fuse_readdir_flags' will not be visible outside of this function 
[-Werror,-Wvisibility]
../src/fuse_local.c:144:77: error: variable has incomplete type 'enum 
fuse_readdir_flags'
   144 |            off_t offset, struct fuse_file_info *fi, enum 
fuse_readdir_flags fr_flags)
| ^
../src/fuse_local.c:144:58: note: forward declaration of 'enum 
fuse_readdir_flags'
   144 |            off_t offset, struct fuse_file_info *fi, enum 
fuse_readdir_flags fr_flags)
       | ^
../src/fuse_local.c:166:32: error: too many arguments to function call, 
expected 4, have 5
   166 |     dir_add(buf, ".", NULL, 0, 0);
       |     ~~~~~~~                    ^
../src/fuse_local.c:167:33: error: too many arguments to function call, 
expected 4, have 5
   167 |     dir_add(buf, "..", NULL, 0, 0);
       |     ~~~~~~~                     ^
../src/fuse_local.c:172:51: error: too many arguments to function call, 
expected 4, have 5
   172 |             dir_add(buf, link->linkname, NULL, 0, 0);
       |             ~~~~~~~                               ^
../src/fuse_local.c:144:77: error: unused parameter 'fr_flags' 
[-Werror,-Wunused-parameter]
   144 |            off_t offset, struct fuse_file_info *fi, enum 
fuse_readdir_flags fr_flags)
| ^
../src/fuse_local.c:180:16: error: incompatible function pointer types 
initializing 'int (*)(const char *, struct stat *)' with an expression 
of type 'int (const char *, struct stat *, struct fuse_file_info *)' 
[-Wincompatible-function-pointer-types]
   180 |     .getattr = fs_getattr,
       |                ^~~~~~~~~~
../src/fuse_local.c:181:16: error: incompatible function pointer types 
initializing 'int (*)(const char *, void *, fuse_fill_dir_t, off_t, 
struct fuse_file_info *)' (aka 'int (*)(const char *, void *, int 
(*)(void *, const char *, const struct stat *, long), long, struct 
fuse_file_info *)') with an expression of type 'int (const char *, void 
*, fuse_fill_dir_t, off_t, struct fuse_file_info *, enum 
fuse_readdir_flags)' (aka 'int (const char *, void *, int (*)(void *, 
const char *, const struct stat *, long), long, struct fuse_file_info *, 
enum fuse_readdir_flags)') [-Wincompatible-function-pointer-types]
   181 |     .readdir = fs_readdir,
       |                ^~~~~~~~~~
../src/fuse_local.c:184:13: error: incompatible function pointer types 
initializing 'void *(*)(struct fuse_conn_info *)' with an expression of 
type 'void *(struct fuse_conn_info *, struct fuse_config *)' 
[-Wincompatible-function-pointer-types]
   184 |     .init = fs_init,
       |             ^~~~~~~
11 errors generated.

-- 
Best regards,
Vladimir Druzenko