aboutsummaryrefslogtreecommitdiff
path: root/contrib/bmake/filemon
Commit message (Collapse)AuthorAgeFilesLines
* Merge bmake-20220330Simon J. Gerraty2022-04-031-4/+8
| | | | Merge commit 'a052cb432096794be5070dc68a2b302eaf5a4783'
* Merge bmake-20220204Simon J. Gerraty2022-02-051-2/+2
|
* Merge bmake-20211212Simon J. Gerraty2021-12-181-2/+1
| | | | commit '2935fe8237c83c1dcb113dd5335733263e68e6fd'
* Merge bmake-20210206Simon J. Gerraty2021-02-113-7/+16
| | | | | | | | | | | Changes of interest o unit-tests: use private TMPDIR to avoid errors from other users o avoid strdup in mkTempFile o always use vfork o job.c: do not create empty shell files in jobs mode reduce unnecessary calls to waitpid o cond.c: fix debug output for comparison operators in conditionals
* Merge bmake-20210110Simon J. Gerraty2021-01-143-42/+49
| | | | | | | | | | | | | | | | | | | | | Quite a lot of churn on style, but lots of good work refactoring complicated functions and lots more unit-tests. Thanks mostly to rillig at NetBSD Some interesting entries from ChangeLog o .MAKE.{UID,GID} represent uid and gid running make. o allow env var MAKE_OBJDIR_CHECK_WRITABLE=no to skip writable checks in InitObjdir. Explicit .OBJDIR target always allows read-only directory. o add more unit tests for META MODE Merge commit '8e11a9b4250be3c3379c45fa820bff78d99d5946' into main Change-Id: I464fd4c013067f0915671c1ccc96d2d8090b2b9c
* Merge bmake-20201117Simon J. Gerraty2020-11-202-4/+4
| | | | | | | | | | | | | | | o allow env var MAKE_OBJDIR_CHECK_WRITABLE=no to skip writable checks in InitObjdir. Explicit .OBJDIR target always allows read-only directory. o More code cleanup and refactoring. o More unit tests MFC after: 1 week Notes: svn path=/head/; revision=367863
* Update to bmake-20201101Simon J. Gerraty2020-11-072-10/+10
| | | | | | | | | | | | | | Lots of new unit-tests increase code coverage. Lots of refactoring, cleanup and simlpification to reduce code size. Fixes for Bug 223564 and 245807 Updates to dirdeps.mk and meta2deps.py Notes: svn path=/head/; revision=367465
* Update to bmake-20200710Simon J. Gerraty2020-07-121-2/+2
| | | | | | | | | | | | Key changes include reduced noise at end of failed build log and avoid evaluation of unnecessary terms in conditionals. In META MODE; a target flagged .META is out-of-date if meta file is missing MFC after: 1 week Notes: svn path=/head/; revision=363117
* Merge bmake-20200517Simon J. Gerraty2020-05-203-0/+1082
Changes since 20181221 are mostly portability related hence the large gap in versions imported. There are however some bug fixes, and a rework of filemon handling. In NetBSD make/filemon/filemon_ktrace.c allows use of fktrace and elimination of filemon(4) which has not had the TLC it needs. FreeBSD filemon(4) is in much better shape, so bmake/filemon/filemon_dev.c allows use of that, with a bit less overhead than the ktrace model. Summary of changes from ChangeLog o str.c: empty string does not match % pattern plus unit-test changes o var.c: import handling of old sysV style modifier using '%' o str.c: refactor brk_string o meta.c: meta_oodate, CHECK_VALID_META is too aggressive for CMD a blank command is perfectly valid. o meta.c: meta_oodate, check for corrupted meta file earlier and more often. * meta.c: meta_compat_parent check for USE_FILEMON patch from Soeren Tempel o meta.c: fix compat mode, need to call meta_job_output() o job.c: extra fds for meta mode not needed if using filemon_dev o meta.c: avoid passing NULL to filemon_*() when meta_needed() returns FALSE. o filemon/filemon_{dev,ktrace}.c: allow selection of filemon implementation. filemon_dev.c uses the kernel module while filemon_ktrace.c leverages the fktrace api available in NetBSD. filemon_ktrace.c can hopefully form the basis for adding support for other tracing mechanisms such as strace on Linux. o meta.c: when target is out-of-date per normal make rules record value of .OODATE in meta file. o parse.c: don't pass NULL to realpath(3) some versions cannot handle it. o parse.c: ParseDoDependency: free paths rather than assert plus more unit-tests Notes: svn path=/head/; revision=361307