rst2man tend to hang when called without arguments, so a small -V is appended to print the version.
Also, make sure we found at least one rst2man executable
Signed-off-by: jpsollie <janpieter.sollie@edpnet.be>
The compiler checks where erroneously reverted in the Makefile - this reapplies them,
so GCC < 10 can still build the bcachefs tools
Signed-off-by: jpsollie <janpieter.sollie@edpnet.be>
On some distros, rst2man has a .py extension and there is no rst2man.
Fix build on such systems by detecting what is available.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Following the initial xxhash / xor checksum support patches in kernel, bcachefs-tools needs some updated libraries as well.
Unfortunately, xor functionality is deeply linked into several low-level functions, so we're adding a set of patches here to translate those into userspace
Signed-off-by: Janpieter Sollie <janpieter.sollie@edpnet.be>
Sadly, some people are still running distributions too old to properly
support rust :( In the long term we'd like to use Rust for more of
userspace (and potentially in the kernel); this is just a stopgap
measure.
This tool currently has most of the fundmental features implemented.
It can mount a filesystem specified by uuid, it can ask password for an
encrypted filesystem.
There may be some work that needs to be done to make it behave more like
a "mount.*" tool.
Related: #1
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
The experimental fuse3 support is not complete yet, and fuse3 is new and
still difficult to install on some platforms.
Make it optional at compile time, and default to off.
Signed-off-by: Justin Husted <sigstop@gmail.com>
So far, these tests just test basic format, fsck, and list functions
under valgrind, as well as a few self-validation tests.
Signed-off-by: Justin Husted <sigstop@gmail.com>
* Only run the pkg-config --cflags command once (instead of every .c file)
* Added EXTRA_LDFLAGS and EXTRA_LDLIBS vars
* Removed tabs in the middle of commands to make it easier to manually re-run
commands manually (e.g. if a compilation fails)
* Replaced `cd dir; git command` in favor of $(shell git -C dir command)
* Minor version format change: dirty trees just append "+" instead of "-dirty"
and if git describe fails, it now sets the version to "v0.1-nogit"
Also, don't ignore .gitignore files.
* Compat level 10 allows parallel builds by default.
* Also changed debuild to use short arguments.
* Long arguments weren't supported until dpkg-dev 1.18.8.
This removes the implicit `-I libbcachefs` argument to $(CC), which in turn
requires a set of minor changes throughout the tools. There are two advantages
to this setup:
1) It is (arguably) easier to read, since the location of bcachefs includes
are easier to understand at a glance ("where does util.h live?")
2) It removes the need for a hack to include glibc's copy of
dirent.h explicitly via '/usr/include/dirent.h', because libbcachefs/
*also* has a dirent.h file and the compiler cannot disambiguate them.
This has some ramifications on systems where /usr/include may not
exist, such as NixOS.
Signed-off-by: Austin Seipp <aseipp@pobox.com>
We will not always have .git available in some cases. For example, if someone
simply downloaded a tarball of the tree, or if we're building with something
like Nix and want to exclude the .git folder, we need to cope and build the
source anyway.
Signed-off-by: Austin Seipp <aseipp@pobox.com>