summaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* bench/ioq: New ioq microbenchmarkTavian Barnes2024-12-031-1/+10
|
* build: New make dist[sign] targetsTavian Barnes2024-10-221-1/+11
|
* ci: Group distcheck messagesTavian Barnes2024-10-011-0/+2
|
* build: Remove gen/deps.mkTavian Barnes2024-09-141-18/+68
| | | | | | | | | | | | | | | | Since commit 3552b79 ("build/flags: Infrastructure to detect compiler flag support"), this file only listed a bunch of lines like -include obj/src/alloc.d -include obj/src/bar.d ... We can do that just as well from the main Makefile, and in one line too: -include ${OBJS:.o=.d} This lets us pull the list of all objects out of build/prelude.mk and put it closer to where those objects are actually used.
* docs/bfs.1: Fix some mandoc lint warningsTavian Barnes2024-09-051-2/+3
| | | | And add mandoc -Tlint to make check-man.
* build: Mark some recipes as .SILENTTavian Barnes2024-09-031-4/+7
| | | | | | | | | This suppresses output like this on a no-op remake with BSD make: $ make -j8 --- gen/config.mk --- --- gen/version.i.new --- --- gen/version.i ---
* distcheck: Pass MAKE="${MAKE}" to ./configureTavian Barnes2024-09-031-1/+1
| | | | | Otherwise ./configure will run with the default make but inherit MAKEFLAGS from the current make, breaking e.g. gmake distcheck on BSD.
* build/version.sh: Move version calculation hereTavian Barnes2024-08-281-7/+1
|
* build: Add check-{install,man} to distcheckTavian Barnes2024-08-281-1/+3
|
* Release 4.0.14.0.1Tavian Barnes2024-08-191-1/+1
|
* Prepare for version 4.0Tavian Barnes2024-07-101-1/+1
|
* docs/bfs.1: Fix some CHECKSTYLE warningsTavian Barnes2024-06-171-0/+5
| | | | And add a new `make check-man` target.
* Embed more configuration info in bfs --versionTavian Barnes2024-06-081-7/+5
|
* Make ELOOP an error again, except for -xtype.3.3.1Tavian Barnes2024-06-031-1/+1
| | | | | | | | | | POSIX requires an error if (for example) -L encounters a symlink loop. The GNU find change was restricted to -xtype, so add a manual ELOOP test to eval_xtype() for compatibility. This reverts commit 470589cbd9ca3e73d8c01ac3a96cbc065179dcc5. Link: https://savannah.gnu.org/bugs/?19605
* Release 3.33.3Tavian Barnes2024-05-281-1/+1
|
* build: Allow flags.mk to override command line variablesTavian Barnes2024-05-211-2/+2
| | | | | | | | Previously, during something like ./configure LDFLAGS=..., any additions to LDFLAGS from the generated makefiles were ignored. I had thought that sub-make invocations would allow those variables to be overridden, but that is not the behaviour of make. So instead, set _LDFLAGS etc. in the generated files so that they don't conflict.
* distcheck: Disable tsan on FreeBSDTavian Barnes2024-05-161-1/+1
| | | | | | | | | ThreadSanitizer has some FreeBSD-specific bugs that are too difficult to work around. In particular, deadlock is possible if any signal with a user-defined handler interrupts an atomic operation. Link: https://github.com/llvm/llvm-project/issues/92313 Link: https://github.com/llvm/llvm-project/issues/92437
* distcheck: Don't build with make -sTavian Barnes2024-05-071-6/+6
| | | | That way I can see the ./configure output on CI.
* Makefile: Recommend --enable-release over RELEASE=yTavian Barnes2024-05-021-2/+2
|
* Release 3.23.2Tavian Barnes2024-05-021-1/+1
|
* build: Add some nice aliases to ./configureTavian Barnes2024-05-011-5/+5
|
* build: Listen to make -sTavian Barnes2024-04-301-6/+2
|
* build: Replace `make config` with a `./configure` scriptTavian Barnes2024-04-291-72/+71
| | | | | | | | | | This lets us do more traditional out-of-tree builds like $ ../path/to/bfs/configure $ make The .mk files are moved from ./config to ./build, mostly so that ./configure will auto-complete easily.
* config: Delete gen/objs.mkTavian Barnes2024-04-171-0/+2
| | | | | Rather than explicitly listing all these dependencies, we can rely on DEPFLAGS to generate them for us.
* build: Directly generate version.cTavian Barnes2024-04-171-11/+10
|
* build: Dont include ${BUILDDIR} in short messagesTavian Barnes2024-04-171-1/+1
|
* build: Make the config scripts POSIX-compliantTavian Barnes2024-04-171-1/+1
|
* 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().