summaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* build: Refactor configurationTavian Barnes2024-04-161-336/+33
| | | | | | We now use a recursive make invocation to do the work of `make config`. The new implementation is also compatible with GNU make 3.81 found on macOS.
* build: Center [ CC ] / [ LD ]Tavian Barnes2024-04-161-2/+2
|
* distcheck: Run all the checksTavian Barnes2024-04-151-1/+1
| | | | Oops.
* build: Be quieter by defaultTavian Barnes2024-04-151-22/+74
|
* build: Make distclean also clean the distcheck dirsTavian Barnes2024-04-151-9/+11
|
* build: Show a nicer error if the user forgets to run make configTavian Barnes2024-04-151-2/+9
|
* build: Remove unneeded USE_* defaultsTavian Barnes2024-04-151-10/+1
|
* build: Factor out vars.mk generation into a scriptTavian Barnes2024-04-101-34/+2
|
* build: Run pkg-config with all packages at onceTavian Barnes2024-04-101-55/+52
|
* build: Add optional libselinux dependencyTavian Barnes2024-04-101-1/+5
|
* build: Add a separate configuration stepTavian Barnes2024-04-091-0/+517
|
* Rename Makefile to GNUmakefileRaf Czlonka2023-07-201-331/+0
|
* CFLAGS adjustment in MakefileJason Stewart2023-07-191-1/+1
| | | | | `-flto` to `-flto=auto` to eliminate `using serial compilation of 3 LTRANS jobs` gcc warning see https://stackoverflow.com/questions/72218980/gcc-v12-1-warning-about-serial-compilation
* Release 3.0.13.0.1Tavian Barnes2023-07-181-1/+1
|
* build: Move some flags aroundTavian Barnes2023-07-131-4/+4
|
* docs: Start preparing for the 3.0 releaseTavian Barnes2023-06-301-1/+1
|
* build/tsan: Fix target_clones overrideTavian Barnes2023-06-241-1/+1
|
* Unify macro naming conventionsTavian Barnes2023-06-241-10/+10
| | | | | In particular, macros that decide whether to use a particular API/ dependency should be spelled BFS_USE_*, and should be configurable.
* alloc: New header for memory allocation utilitiesTavian Barnes2023-06-201-1/+2
|
* build: Turn off ASLR for all sanitizers on FreeBSDTavian Barnes2023-06-201-1/+1
| | | | | | | | Newer LLVM versions will reject every sanitizer runtime if ASLR is enabled. Link: https://reviews.llvm.org/D66582 Link: https://reviews.freebsd.org/D33933
* ioq: Implement an async I/O queueTavian Barnes2023-06-121-0/+1
|
* lock: Add wrappers for POSIX synchronization primitivesTavian Barnes2023-06-121-1/+2
|
* build: Update to C17Tavian Barnes2023-06-121-1/+1
| | | | This lets us avoid ATOMIC_VAR_INIT().
* build: Add tsan to distcheckTavian Barnes2023-06-121-0/+4
|
* build: Error on implicit function declarationsTavian Barnes2023-05-181-0/+1
|
* bit: Rename int.h to bit.hTavian Barnes2023-05-181-1/+1
|
* build: Fix test utility compilationTavian Barnes2023-05-161-2/+4
|
* int: Backport C23's _WIDTH macrosTavian Barnes2023-05-161-1/+1
|
* build: Make the tests a little less repetitiveTavian Barnes2023-05-161-18/+16
|
* Let musl builds use getdents64()Tavian Barnes2023-05-031-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 tsanTavian Barnes2023-04-121-33/+39
|
* list: Use macros instead of type-erased listsTavian Barnes2023-03-311-1/+0
|
* list: New generic linked list APITavian Barnes2023-03-291-0/+1
|
* Release 2.6.32.6.3Tavian Barnes2023-01-311-1/+1
|
* Replace license boilerplate with SPDX tagsTavian Barnes2023-01-251-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 Barnes2023-01-191-4/+9
|
* build: New $(LIBBFS) variable shared between the main binary and testsTavian Barnes2023-01-191-40/+44
|
* Turn on more aggressive format string warningsTavian Barnes2022-12-091-2/+3
|
* distcheck: Add ubsan to msan buildTavian Barnes2022-11-111-1/+1
|
* tests/xtouch: New utilityTavian Barnes2022-11-071-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 itTavian Barnes2022-11-061-1/+1
|
* util: Get rid of BFS_HAS_INCLUDE() wrapper for __has_include()Tavian Barnes2022-11-061-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.2Tavian Barnes2022-10-211-1/+1
|
* Release 2.6.12.6.1Tavian Barnes2022-07-051-1/+1
|
* Add fish completionGustavo Costa2022-06-141-0/+3
|
* Makefile: Pass -std=gnu11 for gcov buildsTavian Barnes2022-05-311-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.6Tavian Barnes2022-05-211-1/+1
|
* Makefile: Add a BUILDDIR variable for out-of-tree buildsTavian Barnes2022-05-201-51/+55
| | | | bfs can now be built from a read-only source tree.
* Makefile: Split build into bin and obj directoriesTavian Barnes2022-05-161-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 failTavian Barnes2022-05-131-2/+2
|