Compilation fails on FreeBSD
The fuse-zip port on FreeBSD is currently unmaintained and stuck at 0.4.4. Today I needed something to quickly test FUSE with on one machine and fuse-zip sounded nice. Since I was already messing with things (nobody likes unmaintained ports), I gave updating it a try. Version 0.6.2 works fine after relaxing the GCC a little (removing -Werror in lib/Makefile). However I cannot get any release from the 0.7 branch compiling.
The file lib/extraField.cpp tries to include <sys/sysmacros.h> which seems to be a Linux-only thing. I saw the issue here where a user reported that it prevented fuse-zip to build on macOS and a conditional was introduced. I would suggest to change
#if ! APPLE
to
#if defined(linux)
instead as this will solve this problem on other non-Linux platforms.
But there's at least a second problem: On FreeBSD there's no sys/xattr.h. It seems that including sys/extattr.h instead is the way to go. However I'm still running into problems with missing XATTR_CREATE and XATTR_REPLACE which, according to a comment here do not exist:
https://github.com/python-llfuse/python-llfuse/blob/master/src/xattr.h
I'm not a developer and don't know C++, so this is as far as I could dig. But since Open Source is not a one-way road I wanted to at least let upstream know. If there is interest in resolving the problem, I'll gladly help as far as I can.