Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | build: Error on implicit function declarations | Tavian Barnes | 2023-05-18 | 1 | -0/+1 | |
| | ||||||
* | bit: Rename int.h to bit.h | Tavian Barnes | 2023-05-18 | 1 | -1/+1 | |
| | ||||||
* | build: Fix test utility compilation | Tavian Barnes | 2023-05-16 | 1 | -2/+4 | |
| | ||||||
* | int: Backport C23's _WIDTH macros | Tavian Barnes | 2023-05-16 | 1 | -1/+1 | |
| | ||||||
* | build: Make the tests a little less repetitive | Tavian Barnes | 2023-05-16 | 1 | -18/+16 | |
| | ||||||
* | Let musl builds use getdents64() | Tavian Barnes | 2023-05-03 | 1 | -1/+2 | |
| | | | | | | Glibc exposes a different struct dirent and dirent64, while on musl they are the same. But musl needs _LARGEFILE64_SOURCE to expose the *64() aliases. | |||||
* | build: Fix tsan | Tavian Barnes | 2023-04-12 | 1 | -33/+39 | |
| | ||||||
* | list: Use macros instead of type-erased lists | Tavian Barnes | 2023-03-31 | 1 | -1/+0 | |
| | ||||||
* | list: New generic linked list API | Tavian Barnes | 2023-03-29 | 1 | -0/+1 | |
| | ||||||
* | Release 2.6.32.6.3 | Tavian Barnes | 2023-01-31 | 1 | -1/+1 | |
| | ||||||
* | Replace license boilerplate with SPDX tags | Tavian Barnes | 2023-01-25 | 1 | -15/+2 | |
| | | | | | | | And while I'm at it, remove years from copyright declarations. Link: https://spdx.dev/about/ Link: https://daniel.haxx.se/blog/2023/01/08/copyright-without-years/ | |||||
* | bfstd: New wrappers for dirname()/basename() | Tavian Barnes | 2023-01-19 | 1 | -4/+9 | |
| | ||||||
* | build: New $(LIBBFS) variable shared between the main binary and tests | Tavian Barnes | 2023-01-19 | 1 | -40/+44 | |
| | ||||||
* | Turn on more aggressive format string warnings | Tavian Barnes | 2022-12-09 | 1 | -2/+3 | |
| | ||||||
* | distcheck: Add ubsan to msan build | Tavian Barnes | 2022-11-11 | 1 | -1/+1 | |
| | ||||||
* | tests/xtouch: New utility | Tavian Barnes | 2022-11-07 | 1 | -2/+8 | |
| | | | | | | POSIX touch(1) doesn't include the -h option, and indeed OpenBSD doesn't implement it. Making our own utility also lets us add some handy extensions like -p (create parents) and -M (set permissions). | |||||
* | bfstd: Rename from util and reorganize it | Tavian Barnes | 2022-11-06 | 1 | -1/+1 | |
| | ||||||
* | util: Get rid of BFS_HAS_INCLUDE() wrapper for __has_include() | Tavian Barnes | 2022-11-06 | 1 | -3/+3 | |
| | | | | | | | | | Since __has_include() needs special preprocessing rules (e.g. not expanding `linux` in `__has_include(<linux/stat.h>)`, macros that expand to __has_include() do not necessarily behave correctly. Instead, we have to directly test `#if __has_include(...)`. See https://bugs.llvm.org/show_bug.cgi?id=37990 for more details. | |||||
* | Release 2.6.22.6.2 | Tavian Barnes | 2022-10-21 | 1 | -1/+1 | |
| | ||||||
* | Release 2.6.12.6.1 | Tavian Barnes | 2022-07-05 | 1 | -1/+1 | |
| | ||||||
* | Add fish completion | Gustavo Costa | 2022-06-14 | 1 | -0/+3 | |
| | ||||||
* | Makefile: Pass -std=gnu11 for gcov builds | Tavian Barnes | 2022-05-31 | 1 | -0/+2 | |
| | | | | | | | Otherwise, libgcov doesn't intercept functions like fork() and exec(), so we lose some coverage data in xspawn.c. Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82457 | |||||
* | Release 2.62.6 | Tavian Barnes | 2022-05-21 | 1 | -1/+1 | |
| | ||||||
* | Makefile: Add a BUILDDIR variable for out-of-tree builds | Tavian Barnes | 2022-05-20 | 1 | -51/+55 | |
| | | | | bfs can now be built from a read-only source tree. | |||||
* | Makefile: Split build into bin and obj directories | Tavian Barnes | 2022-05-16 | 1 | -54/+52 | |
| | | | | | This also moves the main binary from ./bfs to ./bin/bfs, and ./tests.sh to ./tests/tests.sh, with the goal of keeping the repository root clean. | |||||
* | tests: Buffer standard error, and print it when tests fail | Tavian Barnes | 2022-05-13 | 1 | -2/+2 | |
| | ||||||
* | tests: Add --verbose={commands,errors,skipped,tests} options | Tavian Barnes | 2022-05-13 | 1 | -1/+1 | |
| | ||||||
* | tests: Use skip_if for sudo tests | Tavian Barnes | 2022-05-12 | 1 | -4/+3 | |
| | | | | | | This lets us categorize the sudo tests properly, which fixes e.g. $ ./tests.sh --posix --sudo | |||||
* | Makefile: Look for .d files in the right places | Tavian Barnes | 2022-05-11 | 1 | -1/+1 | |
| | | | | Fixes: f2cb2215213c0d831a697b0b440f78d9ad5c2b83 | |||||
* | Makefile: New check-install target | Tavian Barnes | 2022-05-09 | 1 | -0/+8 | |
| | ||||||
* | docs: Move some documentation into a subfolder | Tavian Barnes | 2022-04-21 | 1 | -1/+1 | |
| | ||||||
* | Add basic zsh completion | Arvid Norlander | 2022-04-21 | 1 | -0/+3 | |
| | | | | Fixes #32. | |||||
* | Makefile: Put the main .o files under build/src | Tavian Barnes | 2022-04-21 | 1 | -35/+31 | |
| | ||||||
* | Makefile: Generate build/FLAGS.new with its own target | Tavian Barnes | 2022-04-21 | 1 | -4/+7 | |
| | ||||||
* | Makefile: Replace flags.sh with a two-line recipe | Tavian Barnes | 2022-04-19 | 1 | -1/+2 | |
| | ||||||
* | Makefile: Move .flags to build/FLAGS | Tavian Barnes | 2022-04-19 | 1 | -6/+6 | |
| | ||||||
* | Makefile: Quiet errors from git describe | Tavian Barnes | 2022-04-19 | 1 | -3/+5 | |
| | | | | | | | | | | | | | | | | With new git versions, it is an error to invoke git inside a repository owned by someone else. This manifested as $ sudo make install fatal: unsafe repository ('/home/tavianator/code/bfs' is owned by someone else) To add an exception for this directory, call: git config --global --add safe.directory /home/tavianator/code/bfs Work around it with `2>/dev/null`. This should also help if git is not installed, but .git/ still exists. Link: https://github.blog/2022-04-12-git-security-vulnerability-announced/ | |||||
* | Makefile: Spread out the .PHONY targets | Tavian Barnes | 2022-04-18 | 1 | -2/+9 | |
| | ||||||
* | Makefile: Use a recipe to update .flags rather than $(shell) | Tavian Barnes | 2022-04-18 | 1 | -8/+4 | |
| | | | | | | | | | This means we don't need to generate .flags unless we're actually building a target that needs it, which is important for thing like $ sudo make install that used to inconveniently create a root-owned .flags file. | |||||
* | tests: Also put build outputs under build/ | Tavian Barnes | 2022-04-16 | 1 | -11/+11 | |
| | ||||||
* | Keep Build Files In `build` (#89) | トトも | 2022-04-16 | 1 | -29/+32 | |
| | ||||||
* | Source / Include Folder (#88) | トトも | 2022-04-16 | 1 | -1/+4 | |
| | | | Moved Source Files Into `src` Folder | |||||
* | Release 2.52.5 | Tavian Barnes | 2022-03-27 | 1 | -1/+1 | |
| | ||||||
* | Update from C99 to C11 | Tavian Barnes | 2022-03-25 | 1 | -1/+1 | |
| | | | | This is necessary for standard anonymous structs/unions. | |||||
* | Don't shadow standard headers | Tavian Barnes | 2022-03-12 | 1 | -5/+5 | |
| | | | | | | | | | | | | | @italic on the AUR stated that bfs from the AUR fails to build on Manjaro. From the build log, it seems like <time.h> doesn't get included properly. I assume it's picking up ./time.h instead. I couldn't reproduce the build issue in the default configuration, but it does fail with EXTRA_CFLAGS="-I." which isn't good. So rename everything with an x prefix to stop clashing. Link: https://aur.archlinux.org/packages/bfs#comment-856102 Link: https://paste.rs/eqR | |||||
* | Makefile: Disable onig-config for the 32-bit distcheck build | Tavian Barnes | 2022-03-11 | 1 | -2/+2 | |
| | | | | | | | | | | | onig-config can redundantly add -L/usr/lib to LDLIBS, which results in a few warnings like /usr/bin/ld: skipping incompatible /usr/lib/libonig.so when searching for -lonig While I'm at it, explicitly restrict the -m32 build to Linux, since it doesn't work on FreeBSD and was only skipped because uname -m is amd64, not x86_64. | |||||
* | Makefile: Enable time64 | Tavian Barnes | 2022-03-11 | 1 | -0/+1 | |
| | ||||||
* | Makefile: Add lsan and tsan flag targets | Tavian Barnes | 2022-03-09 | 1 | -1/+13 | |
| | ||||||
* | Makefile: Make separate variables for Oniguruma flags | Tavian Barnes | 2022-02-28 | 1 | -3/+6 | |
| | | | | | | This allows customizing the necessary flags if onig-config isn't available or is undesirable (e.g. when linking against a non-system build of libonig). | |||||
* | Release 2.4.12.4.1 | Tavian Barnes | 2022-02-24 | 1 | -1/+1 | |
| |