Commit graph

82 commits

Author SHA1 Message Date
Antonio SJ Musumeci
d5a2187713 Fix make race condition
Some checks are pending
mkdocs / deploy (push) Waiting to run
2026-04-16 18:20:00 -05:00
Antonio SJ Musumeci
3905355522 Detect OS for release-sample make target
Some checks failed
mkdocs / deploy (push) Has been cancelled
2026-04-08 20:48:02 -05:00
Antonio SJ Musumeci
6d218fa87f Misc updates and fixes
Some checks failed
mkdocs / deploy (push) Has been cancelled
2026-04-04 02:46:24 -05:00
Antonio SJ Musumeci
6a6aa054cd Add support for Arch, btw
Some checks failed
mkdocs / deploy (push) Has been cancelled
2026-03-14 11:39:48 -04:00
Antonio SJ Musumeci
8f1ef59770 Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
Antonio SJ Musumeci
a2860c3f1f Use debug mutex more 2026-03-02 01:09:16 -05:00
trapexit
9b046d9a34
Rework credential handling to support chroot & idmap (#1595)
Some checks are pending
mkdocs / deploy (push) Waiting to run
Run in an elevated credential mode (root) and let the kernel manage
entitlements. Will result in slightly different behavior but should
not be noticed by most.
2025-12-05 21:03:48 -06:00
trapexit
104f378c2c
Replace 'unknown' distro-codename when building deb from tarball src (#1584) 2025-11-19 07:57:58 -06:00
trapexit
dc486e79ce
Add container image building (#1568)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-11-06 23:39:05 -06:00
trapexit
2412ae7316
Further tweaks to config parsing and error reporting (#1559)
* Further tweaks to config parsing and error reporting

* Fix static builds
2025-11-01 15:20:30 -05:00
trapexit
37f10888a9
Add more debugging options to makefiles and cleanup (#1556)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-10-29 22:42:42 -05:00
trapexit
cfaad60275
Misc updates to arg parsing (#1554)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
Ignore "defaults" and add a number of more modern VFS mount switches
2025-10-26 21:05:05 -05:00
trapexit
e6fcebe4f3
Misc build fixes (#1537)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-09-29 14:05:07 -05:00
trapexit
46f85c0f6d
Misc fixes, mostly for FreeBSD (#1536)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-09-28 23:17:51 -05:00
trapexit
071af2e516
More build process updates (#1516)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-08-29 07:51:05 -05:00
trapexit
2101ef5bcc
Updates to docs, add nonraid, more intro to fs details (#1512)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-08-21 15:09:04 -05:00
trapexit
24e778b95a
Rework calculation of branch for release make targets (#1507)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-08-10 18:39:18 -05:00
trapexit
9872710720
More makefile tweaks, build log, smaller git clones (#1503)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-08-06 12:24:25 -05:00
trapexit
b18aba86b6
Build improvements (#1501)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
* Remove python dependency
* Remove ecfd
* Improve makefiles
* Make preload.so more 32bit compatible
2025-08-04 23:39:52 -05:00
trapexit
2b500f194a
Rework of runtime interface (#1498)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
Also have special error handling for when branches are invalid and
ENOENT would be returned for getattr and readdir so users understand
what is going on and the runtime interface can still be used to fix
the problem.
2025-07-21 18:18:59 -05:00
trapexit
9e626228be
Add mergerfs.collect-info (#1491)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
A tool to collect info for support requests.
2025-07-03 20:18:05 -05:00
trapexit
77ef88b04c
Add fsck.mergerfs tool (#1483) 2025-06-23 21:57:55 -05:00
trapexit
23824eaeb4
Misc cleanup
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-06-06 19:10:19 -05:00
trapexit
e310d24615
Add support for FUSE passthrough
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-06-05 23:47:42 -05:00
trapexit
fa3266ca7f
Add podman release build tooling + misc build fixes (#1455) 2025-05-08 00:00:53 -05:00
trapexit
344014aa81
Rework thread pool for increased stability + config and doc updates (#1453)
Also updates fmt to 11.2.0 and replaced syslog usage with a wrapper
leveraging fmt.
2025-05-05 18:28:49 -05:00
trapexit
d4dc0701d6
Create ld_preload to reopen files on underlying filesystem (#1294) 2024-01-22 12:42:55 -06:00
Antonio SJ Musumeci
0c555e71a0 Initialize readdir threadpool after daemonizing 2023-08-28 22:47:04 -05:00
Antonio SJ Musumeci
a4491169b0 Remove FUSE_USE_VERSION, no longer used 2023-01-29 17:04:08 -05:00
Antonio SJ Musumeci
8adebc9489 new features: follow-symlinks, rename-exdev, link-exdev
* follow-symlinks: allows mergerfs to transparently follow symlinks
* link-exdev: in the event a link returns EXDEV create a symlink instead
* rename-exdev: in the event a rename returns EXDEV move the oldpath and
  create a symlink for the newpath
2021-02-11 23:24:08 -05:00
Antonio SJ Musumeci
538467b86d config: rework global config, remove rwlock, make branches RCU like
Also added unit tests. Should have done separately but found a number of bugs.
2021-01-14 21:02:10 -05:00
KARBOWSKI Piotr
678626ef82 Makefile: support CXXFLAGS and LDFLAGS passed via environment 2020-08-08 22:03:50 +02:00
Antonio SJ Musumeci
54c41c4994 rework config management
* Add standard way to do str2val and val2str conversion
* Add support for a config file
* Add support for reading and writing settings via ioctl
2020-06-18 18:54:25 -04:00
Antonio SJ Musumeci
698c4147fc fix getdent name length calculation 2020-03-12 23:45:20 -04:00
Antonio SJ Musumeci
5ce428ca59 rework makefiles + install mount tools 2020-02-21 12:33:00 -05:00
James Sanderson
f77d1d9929 Force symlink creation (don't error if it already exists) 2019-08-31 18:41:54 +01:00
Antonio SJ Musumeci
229d8517c0 fix mount.mergerfs generation 2019-05-20 08:17:06 -04:00
Antonio SJ Musumeci
825fcf7f35 cleanup and rework build system 2019-05-03 09:42:15 -04:00
Antonio SJ Musumeci
61d764d0fd makefile: remove superclean dependency from tarball 2019-03-12 23:24:17 -04:00
Antonio SJ Musumeci
b0b265b8e5 parallel deb building 2019-03-12 23:11:27 -04:00
Antonio SJ Musumeci
1be9900733 rework makefiles for better manage parallel builds 2019-03-10 19:29:35 -04:00
Antonio SJ Musumeci
2af0dcd273 fix building of deb pkg 2019-02-23 01:35:22 -05:00
Antonio SJ Musumeci
95c0cc741d replace libfuse's autoconf with makefile 2019-02-18 21:36:32 -05:00
Antonio SJ Musumeci
6de8e4471c general cleanup of makefile, add static & lto building 2018-12-02 15:30:15 -05:00
Antonio SJ Musumeci
1885a82cce remove libattr dependency 2018-10-09 13:50:45 -04:00
Andrey Mazo
756d4ff0ff
Makefile: option for building with system libfuse
Add INTERNAL_FUSE variable to control linking against
bundled libfuse vs external/system libfuse.
If external libfuse is requested,
`pkg-config` is used to obtain CFLAGS/LIBS/LDFLAGS and
to check that the provided external libfuse is >= 2.9.7.

This might hopefully get mergerfs closer to inclusion into distros.

Link: https://github.com/trapexit/mergerfs/issues/431
Link: https://bugs.gentoo.org/587956#c6
2018-08-20 00:05:58 +03:00
Andrey Mazo
e987ff46c2
Makefile: don't touch LDFLAGS
These are more like LIBS rather than LDFLAGS.
They are used just in one place,
so simply put them inline.

Also, use LDFLAGS provided by the user during actual link.

This helps users pass their own LDFLAGS.
For example, this is important on Gentoo,
where LDFLAGS='-Wl,-O1 -Wl,--as-needed' is passed by default.
2018-08-13 06:02:29 +03:00
Antonio SJ Musumeci
9830e29945 fix version generation 2018-03-09 21:06:00 -05:00
Antonio SJ Musumeci
ebe737e995 fixup makefile 2017-08-06 14:39:56 -04:00
Antonio SJ Musumeci
a7b126cb48 use pragma once in headers 2017-06-30 11:38:34 -04:00