Log message:
bmake: Update to 20200517
2020-05-17 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200517
Merge with NetBSD make, pick up
o modified dollar tests to avoid shell dependencies
o new tests for .INCLUDEFROM
2020-05-16 Simon J Gerraty <sjg@beast.crufty.net>
* unit-tests/dollar.mk: tweak '1 dollar literal' test
to not depend so much on shell behavior
2020-05-10 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200510
Merge with NetBSD make, pick up
o unit test for dollar handling
2020-05-06 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200506
Merge with NetBSD make, pick up
o str.c: empty string does not match % pattern
plus unit-test changes
2020-05-04 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200504
May the 4th be with you
Merge with NetBSD make, pick up
o var.c: import handling of old sysV style modifier using '%'
o str.c: refactor brk_string
o unit-tests: add test case for lazy conditions
2020-04-18 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200418
* configure.in: use_makefile=no for cygwin et al.
case insensitive filesystems just don't work if both
makefile and Makefile exist.
NOTE: bmake does not support cygwin and likely never will,
but if brave souls want to try it - help them out.
2020-04-02 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200402
Merge with NetBSD make, pick up
o meta.c: meta_oodate, CHECK_VALID_META is too aggressive for CMD
a blank command is perfectly valid.
2020-03-30 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200330
Merge with NetBSD make, pick up
o make.h: extern debug_file
2020-03-18 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200318
Merge with NetBSD make, pick up
o meta.c: meta_oodate, check for corrupted meta file
earlier and more often.
2020-02-20 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200220
2020-02-19 Simon J Gerraty <sjg@beast.crufty.net>
* boot-strap: unset MAKEFLAGS
2020-02-12 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION (_MAKE_VERSION): 20200212
* meta.c: meta_compat_parent check for USE_FILEMON
patch from Soeren Tempel
2020-02-05 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20200205
Merge with NetBSD make, pick up
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
2020-01-22 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20200122
Merge with NetBSD make, pick up
o meta.c: avoid passing NULL to filemon_*() when meta_needed()
returns FALSE.
2020-01-21 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20200121
Merge with NetBSD make, pick up
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.
2019-09-26 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20190926
Merge with NetBSD make, pick up
o parse.c: don't pass NULL to realpath(3)
some versions cannot handle it.
2019-04-09 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20190409
Merge with NetBSD make, pick up
o parse.c: ParseDoDependency: free paths rather than assert
2018-12-22 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20181222
* configure.in: add --without-makefile to avoid generating
makefile and make-bootstrap.sh
* include Makefile.inc if it exists
* Use Makefile and Makefile.config.in in unit-tests
so we can use just: make obj && make && make test
when bmake is already available.
We add --without-makefile to CONFIGURE_ARGS in this case.
* tweak bsd.after-import.mk (captures Makefile.config etc
after import to FreeBSD for example) to cope with all the above.
2018-12-21 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20181221
Merge with NetBSD make, pick up
o parse.c: ParseVErrorInternal use .PARSEDIR
and apply if relative, and then use .PARSEFILE
for consistent result.
2018-12-20 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20181220
Merge with NetBSD make, pick up
o parse.c: ParseVErrorInternal use .CURDIR if .PARSEDIR
is relative
o var.c: avoid SEGFAULT in .unexport-env
when MAKELEVEL is not set
2018-12-16 Simon J Gerraty <sjg@beast.crufty.net>
* VERSION: 20181216
Merge with NetBSD make, pick up
o fix for unit-tests/varquote.mk on Debian
2018-09-21 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20180919
Merge with NetBSD make, pick up
o var.c: add :q
o dir.c: cleanup caching of stats
2018-09-21 Simon J Gerraty <sjg@beast.crufty.net>
* Makefile.config.in: use += where it makes sense.
2018-05-12 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20180512
Merge with NetBSD make, pick up
o job.c: skip polling job token pipe
2018-04-05 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20180405
Merge with NetBSD make, pick up
o parse.c: be more cautious about detecting depenency line
rather than sysV style include.
2018-02-22 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20180222
Merge with NetBSD make, pick up
o parse.c: avoid calling sysconf for every call to loadfile
2018-02-18 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20180218
Merge with NetBSD make, pick up
o var.c: Var_Set handle NULL value anytime.
2018-02-12 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20180212
Merge with NetBSD make, pick up
o parse.c: do not treat .info as warning with -W
2017-12-07 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20171207
Merge with NetBSD make, pick up
o var.c: Var_Append use Var_Set if var not previously set
so that VAR_CMD is handled correctly.
Add a suitable unit-test.
2017-11-26 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION (_MAKE_VERSION): 20171126
* aclocal.m4: use AC_LINK_IFELSE for AC_C___ATTRIBUTE__
since AC_TRY_COMPILE puts input inside main()
which upsets modern compilers.
2017-11-18 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20171118
Merge with NetBSD make, pick up
o var.c: do not append to variable set on command line
add unit-test to catch this.
2017-10-28 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20171028
Merge with NetBSD make, pick up
o main.c: ignore empty MAKEOBJDIR
* Makefile.config.in:
make @prefix@ @machine*@ and @default_sys_path@ defaults.
2017-10-05 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION: 20171005
* unit-tests/dotwait.mk: redirect stderr through pipe for more
consistent result on some platforms.
2017-08-13 Simon J. Gerraty <sjg@bad.crufty.net>
* machine.sh: entry for AIX
2017-08-12 Simon J. Gerraty <sjg@bad.crufty.net>
* VERSION (_MAKE_VERSION): Move the setting of _MAKE_VERSION
to a file that can be included by configure as well as make.
This allows configure to set set _MAKE_VERSION in make-bootstrap.sh
2017-08-10 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170810
Merge with NetBSD make, pick up
o meta.c: if target is in subdir we only need subdir name in
meta_name.
2017-07-20 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170720
Merge with NetBSD make, pick up
o compat.c: pass SIGINT etc onto child and wait for it to exit
before we self-terminate.
2017-07-11 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170711
forgot to update after merge on 20170708 ;-)
o main.c: refactor to reduce size of main function.
add -v option to always fully expand values.
o meta.c: ensure command output in meta file has ending newline
even when filemon not being used.
When matching ${.MAKE.META.IGNORE_PATTERNS} do not use
pathname via ':L' since any ':' in pathname breaks that.
Instead set a '${.p.}' to pathname in the target context and
use that.
2017-05-10 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170510
Merge with NetBSD make, pick up
o main.c: Main_SetObjdir: ensure buf2 is in scope
2017-05-08 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170505
see mk/ChangeLog
2017-05-05 Simon J. Gerraty <sjg@bad.crufty.net>
* parse.c: not everyone has stdint.h
2017-05-01 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170501
see mk/ChangeLog
2017-04-21 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170421
Merge with NetBSD make, pick up
o str.c: Str_Match: fix closure tests for [^] and add unit-test.
2017-04-20 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170420
Merge with NetBSD make, pick up
o main.c: only use -C arg "as is" if it contains no
relative component.
2017-04-18 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170418
Merge with NetBSD make, pick up
o main.c: fix Main_SetObjdir() for relative paths (eg obj).
2017-04-17 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170417
Merge with NetBSD make, pick up
o fixes a number of coverity complaints
- check return value of fseek, fcntl
- plug memory leak in Dir_FindFile, Var_LoopExpand,
JobPrintCommand, ParseTraditionalInclude
- use bmake_malloc() where NULL is not tollerated
- use MAKE_ATTR_UNUSED rather that kludges like
return(unused ? 0 : 0)
- use purge_cached_realpaths() rather than abuse cached_realpath()
2017-04-13 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170413
Merge with NetBSD make, pick up
o main.c: when setting .OBJDIR ignore '$' in paths.
* job.c: use MALLOC_OPTIONS to set malloc_options.
2017-04-11 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170411
Merge with NetBSD make, pick up
o str.c: Str_Match: allow [^a-z] to behave as expected.
2017-03-26 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170326
Merge with NetBSD make, pick up
o main.c: purge relative paths from realpath cache when .OBJDIR
is changed.
2017-03-11 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170311
Merge with NetBSD make, pick up
o main.c: only use -C arg "as is" if it starts with '/'.
2017-03-01 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170301
Merge with NetBSD make, pick up
o main.c: use -C arg "as is" rather than getcwd()
if they identify the same directory.
o parse.c: ensure loadfile buffer is \n terminated in non-mmap case
2017-02-01 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170201
Merge with NetBSD make, pick up
o var.c: allow :_=var and avoid use of special context.
2017-01-30 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170130
Merge with NetBSD make, pick up
o var.c: add :range and :_
o main.c: partially initialize Dir_* before MainParseArgs()
can be called.
If -V, skip Main_ExportMAKEFLAGS()
2017-01-14 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20170114
Merge with NetBSD make, pick up
o var.c: allow specifying the utc value used by :{gm,local}time
2016-12-12 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20161212
Merge with NetBSD make, pick up
o main.c: look for obj.${MACHINE}-${MACHINE_ARCH} too.
2016-12-09 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20161209
Merge with NetBSD make, pick up
o main.c: cleanup setting of .OBJDIR
o parse.c: avoid coredump from (var)=val
2016-11-26 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20161126
Merge with NetBSD make, pick up
o make.c: Make_OODate: report src node name if path not set
2016-09-26 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160926
Merge with NetBSD make, pick up
o support for .DELETE_ON_ERROR: (remove targets that fail)
2016-09-26 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile MAN: tweak .Dt to match ${PROG}
2016-08-18 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160818
its a neater number; pick up whitespace fixes to man page.
2016-08-17 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160817
Merge with NetBSD make, pick up
o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore()
so we can call it before adding entries to missingFiles.
Thus we do not track files we have been told to ignore.
2016-08-15 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160815
Merge with NetBSD make, pick up
o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to
pathnames, and skip if the expansion is empty.
Useful for dirdeps.mk when checking DIRDEPS_CACHE.
2016-08-12 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160812
Merge with NetBSD make, pick up
o meta.c: remove all missingFiles entries that match a deleted
dir.
o main.c: set .ERROR_CMD if possible.
2016-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160606
Merge with NetBSD make, pick up
o dir.c: extend mtimes cache to others via cached_stat()
2016-06-04 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160604
Merge with NetBSD make, pick up
o meta.c: missing filemon data is only relevant if we read a
meta file.
Also do not return oodate for a missing metafile if gn->path
points to .CURDIR
2016-06-02 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160602
Merge with NetBSD make, pick up
o cached_realpath(): avoid hitting filesystem more than necessary.
o meta.c: refactor need_meta decision, add knobs for
missing meta file and filemon data wrt out-of-datedness.
2016-05-28 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160528
* boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION
2016-05-12 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160512
Merge with NetBSD make, pick up
o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS
this is useful for gcov builds.
o propagate errors from filemon(4).
2016-05-09 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160509
Merge with NetBSD make, pick up
o remove use of non-standard types u_int etc.
o meta.c: apply realpath() before matching against metaIgnorePaths
2016-04-04 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160404
Merge with NetBSD make, pick up
o allow makefile to set .MAKE.JOBS
* Makefile (PROG_NAME): use ${_MAKE_VERSION}
2016-03-15 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): 20160315
Merge with NetBSD make, pick up
o fix handling of archive members
2016-03-13 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (_MAKE_VERSION): rename variable to avoid interference
with checks for ${MAKE_VERSION}
2016-03-10 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20160310
Merge with NetBSD make, pick up
o meta.c: treat missing Read file same as Write, incase we Delete it.
2016-03-07 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20160307
Merge with NetBSD make, pick up
o var.c: fix :ts\nnn to be octal by default.
o meta.c: meta_finish() to cleanup memory.
2016-02-26 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20160226
Merge with NetBSD make, pick up
o meta.c: allow meta file for makeDepend if makefiles want it.
2016-02-19 Simon J. Gerraty <sjg@bad.crufty.net>
* var.c: default .MAKE.SAVE_DOLLARS to FALSE
for backwards compatability.
* Makefile (MAKE_VERSION): 20160220
Merge with NetBSD make, pick up
o var.c: add knob to control handling of '$$' in :=
2016-02-18 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20160218
Merge with NetBSD make, pick up
o var.c: add .export-literal allows us to fix sys.clean-env.mk
post the changes to Var_Subst.
Var_Subst now takes flags, and does not consume '$$' in :=
2016-02-17 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20160217
Merge with NetBSD make, pick up
o var.c: preserve '$$' in :=
o parse.c: add .dinclude for handling included
makefile like .depend
2015-12-20 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20151220
Merge with NetBSD make, pick up
o suff.c: re-initialize suffNull when clearing suffixes.
2015-12-01 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20151201
Merge with NetBSD make, pick up
o cond.c: CondCvtArg: avoid access beyond end of empty buffer.
o meta.c: meta_oodate: use lstat(2) for checking link target
in case it is a symlink.
o var.c: avoid calling brk_string and Var_Export1 with empty
strings.
2015-11-26 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20151126
Merge with NetBSD make, pick up
o parse.c: ParseTrackInput don't access beyond
end of old value.
2015-10-22 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20151022
* Add support for BSD/OS which lacks inttypes.h
and really needs sys/param.h for sys/sysctl.h
also 'type' is not a shell builtin.
* var.c: eliminate uint32_t and need for inttypes.h
* main.c: PrintOnError flush stdout before run .ERROR
* parse.c: cope with _SC_PAGESIZE not being defined.
2015-10-20 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20151020
Merge with NetBSD make, pick up
o var.c: fix uninitialized var
2015-10-12 Simon J. Gerraty <sjg@bad.crufty.net>
* var.c: the conditional expressions used with ':?' can be
expensive, if already discarding do not evaluate or expand
anything.
2015-10-10 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20151010
Merge with NetBSD make, pick up
o Add Boolean wantit flag to Var_Subst and Var_Parse
when FALSE we know we are discarding the result and can
skip operations like Cmd_Exec.
2015-10-09 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20151009
Merge with NetBSD make, pick up
o var.c: don't check for NULL before free()
o meta.c: meta_oodate, do not hard code ignore of makeDependfile
2015-09-10 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20150910
Merge with NetBSD make, pick up
o main.c: with -w print Enter/Leaving messages for objdir too
if necessary.
o centralize shell metachar handling
* FILES: add metachar.[ch]
2015-06-06 Simon J. Gerraty <sjg@bad.crufty.net>
* Makefile (MAKE_VERSION): 20150606
Merge with NetBSD make, pick up
o make.1: document .OBJDIR target
|