1*6eef5f0cSAntonio Huete Jimenez2022-10-07 Simon J Gerraty <sjg@beast.crufty.net> 2*6eef5f0cSAntonio Huete Jimenez 3*6eef5f0cSAntonio Huete Jimenez * Makefile: Darwin and Linux can handle MANTARGET=man 4*6eef5f0cSAntonio Huete Jimenez 5*6eef5f0cSAntonio Huete Jimenez2022-09-28 Simon J Gerraty <sjg@beast.crufty.net> 6*6eef5f0cSAntonio Huete Jimenez 7*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220928 8*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 9*6eef5f0cSAntonio Huete Jimenez o fix more ignored returns from snprintf 10*6eef5f0cSAntonio Huete Jimenez o compile with higher warnings 11*6eef5f0cSAntonio Huete Jimenez 12*6eef5f0cSAntonio Huete Jimenez2022-09-26 Simon J Gerraty <sjg@beast.crufty.net> 13*6eef5f0cSAntonio Huete Jimenez 14*6eef5f0cSAntonio Huete Jimenez * main.c meta.c: do not ignore return from snprintf 15*6eef5f0cSAntonio Huete Jimenez 16*6eef5f0cSAntonio Huete Jimenez * meta.c strlcpy.c: we need prototype for strlcpy 17*6eef5f0cSAntonio Huete Jimenez 18*6eef5f0cSAntonio Huete Jimenez * sigcompat.c: fix unused function warnings 19*6eef5f0cSAntonio Huete Jimenez 20*6eef5f0cSAntonio Huete Jimenez2022-09-24 Simon J Gerraty <sjg@beast.crufty.net> 21*6eef5f0cSAntonio Huete Jimenez 22*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220924 23*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 24*6eef5f0cSAntonio Huete Jimenez o fix bug in .break reset of conditional depth 25*6eef5f0cSAntonio Huete Jimenez o overhaul and simplify tracking of conditional depth 26*6eef5f0cSAntonio Huete Jimenez 27*6eef5f0cSAntonio Huete Jimenez2022-09-17 Simon J Gerraty <sjg@beast.crufty.net> 28*6eef5f0cSAntonio Huete Jimenez 29*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220912 30*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 31*6eef5f0cSAntonio Huete Jimenez o man page updates 32*6eef5f0cSAntonio Huete Jimenez 33*6eef5f0cSAntonio Huete Jimenez2022-09-09 Simon J Gerraty <sjg@beast.crufty.net> 34*6eef5f0cSAntonio Huete Jimenez 35*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220909 36*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 37*6eef5f0cSAntonio Huete Jimenez o update unit-tests to handle deprecation of egrep 38*6eef5f0cSAntonio Huete Jimenez o cond.c: add more details to error message for numeric comparison 39*6eef5f0cSAntonio Huete Jimenez 40*6eef5f0cSAntonio Huete Jimenez * configure.in: allow for deprecation of egrep 41*6eef5f0cSAntonio Huete Jimenez 42*6eef5f0cSAntonio Huete Jimenez * Makefile: Linux can handle MANTARGET=man 43*6eef5f0cSAntonio Huete Jimenez 44*6eef5f0cSAntonio Huete Jimenez2022-09-03 Simon J Gerraty <sjg@beast.crufty.net> 45*6eef5f0cSAntonio Huete Jimenez 46*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220903 47*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 48*6eef5f0cSAntonio Huete Jimenez o job.c: fix handling of null bytes in output 49*6eef5f0cSAntonio Huete Jimenez 50*6eef5f0cSAntonio Huete Jimenez2022-09-02 Simon J Gerraty <sjg@beast.crufty.net> 51*6eef5f0cSAntonio Huete Jimenez 52*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220902 53*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 54*6eef5f0cSAntonio Huete Jimenez o Allow .break to terminate a .for loop early 55*6eef5f0cSAntonio Huete Jimenez 56*6eef5f0cSAntonio Huete Jimenez2022-09-01 Simon J Gerraty <sjg@beast.crufty.net> 57*6eef5f0cSAntonio Huete Jimenez 58*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220901 59*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 60*6eef5f0cSAntonio Huete Jimenez o var.c: fix out-of-bounds errors when parsing 61*6eef5f0cSAntonio Huete Jimenez 62*6eef5f0cSAntonio Huete Jimenez2022-08-24 Simon J Gerraty <sjg@beast.crufty.net> 63*6eef5f0cSAntonio Huete Jimenez 64*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220824 65*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 66*6eef5f0cSAntonio Huete Jimenez o var.c: revert change to modifier parsing that breaks 67*6eef5f0cSAntonio Huete Jimenez shell variable references within ':@var@body@' 68*6eef5f0cSAntonio Huete Jimenez o adjust unit-tests 69*6eef5f0cSAntonio Huete Jimenez 70*6eef5f0cSAntonio Huete Jimenez2022-08-18 Simon J Gerraty <sjg@beast.crufty.net> 71*6eef5f0cSAntonio Huete Jimenez 72*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220818 73*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 74*6eef5f0cSAntonio Huete Jimenez o fix exit status for '-q' (since 1994) 75*6eef5f0cSAntonio Huete Jimenez 76*6eef5f0cSAntonio Huete Jimenez2022-08-08 Simon J Gerraty <sjg@beast.crufty.net> 77*6eef5f0cSAntonio Huete Jimenez 78*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220808 79*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 80*6eef5f0cSAntonio Huete Jimenez o var.c: fix parsing of modifiers containing unbalanced subexpressions 81*6eef5f0cSAntonio Huete Jimenez extract parsing of ':D' and ':U' modifiers into separate function 82*6eef5f0cSAntonio Huete Jimenez 83*6eef5f0cSAntonio Huete Jimenez2022-07-26 Simon J Gerraty <sjg@beast.crufty.net> 84*6eef5f0cSAntonio Huete Jimenez 85*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220726 86*6eef5f0cSAntonio Huete Jimenez 87*6eef5f0cSAntonio Huete Jimenez * Auto-create objdir for bmake/unit-tests if appropriate 88*6eef5f0cSAntonio Huete Jimenez 89*6eef5f0cSAntonio Huete Jimenez2022-07-24 Simon J Gerraty <sjg@beast.crufty.net> 90*6eef5f0cSAntonio Huete Jimenez 91*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220724 92*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 93*6eef5f0cSAntonio Huete Jimenez o make.1: describe variable assignment and evaluation more precisely 94*6eef5f0cSAntonio Huete Jimenez o parse.c: fix out-of-bounds read when parsing an invalid line 95*6eef5f0cSAntonio Huete Jimenez o var.c: simplify return type of IsShortVarnameValid 96*6eef5f0cSAntonio Huete Jimenez 97*6eef5f0cSAntonio Huete Jimenez2022-06-12 Simon J Gerraty <sjg@beast.crufty.net> 98*6eef5f0cSAntonio Huete Jimenez 99*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220612 100*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 101*6eef5f0cSAntonio Huete Jimenez o allow to randomize build order of targets 102*6eef5f0cSAntonio Huete Jimenez .MAKE.MODE += randomize-targets can help uncover dependency bugs 103*6eef5f0cSAntonio Huete Jimenez within a makefile. 104*6eef5f0cSAntonio Huete Jimenez o compat.c: rename Compat_Run to Compat_MakeAll 105*6eef5f0cSAntonio Huete Jimenez o make.c: inline MakeBuildParent 106*6eef5f0cSAntonio Huete Jimenez inline make_abort, improve error details 107*6eef5f0cSAntonio Huete Jimenez o parse.c: reorganize Parse_Error 108*6eef5f0cSAntonio Huete Jimenez fix memory leak in wildcard targets and sources 109*6eef5f0cSAntonio Huete Jimenez separate cases in HandleDependencyTargetMundane 110*6eef5f0cSAntonio Huete Jimenez extract HandleSingleDependencyTargetMundane 111*6eef5f0cSAntonio Huete Jimenez rename loadfile to LoadFile 112*6eef5f0cSAntonio Huete Jimenez split IncludeFile into separate functions 113*6eef5f0cSAntonio Huete Jimenez condense code for searching a file in the paths 114*6eef5f0cSAntonio Huete Jimenez fix off-by-one error in buffer for .WAIT nodes 115*6eef5f0cSAntonio Huete Jimenez o str.c: condense Str_Match 116*6eef5f0cSAntonio Huete Jimenez make code for string matching syntactically more consistent 117*6eef5f0cSAntonio Huete Jimenez 118*6eef5f0cSAntonio Huete Jimenez2022-04-18 Simon J Gerraty <sjg@beast.crufty.net> 119*6eef5f0cSAntonio Huete Jimenez 120*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220418 121*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 122*6eef5f0cSAntonio Huete Jimenez o ignore '.POSIX:' if not in first non-comment line 123*6eef5f0cSAntonio Huete Jimenez of Makefile as specified by POSIX. 124*6eef5f0cSAntonio Huete Jimenez add unit-tests for above. 125*6eef5f0cSAntonio Huete Jimenez o meta.c: make it easier to find usage of identifiers 126*6eef5f0cSAntonio Huete Jimenez o targ.c: add .USEBEFORE to Targ_PrintType 127*6eef5f0cSAntonio Huete Jimenez 128*6eef5f0cSAntonio Huete Jimenez2022-04-14 Simon J Gerraty <sjg@beast.crufty.net> 129*6eef5f0cSAntonio Huete Jimenez 130*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220414 131*6eef5f0cSAntonio Huete Jimenez 132*6eef5f0cSAntonio Huete Jimenez * unit-tests/Makefile: simplify checks for shells with 133*6eef5f0cSAntonio Huete Jimenez BROKEN_TESTS, this helps with other Linux distros that 134*6eef5f0cSAntonio Huete Jimenez use dash. 135*6eef5f0cSAntonio Huete Jimenez 136*6eef5f0cSAntonio Huete Jimenez2022-03-30 Simon J Gerraty <sjg@beast.crufty.net> 137*6eef5f0cSAntonio Huete Jimenez 138*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220330 139*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 140*6eef5f0cSAntonio Huete Jimenez o var.c: fix spacing, and a typo in a test 141*6eef5f0cSAntonio Huete Jimenez 142*6eef5f0cSAntonio Huete Jimenez2022-03-26 Simon J Gerraty <sjg@beast.crufty.net> 143*6eef5f0cSAntonio Huete Jimenez 144*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220326 145*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 146*6eef5f0cSAntonio Huete Jimenez o parse.c: try to include 'posix.mk' the first time 147*6eef5f0cSAntonio Huete Jimenez .POSIX: is encountered, to allow for beter POSIX compliance. 148*6eef5f0cSAntonio Huete Jimenez o var.c: make debug logs more readable 149*6eef5f0cSAntonio Huete Jimenez prefer 'long long' over 'long' on 32-bit C99 platforms 150*6eef5f0cSAntonio Huete Jimenez fix crash on .undef of an environment variable 151*6eef5f0cSAntonio Huete Jimenez 152*6eef5f0cSAntonio Huete Jimenez2022-03-03 Simon J Gerraty <sjg@beast.crufty.net> 153*6eef5f0cSAntonio Huete Jimenez 154*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220303 155*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 156*6eef5f0cSAntonio Huete Jimenez o tell meta mode unit tests not to expect filemon 157*6eef5f0cSAntonio Huete Jimenez o cond.c: make debug logging for comparisons less technical 158*6eef5f0cSAntonio Huete Jimenez o lst.c: fix mem leak in Lst_Remove 159*6eef5f0cSAntonio Huete Jimenez o str.c: make code for string matching syntactically more consistent 160*6eef5f0cSAntonio Huete Jimenez o var.c: simplify ParseModifier_Match 161*6eef5f0cSAntonio Huete Jimenez 162*6eef5f0cSAntonio Huete Jimenez2022-02-14 Simon J Gerraty <sjg@beast.crufty.net> 163*6eef5f0cSAntonio Huete Jimenez 164*6eef5f0cSAntonio Huete Jimenez * unit-tests/Makefile: control MAKESYSPATH for deptgt-phony 165*6eef5f0cSAntonio Huete Jimenez 166*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220214 167*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 168*6eef5f0cSAntonio Huete Jimenez o cond.c: simplify control flow in CondParser_Comparison 169*6eef5f0cSAntonio Huete Jimenez o job.c: fix echoing of command with '-' in silent target in jobs mode 170*6eef5f0cSAntonio Huete Jimenez o main.c: prefix the warning about read-only .OBJDIR with a colon 171*6eef5f0cSAntonio Huete Jimenez o parse.c: remove redundant conditions 172*6eef5f0cSAntonio Huete Jimenez o var.c: simplify control flow in ModifyWord_SysVSubst 173*6eef5f0cSAntonio Huete Jimenez 174*6eef5f0cSAntonio Huete Jimenez2022-02-08 Simon J Gerraty <sjg@beast.crufty.net> 175*6eef5f0cSAntonio Huete Jimenez 176*6eef5f0cSAntonio Huete Jimenez * unit-tests/Makefile: disable opt-debug-x-trace on Linux if there 177*6eef5f0cSAntonio Huete Jimenez is any chance we have dash as .SHELL 178*6eef5f0cSAntonio Huete Jimenez 179*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220208 180*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 181*6eef5f0cSAntonio Huete Jimenez o more unit tests 182*6eef5f0cSAntonio Huete Jimenez o meta.c: use a variable to hold command line to be filtered 183*6eef5f0cSAntonio Huete Jimenez to avoid any side effects from content of command line. 184*6eef5f0cSAntonio Huete Jimenez 185*6eef5f0cSAntonio Huete Jimenez2022-02-04 Simon J Gerraty <sjg@beast.crufty.net> 186*6eef5f0cSAntonio Huete Jimenez 187*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220204 188*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 189*6eef5f0cSAntonio Huete Jimenez o use unsigned consistently for line numbers, avoid the need for %z 190*6eef5f0cSAntonio Huete Jimenez o parse.c: do not step off end of input in Parse_IsVar 191*6eef5f0cSAntonio Huete Jimenez when checking for target local variable assignments 192*6eef5f0cSAntonio Huete Jimenez 193*6eef5f0cSAntonio Huete Jimenez2022-02-02 Simon J Gerraty <sjg@beast.crufty.net> 194*6eef5f0cSAntonio Huete Jimenez 195*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220202 196*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 197*6eef5f0cSAntonio Huete Jimenez o remove redundant declaration of HashIter_Init 198*6eef5f0cSAntonio Huete Jimenez o make DEBUG0 simpler 199*6eef5f0cSAntonio Huete Jimenez 200*6eef5f0cSAntonio Huete Jimenez2022-01-30 Simon J Gerraty <sjg@beast.crufty.net> 201*6eef5f0cSAntonio Huete Jimenez 202*6eef5f0cSAntonio Huete Jimenez * cast gn->lineno to avoid %z 203*6eef5f0cSAntonio Huete Jimenez 204*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220130 205*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 206*6eef5f0cSAntonio Huete Jimenez o more unit tests 207*6eef5f0cSAntonio Huete Jimenez o make GNode lineno unsigned to please lint 208*6eef5f0cSAntonio Huete Jimenez o print location of recursive variable references in commands 209*6eef5f0cSAntonio Huete Jimenez o print "stack trace" (makefile includes) on fatal errors 210*6eef5f0cSAntonio Huete Jimenez o make.1: refine documentation for target local assignments 211*6eef5f0cSAntonio Huete Jimenez 212*6eef5f0cSAntonio Huete Jimenez2022-01-28 Simon J Gerraty <sjg@beast.crufty.net> 213*6eef5f0cSAntonio Huete Jimenez 214*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220128 215*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 216*6eef5f0cSAntonio Huete Jimenez o inline functions called only once 217*6eef5f0cSAntonio Huete Jimenez o for.c: clean up AddEscape for building the body of a .for loop 218*6eef5f0cSAntonio Huete Jimenez o hash.c: merge duplicate code for finding an entry in a hash table 219*6eef5f0cSAntonio Huete Jimenez replace HashEntry_KeyEquals with strncmp 220*6eef5f0cSAntonio Huete Jimenez o make.1: document quirks of target local variable assignments. 221*6eef5f0cSAntonio Huete Jimenez o parse.c: cleanup white-space 222*6eef5f0cSAntonio Huete Jimenez 223*6eef5f0cSAntonio Huete Jimenez2022-01-26 Simon J Gerraty <sjg@beast.crufty.net> 224*6eef5f0cSAntonio Huete Jimenez 225*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220126 226*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 227*6eef5f0cSAntonio Huete Jimenez o allow setting target local variables 228*6eef5f0cSAntonio Huete Jimenez o more unit tests 229*6eef5f0cSAntonio Huete Jimenez o add missing newline after "cannot continue" message 230*6eef5f0cSAntonio Huete Jimenez o meta.c: clean up eat_dots 231*6eef5f0cSAntonio Huete Jimenez o parse.c: fix filename in warning about duplicate script 232*6eef5f0cSAntonio Huete Jimenez o var.c: when expanding nested variables, check simple things first 233*6eef5f0cSAntonio Huete Jimenez 234*6eef5f0cSAntonio Huete Jimenez2022-01-16 Simon J Gerraty <sjg@beast.crufty.net> 235*6eef5f0cSAntonio Huete Jimenez 236*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220116 237*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 238*6eef5f0cSAntonio Huete Jimenez o fix for unit-tests/varname-makeflags on non-BSD systems 239*6eef5f0cSAntonio Huete Jimenez o use Var_Exists rather than Var_Value where appropriate 240*6eef5f0cSAntonio Huete Jimenez o remove unnecessary functions for expanding variable names 241*6eef5f0cSAntonio Huete Jimenez o cond.c: inline EvalBare 242*6eef5f0cSAntonio Huete Jimenez o main.c: lint cleanup 243*6eef5f0cSAntonio Huete Jimenez o parse.c: condense code in Parse_IsVar 244*6eef5f0cSAntonio Huete Jimenez use islower for parsing directives (none have upper case) 245*6eef5f0cSAntonio Huete Jimenez 246*6eef5f0cSAntonio Huete Jimenez2022-01-12 Simon J Gerraty <sjg@beast.crufty.net> 247*6eef5f0cSAntonio Huete Jimenez 248*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220112 249*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 250*6eef5f0cSAntonio Huete Jimenez o meta.c: add .MAKE.META.CMP_FILTER for filtering commands before 251*6eef5f0cSAntonio Huete Jimenez comparion, rarely needed but useful when it is. 252*6eef5f0cSAntonio Huete Jimenez 253*6eef5f0cSAntonio Huete Jimenez2022-01-10 Simon J Gerraty <sjg@beast.crufty.net> 254*6eef5f0cSAntonio Huete Jimenez 255*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220110 256*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 257*6eef5f0cSAntonio Huete Jimenez o inline Buf_Clear 258*6eef5f0cSAntonio Huete Jimenez o remove redundant braces 259*6eef5f0cSAntonio Huete Jimenez o rename and inline Targ_Precious 260*6eef5f0cSAntonio Huete Jimenez o cond.c: remove redundant initializer in CondParser_ComparisonOrLeaf 261*6eef5f0cSAntonio Huete Jimenez o for.c: clean up handling of .for loops 262*6eef5f0cSAntonio Huete Jimenez fix reported line numbers of continuation lines 263*6eef5f0cSAntonio Huete Jimenez add details about .for loop variables to stack traces 264*6eef5f0cSAntonio Huete Jimenez o job.c: reduce code for initializing error handling in shell 265*6eef5f0cSAntonio Huete Jimenez o main.c: in Cmd_Exec, return error message instead of format string 266*6eef5f0cSAntonio Huete Jimenez have as few statements as possible between va_start and va_end 267*6eef5f0cSAntonio Huete Jimenez add debug logging for capturing the output of external commands 268*6eef5f0cSAntonio Huete Jimenez o make.c: use consistent variable names for varargs 269*6eef5f0cSAntonio Huete Jimenez o make_malloc.c: remove duplicate code from bmake_strdup 270*6eef5f0cSAntonio Huete Jimenez o parse.c: add missing printflike annotations 271*6eef5f0cSAntonio Huete Jimenez remove redundant lines from stack traces 272*6eef5f0cSAntonio Huete Jimenez fix stack traces in -dp mode 273*6eef5f0cSAntonio Huete Jimenez reduce confusing code in ParseForLoop 274*6eef5f0cSAntonio Huete Jimenez fix line number in debug log after returning from a file 275*6eef5f0cSAntonio Huete Jimenez rename IFile and its fields to match their actual content 276*6eef5f0cSAntonio Huete Jimenez clean up ParseDependencySources 277*6eef5f0cSAntonio Huete Jimenez o var.c: shorten ApplyModifier_Assign 278*6eef5f0cSAntonio Huete Jimenez rename is_shell_metachar, fix character conversion warning 279*6eef5f0cSAntonio Huete Jimenez merge calls to ApplyModifier_Time 280*6eef5f0cSAntonio Huete Jimenez merge duplicate code for modifiers 'gmtime' and 'localtime' 281*6eef5f0cSAntonio Huete Jimenez 282*6eef5f0cSAntonio Huete Jimenez2022-01-04 Simon J Gerraty <sjg@beast.crufty.net> 283*6eef5f0cSAntonio Huete Jimenez 284*6eef5f0cSAntonio Huete Jimenez * parse.c: loadfile restore extra byte in buffer. 285*6eef5f0cSAntonio Huete Jimenez 286*6eef5f0cSAntonio Huete Jimenez2022-01-01 Simon J Gerraty <sjg@beast.crufty.net> 287*6eef5f0cSAntonio Huete Jimenez 288*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20220101 289*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 290*6eef5f0cSAntonio Huete Jimenez o more unit-tests 291*6eef5f0cSAntonio Huete Jimenez o remove unnecessary words from command line options in CmdOpts 292*6eef5f0cSAntonio Huete Jimenez o rename eunlink to unlink_file 293*6eef5f0cSAntonio Huete Jimenez o cond.c: make ParseWord in condition parser simpler 294*6eef5f0cSAntonio Huete Jimenez internally return false for irrelevant leaves in conditions 295*6eef5f0cSAntonio Huete Jimenez replace table for function lookup in conditions with simple code 296*6eef5f0cSAntonio Huete Jimenez merge duplicate types CondEvalResult and CondResult 297*6eef5f0cSAntonio Huete Jimenez o for.c: clean up handling of .for loops and .include directives 298*6eef5f0cSAntonio Huete Jimenez o main.c: constify cached_realpath 299*6eef5f0cSAntonio Huete Jimenez clean up Cmd_Exec 300*6eef5f0cSAntonio Huete Jimenez o parse.c: sync API documentation 301*6eef5f0cSAntonio Huete Jimenez fix error message when reading more than 1 GB from stdin 302*6eef5f0cSAntonio Huete Jimenez clean up parsing of makefiles 303*6eef5f0cSAntonio Huete Jimenez fix line number in error message about open conditionals 304*6eef5f0cSAntonio Huete Jimenez unexport types VarAssignOp and VarAssign 305*6eef5f0cSAntonio Huete Jimenez clean up function names 306*6eef5f0cSAntonio Huete Jimenez remove redundant parameters in dependency parsing functions 307*6eef5f0cSAntonio Huete Jimenez reduce scope of the list of wildcard target names 308*6eef5f0cSAntonio Huete Jimenez extract OP_NOTARGET into separate function 309*6eef5f0cSAntonio Huete Jimenez clean up variable names for parsing dependency lines 310*6eef5f0cSAntonio Huete Jimenez make debug logging a bit more human-friendly 311*6eef5f0cSAntonio Huete Jimenez o var.c: condense code in ApplyModifier_Assign 312*6eef5f0cSAntonio Huete Jimenez 313*6eef5f0cSAntonio Huete Jimenez2021-12-21 Simon J Gerraty <sjg@beast.crufty.net> 314*6eef5f0cSAntonio Huete Jimenez 315*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211221 316*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 317*6eef5f0cSAntonio Huete Jimenez o more unit-tests 318*6eef5f0cSAntonio Huete Jimenez o style cleanup 319*6eef5f0cSAntonio Huete Jimenez o in CLEANUP mode, free interned strings at the very end 320*6eef5f0cSAntonio Huete Jimenez o fix memory leak for filenames in .for loops 321*6eef5f0cSAntonio Huete Jimenez o buf.c: avoid memory leak 322*6eef5f0cSAntonio Huete Jimenez o cond.c: condense CondParser_ComparisonOp 323*6eef5f0cSAntonio Huete Jimenez o hash.c: change return type of HashTable_Set to void 324*6eef5f0cSAntonio Huete Jimenez o job.c: change return type of Compat_RunCommand from int to bool 325*6eef5f0cSAntonio Huete Jimenez o main.c: remove bmake_free 326*6eef5f0cSAntonio Huete Jimenez o parse.c: condense repetetive code in ParseDirective 327*6eef5f0cSAntonio Huete Jimenez remove dead code for handling traditional include directives 328*6eef5f0cSAntonio Huete Jimenez clean up parsing of variable assignments 329*6eef5f0cSAntonio Huete Jimenez remove unreachable code for parsing the dependency operator 330*6eef5f0cSAntonio Huete Jimenez clean up loading of files 331*6eef5f0cSAntonio Huete Jimenez fix memory leak in IncludeFile 332*6eef5f0cSAntonio Huete Jimenez o var.c: fix memory leak when parsing a variable name 333*6eef5f0cSAntonio Huete Jimenez fix memory leak from ${.SUFFIXES} 334*6eef5f0cSAntonio Huete Jimenez reduce memory allocation in modifier ':?' and ':C' 335*6eef5f0cSAntonio Huete Jimenez condense RegexReplace for the modifier ':C' and avoid strlen 336*6eef5f0cSAntonio Huete Jimenez merge duplicate code for memory handling in Var_Parse 337*6eef5f0cSAntonio Huete Jimenez distinguish between short-lived and environment variables 338*6eef5f0cSAntonio Huete Jimenez rename VarFreeEnv to VarFreeShortLived 339*6eef5f0cSAntonio Huete Jimenez 340*6eef5f0cSAntonio Huete Jimenez2021-12-15 Simon J Gerraty <sjg@beast.crufty.net> 341*6eef5f0cSAntonio Huete Jimenez 342*6eef5f0cSAntonio Huete Jimenez * cond.c: fix mem leak in CondParser_Leaf 343*6eef5f0cSAntonio Huete Jimenez 344*6eef5f0cSAntonio Huete Jimenez2021-12-12 Simon J Gerraty <sjg@beast.crufty.net> 345*6eef5f0cSAntonio Huete Jimenez 346*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211212 347*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 348*6eef5f0cSAntonio Huete Jimenez o rename Parse_SetInput to Parse_PushInput 349*6eef5f0cSAntonio Huete Jimenez o remove remove period from end of error messages and warnings 350*6eef5f0cSAntonio Huete Jimenez to be more consistent 351*6eef5f0cSAntonio Huete Jimenez o arch.c: use simpler memory management for parsing archive members 352*6eef5f0cSAntonio Huete Jimenez o cond.c: rework and reduce recursion 353*6eef5f0cSAntonio Huete Jimenez o for.c: rename some functions to better reflect purpose 354*6eef5f0cSAntonio Huete Jimenez o suff.c: add Suff_NamesStr to provide .SUFFIXES as a string. 355*6eef5f0cSAntonio Huete Jimenez o var.c: in parse errors, mark whitespace more clearly 356*6eef5f0cSAntonio Huete Jimenez inline ParseEmptyArg into CondParser_FuncCallEmpty 357*6eef5f0cSAntonio Huete Jimenez minimize calls to LazyBuf_Get in ParseVarnameLong 358*6eef5f0cSAntonio Huete Jimenez treat .SUFFIXES as a read-only variable 359*6eef5f0cSAntonio Huete Jimenez 360*6eef5f0cSAntonio Huete Jimenez2021-12-07 Simon J Gerraty <sjg@beast.crufty.net> 361*6eef5f0cSAntonio Huete Jimenez 362*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211207 363*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 364*6eef5f0cSAntonio Huete Jimenez o inline HashIter_Init 365*6eef5f0cSAntonio Huete Jimenez o parse.c: inline common subexpression in ParseRawLine 366*6eef5f0cSAntonio Huete Jimenez o var.c: merge branches for modifiers ':D' and ':U' 367*6eef5f0cSAntonio Huete Jimenez extract common code into Expr_Words 368*6eef5f0cSAntonio Huete Jimenez extract common code into Expr_Str 369*6eef5f0cSAntonio Huete Jimenez move low-level implementation details out of Var_Parse 370*6eef5f0cSAntonio Huete Jimenez 371*6eef5f0cSAntonio Huete Jimenez2021-12-06 Simon J Gerraty <sjg@beast.crufty.net> 372*6eef5f0cSAntonio Huete Jimenez 373*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211206 374*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 375*6eef5f0cSAntonio Huete Jimenez o add unit-tests/varmod-loop-delete 376*6eef5f0cSAntonio Huete Jimenez o for.c: inline Str_Words - reduce memory allocation 377*6eef5f0cSAntonio Huete Jimenez o parse.c: do not try to expand fixed variable names 378*6eef5f0cSAntonio Huete Jimenez only allocate the name of an included file if necessary 379*6eef5f0cSAntonio Huete Jimenez clean up ParseInclude 380*6eef5f0cSAntonio Huete Jimenez o var.c: fix use-after-free in modifier ':@' 381*6eef5f0cSAntonio Huete Jimenez save a memory allocation in each modifier ':O' and ':u' 382*6eef5f0cSAntonio Huete Jimenez save a memory allocation in the modifier ':[...]' 383*6eef5f0cSAntonio Huete Jimenez in UnexportVars, replace Str_Words with Substring_Words to 384*6eef5f0cSAntonio Huete Jimenez reduce allocations and copying. 385*6eef5f0cSAntonio Huete Jimenez 386*6eef5f0cSAntonio Huete Jimenez2021-12-04 Simon J Gerraty <sjg@beast.crufty.net> 387*6eef5f0cSAntonio Huete Jimenez 388*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211204 389*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 390*6eef5f0cSAntonio Huete Jimenez o flesh out a number of tests 391*6eef5f0cSAntonio Huete Jimenez o replace enums with bitfields, this simplifies a lot of code. 392*6eef5f0cSAntonio Huete Jimenez o var.c: refactor ParseModifierPartSubst 393*6eef5f0cSAntonio Huete Jimenez 394*6eef5f0cSAntonio Huete Jimenez2021-10-24 Simon J Gerraty <sjg@beast.crufty.net> 395*6eef5f0cSAntonio Huete Jimenez 396*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211024 397*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 398*6eef5f0cSAntonio Huete Jimenez o Punt on write errors - ENOSPC etc. 399*6eef5f0cSAntonio Huete Jimenez 400*6eef5f0cSAntonio Huete Jimenez2021-10-22 Simon J Gerraty <sjg@beast.crufty.net> 401*6eef5f0cSAntonio Huete Jimenez 402*6eef5f0cSAntonio Huete Jimenez * configure.in: use_defshell, set both DEFSHELL_INDEX 403*6eef5f0cSAntonio Huete Jimenez and defshell_path if appropriate. 404*6eef5f0cSAntonio Huete Jimenez This makes it easier to use say the KSH specification with 405*6eef5f0cSAntonio Huete Jimenez and alternate path for the shell. 406*6eef5f0cSAntonio Huete Jimenez 407*6eef5f0cSAntonio Huete Jimenez * configure.in compat.c: for SCO we need to force UseShell 408*6eef5f0cSAntonio Huete Jimenez 409*6eef5f0cSAntonio Huete Jimenez * configure.in: SCO /bin/sh is not usable, provide a list of 410*6eef5f0cSAntonio Huete Jimenez alternatives for use as .SHELL. 411*6eef5f0cSAntonio Huete Jimenez We still have to mark some tests as broken, plus more if we end up 412*6eef5f0cSAntonio Huete Jimenez with ksh as .SHELL. 413*6eef5f0cSAntonio Huete Jimenez Issue a warning about skipped tests. 414*6eef5f0cSAntonio Huete Jimenez 415*6eef5f0cSAntonio Huete Jimenez * boot-strap: leave TOOL_DIFF to configure 416*6eef5f0cSAntonio Huete Jimenez 417*6eef5f0cSAntonio Huete Jimenez * configure.in: on SCO native cc is not usable, 418*6eef5f0cSAntonio Huete Jimenez gcc is to be found in /usr/gnu/bin 419*6eef5f0cSAntonio Huete Jimenez and while ancient is at least able to compile bmake. 420*6eef5f0cSAntonio Huete Jimenez Thus we add /usr/gnu/bin to PATH if it exists, and later 421*6eef5f0cSAntonio Huete Jimenez check if $CC would have been found via $PATH. 422*6eef5f0cSAntonio Huete Jimenez If not we set CC to the full path of $CC. 423*6eef5f0cSAntonio Huete Jimenez Also gnu diff is known to support -u, so if it exists use it. 424*6eef5f0cSAntonio Huete Jimenez 425*6eef5f0cSAntonio Huete Jimenez * configure.in: move getopt to AC_REPLACE_FUNCS 426*6eef5f0cSAntonio Huete Jimenez also add AC_C_INLINE - in an attempt to compile using 427*6eef5f0cSAntonio Huete Jimenez native cc on SCO. 428*6eef5f0cSAntonio Huete Jimenez 429*6eef5f0cSAntonio Huete Jimenez * configure.in: check for stresep as well as strsep, since we 430*6eef5f0cSAntonio Huete Jimenez define the later to the former if necessary, and if we have to 431*6eef5f0cSAntonio Huete Jimenez provide stresep we also need to provide a prototype. 432*6eef5f0cSAntonio Huete Jimenez 433*6eef5f0cSAntonio Huete Jimenez * configure.in: we no longer need to worry about 434*6eef5f0cSAntonio Huete Jimenez sys/cdefs.h providing __RCSID which simplifies things quite a bit. 435*6eef5f0cSAntonio Huete Jimenez 436*6eef5f0cSAntonio Huete Jimenez * make.h: make sure we have __RCSID 437*6eef5f0cSAntonio Huete Jimenez 438*6eef5f0cSAntonio Huete Jimenez * unit-tests/Makefile.config.in: add TOOL_DIFF so configure 439*6eef5f0cSAntonio Huete Jimenez can control it. 440*6eef5f0cSAntonio Huete Jimenez 441*6eef5f0cSAntonio Huete Jimenez2021-10-20 Simon J Gerraty <sjg@beast.crufty.net> 442*6eef5f0cSAntonio Huete Jimenez 443*6eef5f0cSAntonio Huete Jimenez * VERSION: 20211020 444*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 445*6eef5f0cSAntonio Huete Jimenez o confirm sync of unit-tests 446*6eef5f0cSAntonio Huete Jimenez 447*6eef5f0cSAntonio Huete Jimenez2021-10-18 Simon J Gerraty <sjg@beast.crufty.net> 448*6eef5f0cSAntonio Huete Jimenez 449*6eef5f0cSAntonio Huete Jimenez * configure.in: check if timezone Europe/Berlin is supported 450*6eef5f0cSAntonio Huete Jimenez if not try UTC-1 451*6eef5f0cSAntonio Huete Jimenez * configure.in: if .OBJDIR is $srcdir/obj we need to create a 452*6eef5f0cSAntonio Huete Jimenez symlink unit-tests -> ../unit-tests/obj so that 453*6eef5f0cSAntonio Huete Jimenez unit-tests/Makefile.config is put in the right place. 454*6eef5f0cSAntonio Huete Jimenez * refine filtering of .OBJDIR in unit-tests 455*6eef5f0cSAntonio Huete Jimenez 456*6eef5f0cSAntonio Huete Jimenez2021-10-16 Simon J Gerraty <sjg@beast.crufty.net> 457*6eef5f0cSAntonio Huete Jimenez 458*6eef5f0cSAntonio Huete Jimenez * Fix unit-tests on Minix 3.2.0 459*6eef5f0cSAntonio Huete Jimenez o job.c: do not punt if read of token pipe fails for EAGAIN. 460*6eef5f0cSAntonio Huete Jimenez On Minix at least, we are not ready to read the childExitJob pipe 461*6eef5f0cSAntonio Huete Jimenez when poll says we are. 462*6eef5f0cSAntonio Huete Jimenez There should actually be no reason for this pipe to be 463*6eef5f0cSAntonio Huete Jimenez non-blocking, but while that works fine on {Net,Free}BSD it 464*6eef5f0cSAntonio Huete Jimenez breaks another test case on Minix. 465*6eef5f0cSAntonio Huete Jimenez o unit-tests/Makefile: deal with variants of error messages 466*6eef5f0cSAntonio Huete Jimenez and use of obj as .OBJDIR 467*6eef5f0cSAntonio Huete Jimenez 468*6eef5f0cSAntonio Huete Jimenez2021-10-14 Simon J Gerraty <sjg@beast.crufty.net> 469*6eef5f0cSAntonio Huete Jimenez 470*6eef5f0cSAntonio Huete Jimenez * configure.in: add sigaction to AC_REPLACE_FUNCS 471*6eef5f0cSAntonio Huete Jimenez we also need to check for sigaddset etc just for the benefit of 472*6eef5f0cSAntonio Huete Jimenez sigact.c 473*6eef5f0cSAntonio Huete Jimenez 474*6eef5f0cSAntonio Huete Jimenez * Add sigact.c as sigaction.c so this "just works". 475*6eef5f0cSAntonio Huete Jimenez This should have been done back when bmake_signal started using 476*6eef5f0cSAntonio Huete Jimenez sigaction (I only just noticed that sigact.c wasn't here ;-) 477*6eef5f0cSAntonio Huete Jimenez Note: I no longer have access to any system where this would matter. 478*6eef5f0cSAntonio Huete Jimenez 479*6eef5f0cSAntonio Huete Jimenez2021-10-13 Simon J Gerraty <sjg@beast.crufty.net> 480*6eef5f0cSAntonio Huete Jimenez 481*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211011 482*6eef5f0cSAntonio Huete Jimenez 483*6eef5f0cSAntonio Huete Jimenez * Makefile: cleanup a little 484*6eef5f0cSAntonio Huete Jimenez 485*6eef5f0cSAntonio Huete Jimenez * configure.in: check for sigsetmask 486*6eef5f0cSAntonio Huete Jimenez 487*6eef5f0cSAntonio Huete Jimenez2021-10-01 Simon J Gerraty <sjg@beast.crufty.net> 488*6eef5f0cSAntonio Huete Jimenez 489*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20211001 490*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 491*6eef5f0cSAntonio Huete Jimenez o reduce locations reducing text size 492*6eef5f0cSAntonio Huete Jimenez o remove unnecessary const 493*6eef5f0cSAntonio Huete Jimenez o cond.c: fix lint warning on i386 494*6eef5f0cSAntonio Huete Jimenez do not allow unquoted 'left == right' after modifier ':?' 495*6eef5f0cSAntonio Huete Jimenez o hash.c: fix build for DEBUG_HASH_LOOKUP 496*6eef5f0cSAntonio Huete Jimenez o var.c: fix memory leak in error case of the ':?' modifier 497*6eef5f0cSAntonio Huete Jimenez 498*6eef5f0cSAntonio Huete Jimenez2021-09-11 Simon J Gerraty <sjg@beast.crufty.net> 499*6eef5f0cSAntonio Huete Jimenez 500*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210911 501*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 502*6eef5f0cSAntonio Huete Jimenez o var.c: replace remaining ModChain_ShouldEval with Expr_ShouldEval 503*6eef5f0cSAntonio Huete Jimenez 504*6eef5f0cSAntonio Huete Jimenez2021-09-08 Simon J Gerraty <sjg@beast.crufty.net> 505*6eef5f0cSAntonio Huete Jimenez 506*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210906 507*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 508*6eef5f0cSAntonio Huete Jimenez o more unit tests 509*6eef5f0cSAntonio Huete Jimenez o lint cleanup 510*6eef5f0cSAntonio Huete Jimenez o rename some functions to better fit purpose 511*6eef5f0cSAntonio Huete Jimenez o for.c: cleanup - remove unnecessary optimization 512*6eef5f0cSAntonio Huete Jimenez fix embedded newlines 513*6eef5f0cSAntonio Huete Jimenez o parse.c: correct case for CVS/RCS 514*6eef5f0cSAntonio Huete Jimenez 515*6eef5f0cSAntonio Huete Jimenez2021-08-11 Simon J Gerraty <sjg@beast.crufty.net> 516*6eef5f0cSAntonio Huete Jimenez 517*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210808 518*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 519*6eef5f0cSAntonio Huete Jimenez o var.c: remove redundant initialization in ApplyModifier_Order 520*6eef5f0cSAntonio Huete Jimenez 521*6eef5f0cSAntonio Huete Jimenez * mk/options.mk: issue warning for incorrect usage 522*6eef5f0cSAntonio Huete Jimenez 523*6eef5f0cSAntonio Huete Jimenez2021-08-03 Simon J Gerraty <sjg@beast.crufty.net> 524*6eef5f0cSAntonio Huete Jimenez 525*6eef5f0cSAntonio Huete Jimenez * var.c: use long for :On if we don't have a 64bit int type 526*6eef5f0cSAntonio Huete Jimenez 527*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210803 528*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 529*6eef5f0cSAntonio Huete Jimenez o rework varmod-order tests to avoid qsort instability 530*6eef5f0cSAntonio Huete Jimenez o make.1: clarify :On entry 531*6eef5f0cSAntonio Huete Jimenez 532*6eef5f0cSAntonio Huete Jimenez2021-07-31 Simon J Gerraty <sjg@beast.crufty.net> 533*6eef5f0cSAntonio Huete Jimenez 534*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210731 535*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 536*6eef5f0cSAntonio Huete Jimenez o fix some lint issues 537*6eef5f0cSAntonio Huete Jimenez o more unit tests 538*6eef5f0cSAntonio Huete Jimenez o var.c: rework of ApplyModifier_Order 539*6eef5f0cSAntonio Huete Jimenez 540*6eef5f0cSAntonio Huete Jimenez2021-07-30 Simon J Gerraty <sjg@beast.crufty.net> 541*6eef5f0cSAntonio Huete Jimenez 542*6eef5f0cSAntonio Huete Jimenez * util.c: add strto*l if HAVE_STRTO*L not defined 543*6eef5f0cSAntonio Huete Jimenez 544*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210730 545*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 546*6eef5f0cSAntonio Huete Jimenez o var.c: add :On and :Orn for numeric sort 547*6eef5f0cSAntonio Huete Jimenez disabled if no 64bit type available. 548*6eef5f0cSAntonio Huete Jimenez o _strtol.h: to implement strto*l functions 549*6eef5f0cSAntonio Huete Jimenez 550*6eef5f0cSAntonio Huete Jimenez2021-07-04 Simon J Gerraty <sjg@beast.crufty.net> 551*6eef5f0cSAntonio Huete Jimenez 552*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210704 553*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 554*6eef5f0cSAntonio Huete Jimenez o unit-tests: fix some tests to be more portable 555*6eef5f0cSAntonio Huete Jimenez - job-output-null not all shells do the same number of write calls 556*6eef5f0cSAntonio Huete Jimenez - objdir-writable if TMPDIR is set; /tmp may not be usable 557*6eef5f0cSAntonio Huete Jimenez 558*6eef5f0cSAntonio Huete Jimenez2021-07-01 Simon J Gerraty <sjg@beast.crufty.net> 559*6eef5f0cSAntonio Huete Jimenez 560*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210701 561*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 562*6eef5f0cSAntonio Huete Jimenez o unit-tests: allow for BROKEN_TESTS to list TESTS to be skipped; 563*6eef5f0cSAntonio Huete Jimenez some tests just cannot work in some environments. 564*6eef5f0cSAntonio Huete Jimenez o buf.c: simpler upper bound for length in Buf_AddInt 565*6eef5f0cSAntonio Huete Jimenez o cond.c: fix grammar in error message for malformed conditional 566*6eef5f0cSAntonio Huete Jimenez o for.c: prevent newline injection (from ${.newline}) in .for loops 567*6eef5f0cSAntonio Huete Jimenez o var.c: use more practical data type in RegexReplace 568*6eef5f0cSAntonio Huete Jimenez (avoid need for %zu) 569*6eef5f0cSAntonio Huete Jimenez extract RegexReplace from ModifyWord_SubstRegex 570*6eef5f0cSAntonio Huete Jimenez 571*6eef5f0cSAntonio Huete Jimenez2021-06-21 Simon J Gerraty <sjg@beast.crufty.net> 572*6eef5f0cSAntonio Huete Jimenez 573*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210621 574*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 575*6eef5f0cSAntonio Huete Jimenez o var.c: only report error for unmatched regex subexpression 576*6eef5f0cSAntonio Huete Jimenez when linting (-dL) since we cannot tell when an unmatched 577*6eef5f0cSAntonio Huete Jimenez subexpression is an expected result. 578*6eef5f0cSAntonio Huete Jimenez o move unmatched regex subexpression tests to 579*6eef5f0cSAntonio Huete Jimenez varmod-subst-regex.mk and enable strict (lint) mode 580*6eef5f0cSAntonio Huete Jimenez 581*6eef5f0cSAntonio Huete Jimenez2021-06-16 Simon J Gerraty <sjg@beast.crufty.net> 582*6eef5f0cSAntonio Huete Jimenez 583*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210616 584*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 585*6eef5f0cSAntonio Huete Jimenez o more unit tests 586*6eef5f0cSAntonio Huete Jimenez o cond.c: rename If_Eval to EvalBare 587*6eef5f0cSAntonio Huete Jimenez improve function names for parsing conditions 588*6eef5f0cSAntonio Huete Jimenez o job.c: fix error handling of targets that cannot be made 589*6eef5f0cSAntonio Huete Jimenez o var.c: uncompress code in ApplyModifier_Unique 590*6eef5f0cSAntonio Huete Jimenez 591*6eef5f0cSAntonio Huete Jimenez2021-05-18 Simon J Gerraty <sjg@beast.crufty.net> 592*6eef5f0cSAntonio Huete Jimenez 593*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210518 594*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 595*6eef5f0cSAntonio Huete Jimenez o fix unit-tests/opt-chdir to cope with /nonexistent existing. 596*6eef5f0cSAntonio Huete Jimenez o job.c: Print -de error information when running multiple jobs 597*6eef5f0cSAntonio Huete Jimenez 598*6eef5f0cSAntonio Huete Jimenez2021-04-20 Simon J Gerraty <sjg@beast.crufty.net> 599*6eef5f0cSAntonio Huete Jimenez 600*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210420 601*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 602*6eef5f0cSAntonio Huete Jimenez o use C99 bool type 603*6eef5f0cSAntonio Huete Jimenez o convert VarEvalFlags back into an enum 604*6eef5f0cSAntonio Huete Jimenez o cond.c: do not complain when skipping the condition 'no >= 10' 605*6eef5f0cSAntonio Huete Jimenez o hash.c: avoid allocating memory for simple variable names 606*6eef5f0cSAntonio Huete Jimenez o job.c: use distinct wording for writing to the shell commands file 607*6eef5f0cSAntonio Huete Jimenez remove type name for the abort status in job handling 608*6eef5f0cSAntonio Huete Jimenez rename PrintOutput to PrintFilteredOutput to avoid confusion 609*6eef5f0cSAntonio Huete Jimenez o main.c: avoid double slash in name of temporary directory 610*6eef5f0cSAntonio Huete Jimenez o var.c: use straight quotes for error 'Bad conditional expression' 611*6eef5f0cSAntonio Huete Jimenez reduce memory allocations in the modifiers ':D' and ':U' 612*6eef5f0cSAntonio Huete Jimenez rename members of ModifyWord_LoopArgs 613*6eef5f0cSAntonio Huete Jimenez clean up pattern flags for the modifiers ':S' and ':C' 614*6eef5f0cSAntonio Huete Jimenez reduce memory allocation and strlen calls in modifier ':from=to' 615*6eef5f0cSAntonio Huete Jimenez in the ':Q' modifier, only allocate memory if necessary 616*6eef5f0cSAntonio Huete Jimenez improve performance for LazyBuf 617*6eef5f0cSAntonio Huete Jimenez remove redundant parameter from ParseVarnameLong 618*6eef5f0cSAntonio Huete Jimenez migrate ParseModifierPart to use Substring 619*6eef5f0cSAntonio Huete Jimenez avoid unnecessary calls to strlen when evaluating modifiers 620*6eef5f0cSAntonio Huete Jimenez migrate ModifyWord functions to use Substring 621*6eef5f0cSAntonio Huete Jimenez migrate handling of the modifier ':S,from,to,' to Substring 622*6eef5f0cSAntonio Huete Jimenez reduce debug logging and memory allocation for ${:U...} 623*6eef5f0cSAntonio Huete Jimenez reduce verbosity of the -dv debug logging for standard cases 624*6eef5f0cSAntonio Huete Jimenez clean up debug logging for ':M' and ':N' 625*6eef5f0cSAntonio Huete Jimenez disallow '$' in the variable name of the modifier ':@' 626*6eef5f0cSAntonio Huete Jimenez simplify access to the name of an expression during evaluation 627*6eef5f0cSAntonio Huete Jimenez 628*6eef5f0cSAntonio Huete Jimenez2021-03-30 Simon J Gerraty <sjg@beast.crufty.net> 629*6eef5f0cSAntonio Huete Jimenez 630*6eef5f0cSAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210330 631*6eef5f0cSAntonio Huete Jimenez Merge with NetBSD make, pick up 632*6eef5f0cSAntonio Huete Jimenez o replace enum bit-field with struct bit-field for VarEvalFlags 633*6eef5f0cSAntonio Huete Jimenez o rename VARE_NONE to VARE_PARSE_ONLY 634*6eef5f0cSAntonio Huete Jimenez o var.c: rename ApplyModifiersState to ModChain 635*6eef5f0cSAntonio Huete Jimenez fix double varname expansion in the variable modifier '::=' 636*6eef5f0cSAntonio Huete Jimenez change debug log for variable evaluation flags to lowercase 637*6eef5f0cSAntonio Huete Jimenez 638ec533708SSascha Wildner2021-03-14 Simon J Gerraty <sjg@beast.crufty.net> 639ec533708SSascha Wildner 640ec533708SSascha Wildner * VERSION (_MAKE_VERSION): 20210314 641ec533708SSascha Wildner Merge with NetBSD make, pick up 642ec533708SSascha Wildner o var.c: avoid evaluating many modifiers in parse only mode 643ec533708SSascha Wildner in strict mode (-dL) many variable references are parsed twice, 644ec533708SSascha Wildner the first time just to report parse errors early, so we want to 645ec533708SSascha Wildner avoid side effects and wasted effort to the extent possible. 646ec533708SSascha Wildner 647ec533708SSascha Wildner2021-02-26 Simon J Gerraty <sjg@beast.crufty.net> 648ec533708SSascha Wildner 649ec533708SSascha Wildner * VERSION (_MAKE_VERSION): 20210226 650ec533708SSascha Wildner Merge with NetBSD make, pick up 651ec533708SSascha Wildner o remove freestanding freeIt variables 652ec533708SSascha Wildner link via FStr 653ec533708SSascha Wildner o var.c: restructure code in ParseVarname to target human readers 654ec533708SSascha Wildner improve error message for; 655ec533708SSascha Wildner bad modifier in variable expression 656ec533708SSascha Wildner unclosed modifier 657ec533708SSascha Wildner unknown modifier 658ec533708SSascha Wildner remove redundant parameter of ApplySingleModifier 659ec533708SSascha Wildner explain non-obvious code around indirect variable modifiers 660ec533708SSascha Wildner quote ':S' in error message about missing delimiter 661ec533708SSascha Wildner extract ParseModifier_Match into separate function 662ec533708SSascha Wildner add context information to error message about ':range' modifier 663ec533708SSascha Wildner add quotes around variable name in an error message 664ec533708SSascha Wildner reorder code in ModifyWords 665ec533708SSascha Wildner use more common parameter order for VarSelectWords 666ec533708SSascha Wildner make ModifyWord_Subst a little easier to understand 667ec533708SSascha Wildner do not expand variable name from the command line twice 668ec533708SSascha Wildner extract ExistsInCmdline from Var_SetWithFlags 669ec533708SSascha Wildner save a hash map lookup when defining a cmdline variable 670ec533708SSascha Wildner clean up VarAdd, Var_Delete, Var_ReexportVars 671ec533708SSascha Wildner use bit-shift expressions for VarFlags constants 672ec533708SSascha Wildner rename constants for VarFlags 673ec533708SSascha Wildner rename ExprDefined constants for debug logging 674ec533708SSascha Wildner rename ExprStatus to ExprDefined 675ec533708SSascha Wildner split parameters for evaluating variable expressions 676ec533708SSascha Wildner reduce redundant code around ModifyWords 677ec533708SSascha Wildner print error about failed shell command before overwriting variable 678ec533708SSascha Wildner clean up ValidShortVarname, ParseVarnameShort 679ec533708SSascha Wildner rename VarExprStatus to ExprStatus 680ec533708SSascha Wildner add functions for assigning the value of an expression 681ec533708SSascha Wildner rename ApplyModifiersState_Define to Expr_Define 682ec533708SSascha Wildner condense the code for parsing :S and :C modifiers 683ec533708SSascha Wildner 684a34d5fb1SAntonio Huete Jimenez2021-02-06 Simon J Gerraty <sjg@beast.crufty.net> 685a34d5fb1SAntonio Huete Jimenez 686a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210206 687a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 688a34d5fb1SAntonio Huete Jimenez o unit-tests: use private TMPDIR to avoid errors from other users 689a34d5fb1SAntonio Huete Jimenez 690a34d5fb1SAntonio Huete Jimenez2021-02-05 Simon J Gerraty <sjg@beast.crufty.net> 691a34d5fb1SAntonio Huete Jimenez 692a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210205 693a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 694a34d5fb1SAntonio Huete Jimenez o avoid strdup in mkTempFile 695a34d5fb1SAntonio Huete Jimenez o always use vfork 696a34d5fb1SAntonio Huete Jimenez o rename context and ctxt to scope 697a34d5fb1SAntonio Huete Jimenez o rename some VAR constants to SCOPE 698a34d5fb1SAntonio Huete Jimenez o Var_ functions, move the scope to the front 699a34d5fb1SAntonio Huete Jimenez o use shortcut functions Global_Set and Global_Append 700a34d5fb1SAntonio Huete Jimenez o add shortcut Global_Delete for deleting a global variable 701a34d5fb1SAntonio Huete Jimenez o rename Var_Delete to Var_DeleteExpand, Var_DeleteVar to Var_Delete 702a34d5fb1SAntonio Huete Jimenez o compat.c: when exiting due to an error, print graph information 703a34d5fb1SAntonio Huete Jimenez o enum.c: remove overengineered Enum_ValueToString 704a34d5fb1SAntonio Huete Jimenez o make.c: remove unused INTERNAL flag 705a34d5fb1SAntonio Huete Jimenez remove unused return type of MakeBuildParent 706a34d5fb1SAntonio Huete Jimenez o parse.c: replace parse error "Need an operator" with better message 707a34d5fb1SAntonio Huete Jimenez o var.c: improve documentation about variable scopes 708a34d5fb1SAntonio Huete Jimenez rename Var_ValueDirect to GNode_ValueDirect 709a34d5fb1SAntonio Huete Jimenez rename old Var_SetWithFlags to Var_SetExpandWithFlags 710a34d5fb1SAntonio Huete Jimenez merge SetVar into Var_SetWithFlags 711a34d5fb1SAntonio Huete Jimenez split Var_Exists into plain Var_Exists and Var_ExistsExpand 712a34d5fb1SAntonio Huete Jimenez split Var_Append into Var_Append and Var_AppendExpand 713a34d5fb1SAntonio Huete Jimenez replace enum bit-set with bit-field 714a34d5fb1SAntonio Huete Jimenez o unit-tests/var-op-shell: use kill rather than kill -14 715a34d5fb1SAntonio Huete Jimenez which broke on darwin with recent update. 716a34d5fb1SAntonio Huete Jimenez 717a34d5fb1SAntonio Huete Jimenez2021-02-01 Simon J Gerraty <sjg@beast.crufty.net> 718a34d5fb1SAntonio Huete Jimenez 719a34d5fb1SAntonio Huete Jimenez * configure.in: check for sig_atomic_t and define it as 'int' 720a34d5fb1SAntonio Huete Jimenez if missing. 721a34d5fb1SAntonio Huete Jimenez 722a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210201 723a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 724a34d5fb1SAntonio Huete Jimenez o use sig_atomic_t for caught_sigchld 725a34d5fb1SAntonio Huete Jimenez 726a34d5fb1SAntonio Huete Jimenez2021-01-30 Simon J Gerraty <sjg@beast.crufty.net> 727a34d5fb1SAntonio Huete Jimenez 728a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210130 729a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 730a34d5fb1SAntonio Huete Jimenez o more unit tests 731a34d5fb1SAntonio Huete Jimenez o convert SearchPath to struct 732a34d5fb1SAntonio Huete Jimenez o split Buf_Destroy into Buf_Done and Buf_DoneData 733a34d5fb1SAntonio Huete Jimenez o for.c: split For_Eval into separate functions 734a34d5fb1SAntonio Huete Jimenez rename struct For to struct ForLoop 735a34d5fb1SAntonio Huete Jimenez o job.c: do not create empty shell files in jobs mode 736a34d5fb1SAntonio Huete Jimenez rename JobOpenTmpFile to JobWriteShellCommands 737a34d5fb1SAntonio Huete Jimenez reduce unnecessary calls to waitpid 738a34d5fb1SAntonio Huete Jimenez o parse.c: in -dp mode, print stack trace with each diagnostic 739a34d5fb1SAntonio Huete Jimenez 740a34d5fb1SAntonio Huete Jimenez2021-01-23 Simon J Gerraty <sjg@beast.crufty.net> 741a34d5fb1SAntonio Huete Jimenez 742a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210123 743a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 744a34d5fb1SAntonio Huete Jimenez o rename Dir_Expand to SearchPath_Expand 745a34d5fb1SAntonio Huete Jimenez o rename Dir_AddDir, reorder parameters of SearchPath_ToFlags 746a34d5fb1SAntonio Huete Jimenez o cond.c: fix debug output for comparison operators in conditionals 747a34d5fb1SAntonio Huete Jimenez o dir.c: split Dir_FindFile into separate functions 748a34d5fb1SAntonio Huete Jimenez 749a34d5fb1SAntonio Huete Jimenez2021-01-20 Simon J Gerraty <sjg@beast.crufty.net> 750a34d5fb1SAntonio Huete Jimenez 751a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210120 752a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 753a34d5fb1SAntonio Huete Jimenez o fix some more lint nits 754a34d5fb1SAntonio Huete Jimenez o refine some unit tests for portability 755a34d5fb1SAntonio Huete Jimenez o cond.c: rework parsing 756a34d5fb1SAntonio Huete Jimenez 757a34d5fb1SAntonio Huete Jimenez2021-01-10 Simon J Gerraty <sjg@beast.crufty.net> 758a34d5fb1SAntonio Huete Jimenez 759a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210110 760a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 761a34d5fb1SAntonio Huete Jimenez o fix lint warnings 762a34d5fb1SAntonio Huete Jimenez o consistently use boolean expressions in conditions 763a34d5fb1SAntonio Huete Jimenez 764a34d5fb1SAntonio Huete Jimenez2021-01-08 Simon J Gerraty <sjg@beast.crufty.net> 765a34d5fb1SAntonio Huete Jimenez 766a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210108 767a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 768a34d5fb1SAntonio Huete Jimenez o job.c: back to polling token pipe if we want a token 769a34d5fb1SAntonio Huete Jimenez o main.c: always print 'stopped in' on first call 770a34d5fb1SAntonio Huete Jimenez The execption is if we bail because of an abort token 771a34d5fb1SAntonio Huete Jimenez in which case just exit 6. 772a34d5fb1SAntonio Huete Jimenez 773a34d5fb1SAntonio Huete Jimenez2021-01-01 Simon J Gerraty <sjg@beast.crufty.net> 774a34d5fb1SAntonio Huete Jimenez 775a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20210101 776a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 777a34d5fb1SAntonio Huete Jimenez o Happy New Year! 778a34d5fb1SAntonio Huete Jimenez o rename CmdOpts.lint to strict 779a34d5fb1SAntonio Huete Jimenez o exit 2 on technical errors 780a34d5fb1SAntonio Huete Jimenez o replace pointers in controlling conditions with booleans 781a34d5fb1SAntonio Huete Jimenez o replace global preserveUndefined with VARE_KEEP_UNDEF 782a34d5fb1SAntonio Huete Jimenez o compat.c: re-export variables from the actual make process 783a34d5fb1SAntonio Huete Jimenez if using vfork this is the effect anyway 784a34d5fb1SAntonio Huete Jimenez o cond.c: clean up VarParseResult constants 785a34d5fb1SAntonio Huete Jimenez o for.c: fix undefined behavior in SubstVarLong 786a34d5fb1SAntonio Huete Jimenez make control flow in SubstVarLong of .for loops more obvious 787a34d5fb1SAntonio Huete Jimenez clean up SubstVarShort in .for loops 788a34d5fb1SAntonio Huete Jimenez extract ForSubstBody from ForReadMore 789a34d5fb1SAntonio Huete Jimenez clean up ForReadMore 790a34d5fb1SAntonio Huete Jimenez simplify termination condition for .for loop 791a34d5fb1SAntonio Huete Jimenez add error handling for .for loop items 792a34d5fb1SAntonio Huete Jimenez job.c: re-export variables from the actual make process 793a34d5fb1SAntonio Huete Jimenez parse.c: remove mmap for loading files, only allow files < 1 GiB 794a34d5fb1SAntonio Huete Jimenez fix edge case in := with undefined in variable name 795a34d5fb1SAntonio Huete Jimenez skip variable expansion in ParseDependencyTargetWord 796a34d5fb1SAntonio Huete Jimenez var.c: split ExportVar into separate functions 797a34d5fb1SAntonio Huete Jimenez clean up code in extracted ExportVar functions 798a34d5fb1SAntonio Huete Jimenez remove dead code from ApplyModifiersIndirect 799a34d5fb1SAntonio Huete Jimenez split Var_Subst into easily understandable functions 800a34d5fb1SAntonio Huete Jimenez clean up VarParseResult constants 801a34d5fb1SAntonio Huete Jimenez 802a34d5fb1SAntonio Huete Jimenez2020-12-25 Simon J Gerraty <sjg@beast.crufty.net> 803a34d5fb1SAntonio Huete Jimenez 804a34d5fb1SAntonio Huete Jimenez * main.c: use .MAKE.DEPENDFILE as set by makefiles 805a34d5fb1SAntonio Huete Jimenez 806a34d5fb1SAntonio Huete Jimenez2020-12-22 Simon J Gerraty <sjg@beast.crufty.net> 807a34d5fb1SAntonio Huete Jimenez 808a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201222 809a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 810a34d5fb1SAntonio Huete Jimenez o make DEBUG macro return boolean 811a34d5fb1SAntonio Huete Jimenez o parse.c: fix assertion failure for files without trailing newline 812a34d5fb1SAntonio Huete Jimenez o var.c: allow .undef to undefine multiple variables at once 813a34d5fb1SAntonio Huete Jimenez remove excess newline from parse errors 814a34d5fb1SAntonio Huete Jimenez 815a34d5fb1SAntonio Huete Jimenez2020-12-21 Simon J Gerraty <sjg@beast.crufty.net> 816a34d5fb1SAntonio Huete Jimenez 817a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201221 818a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 819a34d5fb1SAntonio Huete Jimenez o some unit-test updates 820a34d5fb1SAntonio Huete Jimenez 821a34d5fb1SAntonio Huete Jimenez2020-12-20 Simon J Gerraty <sjg@beast.crufty.net> 822a34d5fb1SAntonio Huete Jimenez 823a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201220 824a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 825a34d5fb1SAntonio Huete Jimenez o more unit tests 826a34d5fb1SAntonio Huete Jimenez o return FStr from Var_Parse and Var_Value 827a34d5fb1SAntonio Huete Jimenez o spell nonexistent consistently 828a34d5fb1SAntonio Huete Jimenez o add str_basename to reduce duplicate code 829a34d5fb1SAntonio Huete Jimenez o compat.c: fix .ERROR_TARGET in compat -k mode 830a34d5fb1SAntonio Huete Jimenez extract InitSignals from Compat_Run 831a34d5fb1SAntonio Huete Jimenez extract UseShell from Compat_RunCommand 832a34d5fb1SAntonio Huete Jimenez o cond.c: error out if an '.endif' or '.else' contain extraneous text 833a34d5fb1SAntonio Huete Jimenez o for.c: rename ForIterate to ForReadMore 834a34d5fb1SAntonio Huete Jimenez o hash.c: clean up hash function for HashTable 835a34d5fb1SAntonio Huete Jimenez o lst.c: rename Vector.priv_cap to cap 836a34d5fb1SAntonio Huete Jimenez o main.c: remove constant parameter from MakeMode 837a34d5fb1SAntonio Huete Jimenez o make.c: use symbolic time for 0 in Make_Recheck 838a34d5fb1SAntonio Huete Jimenez extract MakeChildren from MakeStartJobs 839a34d5fb1SAntonio Huete Jimenez o parse.c: clean up memory handling in VarAssign_EvalShell, Parse_DoVar 840a34d5fb1SAntonio Huete Jimenez fix error message for .info/.warning/.error without argument 841a34d5fb1SAntonio Huete Jimenez extract Var_Undef from ParseDirective 842a34d5fb1SAntonio Huete Jimenez extract ParseSkippedBranches, ParseForLoop from ParseReadLine 843a34d5fb1SAntonio Huete Jimenez rename mode constants for ParseGetLine to be more expressive 844a34d5fb1SAntonio Huete Jimenez reduce debugging details in Parse_SetInput 845a34d5fb1SAntonio Huete Jimenez fix line numbers in .for loops 846a34d5fb1SAntonio Huete Jimenez split ParseGetLine into separate functions 847a34d5fb1SAntonio Huete Jimenez fix garbled output for failed shell command 848a34d5fb1SAntonio Huete Jimenez var.c: remove redundant assignment in ApplyModifier_SysV 849a34d5fb1SAntonio Huete Jimenez error out on unknown variable modifiers at parse time 850a34d5fb1SAntonio Huete Jimenez remove wrong error message for indirect modifier in lint mode 851a34d5fb1SAntonio Huete Jimenez extract ApplySingleModifier from ApplyModifiers 852a34d5fb1SAntonio Huete Jimenez use FStr for memory management in Var_SetWithFlags 853a34d5fb1SAntonio Huete Jimenez extract SetVar from Var_SetWithFlags 854a34d5fb1SAntonio Huete Jimenez use FStr in VarNew 855a34d5fb1SAntonio Huete Jimenez extract string functions from ApplyModifier_To 856a34d5fb1SAntonio Huete Jimenez error out if .undef has not exactly 1 argument 857a34d5fb1SAntonio Huete Jimenez extract Var_DeleteVar from Var_Delete 858a34d5fb1SAntonio Huete Jimenez extract Var_Undef from ParseDirective 859a34d5fb1SAntonio Huete Jimenez clean up memory management for expanding variable expressions 860a34d5fb1SAntonio Huete Jimenez 861a34d5fb1SAntonio Huete Jimenez2020-12-12 Simon J Gerraty <sjg@beast.crufty.net> 862a34d5fb1SAntonio Huete Jimenez 863a34d5fb1SAntonio Huete Jimenez * avoid %zu 864a34d5fb1SAntonio Huete Jimenez 865a34d5fb1SAntonio Huete Jimenez * lst.c: avoid anonymous union 866a34d5fb1SAntonio Huete Jimenez 867a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201212 868a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 869a34d5fb1SAntonio Huete Jimenez o more unit tests 870a34d5fb1SAntonio Huete Jimenez o inline Targ_Ignore and Targ_Silent 871a34d5fb1SAntonio Huete Jimenez o split JobFlags into separate fields 872a34d5fb1SAntonio Huete Jimenez o remove const from function parameters (left overs from refactoring) 873a34d5fb1SAntonio Huete Jimenez o eliminate boolean argument of Var_Export 874a34d5fb1SAntonio Huete Jimenez o make API of Buf_Init simpler 875a34d5fb1SAntonio Huete Jimenez o rename ParseRunOptions to ParseCommandFlags 876a34d5fb1SAntonio Huete Jimenez o replace *line with line[0] 877a34d5fb1SAntonio Huete Jimenez o compat.c: fix wrong exit status for multiple failed main targets 878a34d5fb1SAntonio Huete Jimenez refactor Compat_Run to show the error condition more clearly 879a34d5fb1SAntonio Huete Jimenez don't make .END if the main targets already failed (-k mode) 880a34d5fb1SAntonio Huete Jimenez fix exit status in -k mode if a dependency fails 881a34d5fb1SAntonio Huete Jimenez o for.c: clean up Buf_AddEscaped in .for loops 882a34d5fb1SAntonio Huete Jimenez o job.c: extract ShellWriter_ErrOn from JobPrintCommand 883a34d5fb1SAntonio Huete Jimenez make Job_Touch simpler 884a34d5fb1SAntonio Huete Jimenez refactor JobFinish 885a34d5fb1SAntonio Huete Jimenez rename Shell.exitFlag to errFlag 886a34d5fb1SAntonio Huete Jimenez move Job.xtraced to ShellWriter 887a34d5fb1SAntonio Huete Jimenez make printing of shell commands independent from the job 888a34d5fb1SAntonio Huete Jimenez rename shell flags in struct Shell 889a34d5fb1SAntonio Huete Jimenez extract JobOpenTmpFile from JobStart 890a34d5fb1SAntonio Huete Jimenez rename RunFlags to CommandFlags 891a34d5fb1SAntonio Huete Jimenez split various Job.* into separate fields 892a34d5fb1SAntonio Huete Jimenez rename commandShell to shell 893a34d5fb1SAntonio Huete Jimenez extract InitShellNameAndPath from Shell_Init 894a34d5fb1SAntonio Huete Jimenez replace signal handling macros with local functions 895a34d5fb1SAntonio Huete Jimenez replace macro MESSAGE with local function 896a34d5fb1SAntonio Huete Jimenez parse.c: error out on null bytes in makefiles 897a34d5fb1SAntonio Huete Jimenez error out on misspelled directives 898a34d5fb1SAntonio Huete Jimenez rename IFile.nextbuf to readMore 899a34d5fb1SAntonio Huete Jimenez fix undefined behavior in ParseEOF 900a34d5fb1SAntonio Huete Jimenez str.c: remove redundant call to strlen in Str_Words 901a34d5fb1SAntonio Huete Jimenez var.c: error out on misspelled .unexport-env 902a34d5fb1SAntonio Huete Jimenez error out on misspelled .export directives 903a34d5fb1SAntonio Huete Jimenez extract ExportVars from Var_Export 904a34d5fb1SAntonio Huete Jimenez extract ExportVarsExpand from Var_Export 905a34d5fb1SAntonio Huete Jimenez eliminate boolean argument of Var_Export 906a34d5fb1SAntonio Huete Jimenez fix undefined behavior when exporting ${:U } 907a34d5fb1SAntonio Huete Jimenez rename Var_ExportVars to Var_ReexportVars 908a34d5fb1SAntonio Huete Jimenez rename Var_Export1 to ExportVar 909a34d5fb1SAntonio Huete Jimenez 910a34d5fb1SAntonio Huete Jimenez2020-12-06 Simon J Gerraty <sjg@beast.crufty.net> 911a34d5fb1SAntonio Huete Jimenez 912a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201206 913a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 914a34d5fb1SAntonio Huete Jimenez o more unit tests 915a34d5fb1SAntonio Huete Jimenez o inline macros for debug logging 916a34d5fb1SAntonio Huete Jimenez o use consistent variable names for list nodes 917a34d5fb1SAntonio Huete Jimenez o define constants for enum zero-values 918a34d5fb1SAntonio Huete Jimenez o dir.c: use fixed format for debug output of the directory cache 919a34d5fb1SAntonio Huete Jimenez remove Dir_InitDir 920a34d5fb1SAntonio Huete Jimenez o lst.c: inline Lst_Enqueue, Vector_Done 921a34d5fb1SAntonio Huete Jimenez o meta.c: remove unused parameter from meta_needed 922a34d5fb1SAntonio Huete Jimenez o parse.c: rename parse functions 923a34d5fb1SAntonio Huete Jimenez o suff.c: extract ExpandChildrenRegular from ExpandChildren 924a34d5fb1SAntonio Huete Jimenez o targ.c: don't concatenate identifiers in Targ_PrintType 925a34d5fb1SAntonio Huete Jimenez o var.c: remove comment decoration 926a34d5fb1SAntonio Huete Jimenez extract UnexportVars from Var_UnExport 927a34d5fb1SAntonio Huete Jimenez extract GetVarnamesToUnexport from Var_UnExport 928a34d5fb1SAntonio Huete Jimenez extract UnexportEnv from Var_UnExport 929a34d5fb1SAntonio Huete Jimenez extract UnexportVar from Var_UnExport 930a34d5fb1SAntonio Huete Jimenez move CleanEnv to UnexportVars 931a34d5fb1SAntonio Huete Jimenez replace pointer comparisons with enum 932a34d5fb1SAntonio Huete Jimenez add FStr to var.c to make memory handling simpler 933a34d5fb1SAntonio Huete Jimenez use FStr in Var_UnExport 934a34d5fb1SAntonio Huete Jimenez move type definitions in var.c to the top 935a34d5fb1SAntonio Huete Jimenez extract FreeEnvVar from Var_Parse 936a34d5fb1SAntonio Huete Jimenez extract ShuffleStrings from ApplyModifier_Order 937a34d5fb1SAntonio Huete Jimenez 938a34d5fb1SAntonio Huete Jimenez2020-11-30 Simon J Gerraty <sjg@beast.crufty.net> 939a34d5fb1SAntonio Huete Jimenez 940a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201130 941a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 942a34d5fb1SAntonio Huete Jimenez o add unit tests for META MODE 943a34d5fb1SAntonio Huete Jimenez o reduce memory allocation for dirSearchPath, GNode.parents, 944a34d5fb1SAntonio Huete Jimenez GNode.children, OpenDirs 945a34d5fb1SAntonio Huete Jimenez o reduce pointer indirection for GNode.cohorts and 946a34d5fb1SAntonio Huete Jimenez GNode.implicitParents 947a34d5fb1SAntonio Huete Jimenez o remove pointer indirection from GNode.commands 948a34d5fb1SAntonio Huete Jimenez o inline Lst_ForEachUntil in meta mode 949a34d5fb1SAntonio Huete Jimenez o dir.c: fix memory leak for lstat cache in -DCLEANUP mode 950a34d5fb1SAntonio Huete Jimenez clean up memory management for CachedDirs 951a34d5fb1SAntonio Huete Jimenez fix the reference count of dotLast going negative 952a34d5fb1SAntonio Huete Jimenez add debug logging for OpenDirs_Done 953a34d5fb1SAntonio Huete Jimenez extract CacheNewDir from Dir_AddDir 954a34d5fb1SAntonio Huete Jimenez add debug logging for reference counting of CachedDir 955a34d5fb1SAntonio Huete Jimenez rename some Dir functions to SearchPath 956a34d5fb1SAntonio Huete Jimenez o job.c: rename some global variables 957a34d5fb1SAntonio Huete Jimenez o main.c: reduce memory allocation in ReadBuiltinRules 958a34d5fb1SAntonio Huete Jimenez reduce memory allocation in CmdOpts.create, CmdOpts.variables, 959a34d5fb1SAntonio Huete Jimenez CmdOpts.makefiles 960a34d5fb1SAntonio Huete Jimenez Add .MAKE.UID and .MAKE.GID 961a34d5fb1SAntonio Huete Jimenez o make.c: reduce memory allocation for/in toBeMade, 962a34d5fb1SAntonio Huete Jimenez Make_ProcessWait, Make_ExpandUse 963a34d5fb1SAntonio Huete Jimenez o meta.c: reduce memory allocation in meta_oodate 964a34d5fb1SAntonio Huete Jimenez o parse.c: reduce memory allocations for parsing dependencies and 965a34d5fb1SAntonio Huete Jimenez targets 966a34d5fb1SAntonio Huete Jimenez o suff.c: reduce memory allocation in suffix handling 967a34d5fb1SAntonio Huete Jimenez 968a34d5fb1SAntonio Huete Jimenez2020-11-24 Simon J Gerraty <sjg@beast.crufty.net> 969a34d5fb1SAntonio Huete Jimenez 970a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201124 971a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 972a34d5fb1SAntonio Huete Jimenez o .MAKE.{UID,GID} represent uid and gid running make. 973a34d5fb1SAntonio Huete Jimenez o fix error handling for .BEGIN and .END dependency in -k mode 974a34d5fb1SAntonio Huete Jimenez o fix missing "Stop." after failed .END node in -k mode 975a34d5fb1SAntonio Huete Jimenez o use properly typed comparisons in boolean contexts 976a34d5fb1SAntonio Huete Jimenez o replace a few HashTable_CreateEntry with HashTable_Set 977a34d5fb1SAntonio Huete Jimenez o add HashSet type 978a34d5fb1SAntonio Huete Jimenez o compat.c: split Compat_Make into smaller functions 979a34d5fb1SAntonio Huete Jimenez extract DebugFailedTarget from Compat_RunCommand 980a34d5fb1SAntonio Huete Jimenez o dir.c: refactor Dir_UpdateMTime 981a34d5fb1SAntonio Huete Jimenez migrate CachedDir.files from HashTable to HashSet 982a34d5fb1SAntonio Huete Jimenez o make.c: add high-level API for GNode.made 983a34d5fb1SAntonio Huete Jimenez 984a34d5fb1SAntonio Huete Jimenez2020-11-22 Simon J Gerraty <sjg@beast.crufty.net> 985a34d5fb1SAntonio Huete Jimenez 986a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201122 987a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 988a34d5fb1SAntonio Huete Jimenez o rename GNode.context to vars 989a34d5fb1SAntonio Huete Jimenez o suff.c: cleanup and refactor 990a34d5fb1SAntonio Huete Jimenez rename some functions and vars to better reflect usage 991a34d5fb1SAntonio Huete Jimenez add high-level API for CandidateSearcher 992a34d5fb1SAntonio Huete Jimenez o targ.c: add more debug logging for suffix handling 993a34d5fb1SAntonio Huete Jimenez o more unit tests 994a34d5fb1SAntonio Huete Jimenez o add debug logging for setting and resetting the main target 995a34d5fb1SAntonio Huete Jimenez 996a34d5fb1SAntonio Huete Jimenez2020-11-17 Simon J Gerraty <sjg@beast.crufty.net> 997a34d5fb1SAntonio Huete Jimenez 998a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201117 999a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1000a34d5fb1SAntonio Huete Jimenez o fix some unit-tests when .SHELL is dash 1001a34d5fb1SAntonio Huete Jimenez o rename Targ_NewGN to GNode_New 1002a34d5fb1SAntonio Huete Jimenez o make some GNode functions const 1003a34d5fb1SAntonio Huete Jimenez o main.c: call Targ_Init before Var_Init 1004a34d5fb1SAntonio Huete Jimenez cleanup PrintOnError, getTmpdir and ParseBoolean 1005a34d5fb1SAntonio Huete Jimenez o var.c: fix error message of failed :!cmd! modifier 1006a34d5fb1SAntonio Huete Jimenez 1007a34d5fb1SAntonio Huete Jimenez2020-11-14 Simon J Gerraty <sjg@beast.crufty.net> 1008a34d5fb1SAntonio Huete Jimenez 1009a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201114 1010a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1011a34d5fb1SAntonio Huete Jimenez o replace a few HashTable_CreateEntry with HashTable_Set 1012a34d5fb1SAntonio Huete Jimenez o clean up cached_stats 1013a34d5fb1SAntonio Huete Jimenez o rename DEFAULT to defaultNode 1014a34d5fb1SAntonio Huete Jimenez o remove redundant struct make_stat 1015a34d5fb1SAntonio Huete Jimenez o cond.c: in lint mode, check for ".else <cond>" 1016a34d5fb1SAntonio Huete Jimenez use bitset for IfState 1017a34d5fb1SAntonio Huete Jimenez replace large switch with if-else in Cond_EvalLine 1018a34d5fb1SAntonio Huete Jimenez o job.c: clean up JobExec, JobStart, JobDoOutput 1019a34d5fb1SAntonio Huete Jimenez use stderr for error message about failed touch 1020a34d5fb1SAntonio Huete Jimenez clean up Job_Touch 1021a34d5fb1SAntonio Huete Jimenez replace macro DBPRINTF with JobPrintln 1022a34d5fb1SAntonio Huete Jimenez rename JobState to JobStatus 1023a34d5fb1SAntonio Huete Jimenez main.c: switch cache for realpath from GNode to HashTable 1024a34d5fb1SAntonio Huete Jimenez clean up Fatal 1025a34d5fb1SAntonio Huete Jimenez clean up InitDefSysIncPath 1026a34d5fb1SAntonio Huete Jimenez use progname instead of hard-coded 'make' in warning 1027a34d5fb1SAntonio Huete Jimenez rename Main_SetVarObjdir to SetVarObjdir 1028a34d5fb1SAntonio Huete Jimenez make.1: document the -S option 1029a34d5fb1SAntonio Huete Jimenez make.c: fix debug output for GNode details 1030a34d5fb1SAntonio Huete Jimenez use symbolic names in debug output of GNodes 1031a34d5fb1SAntonio Huete Jimenez 1032a34d5fb1SAntonio Huete Jimenez2020-11-12 Simon J Gerraty <sjg@beast.crufty.net> 1033a34d5fb1SAntonio Huete Jimenez 1034a34d5fb1SAntonio Huete Jimenez * configure.in: fix --with-force-machine-arch 1035a34d5fb1SAntonio Huete Jimenez 1036a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201112 1037a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1038a34d5fb1SAntonio Huete Jimenez o allow env var MAKE_OBJDIR_CHECK_WRITABLE=no to skip writable 1039a34d5fb1SAntonio Huete Jimenez checks in InitObjdir. Explicit .OBJDIR target always allows 1040a34d5fb1SAntonio Huete Jimenez read-only directory. 1041a34d5fb1SAntonio Huete Jimenez o cond.c: clean up Cond_EvalLine 1042a34d5fb1SAntonio Huete Jimenez 1043a34d5fb1SAntonio Huete Jimenez2020-11-11 Simon J Gerraty <sjg@beast.crufty.net> 1044a34d5fb1SAntonio Huete Jimenez 1045a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201111 1046a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1047a34d5fb1SAntonio Huete Jimenez o more unit-tests 1048a34d5fb1SAntonio Huete Jimenez o style cleanup 1049a34d5fb1SAntonio Huete Jimenez remove redundant parentheses from sizeof operator 1050a34d5fb1SAntonio Huete Jimenez replace character literal 0 with '\0'. 1051a34d5fb1SAntonio Huete Jimenez replace pointer literal 0 with NULL. 1052a34d5fb1SAntonio Huete Jimenez remove redundant parentheses. 1053a34d5fb1SAntonio Huete Jimenez replace (expr & mask) == 0 with !(expr & mask). 1054a34d5fb1SAntonio Huete Jimenez use strict typing in conditions of the form !var 1055a34d5fb1SAntonio Huete Jimenez o rename Make_OODate to GNode_IsOODate 1056a34d5fb1SAntonio Huete Jimenez o rename Make_TimeStamp to GNode_UpdateYoungestChild 1057a34d5fb1SAntonio Huete Jimenez o rename Var_Set_with_flags to Var_SetWithFlags 1058a34d5fb1SAntonio Huete Jimenez o rename dieQuietly to shouldDieQuietly 1059a34d5fb1SAntonio Huete Jimenez o buf.c: make API of Buf_Init simpler 1060a34d5fb1SAntonio Huete Jimenez o compat.c: clean up Compat_Make, Compat_RunCommand, 1061a34d5fb1SAntonio Huete Jimenez CompatDeleteTarget and CompatInterrupt 1062a34d5fb1SAntonio Huete Jimenez o cond.c: in lint mode, only allow '&&' and '||', not '&' and '|' 1063a34d5fb1SAntonio Huete Jimenez clean up CondParser_Comparison 1064a34d5fb1SAntonio Huete Jimenez o main.c: rename getBoolean and s2Boolean 1065a34d5fb1SAntonio Huete Jimenez rename MAKEFILE_PREFERENCE for consistency 1066a34d5fb1SAntonio Huete Jimenez o parse.c: replace strstr in ParseMaybeSubMake with optimized code 1067a34d5fb1SAntonio Huete Jimenez o var.c: rename VARE_ASSIGN to VARE_KEEP_DOLLAR 1068a34d5fb1SAntonio Huete Jimenez replace emptyString with allocated empty string 1069a34d5fb1SAntonio Huete Jimenez error out on unclosed expressions after the colon 1070a34d5fb1SAntonio Huete Jimenez 1071a34d5fb1SAntonio Huete Jimenez2020-11-01 Simon J Gerraty <sjg@beast.crufty.net> 1072a34d5fb1SAntonio Huete Jimenez 1073a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201101 1074a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1075a34d5fb1SAntonio Huete Jimenez o negate NoExecute to GNode_ShouldExecute 1076a34d5fb1SAntonio Huete Jimenez o job.c: rename JobMatchShell to FindShellByName 1077a34d5fb1SAntonio Huete Jimenez extract EscapeShellDblQuot from JobPrintCommand 1078a34d5fb1SAntonio Huete Jimenez extract ParseRunOptions from JobPrintCommand 1079a34d5fb1SAntonio Huete Jimenez o var.c: extract ApplyModifiersIndirect from ApplyModifiers 1080a34d5fb1SAntonio Huete Jimenez treat malformed :range, :ts and :[...] as errors 1081a34d5fb1SAntonio Huete Jimenez add tests for the variable modifiers :[words] and :range 1082a34d5fb1SAntonio Huete Jimenez 1083a34d5fb1SAntonio Huete Jimenez2020-10-31 Simon J Gerraty <sjg@beast.crufty.net> 1084a34d5fb1SAntonio Huete Jimenez 1085a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201031 1086a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1087a34d5fb1SAntonio Huete Jimenez o format #include directives consistently 1088a34d5fb1SAntonio Huete Jimenez o do not look up local variables like .TARGET anywhere else 1089a34d5fb1SAntonio Huete Jimenez o main.c: Main_SetObjdir is first called for curdir which may be 1090a34d5fb1SAntonio Huete Jimenez readonly 1091a34d5fb1SAntonio Huete Jimenez reduce the scope where recursive expressions are detected 1092a34d5fb1SAntonio Huete Jimenez remove redundant :tl from getBoolean 1093a34d5fb1SAntonio Huete Jimenez clean up mkTempFile 1094a34d5fb1SAntonio Huete Jimenez o meta.c: simplify memory allocation in meta_create and meta_oodate 1095a34d5fb1SAntonio Huete Jimenez o parse.c: extract loadedfile_mmap from loadfile 1096a34d5fb1SAntonio Huete Jimenez o trace.c: document possible undefined behavior with .CURDIR 1097a34d5fb1SAntonio Huete Jimenez o var.c: make parsing of the :gmtime and :localtime modifiers stricter 1098a34d5fb1SAntonio Huete Jimenez rename ismeta to is_shell_metachar 1099a34d5fb1SAntonio Huete Jimenez remove debug logging for the :Q variable modifier 1100a34d5fb1SAntonio Huete Jimenez rename VarIsDynamic to VarnameIsDynamic 1101a34d5fb1SAntonio Huete Jimenez use consistent parameter order in varname parsing functions 1102a34d5fb1SAntonio Huete Jimenez extract ParseVarnameLong from Var_Parse 1103a34d5fb1SAntonio Huete Jimenez extract ParseVarnameShort from Var_Parse 1104a34d5fb1SAntonio Huete Jimenez fix type of ParseModifierPart parameter delim 1105a34d5fb1SAntonio Huete Jimenez extract IsEscapedModifierPart from ParseModifierPart 1106a34d5fb1SAntonio Huete Jimenez clean up ModifyWords 1107a34d5fb1SAntonio Huete Jimenez add test for combining the :@ and :? variable modifiers 1108a34d5fb1SAntonio Huete Jimenez 1109a34d5fb1SAntonio Huete Jimenez2020-10-30 Simon J Gerraty <sjg@beast.crufty.net> 1110a34d5fb1SAntonio Huete Jimenez 1111a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201030 1112a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1113a34d5fb1SAntonio Huete Jimenez o change char * to void * in Var_Value 1114a34d5fb1SAntonio Huete Jimenez o make iterating over HashTable simpler 1115a34d5fb1SAntonio Huete Jimenez o rename VAR_CMD to VAR_CMDLINE 1116a34d5fb1SAntonio Huete Jimenez o cond.c: clean up is_separator 1117a34d5fb1SAntonio Huete Jimenez fix parse error in string literal in conditional 1118a34d5fb1SAntonio Huete Jimenez o main.c: do not use objdir that is not writable 1119a34d5fb1SAntonio Huete Jimenez in lint mode, exit with error status on errors 1120a34d5fb1SAntonio Huete Jimenez o parse.c: clean up StrContainsWord 1121a34d5fb1SAntonio Huete Jimenez fix out-of-bounds pointer in ParseTrackInput 1122a34d5fb1SAntonio Huete Jimenez o var.c: rename Str_SYSVMatch and its parameters 1123a34d5fb1SAntonio Huete Jimenez remove unsatisfiable conditions in Var_Set_with_flags 1124a34d5fb1SAntonio Huete Jimenez document where the variable name is expanded 1125a34d5fb1SAntonio Huete Jimenez fix documentation for VARP_SUB_ONE 1126a34d5fb1SAntonio Huete Jimenez rename VAR_EXPORTED_YES to VAR_EXPORTED_SOME 1127a34d5fb1SAntonio Huete Jimenez document VAR_READONLY 1128a34d5fb1SAntonio Huete Jimenez prevent appending to read-only variables 1129a34d5fb1SAntonio Huete Jimenez extract MayExport from Var_Export1 1130a34d5fb1SAntonio Huete Jimenez remove redundant evaluations in VarFind 1131a34d5fb1SAntonio Huete Jimenez replace VarFindFlags with a simple Boolean 1132a34d5fb1SAntonio Huete Jimenez rename FIND_CMD to FIND_CMDLINE, to match VAR_CMDLINE 1133a34d5fb1SAntonio Huete Jimenez 1134a34d5fb1SAntonio Huete Jimenez2020-10-28 Simon J Gerraty <sjg@beast.crufty.net> 1135a34d5fb1SAntonio Huete Jimenez 1136a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201028 1137a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1138a34d5fb1SAntonio Huete Jimenez o rename defIncPath to defSysIncPath 1139a34d5fb1SAntonio Huete Jimenez o initialize all CmdOpts fields 1140a34d5fb1SAntonio Huete Jimenez o lst.c: inline Vector_Get 1141a34d5fb1SAntonio Huete Jimenez o main.c: refactor main extract 1142a34d5fb1SAntonio Huete Jimenez InitMaxJobs,InitObjdir,InitVarMake,InitRandom, 1143a34d5fb1SAntonio Huete Jimenez ReadMakefiles,CleanUp,InitVpath,ReadBuiltinRules, 1144a34d5fb1SAntonio Huete Jimenez InitDefIncPath,CmdOpts_Init,UnlimitFiles 1145a34d5fb1SAntonio Huete Jimenez o parse.c: merge curFile into includes 1146a34d5fb1SAntonio Huete Jimenez rename predecessor to order_pred 1147a34d5fb1SAntonio Huete Jimenez sort ParseSpecial alphabetically 1148a34d5fb1SAntonio Huete Jimenez remove unused, undocumented .NOEXPORT 1149a34d5fb1SAntonio Huete Jimenez rename ParseSpecial enum values consistently 1150a34d5fb1SAntonio Huete Jimenez rename some fields of struct IFile 1151a34d5fb1SAntonio Huete Jimenez 1152a34d5fb1SAntonio Huete Jimenez2020-10-26 Simon J Gerraty <sjg@beast.crufty.net> 1153a34d5fb1SAntonio Huete Jimenez 1154a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201026 1155a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1156a34d5fb1SAntonio Huete Jimenez o group the command line options and arguments into a struct 1157a34d5fb1SAntonio Huete Jimenez o rename GNode.cmgn to youngestChild 1158a34d5fb1SAntonio Huete Jimenez o rename hash functions to identify the type name 1159a34d5fb1SAntonio Huete Jimenez o negate OP_NOP and rename it to GNode_IsTarget 1160a34d5fb1SAntonio Huete Jimenez o add GNode_Path to access the path of a GNode 1161a34d5fb1SAntonio Huete Jimenez o remove macros MIN and MAX 1162a34d5fb1SAntonio Huete Jimenez o remove unused Lst_Find and Lst_FindFrom 1163a34d5fb1SAntonio Huete Jimenez o arch.c: and make Arch_FindLib simpler 1164a34d5fb1SAntonio Huete Jimenez clean up code layout 1165a34d5fb1SAntonio Huete Jimenez make Arch_ParseArchive simpler 1166a34d5fb1SAntonio Huete Jimenez o cond.c: inline CondFindStrMatch into FuncMake 1167a34d5fb1SAntonio Huete Jimenez o dir.c: replace Dir_CopyDir with Dir_CopyDirSearchPath 1168a34d5fb1SAntonio Huete Jimenez omit trailing space in debug output for expanding file patterns 1169a34d5fb1SAntonio Huete Jimenez refactor DirMatchFiles 1170a34d5fb1SAntonio Huete Jimenez document that the SearchPath of Dir_FindFile may be NULL 1171a34d5fb1SAntonio Huete Jimenez remove UNCONST from Dir_Expand 1172a34d5fb1SAntonio Huete Jimenez inline DirFindName 1173a34d5fb1SAntonio Huete Jimenez o for.c: clean up code for handling .for loops 1174a34d5fb1SAntonio Huete Jimenez o hash.c: print hash in debug log with fixed width 1175a34d5fb1SAntonio Huete Jimenez clean up hash table functions 1176a34d5fb1SAntonio Huete Jimenez reduce amount of string hashing 1177a34d5fb1SAntonio Huete Jimenez o job.c: refactor JobDeleteTarget 1178a34d5fb1SAntonio Huete Jimenez use proper enum constants for aborting 1179a34d5fb1SAntonio Huete Jimenez convert result of JobStart from macros to enum 1180a34d5fb1SAntonio Huete Jimenez convert abort reason macros to enum 1181a34d5fb1SAntonio Huete Jimenez rework Job_CheckCommands to reduce indentation 1182a34d5fb1SAntonio Huete Jimenez rename Shell fields 1183a34d5fb1SAntonio Huete Jimenez add field names in declaration of DEFSHELL_CUSTOM 1184a34d5fb1SAntonio Huete Jimenez convert JobState and JobFlags to enum types 1185a34d5fb1SAntonio Huete Jimenez move handling of the "..." command to JobPrintCommands 1186a34d5fb1SAntonio Huete Jimenez o lst.c: clean up 1187a34d5fb1SAntonio Huete Jimenez refactor LstNodeNew 1188a34d5fb1SAntonio Huete Jimenez remove Lst_Open, Lst_Next, Lst_Close 1189a34d5fb1SAntonio Huete Jimenez remove code for circular lists from Lst_Next 1190a34d5fb1SAntonio Huete Jimenez o main.c: do not attempt to read .MAKE.DEPENFILE if set to 1191a34d5fb1SAntonio Huete Jimenez /dev/null or anything starting with "no" 1192a34d5fb1SAntonio Huete Jimenez convert macros for debug flags into enum 1193a34d5fb1SAntonio Huete Jimenez o make.c: inline Lst_Copy in Make_ExpandUse 1194a34d5fb1SAntonio Huete Jimenez o meta.c: inline Lst_Find in meta_oodate 1195a34d5fb1SAntonio Huete Jimenez make Lst_RemoveIf simpler in meta_oodate 1196a34d5fb1SAntonio Huete Jimenez o parse.c: convert error level for Parse_Error to an enum 1197a34d5fb1SAntonio Huete Jimenez o suff.c: properly terminate debug output with newline 1198a34d5fb1SAntonio Huete Jimenez add more details to DEBUG_SRC log 1199a34d5fb1SAntonio Huete Jimenez replace Dir_CopyDir with Dir_CopyDirSearchPath 1200a34d5fb1SAntonio Huete Jimenez don't modify GNode name while rebuilding the suffix graph 1201a34d5fb1SAntonio Huete Jimenez o var.c: reduce duplicate code in VarFind 1202a34d5fb1SAntonio Huete Jimenez 1203a34d5fb1SAntonio Huete Jimenez2020-10-22 Simon J Gerraty <sjg@beast.crufty.net> 1204a34d5fb1SAntonio Huete Jimenez 1205a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201022 1206a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1207a34d5fb1SAntonio Huete Jimenez o more refactoring and simplification to reduce code size 1208a34d5fb1SAntonio Huete Jimenez o var.c: extract CanonicalVarname from VarFind 1209a34d5fb1SAntonio Huete Jimenez o make.c: extract UpdateImplicitParentsVars from Make_Update 1210a34d5fb1SAntonio Huete Jimenez o main.c: extract PrintVar from doPrintVars 1211a34d5fb1SAntonio Huete Jimenez extract HandlePWD from main 1212a34d5fb1SAntonio Huete Jimenez o lst.c: inline simple Lst getters 1213a34d5fb1SAntonio Huete Jimenez remove unused Lst_ForEach 1214a34d5fb1SAntonio Huete Jimenez o job.c: move struct Shell from job.h to job.c 1215a34d5fb1SAntonio Huete Jimenez o more unit tests 1216a34d5fb1SAntonio Huete Jimenez 1217a34d5fb1SAntonio Huete Jimenez2020-10-19 Simon J Gerraty <sjg@beast.crufty.net> 1218a34d5fb1SAntonio Huete Jimenez 1219a34d5fb1SAntonio Huete Jimenez * configure.in: remove inappropriate use of AC_INCLUDES_DEFAULT 1220a34d5fb1SAntonio Huete Jimenez 1221a34d5fb1SAntonio Huete Jimenez2020-10-18 Simon J Gerraty <sjg@beast.crufty.net> 1222a34d5fb1SAntonio Huete Jimenez 1223a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201018 1224a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1225a34d5fb1SAntonio Huete Jimenez o remove USE_IOVEC 1226a34d5fb1SAntonio Huete Jimenez o rename some Hash_* apis to Hash* 1227a34d5fb1SAntonio Huete Jimenez o replace execError with execDie 1228a34d5fb1SAntonio Huete Jimenez o rename Lst_Init to Lst_New 1229a34d5fb1SAntonio Huete Jimenez o add tags to enum types 1230a34d5fb1SAntonio Huete Jimenez o rename Stack to Vector 1231a34d5fb1SAntonio Huete Jimenez o parse.c: more refactoring 1232a34d5fb1SAntonio Huete Jimenez o unit-tests: make some tests use line buffered stdout 1233a34d5fb1SAntonio Huete Jimenez o unit-tests/Makefile: in meta mode do not make all tests depend on 1234a34d5fb1SAntonio Huete Jimenez Makefile, it isn't necessary. 1235a34d5fb1SAntonio Huete Jimenez 1236a34d5fb1SAntonio Huete Jimenez2020-10-10 Simon J Gerraty <sjg@beast.crufty.net> 1237a34d5fb1SAntonio Huete Jimenez 1238a34d5fb1SAntonio Huete Jimenez * main.c: check for CTL_HW being defined. 1239a34d5fb1SAntonio Huete Jimenez * unit-tests/Makefile: ensure export tests output are POSIX compliant 1240a34d5fb1SAntonio Huete Jimenez disable opt-debug-jobs test until it works on ubuntu 1241a34d5fb1SAntonio Huete Jimenez 1242a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201010 1243a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1244a34d5fb1SAntonio Huete Jimenez o dir.c: remove pathname limit for Dir_FindHereOrAbove 1245a34d5fb1SAntonio Huete Jimenez o hash.c: replace strcpy with memcpy in Hash_CreateEntry 1246a34d5fb1SAntonio Huete Jimenez o main.c: extract init_machine and init_machine_arch from main 1247a34d5fb1SAntonio Huete Jimenez allow to disable debug logging options 1248a34d5fb1SAntonio Huete Jimenez o parse.c: enable format string truncation warnings 1249a34d5fb1SAntonio Huete Jimenez extract parsing of sources from ParseDoDependency 1250a34d5fb1SAntonio Huete Jimenez split ParseDoSrc into smaller functions 1251a34d5fb1SAntonio Huete Jimenez hide implementation details from Parse_DoVar 1252a34d5fb1SAntonio Huete Jimenez clean up parsing of variable assignments 1253a34d5fb1SAntonio Huete Jimenez split Parse_DoVar into manageable pieces 1254a34d5fb1SAntonio Huete Jimenez don't modify the given line during Parse_DoVar 1255a34d5fb1SAntonio Huete Jimenez fix out-of-bounds memory access in Parse_DoVar 1256a34d5fb1SAntonio Huete Jimenez fix parsing of the :sh assignment modifier 1257a34d5fb1SAntonio Huete Jimenez o var.c: rework memory allocation for the name of variables 1258a34d5fb1SAntonio Huete Jimenez extract ApplyModifier_Literal into separate function 1259a34d5fb1SAntonio Huete Jimenez in lint mode, reject modifiers without delimiter 1260a34d5fb1SAntonio Huete Jimenez do not export variable names starting with '-' 1261a34d5fb1SAntonio Huete Jimenez o fix double-free bug in -DCLEANUP mode 1262a34d5fb1SAntonio Huete Jimenez o more cleanup to enable higher warnings level 1263a34d5fb1SAntonio Huete Jimenez o more unit tests 1264a34d5fb1SAntonio Huete Jimenez 1265a34d5fb1SAntonio Huete Jimenez2020-10-02 Simon J Gerraty <sjg@beast.crufty.net> 1266a34d5fb1SAntonio Huete Jimenez 1267a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201002 1268a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1269a34d5fb1SAntonio Huete Jimenez o dir.c: use hash table for looking up open directories by name 1270a34d5fb1SAntonio Huete Jimenez o main.c: clean up option handling 1271a34d5fb1SAntonio Huete Jimenez o parse.c: add missing const for Parse_AddIncludeDir 1272a34d5fb1SAntonio Huete Jimenez o var.c: ApplyModifier_To, update pp in each branch 1273a34d5fb1SAntonio Huete Jimenez o remove redundant function prototypes 1274a34d5fb1SAntonio Huete Jimenez o more unit tests 1275a34d5fb1SAntonio Huete Jimenez 1276a34d5fb1SAntonio Huete Jimenez2020-10-01 Simon J Gerraty <sjg@beast.crufty.net> 1277a34d5fb1SAntonio Huete Jimenez 1278a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20201001 1279a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1280a34d5fb1SAntonio Huete Jimenez o compat.c: comment about "..." 1281a34d5fb1SAntonio Huete Jimenez 1282a34d5fb1SAntonio Huete Jimenez2020-09-30 Simon J Gerraty <sjg@beast.crufty.net> 1283a34d5fb1SAntonio Huete Jimenez 1284a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200930 1285a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1286a34d5fb1SAntonio Huete Jimenez o job.c: split Job.jobPipe into 2 separate fields 1287a34d5fb1SAntonio Huete Jimenez replace Lst_Open with direct iteration 1288a34d5fb1SAntonio Huete Jimenez o lst.c: remove redundant assertions 1289a34d5fb1SAntonio Huete Jimenez o targ.c: replace Lst_Open with direct iteration 1290a34d5fb1SAntonio Huete Jimenez o var.c: fix bug in evaluation of indirect variable modifiers 1291a34d5fb1SAntonio Huete Jimenez extract ApplyModifier_Quote into separate function 1292a34d5fb1SAntonio Huete Jimenez o make debug logging simpler 1293a34d5fb1SAntonio Huete Jimenez 1294a34d5fb1SAntonio Huete Jimenez2020-09-27 Simon J Gerraty <sjg@beast.crufty.net> 1295a34d5fb1SAntonio Huete Jimenez 1296a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200927 1297a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1298a34d5fb1SAntonio Huete Jimenez o parse.c: ensure parse errors result in 'stopped in' message. 1299a34d5fb1SAntonio Huete Jimenez o compat.c: make parameter of Compat_RunCommand const 1300a34d5fb1SAntonio Huete Jimenez o main.c: extract InitVarTarget from main 1301a34d5fb1SAntonio Huete Jimenez o parse.c: rename ParseFinishLine to FinishDependencyGroup 1302a34d5fb1SAntonio Huete Jimenez refactor ParseDoDependency 1303a34d5fb1SAntonio Huete Jimenez o var.c: Var_Subst no longer returns string result 1304a34d5fb1SAntonio Huete Jimenez rename Var_ParsePP back to Var_Parse 1305a34d5fb1SAntonio Huete Jimenez in lint mode, improve error handling for undefined variables 1306a34d5fb1SAntonio Huete Jimenez extract ParseVarname from Var_Parse 1307a34d5fb1SAntonio Huete Jimenez o rename Lst_ForEach to Lst_ForEachUntil 1308a34d5fb1SAntonio Huete Jimenez o inline Lst_ForEachUntil in several cases 1309a34d5fb1SAntonio Huete Jimenez o clean up API for finding and creating GNodes 1310a34d5fb1SAntonio Huete Jimenez o fix assertion failure in -j mode with .END node 1311a34d5fb1SAntonio Huete Jimenez o inline and remove LstNode_Prev and LstNode_Next 1312a34d5fb1SAntonio Huete Jimenez o use fine-grained type names for lists and their nodes 1313a34d5fb1SAntonio Huete Jimenez o more unit tests 1314a34d5fb1SAntonio Huete Jimenez 1315a34d5fb1SAntonio Huete Jimenez2020-09-11 Simon J Gerraty <sjg@beast.crufty.net> 1316a34d5fb1SAntonio Huete Jimenez 1317a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200911 1318a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1319a34d5fb1SAntonio Huete Jimenez o cond.c: split EvalComparison into smaller functions 1320a34d5fb1SAntonio Huete Jimenez reorder parameters of condition parsing functions 1321a34d5fb1SAntonio Huete Jimenez reduce code size in CondParser_Eval 1322a34d5fb1SAntonio Huete Jimenez rename CondGetString to CondParser_String 1323a34d5fb1SAntonio Huete Jimenez add CondLexer_SkipWhitespace 1324a34d5fb1SAntonio Huete Jimenez group the condition parsing state into a struct 1325a34d5fb1SAntonio Huete Jimenez in CondGetString, replace repeated Buf_Add with Buf_AddStr 1326a34d5fb1SAntonio Huete Jimenez o migrate Var_Parse to Var_ParsePP 1327a34d5fb1SAntonio Huete Jimenez o add wrappers around ctype.h functions 1328a34d5fb1SAntonio Huete Jimenez o lst.c: use a stack instead of a list for the nested include path 1329a34d5fb1SAntonio Huete Jimenez o more unit tests 1330a34d5fb1SAntonio Huete Jimenez 1331a34d5fb1SAntonio Huete Jimenez2020-09-04 Simon J Gerraty <sjg@beast.crufty.net> 1332a34d5fb1SAntonio Huete Jimenez 1333a34d5fb1SAntonio Huete Jimenez * make-bootstrap.sh.in: adjust object list 1334a34d5fb1SAntonio Huete Jimenez 1335a34d5fb1SAntonio Huete Jimenez2020-09-02 Simon J Gerraty <sjg@beast.crufty.net> 1336a34d5fb1SAntonio Huete Jimenez 1337a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200902 1338a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1339a34d5fb1SAntonio Huete Jimenez o use make_stat to ensure no confusion over valid fields 1340a34d5fb1SAntonio Huete Jimenez returned by cached_stat 1341a34d5fb1SAntonio Huete Jimenez o var.c: make VarQuote const-correct 1342a34d5fb1SAntonio Huete Jimenez o add unit tests for .for 1343a34d5fb1SAntonio Huete Jimenez 1344a34d5fb1SAntonio Huete Jimenez2020-09-01 Simon J Gerraty <sjg@beast.crufty.net> 1345a34d5fb1SAntonio Huete Jimenez 1346a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200901 1347a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1348a34d5fb1SAntonio Huete Jimenez o rename Hash_Table fields 1349a34d5fb1SAntonio Huete Jimenez o make data types in Dir_HasWildcards more precise 1350a34d5fb1SAntonio Huete Jimenez 1351a34d5fb1SAntonio Huete Jimenez2020-08-31 Simon J Gerraty <sjg@beast.crufty.net> 1352a34d5fb1SAntonio Huete Jimenez 1353a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200831 1354a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1355a34d5fb1SAntonio Huete Jimenez o suff.c: fix unbalanced Lst_Open/Lst_Close in SuffFindCmds 1356a34d5fb1SAntonio Huete Jimenez o lst.c: Lst_Open renable assert that list isn't open 1357a34d5fb1SAntonio Huete Jimenez o unit test for .TARGET dependent flags 1358a34d5fb1SAntonio Huete Jimenez o var.c: fix aliasing bug in VarUniq 1359a34d5fb1SAntonio Huete Jimenez o more unit tests for :u 1360a34d5fb1SAntonio Huete Jimenez 1361a34d5fb1SAntonio Huete Jimenez2020-08-30 Simon J Gerraty <sjg@beast.crufty.net> 1362a34d5fb1SAntonio Huete Jimenez 1363a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200830 1364a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1365a34d5fb1SAntonio Huete Jimenez o allow for strict type checking for Boolean 1366a34d5fb1SAntonio Huete Jimenez o Var_Parse never returns NULL 1367a34d5fb1SAntonio Huete Jimenez o Var_Subst never returns NULL 1368a34d5fb1SAntonio Huete Jimenez o Lst_Find now takes boolean match function 1369a34d5fb1SAntonio Huete Jimenez o rename Lst_Memeber to Lst_FindDatum 1370a34d5fb1SAntonio Huete Jimenez o rename LstNode functions to match their type 1371a34d5fb1SAntonio Huete Jimenez o rename GNode.iParents to implicitParents 1372a34d5fb1SAntonio Huete Jimenez o fix assertion failure for .SUFFIXES in archives 1373a34d5fb1SAntonio Huete Jimenez o compat.c: clean up documentation for CompatInterrupt and Compat_Run 1374a34d5fb1SAntonio Huete Jimenez remove unreachable code from CompatRunCommand 1375a34d5fb1SAntonio Huete Jimenez o main.c: simplify getBoolean 1376a34d5fb1SAntonio Huete Jimenez o stc.c: replace brk_string with simpler Str_Words 1377a34d5fb1SAntonio Huete Jimenez o suff.c: add debug macros 1378a34d5fb1SAntonio Huete Jimenez 1379a34d5fb1SAntonio Huete Jimenez2020-08-28 Simon J Gerraty <sjg@beast.crufty.net> 1380a34d5fb1SAntonio Huete Jimenez 1381a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200828 1382a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1383a34d5fb1SAntonio Huete Jimenez o lst.c: inline LstIsValid and LstNodeIsValid 1384a34d5fb1SAntonio Huete Jimenez o remove trailing S from Lst function names after migration complete 1385a34d5fb1SAntonio Huete Jimenez o more comment cleanup/clarification 1386a34d5fb1SAntonio Huete Jimenez o suff.c: clean up suffix handling 1387a34d5fb1SAntonio Huete Jimenez o more unit tests 1388a34d5fb1SAntonio Huete Jimenez 1389a34d5fb1SAntonio Huete Jimenez2020-08-26 Simon J Gerraty <sjg@beast.crufty.net> 1390a34d5fb1SAntonio Huete Jimenez 1391a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200826 1392a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1393a34d5fb1SAntonio Huete Jimenez o enum.c: distinguish between bitsets containing flags and 1394a34d5fb1SAntonio Huete Jimenez ordinary enums 1395a34d5fb1SAntonio Huete Jimenez o var.c: fix error message for ::!= modifier with shell error 1396a34d5fb1SAntonio Huete Jimenez o fix bugs in -DCLEANUP mode 1397a34d5fb1SAntonio Huete Jimenez 1398a34d5fb1SAntonio Huete Jimenez2020-08-24 Simon J Gerraty <sjg@beast.crufty.net> 1399a34d5fb1SAntonio Huete Jimenez 1400a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200824 1401a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1402a34d5fb1SAntonio Huete Jimenez o in debug mode, print GNode details in symbols 1403a34d5fb1SAntonio Huete Jimenez 1404a34d5fb1SAntonio Huete Jimenez2020-08-23 Simon J Gerraty <sjg@beast.crufty.net> 1405a34d5fb1SAntonio Huete Jimenez 1406a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200823 1407a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1408a34d5fb1SAntonio Huete Jimenez o lst.c: more asserts, 1409a34d5fb1SAntonio Huete Jimenez make args to Lst_Find match others. 1410a34d5fb1SAntonio Huete Jimenez o var.c: pass flags to VarAdd 1411a34d5fb1SAntonio Huete Jimenez o arch.c: use Buffer 1412a34d5fb1SAntonio Huete Jimenez o str.c: brk_string return size_t for nwords 1413a34d5fb1SAntonio Huete Jimenez o more unit tests 1414a34d5fb1SAntonio Huete Jimenez 1415a34d5fb1SAntonio Huete Jimenez2020-08-22 Simon J Gerraty <sjg@beast.crufty.net> 1416a34d5fb1SAntonio Huete Jimenez 1417a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 1418a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1419a34d5fb1SAntonio Huete Jimenez o var.c: support for read-only variables eg .SHELL 1420a34d5fb1SAntonio Huete Jimenez being the shell used to run scripts. 1421a34d5fb1SAntonio Huete Jimenez o lst.c: more simplification 1422a34d5fb1SAntonio Huete Jimenez o more documentation and style cleanup 1423a34d5fb1SAntonio Huete Jimenez o more unit tests 1424a34d5fb1SAntonio Huete Jimenez o ensure unit-test/Makefile is run by TEST_MAKE 1425a34d5fb1SAntonio Huete Jimenez o reduce duplication of header inclusion 1426a34d5fb1SAntonio Huete Jimenez 1427a34d5fb1SAntonio Huete Jimenez2020-08-21 Simon J Gerraty <sjg@beast.crufty.net> 1428a34d5fb1SAntonio Huete Jimenez 1429a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200821 1430a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1431a34d5fb1SAntonio Huete Jimenez o lst.c: revert invalid assertion - but document it 1432a34d5fb1SAntonio Huete Jimenez o dir.c: split Dir_Init into two functions 1433a34d5fb1SAntonio Huete Jimenez 1434a34d5fb1SAntonio Huete Jimenez2020-08-20 Simon J Gerraty <sjg@beast.crufty.net> 1435a34d5fb1SAntonio Huete Jimenez 1436a34d5fb1SAntonio Huete Jimenez * lst.c: needs inttypes.h on Linux 1437a34d5fb1SAntonio Huete Jimenez 1438a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200820 1439a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1440a34d5fb1SAntonio Huete Jimenez o make.1: clarify some passages 1441a34d5fb1SAntonio Huete Jimenez o var.c: more cleanup, clarify comments 1442a34d5fb1SAntonio Huete Jimenez o make_malloc.c: remove unreachable code 1443a34d5fb1SAntonio Huete Jimenez o cond.c: make CondGetString easier to debug 1444a34d5fb1SAntonio Huete Jimenez o simplify list usage 1445a34d5fb1SAntonio Huete Jimenez o unit-tests: more 1446a34d5fb1SAntonio Huete Jimenez 1447a34d5fb1SAntonio Huete Jimenez2020-08-16 Simon J Gerraty <sjg@beast.crufty.net> 1448a34d5fb1SAntonio Huete Jimenez 1449a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200816 1450a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1451a34d5fb1SAntonio Huete Jimenez o refactor unit-tests to be more fine grained 1452a34d5fb1SAntonio Huete Jimenez not all tests moved yet 1453a34d5fb1SAntonio Huete Jimenez 1454a34d5fb1SAntonio Huete Jimenez2020-08-14 Simon J Gerraty <sjg@beast.crufty.net> 1455a34d5fb1SAntonio Huete Jimenez 1456a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200814 1457a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1458a34d5fb1SAntonio Huete Jimenez o more str_concat variants 1459a34d5fb1SAntonio Huete Jimenez o more enums for flags 1460a34d5fb1SAntonio Huete Jimenez o var.c: cleanup for higher warnings level 1461a34d5fb1SAntonio Huete Jimenez 1462a34d5fb1SAntonio Huete Jimenez2020-08-10 Simon J Gerraty <sjg@beast.crufty.net> 1463a34d5fb1SAntonio Huete Jimenez 1464a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200810 1465a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1466a34d5fb1SAntonio Huete Jimenez o more unit tests 1467a34d5fb1SAntonio Huete Jimenez o general comment and style cleanup 1468a34d5fb1SAntonio Huete Jimenez 1469a34d5fb1SAntonio Huete Jimenez2020-08-08 Simon J Gerraty <sjg@beast.crufty.net> 1470a34d5fb1SAntonio Huete Jimenez 1471a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200808 1472a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1473a34d5fb1SAntonio Huete Jimenez o enum.[ch]: streamline, enums for use in flags and debug output 1474a34d5fb1SAntonio Huete Jimenez o cond.c: cleanup 1475a34d5fb1SAntonio Huete Jimenez o var.c: reduce duplicate code for modifiers 1476a34d5fb1SAntonio Huete Jimenez debug logging for Var_Parse 1477a34d5fb1SAntonio Huete Jimenez more detailed debug output 1478a34d5fb1SAntonio Huete Jimenez o more unit tests 1479a34d5fb1SAntonio Huete Jimenez 1480a34d5fb1SAntonio Huete Jimenez2020-08-06 Simon J Gerraty <sjg@beast.crufty.net> 1481a34d5fb1SAntonio Huete Jimenez 1482a34d5fb1SAntonio Huete Jimenez * unit-tests/Makefile: -r for recursive and include Makefile.inc 1483a34d5fb1SAntonio Huete Jimenez so I can run tests in meta mode 1484a34d5fb1SAntonio Huete Jimenez supress extra noise if in meta mode 1485a34d5fb1SAntonio Huete Jimenez 1486a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200806 1487a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1488a34d5fb1SAntonio Huete Jimenez o parse.c: remove VARE_WANTRES for LINT 1489a34d5fb1SAntonio Huete Jimenez we just want to check parsing (for now). 1490a34d5fb1SAntonio Huete Jimenez 1491a34d5fb1SAntonio Huete Jimenez2020-08-05 Simon J Gerraty <sjg@beast.crufty.net> 1492a34d5fb1SAntonio Huete Jimenez 1493a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200805 1494a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1495a34d5fb1SAntonio Huete Jimenez o make.1: Rework the description of dependence operators 1496a34d5fb1SAntonio Huete Jimenez 1497a34d5fb1SAntonio Huete Jimenez2020-08-03 Simon J Gerraty <sjg@beast.crufty.net> 1498a34d5fb1SAntonio Huete Jimenez 1499a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200803 1500a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1501a34d5fb1SAntonio Huete Jimenez o revert some C99 usage, for max portability 1502a34d5fb1SAntonio Huete Jimenez o unit-tests/lint 1503a34d5fb1SAntonio Huete Jimenez 1504a34d5fb1SAntonio Huete Jimenez2020-08-02 Simon J Gerraty <sjg@beast.crufty.net> 1505a34d5fb1SAntonio Huete Jimenez 1506a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200802 1507a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1508a34d5fb1SAntonio Huete Jimenez o more unit tests 1509a34d5fb1SAntonio Huete Jimenez 1510a34d5fb1SAntonio Huete Jimenez2020-08-01 Simon J Gerraty <sjg@beast.crufty.net> 1511a34d5fb1SAntonio Huete Jimenez 1512a34d5fb1SAntonio Huete Jimenez * Remove NetBSD specific plumbing from unit-tests/Makefile 1513a34d5fb1SAntonio Huete Jimenez 1514a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200801 1515a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1516a34d5fb1SAntonio Huete Jimenez o make Var_Value return const 1517a34d5fb1SAntonio Huete Jimenez o size_t for buf sizes 1518a34d5fb1SAntonio Huete Jimenez o optimize some buffer operations - avoid strlen 1519a34d5fb1SAntonio Huete Jimenez 1520a34d5fb1SAntonio Huete Jimenez2020-07-31 Simon J Gerraty <sjg@beast.crufty.net> 1521a34d5fb1SAntonio Huete Jimenez 1522a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200731 1523a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1524a34d5fb1SAntonio Huete Jimenez o var.c: fix undefinded behavior for incomplete :t modifier 1525a34d5fb1SAntonio Huete Jimenez fixes unit-test/moderrs on Ubuntu 1526a34d5fb1SAntonio Huete Jimenez o parse.c: When parsing variable assignments other than := 1527a34d5fb1SAntonio Huete Jimenez if DEBUG(LINT) test substition of value, so we get a file and 1528a34d5fb1SAntonio Huete Jimenez line number in the resulting error. 1529a34d5fb1SAntonio Huete Jimenez o dir.c: fix parsing of nested braces in dependency lines 1530a34d5fb1SAntonio Huete Jimenez add unit-tests 1531a34d5fb1SAntonio Huete Jimenez 1532a34d5fb1SAntonio Huete Jimenez2020-07-30 Simon J Gerraty <sjg@beast.crufty.net> 1533a34d5fb1SAntonio Huete Jimenez 1534a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200730 1535a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1536a34d5fb1SAntonio Huete Jimenez o var.c: minor cleanup 1537a34d5fb1SAntonio Huete Jimenez o unit-tests: more tests to improve code coverage 1538a34d5fb1SAntonio Huete Jimenez 1539a34d5fb1SAntonio Huete Jimenez2020-07-28 Simon J Gerraty <sjg@beast.crufty.net> 1540a34d5fb1SAntonio Huete Jimenez 1541a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200728 1542a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1543a34d5fb1SAntonio Huete Jimenez o var.c: more optimizations 1544a34d5fb1SAntonio Huete Jimenez 1545a34d5fb1SAntonio Huete Jimenez2020-07-26 Simon J Gerraty <sjg@beast.crufty.net> 1546a34d5fb1SAntonio Huete Jimenez 1547a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200726 1548a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1549a34d5fb1SAntonio Huete Jimenez o collapse lsd.lib into lst.c - reduce code size and allow inlining 1550a34d5fb1SAntonio Huete Jimenez o lots of function comment updates 1551a34d5fb1SAntonio Huete Jimenez o var.c: more optimizations 1552a34d5fb1SAntonio Huete Jimenez o make return of Var_Parse const 1553a34d5fb1SAntonio Huete Jimenez 1554a34d5fb1SAntonio Huete Jimenez2020-07-20 Simon J Gerraty <sjg@beast.crufty.net> 1555a34d5fb1SAntonio Huete Jimenez 1556a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200720 1557a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1558a34d5fb1SAntonio Huete Jimenez o DEBUG_HASH report stats at end and tone down the noise 1559a34d5fb1SAntonio Huete Jimenez o var.c: each flag type gets its own prefix. 1560a34d5fb1SAntonio Huete Jimenez move SysV string matching to var.c 1561a34d5fb1SAntonio Huete Jimenez make ampersand in ${VAR:from=to&} an ordinary character 1562a34d5fb1SAntonio Huete Jimenez cleanup and simplify implementation of modifiers 1563a34d5fb1SAntonio Huete Jimenez o make.1: move documentation for assignment modifiers 1564a34d5fb1SAntonio Huete Jimenez 1565a34d5fb1SAntonio Huete Jimenez2020-07-18 Simon J Gerraty <sjg@beast.crufty.net> 1566a34d5fb1SAntonio Huete Jimenez 1567a34d5fb1SAntonio Huete Jimenez * VERSION (_MAKE_VERSION): 20200718 1568a34d5fb1SAntonio Huete Jimenez Merge with NetBSD make, pick up 1569a34d5fb1SAntonio Huete Jimenez o DEBUG_HASH to see how well the hash tables are working 1570a34d5fb1SAntonio Huete Jimenez 1571a34d5fb1SAntonio Huete Jimenez2020-07-11 Simon J Gerraty <sjg@beast.crufty.net> 1572a34d5fb1SAntonio Huete Jimenez 1573a34d5fb1SAntonio Huete Jimenez * bsd.after-import.mk: make sure we update unit-tests/Makefile 1574a34d5fb1SAntonio Huete Jimenez 1575ca58f742SDaniel Fojt2020-07-10 Simon J Gerraty <sjg@beast.crufty.net> 1576ca58f742SDaniel Fojt 1577ca58f742SDaniel Fojt * configure.in: use AC_INCLUDES_DEFAULT rather than AC_HEADER_STDC 1578ca58f742SDaniel Fojt 1579ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200710 1580ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1581ca58f742SDaniel Fojt o filemon/filemon_dev.c: use O_CLOEXEC rather than extra syscall 1582ca58f742SDaniel Fojt o meta.c: target flagged .META is out-of-date if meta file missing 1583ca58f742SDaniel Fojt 1584ca58f742SDaniel Fojt2020-07-09 Simon J Gerraty <sjg@beast.crufty.net> 1585ca58f742SDaniel Fojt 1586ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200709 1587ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1588ca58f742SDaniel Fojt o cond.c: fix for compare_expression when doEval=0 1589ca58f742SDaniel Fojt o unit-tests/Makefile: rework 1590ca58f742SDaniel Fojt o filemon/filemon_dev.c: ensure filemon fd is closed on exec. 1591ca58f742SDaniel Fojt 1592ca58f742SDaniel Fojt2020-07-04 Simon J Gerraty <sjg@beast.crufty.net> 1593ca58f742SDaniel Fojt 1594ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200704 1595ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1596ca58f742SDaniel Fojt (most of this by rillig@) 1597ca58f742SDaniel Fojt o lots of style and white-space cleanup 1598ca58f742SDaniel Fojt o lots more unit tests for variable modifiers 1599ca58f742SDaniel Fojt o simplified description of some functions 1600ca58f742SDaniel Fojt o str.c: refactor Str_Match 1601ca58f742SDaniel Fojt o var.c: debugging output for :@ 1602ca58f742SDaniel Fojt constify VarModify parameter 1603ca58f742SDaniel Fojt fix :hash modifier on 16-bit platforms 1604ca58f742SDaniel Fojt remove unnecessary forward declarations 1605ca58f742SDaniel Fojt refactor ApplyModifier_SysV to have less indentation 1606ca58f742SDaniel Fojt simplify code for :E and :R 1607ca58f742SDaniel Fojt clean up code for :H and :T 1608ca58f742SDaniel Fojt refactor ApplyModifiers 1609ca58f742SDaniel Fojt 1610ca58f742SDaniel Fojt * var.c: we need stdint.h on some platforms to get uint32_t 1611ca58f742SDaniel Fojt * unit-test/Makefile: we need to supress the specific error 1612ca58f742SDaniel Fojt for RE substitution error in modmisc, since it varies accross 1613ca58f742SDaniel Fojt different OS. 1614ca58f742SDaniel Fojt 1615ca58f742SDaniel Fojt2020-07-02 Simon J Gerraty <sjg@beast.crufty.net> 1616ca58f742SDaniel Fojt 1617ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200702 1618ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1619ca58f742SDaniel Fojt o var.c: more improvements to avoiding unnecessary evaluation 1620ca58f742SDaniel Fojt use enums for flags 1621ca58f742SDaniel Fojt o remove flags arg to Var_Set which outside of var.c is always 0 1622ca58f742SDaniel Fojt 1623ca58f742SDaniel Fojt2020-07-01 Simon J Gerraty <sjg@beast.crufty.net> 1624ca58f742SDaniel Fojt 1625ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200701 1626ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1627ca58f742SDaniel Fojt o var.c: with change to cond.c; ensure that nested variables 1628ca58f742SDaniel Fojt within a variable name are expanded. 1629ca58f742SDaniel Fojt o unit-tests/varmisc.mk: test for nested varname 1630ca58f742SDaniel Fojt 1631ca58f742SDaniel Fojt2020-06-29 Simon J Gerraty <sjg@beast.crufty.net> 1632ca58f742SDaniel Fojt 1633ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200629 1634ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1635ca58f742SDaniel Fojt o cond.c: do not eval unnecessary terms of conditionals. 1636ca58f742SDaniel Fojt 1637ca58f742SDaniel Fojt2020-06-25 Simon J Gerraty <sjg@beast.crufty.net> 1638ca58f742SDaniel Fojt 1639ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200625 1640ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1641ca58f742SDaniel Fojt o meta.c: report error if lseek in filemon_read fails 1642ca58f742SDaniel Fojt 1643ca58f742SDaniel Fojt2020-06-22 Simon J Gerraty <sjg@beast.crufty.net> 1644ca58f742SDaniel Fojt 1645ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200622 1646ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1647ca58f742SDaniel Fojt o dieQuietly: ignore OP_SUBMAKE as too aggressive 1648ca58f742SDaniel Fojt 1649ca58f742SDaniel Fojt2020-06-19 Simon J Gerraty <sjg@beast.crufty.net> 1650ca58f742SDaniel Fojt 1651ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200619 1652ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1653ca58f742SDaniel Fojt o str.c: performance improvement for Str_Match for multiple '*' 1654ca58f742SDaniel Fojt o dieQuietly: supress the failure output from make 1655ca58f742SDaniel Fojt when failing node is a sub-make or a sibling failed. 1656ca58f742SDaniel Fojt This cuts down greatly on unhelpful noise at the end of 1657ca58f742SDaniel Fojt build log. Disabled by -dj or .MAKE.DIE_QUIETLY=no 1658ca58f742SDaniel Fojt 1659ca58f742SDaniel Fojt2020-06-10 Simon J Gerraty <sjg@beast.crufty.net> 1660ca58f742SDaniel Fojt 1661ca58f742SDaniel Fojt * FILES: add LICENSE to appease some packagers. 1662ca58f742SDaniel Fojt This is an attempt to fairly represent the license on almost 1663ca58f742SDaniel Fojt 200 files, which are almost all BSD-3-Clause 1664ca58f742SDaniel Fojt The few exceptions being more liberal. 1665ca58f742SDaniel Fojt 1666ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200610 1667ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1668ca58f742SDaniel Fojt o unit test for :Or 1669ca58f742SDaniel Fojt 1670ca58f742SDaniel Fojt2020-06-06 Simon J Gerraty <sjg@beast.crufty.net> 1671ca58f742SDaniel Fojt 1672ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200606 1673ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1674ca58f742SDaniel Fojt o make.1: cleanup 1675ca58f742SDaniel Fojt 1676ca58f742SDaniel Fojt * Makefile: fix depends for main.o which broke MAKE_VERSION 1677ca58f742SDaniel Fojt 1678ca58f742SDaniel Fojt2020-06-05 Simon J Gerraty <sjg@beast.crufty.net> 1679ca58f742SDaniel Fojt 1680ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200605 1681ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1682ca58f742SDaniel Fojt o dir.c: cached_stats - don't confuse stat and lstat results. 1683ca58f742SDaniel Fojt o var.c: add :Or for reverse sort. 1684ca58f742SDaniel Fojt 1685ca58f742SDaniel Fojt2020-05-24 Simon J Gerraty <sjg@beast.crufty.net> 1686ca58f742SDaniel Fojt 1687ca58f742SDaniel Fojt * configure.in: add AC_PROG_CC_C99 for mipspro compiler 1688ca58f742SDaniel Fojt also if --with-filemon= specifies path to filemon.h 1689ca58f742SDaniel Fojt set use_filemon=dev 1690ca58f742SDaniel Fojt * dirname.c: remove include of namespace.h 1691ca58f742SDaniel Fojt 1692ca58f742SDaniel Fojt2020-05-17 Simon J Gerraty <sjg@beast.crufty.net> 1693ca58f742SDaniel Fojt 1694ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200517 1695ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1696ca58f742SDaniel Fojt o modified dollar tests to avoid shell dependencies 1697ca58f742SDaniel Fojt o new tests for .INCLUDEFROM 1698ca58f742SDaniel Fojt 1699ca58f742SDaniel Fojt2020-05-16 Simon J Gerraty <sjg@beast.crufty.net> 1700ca58f742SDaniel Fojt 1701ca58f742SDaniel Fojt * unit-tests/dollar.mk: tweak '1 dollar literal' test 1702ca58f742SDaniel Fojt to not depend so much on shell behavior 1703ca58f742SDaniel Fojt 1704ca58f742SDaniel Fojt2020-05-10 Simon J Gerraty <sjg@beast.crufty.net> 1705ca58f742SDaniel Fojt 1706ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200510 1707ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1708ca58f742SDaniel Fojt o unit test for dollar handling 1709ca58f742SDaniel Fojt 1710ca58f742SDaniel Fojt2020-05-06 Simon J Gerraty <sjg@beast.crufty.net> 1711ca58f742SDaniel Fojt 1712ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200506 1713ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1714ca58f742SDaniel Fojt o str.c: empty string does not match % pattern 1715ca58f742SDaniel Fojt plus unit-test changes 1716ca58f742SDaniel Fojt 1717ca58f742SDaniel Fojt2020-05-04 Simon J Gerraty <sjg@beast.crufty.net> 1718ca58f742SDaniel Fojt 1719ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200504 1720ca58f742SDaniel Fojt May the 4th be with you 1721ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1722ca58f742SDaniel Fojt o var.c: import handling of old sysV style modifier using '%' 1723ca58f742SDaniel Fojt o str.c: refactor brk_string 1724ca58f742SDaniel Fojt o unit-tests: add test case for lazy conditions 1725ca58f742SDaniel Fojt 1726ca58f742SDaniel Fojt2020-04-18 Simon J Gerraty <sjg@beast.crufty.net> 1727ca58f742SDaniel Fojt 1728ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200418 1729ca58f742SDaniel Fojt 1730ca58f742SDaniel Fojt * configure.in: use_makefile=no for cygwin et al. 1731ca58f742SDaniel Fojt case insensitive filesystems just don't work if both 1732ca58f742SDaniel Fojt makefile and Makefile exist. 1733ca58f742SDaniel Fojt NOTE: bmake does not support cygwin and likely never will, 1734ca58f742SDaniel Fojt but if brave souls want to try it - help them out. 1735ca58f742SDaniel Fojt 1736ca58f742SDaniel Fojt2020-04-02 Simon J Gerraty <sjg@beast.crufty.net> 1737ca58f742SDaniel Fojt 1738ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200402 1739ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1740ca58f742SDaniel Fojt o meta.c: meta_oodate, CHECK_VALID_META is too aggressive for CMD 1741ca58f742SDaniel Fojt a blank command is perfectly valid. 1742ca58f742SDaniel Fojt 1743ca58f742SDaniel Fojt2020-03-30 Simon J Gerraty <sjg@beast.crufty.net> 1744ca58f742SDaniel Fojt 1745ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200330 1746ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1747ca58f742SDaniel Fojt o make.h: extern debug_file 1748ca58f742SDaniel Fojt 1749ca58f742SDaniel Fojt2020-03-18 Simon J Gerraty <sjg@beast.crufty.net> 1750ca58f742SDaniel Fojt 1751ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200318 1752ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1753ca58f742SDaniel Fojt o meta.c: meta_oodate, check for corrupted meta file 1754ca58f742SDaniel Fojt earlier and more often. 1755ca58f742SDaniel Fojt 1756ca58f742SDaniel Fojt2020-02-20 Simon J Gerraty <sjg@beast.crufty.net> 1757ca58f742SDaniel Fojt 1758ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200220 1759ca58f742SDaniel Fojt 1760ca58f742SDaniel Fojt2020-02-19 Simon J Gerraty <sjg@beast.crufty.net> 1761ca58f742SDaniel Fojt 1762ca58f742SDaniel Fojt * boot-strap: unset MAKEFLAGS 1763ca58f742SDaniel Fojt 1764ca58f742SDaniel Fojt2020-02-12 Simon J Gerraty <sjg@beast.crufty.net> 1765ca58f742SDaniel Fojt 1766ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20200212 1767ca58f742SDaniel Fojt * meta.c: meta_compat_parent check for USE_FILEMON 1768ca58f742SDaniel Fojt patch from Soeren Tempel 1769ca58f742SDaniel Fojt 1770ca58f742SDaniel Fojt2020-02-05 Simon J Gerraty <sjg@beast.crufty.net> 1771ca58f742SDaniel Fojt 1772ca58f742SDaniel Fojt * VERSION: 20200205 1773ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1774ca58f742SDaniel Fojt o meta.c: fix compat mode, need to call meta_job_output() 1775ca58f742SDaniel Fojt o job.c: extra fds for meta mode not needed if using filemon_dev 1776ca58f742SDaniel Fojt 1777ca58f742SDaniel Fojt2020-01-22 Simon J Gerraty <sjg@beast.crufty.net> 1778ca58f742SDaniel Fojt 1779ca58f742SDaniel Fojt * VERSION: 20200122 1780ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1781ca58f742SDaniel Fojt o meta.c: avoid passing NULL to filemon_*() when meta_needed() 1782ca58f742SDaniel Fojt returns FALSE. 1783ca58f742SDaniel Fojt 1784ca58f742SDaniel Fojt2020-01-21 Simon J Gerraty <sjg@beast.crufty.net> 1785ca58f742SDaniel Fojt 1786ca58f742SDaniel Fojt * VERSION: 20200121 1787ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1788ca58f742SDaniel Fojt o filemon/filemon_{dev,ktrace}.c: allow selection of 1789ca58f742SDaniel Fojt filemon implementation. filemon_dev.c uses the kernel module 1790ca58f742SDaniel Fojt while filemon_ktrace.c leverages the fktrace api available in 1791ca58f742SDaniel Fojt NetBSD. filemon_ktrace.c can hopefully form the basis for 1792ca58f742SDaniel Fojt adding support for other tracing mechanisms such as strace on 1793ca58f742SDaniel Fojt Linux. 1794ca58f742SDaniel Fojt o meta.c: when target is out-of-date per normal make rules 1795ca58f742SDaniel Fojt record value of .OODATE in meta file. 1796ca58f742SDaniel Fojt 1797ca58f742SDaniel Fojt2019-09-26 Simon J Gerraty <sjg@beast.crufty.net> 1798ca58f742SDaniel Fojt 1799ca58f742SDaniel Fojt * VERSION: 20190926 1800ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1801ca58f742SDaniel Fojt o parse.c: don't pass NULL to realpath(3) 1802ca58f742SDaniel Fojt some versions cannot handle it. 1803ca58f742SDaniel Fojt 1804ca58f742SDaniel Fojt2019-04-09 Simon J Gerraty <sjg@beast.crufty.net> 1805ca58f742SDaniel Fojt 1806ca58f742SDaniel Fojt * VERSION: 20190409 1807ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1808ca58f742SDaniel Fojt o parse.c: ParseDoDependency: free paths rather than assert 1809ca58f742SDaniel Fojt 1810ca58f742SDaniel Fojt2018-12-22 Simon J Gerraty <sjg@beast.crufty.net> 1811ca58f742SDaniel Fojt 1812ca58f742SDaniel Fojt * VERSION: 20181222 1813ca58f742SDaniel Fojt 1814ca58f742SDaniel Fojt * configure.in: add --without-makefile to avoid generating 1815ca58f742SDaniel Fojt makefile and make-bootstrap.sh 1816ca58f742SDaniel Fojt 1817ca58f742SDaniel Fojt * include Makefile.inc if it exists 1818ca58f742SDaniel Fojt 1819ca58f742SDaniel Fojt * Use Makefile and Makefile.config.in in unit-tests 1820ca58f742SDaniel Fojt so we can use just: make obj && make && make test 1821ca58f742SDaniel Fojt when bmake is already available. 1822ca58f742SDaniel Fojt We add --without-makefile to CONFIGURE_ARGS in this case. 1823ca58f742SDaniel Fojt 1824ca58f742SDaniel Fojt * tweak bsd.after-import.mk (captures Makefile.config etc 1825ca58f742SDaniel Fojt after import to FreeBSD for example) to cope with all the above. 1826ca58f742SDaniel Fojt 1827ca58f742SDaniel Fojt2018-12-21 Simon J Gerraty <sjg@beast.crufty.net> 1828ca58f742SDaniel Fojt 1829ca58f742SDaniel Fojt * VERSION: 20181221 1830ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1831ca58f742SDaniel Fojt o parse.c: ParseVErrorInternal use .PARSEDIR 1832ca58f742SDaniel Fojt and apply if relative, and then use .PARSEFILE 1833ca58f742SDaniel Fojt for consistent result. 1834ca58f742SDaniel Fojt 1835ca58f742SDaniel Fojt2018-12-20 Simon J Gerraty <sjg@beast.crufty.net> 1836ca58f742SDaniel Fojt 1837ca58f742SDaniel Fojt * VERSION: 20181220 1838ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1839ca58f742SDaniel Fojt o parse.c: ParseVErrorInternal use .CURDIR if .PARSEDIR 1840ca58f742SDaniel Fojt is relative 1841ca58f742SDaniel Fojt o var.c: avoid SEGFAULT in .unexport-env 1842ca58f742SDaniel Fojt when MAKELEVEL is not set 1843ca58f742SDaniel Fojt 1844ca58f742SDaniel Fojt2018-12-16 Simon J Gerraty <sjg@beast.crufty.net> 1845ca58f742SDaniel Fojt 1846ca58f742SDaniel Fojt * VERSION: 20181216 1847ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1848ca58f742SDaniel Fojt o fix for unit-tests/varquote.mk on Debian 1849ca58f742SDaniel Fojt 1850ca58f742SDaniel Fojt2018-09-21 Simon J. Gerraty <sjg@bad.crufty.net> 1851ca58f742SDaniel Fojt 1852ca58f742SDaniel Fojt * VERSION: 20180919 1853ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1854ca58f742SDaniel Fojt o var.c: add :q 1855ca58f742SDaniel Fojt o dir.c: cleanup caching of stats 1856ca58f742SDaniel Fojt 1857ca58f742SDaniel Fojt2018-09-21 Simon J Gerraty <sjg@beast.crufty.net> 1858ca58f742SDaniel Fojt 1859ca58f742SDaniel Fojt * Makefile.config.in: use += where it makes sense. 1860ca58f742SDaniel Fojt 1861ca58f742SDaniel Fojt2018-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 1862ca58f742SDaniel Fojt 1863ca58f742SDaniel Fojt * VERSION: 20180512 1864ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1865ca58f742SDaniel Fojt o job.c: skip polling job token pipe 1866ca58f742SDaniel Fojt 1867ca58f742SDaniel Fojt2018-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 1868ca58f742SDaniel Fojt 1869ca58f742SDaniel Fojt * VERSION: 20180405 1870ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1871ca58f742SDaniel Fojt o parse.c: be more cautious about detecting depenency line 1872ca58f742SDaniel Fojt rather than sysV style include. 1873ca58f742SDaniel Fojt 1874ca58f742SDaniel Fojt2018-02-22 Simon J. Gerraty <sjg@bad.crufty.net> 1875ca58f742SDaniel Fojt 1876ca58f742SDaniel Fojt * VERSION: 20180222 1877ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1878ca58f742SDaniel Fojt o parse.c: avoid calling sysconf for every call to loadfile 1879ca58f742SDaniel Fojt 1880ca58f742SDaniel Fojt2018-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 1881ca58f742SDaniel Fojt 1882ca58f742SDaniel Fojt * VERSION: 20180218 1883ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1884ca58f742SDaniel Fojt o var.c: Var_Set handle NULL value anytime. 1885ca58f742SDaniel Fojt 1886ca58f742SDaniel Fojt2018-02-12 Simon J. Gerraty <sjg@bad.crufty.net> 1887ca58f742SDaniel Fojt 1888ca58f742SDaniel Fojt * VERSION: 20180212 1889ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1890ca58f742SDaniel Fojt o parse.c: do not treat .info as warning with -W 1891ca58f742SDaniel Fojt 1892ca58f742SDaniel Fojt2017-12-07 Simon J. Gerraty <sjg@bad.crufty.net> 1893ca58f742SDaniel Fojt 1894ca58f742SDaniel Fojt * VERSION: 20171207 1895ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1896ca58f742SDaniel Fojt o var.c: Var_Append use Var_Set if var not previously set 1897ca58f742SDaniel Fojt so that VAR_CMD is handled correctly. 1898ca58f742SDaniel Fojt Add a suitable unit-test. 1899ca58f742SDaniel Fojt 1900ca58f742SDaniel Fojt2017-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 1901ca58f742SDaniel Fojt 1902ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): 20171126 1903ca58f742SDaniel Fojt 1904ca58f742SDaniel Fojt * aclocal.m4: use AC_LINK_IFELSE for AC_C___ATTRIBUTE__ 1905ca58f742SDaniel Fojt since AC_TRY_COMPILE puts input inside main() 1906ca58f742SDaniel Fojt which upsets modern compilers. 1907ca58f742SDaniel Fojt 1908ca58f742SDaniel Fojt2017-11-18 Simon J. Gerraty <sjg@bad.crufty.net> 1909ca58f742SDaniel Fojt 1910ca58f742SDaniel Fojt * VERSION: 20171118 1911ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1912ca58f742SDaniel Fojt o var.c: do not append to variable set on command line 1913ca58f742SDaniel Fojt add unit-test to catch this. 1914ca58f742SDaniel Fojt 1915ca58f742SDaniel Fojt2017-10-28 Simon J. Gerraty <sjg@bad.crufty.net> 1916ca58f742SDaniel Fojt 1917ca58f742SDaniel Fojt * VERSION: 20171028 1918ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1919ca58f742SDaniel Fojt o main.c: ignore empty MAKEOBJDIR 1920ca58f742SDaniel Fojt 1921ca58f742SDaniel Fojt * Makefile.config.in: 1922ca58f742SDaniel Fojt make @prefix@ @machine*@ and @default_sys_path@ defaults. 1923ca58f742SDaniel Fojt 1924ca58f742SDaniel Fojt2017-10-05 Simon J. Gerraty <sjg@bad.crufty.net> 1925ca58f742SDaniel Fojt 1926ca58f742SDaniel Fojt * VERSION: 20171005 1927ca58f742SDaniel Fojt 1928ca58f742SDaniel Fojt * unit-tests/dotwait.mk: redirect stderr through pipe for more 1929ca58f742SDaniel Fojt consistent result on some platforms. 1930ca58f742SDaniel Fojt 1931ca58f742SDaniel Fojt2017-08-13 Simon J. Gerraty <sjg@bad.crufty.net> 1932ca58f742SDaniel Fojt 1933ca58f742SDaniel Fojt * machine.sh: entry for AIX 1934ca58f742SDaniel Fojt 1935ca58f742SDaniel Fojt2017-08-12 Simon J. Gerraty <sjg@bad.crufty.net> 1936ca58f742SDaniel Fojt 1937ca58f742SDaniel Fojt * VERSION (_MAKE_VERSION): Move the setting of _MAKE_VERSION 1938ca58f742SDaniel Fojt to a file that can be included by configure as well as make. 1939ca58f742SDaniel Fojt This allows configure to set set _MAKE_VERSION in make-bootstrap.sh 1940ca58f742SDaniel Fojt 1941ca58f742SDaniel Fojt2017-08-10 Simon J. Gerraty <sjg@bad.crufty.net> 1942ca58f742SDaniel Fojt 1943ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170810 1944ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1945ca58f742SDaniel Fojt o meta.c: if target is in subdir we only need subdir name in 1946ca58f742SDaniel Fojt meta_name. 1947ca58f742SDaniel Fojt 1948ca58f742SDaniel Fojt2017-07-20 Simon J. Gerraty <sjg@bad.crufty.net> 1949ca58f742SDaniel Fojt 1950ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170720 1951ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1952ca58f742SDaniel Fojt o compat.c: pass SIGINT etc onto child and wait for it to exit 1953ca58f742SDaniel Fojt before we self-terminate. 1954ca58f742SDaniel Fojt 1955ca58f742SDaniel Fojt2017-07-11 Simon J. Gerraty <sjg@bad.crufty.net> 1956ca58f742SDaniel Fojt 1957ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170711 1958ca58f742SDaniel Fojt forgot to update after merge on 20170708 ;-) 1959ca58f742SDaniel Fojt o main.c: refactor to reduce size of main function. 1960ca58f742SDaniel Fojt add -v option to always fully expand values. 1961ca58f742SDaniel Fojt o meta.c: ensure command output in meta file has ending newline 1962ca58f742SDaniel Fojt even when filemon not being used. 1963ca58f742SDaniel Fojt When matching ${.MAKE.META.IGNORE_PATTERNS} do not use 1964ca58f742SDaniel Fojt pathname via ':L' since any ':' in pathname breaks that. 1965ca58f742SDaniel Fojt Instead set a '${.p.}' to pathname in the target context and 1966ca58f742SDaniel Fojt use that. 1967ca58f742SDaniel Fojt 1968ca58f742SDaniel Fojt2017-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 1969ca58f742SDaniel Fojt 1970ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170510 1971ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1972ca58f742SDaniel Fojt o main.c: Main_SetObjdir: ensure buf2 is in scope 1973ca58f742SDaniel Fojt 1974ca58f742SDaniel Fojt2017-05-08 Simon J. Gerraty <sjg@bad.crufty.net> 1975ca58f742SDaniel Fojt 1976ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170505 1977ca58f742SDaniel Fojt see mk/ChangeLog 1978ca58f742SDaniel Fojt 1979ca58f742SDaniel Fojt2017-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 1980ca58f742SDaniel Fojt 1981ca58f742SDaniel Fojt * parse.c: not everyone has stdint.h 1982ca58f742SDaniel Fojt 1983ca58f742SDaniel Fojt2017-05-01 Simon J. Gerraty <sjg@bad.crufty.net> 1984ca58f742SDaniel Fojt 1985ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170501 1986ca58f742SDaniel Fojt see mk/ChangeLog 1987ca58f742SDaniel Fojt 1988ca58f742SDaniel Fojt2017-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 1989ca58f742SDaniel Fojt 1990ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170421 1991ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1992ca58f742SDaniel Fojt o str.c: Str_Match: fix closure tests for [^] and add unit-test. 1993ca58f742SDaniel Fojt 1994ca58f742SDaniel Fojt2017-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 1995ca58f742SDaniel Fojt 1996ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170420 1997ca58f742SDaniel Fojt Merge with NetBSD make, pick up 1998ca58f742SDaniel Fojt o main.c: only use -C arg "as is" if it contains no 1999ca58f742SDaniel Fojt relative component. 2000ca58f742SDaniel Fojt 2001ca58f742SDaniel Fojt2017-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 2002ca58f742SDaniel Fojt 2003ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170418 2004ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2005ca58f742SDaniel Fojt o main.c: fix Main_SetObjdir() for relative paths (eg obj). 2006ca58f742SDaniel Fojt 2007ca58f742SDaniel Fojt2017-04-17 Simon J. Gerraty <sjg@bad.crufty.net> 2008ca58f742SDaniel Fojt 2009ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170417 2010ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2011ca58f742SDaniel Fojt o fixes a number of coverity complaints 2012ca58f742SDaniel Fojt - check return value of fseek, fcntl 2013ca58f742SDaniel Fojt - plug memory leak in Dir_FindFile, Var_LoopExpand, 2014ca58f742SDaniel Fojt JobPrintCommand, ParseTraditionalInclude 2015ca58f742SDaniel Fojt - use bmake_malloc() where NULL is not tollerated 2016ca58f742SDaniel Fojt - use MAKE_ATTR_UNUSED rather that kludges like 2017ca58f742SDaniel Fojt return(unused ? 0 : 0) 2018ca58f742SDaniel Fojt - use purge_cached_realpaths() rather than abuse cached_realpath() 2019ca58f742SDaniel Fojt 2020ca58f742SDaniel Fojt2017-04-13 Simon J. Gerraty <sjg@bad.crufty.net> 2021ca58f742SDaniel Fojt 2022ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170413 2023ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2024ca58f742SDaniel Fojt o main.c: when setting .OBJDIR ignore '$' in paths. 2025ca58f742SDaniel Fojt 2026ca58f742SDaniel Fojt * job.c: use MALLOC_OPTIONS to set malloc_options. 2027ca58f742SDaniel Fojt 2028ca58f742SDaniel Fojt2017-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 2029ca58f742SDaniel Fojt 2030ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170411 2031ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2032ca58f742SDaniel Fojt o str.c: Str_Match: allow [^a-z] to behave as expected. 2033ca58f742SDaniel Fojt 2034ca58f742SDaniel Fojt2017-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 2035ca58f742SDaniel Fojt 2036ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170326 2037ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2038ca58f742SDaniel Fojt o main.c: purge relative paths from realpath cache when .OBJDIR 2039ca58f742SDaniel Fojt is changed. 2040ca58f742SDaniel Fojt 2041ca58f742SDaniel Fojt2017-03-11 Simon J. Gerraty <sjg@bad.crufty.net> 2042ca58f742SDaniel Fojt 2043ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170311 2044ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2045ca58f742SDaniel Fojt o main.c: only use -C arg "as is" if it starts with '/'. 2046ca58f742SDaniel Fojt 2047ca58f742SDaniel Fojt2017-03-01 Simon J. Gerraty <sjg@bad.crufty.net> 2048ca58f742SDaniel Fojt 2049ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170301 2050ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2051ca58f742SDaniel Fojt o main.c: use -C arg "as is" rather than getcwd() 2052ca58f742SDaniel Fojt if they identify the same directory. 2053ca58f742SDaniel Fojt o parse.c: ensure loadfile buffer is \n terminated in non-mmap case 2054ca58f742SDaniel Fojt 2055ca58f742SDaniel Fojt2017-02-01 Simon J. Gerraty <sjg@bad.crufty.net> 2056ca58f742SDaniel Fojt 2057ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170201 2058ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2059ca58f742SDaniel Fojt o var.c: allow :_=var and avoid use of special context. 2060ca58f742SDaniel Fojt 2061ca58f742SDaniel Fojt2017-01-30 Simon J. Gerraty <sjg@bad.crufty.net> 2062ca58f742SDaniel Fojt 2063ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170130 2064ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2065ca58f742SDaniel Fojt o var.c: add :range and :_ 2066ca58f742SDaniel Fojt o main.c: partially initialize Dir_* before MainParseArgs() 2067ca58f742SDaniel Fojt can be called. 2068ca58f742SDaniel Fojt If -V, skip Main_ExportMAKEFLAGS() 2069ca58f742SDaniel Fojt 2070ca58f742SDaniel Fojt2017-01-14 Simon J. Gerraty <sjg@bad.crufty.net> 2071ca58f742SDaniel Fojt 2072ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20170114 2073ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2074ca58f742SDaniel Fojt o var.c: allow specifying the utc value used by :{gm,local}time 2075ca58f742SDaniel Fojt 2076ca58f742SDaniel Fojt2016-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 2077ca58f742SDaniel Fojt 2078ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20161212 2079ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2080ca58f742SDaniel Fojt o main.c: look for obj.${MACHINE}-${MACHINE_ARCH} too. 2081ca58f742SDaniel Fojt 2082ca58f742SDaniel Fojt2016-12-09 Simon J. Gerraty <sjg@bad.crufty.net> 2083ca58f742SDaniel Fojt 2084ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20161209 2085ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2086ca58f742SDaniel Fojt o main.c: cleanup setting of .OBJDIR 2087ca58f742SDaniel Fojt o parse.c: avoid coredump from (var)=val 2088ca58f742SDaniel Fojt 2089ca58f742SDaniel Fojt2016-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 2090ca58f742SDaniel Fojt 2091ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20161126 2092ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2093ca58f742SDaniel Fojt o make.c: Make_OODate: report src node name if path not set 2094ca58f742SDaniel Fojt 2095ca58f742SDaniel Fojt2016-09-26 Simon J. Gerraty <sjg@bad.crufty.net> 2096ca58f742SDaniel Fojt 2097ca58f742SDaniel Fojt * Makefile (_MAKE_VERSION): 20160926 2098ca58f742SDaniel Fojt Merge with NetBSD make, pick up 2099ca58f742SDaniel Fojt o support for .DELETE_ON_ERROR: (remove targets that fail) 2100ca58f742SDaniel Fojt 2101ca58f742SDaniel Fojt2016-09-26 Simon J. Gerraty <sjg@bad.crufty.net> 2102ca58f742SDaniel Fojt 2103ca58f742SDaniel Fojt * Makefile MAN: tweak .Dt to match ${PROG} 2104ca58f742SDaniel Fojt 2105f445c897SJohn Marino2016-08-18 Simon J. Gerraty <sjg@bad.crufty.net> 2106f445c897SJohn Marino 2107f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160818 2108f445c897SJohn Marino its a neater number; pick up whitespace fixes to man page. 2109f445c897SJohn Marino 2110f445c897SJohn Marino2016-08-17 Simon J. Gerraty <sjg@bad.crufty.net> 2111f445c897SJohn Marino 2112f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160817 2113f445c897SJohn Marino Merge with NetBSD make, pick up 2114f445c897SJohn Marino o meta.c: move handling of .MAKE.META.IGNORE_* to meta_ignore() 2115f445c897SJohn Marino so we can call it before adding entries to missingFiles. 2116f445c897SJohn Marino Thus we do not track files we have been told to ignore. 2117f445c897SJohn Marino 2118f445c897SJohn Marino2016-08-15 Simon J. Gerraty <sjg@bad.crufty.net> 2119f445c897SJohn Marino 2120f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160815 2121f445c897SJohn Marino Merge with NetBSD make, pick up 2122f445c897SJohn Marino o meta_oodate: apply .MAKE.META.IGNORE_FILTER (if defined) to 2123f445c897SJohn Marino pathnames, and skip if the expansion is empty. 2124f445c897SJohn Marino Useful for dirdeps.mk when checking DIRDEPS_CACHE. 2125f445c897SJohn Marino 2126f445c897SJohn Marino2016-08-12 Simon J. Gerraty <sjg@bad.crufty.net> 2127f445c897SJohn Marino 2128f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160812 2129f445c897SJohn Marino Merge with NetBSD make, pick up 2130f445c897SJohn Marino o meta.c: remove all missingFiles entries that match a deleted 2131f445c897SJohn Marino dir. 2132f445c897SJohn Marino o main.c: set .ERROR_CMD if possible. 2133f445c897SJohn Marino 2134f445c897SJohn Marino2016-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 2135f445c897SJohn Marino 2136f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160606 2137f445c897SJohn Marino Merge with NetBSD make, pick up 2138f445c897SJohn Marino o dir.c: extend mtimes cache to others via cached_stat() 2139f445c897SJohn Marino 2140f445c897SJohn Marino2016-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 2141f445c897SJohn Marino 2142f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160604 2143f445c897SJohn Marino Merge with NetBSD make, pick up 2144f445c897SJohn Marino o meta.c: missing filemon data is only relevant if we read a 2145f445c897SJohn Marino meta file. 2146f445c897SJohn Marino Also do not return oodate for a missing metafile if gn->path 2147f445c897SJohn Marino points to .CURDIR 2148f445c897SJohn Marino 2149f445c897SJohn Marino2016-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 2150f445c897SJohn Marino 2151f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160602 2152f445c897SJohn Marino Merge with NetBSD make, pick up 2153f445c897SJohn Marino o cached_realpath(): avoid hitting filesystem more than necessary. 2154f445c897SJohn Marino o meta.c: refactor need_meta decision, add knobs for 2155f445c897SJohn Marino missing meta file and filemon data wrt out-of-datedness. 2156f445c897SJohn Marino 2157f445c897SJohn Marino2016-05-28 Simon J. Gerraty <sjg@bad.crufty.net> 2158f445c897SJohn Marino 2159f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160528 2160f445c897SJohn Marino 2161f445c897SJohn Marino * boot-strap, make-bootstrap.sh.in: Makefile now uses _MAKE_VERSION 2162f445c897SJohn Marino 2163f445c897SJohn Marino2016-05-12 Simon J. Gerraty <sjg@bad.crufty.net> 2164f445c897SJohn Marino 2165f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160512 2166f445c897SJohn Marino Merge with NetBSD make, pick up 2167f445c897SJohn Marino o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS 2168f445c897SJohn Marino this is useful for gcov builds. 2169f445c897SJohn Marino o propagate errors from filemon(4). 2170f445c897SJohn Marino 2171f445c897SJohn Marino2016-05-09 Simon J. Gerraty <sjg@bad.crufty.net> 2172f445c897SJohn Marino 2173f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160509 2174f445c897SJohn Marino Merge with NetBSD make, pick up 2175f445c897SJohn Marino o remove use of non-standard types u_int etc. 2176f445c897SJohn Marino o meta.c: apply realpath() before matching against metaIgnorePaths 2177f445c897SJohn Marino 2178f445c897SJohn Marino2016-04-04 Simon J. Gerraty <sjg@bad.crufty.net> 2179f445c897SJohn Marino 2180f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160404 2181f445c897SJohn Marino Merge with NetBSD make, pick up 2182f445c897SJohn Marino o allow makefile to set .MAKE.JOBS 2183f445c897SJohn Marino 2184f445c897SJohn Marino * Makefile (PROG_NAME): use ${_MAKE_VERSION} 2185f445c897SJohn Marino 2186f445c897SJohn Marino2016-03-15 Simon J. Gerraty <sjg@bad.crufty.net> 2187f445c897SJohn Marino 2188f445c897SJohn Marino * Makefile (_MAKE_VERSION): 20160315 2189f445c897SJohn Marino Merge with NetBSD make, pick up 2190f445c897SJohn Marino o fix handling of archive members 2191f445c897SJohn Marino 2192f445c897SJohn Marino2016-03-13 Simon J. Gerraty <sjg@bad.crufty.net> 2193f445c897SJohn Marino 2194f445c897SJohn Marino * Makefile (_MAKE_VERSION): rename variable to avoid interference 2195f445c897SJohn Marino with checks for ${MAKE_VERSION} 2196f445c897SJohn Marino 2197f445c897SJohn Marino2016-03-10 Simon J. Gerraty <sjg@bad.crufty.net> 2198f445c897SJohn Marino 2199f445c897SJohn Marino * Makefile (MAKE_VERSION): 20160310 2200f445c897SJohn Marino Merge with NetBSD make, pick up 2201f445c897SJohn Marino o meta.c: treat missing Read file same as Write, incase we Delete it. 2202f445c897SJohn Marino 2203f445c897SJohn Marino2016-03-07 Simon J. Gerraty <sjg@bad.crufty.net> 2204f445c897SJohn Marino 2205f445c897SJohn Marino * Makefile (MAKE_VERSION): 20160307 2206f445c897SJohn Marino Merge with NetBSD make, pick up 2207f445c897SJohn Marino o var.c: fix :ts\nnn to be octal by default. 2208f445c897SJohn Marino o meta.c: meta_finish() to cleanup memory. 2209f445c897SJohn Marino 2210f445c897SJohn Marino2016-02-26 Simon J. Gerraty <sjg@bad.crufty.net> 2211f445c897SJohn Marino 2212f445c897SJohn Marino * Makefile (MAKE_VERSION): 20160226 2213f445c897SJohn Marino Merge with NetBSD make, pick up 2214f445c897SJohn Marino o meta.c: allow meta file for makeDepend if makefiles want it. 2215f445c897SJohn Marino 2216f445c897SJohn Marino2016-02-19 Simon J. Gerraty <sjg@bad.crufty.net> 2217f445c897SJohn Marino 2218f445c897SJohn Marino * var.c: default .MAKE.SAVE_DOLLARS to FALSE 2219f445c897SJohn Marino for backwards compatability. 2220f445c897SJohn Marino 2221f445c897SJohn Marino * Makefile (MAKE_VERSION): 20160220 2222f445c897SJohn Marino Merge with NetBSD make, pick up 2223f445c897SJohn Marino o var.c: add knob to control handling of '$$' in := 2224f445c897SJohn Marino 2225f445c897SJohn Marino2016-02-18 Simon J. Gerraty <sjg@bad.crufty.net> 2226f445c897SJohn Marino 2227f445c897SJohn Marino * Makefile (MAKE_VERSION): 20160218 2228f445c897SJohn Marino Merge with NetBSD make, pick up 2229f445c897SJohn Marino o var.c: add .export-literal allows us to fix sys.clean-env.mk 2230f445c897SJohn Marino post the changes to Var_Subst. 2231f445c897SJohn Marino Var_Subst now takes flags, and does not consume '$$' in := 2232f445c897SJohn Marino 2233f445c897SJohn Marino2016-02-17 Simon J. Gerraty <sjg@bad.crufty.net> 2234f445c897SJohn Marino 2235f445c897SJohn Marino * Makefile (MAKE_VERSION): 20160217 2236f445c897SJohn Marino Merge with NetBSD make, pick up 2237f445c897SJohn Marino o var.c: preserve '$$' in := 2238f445c897SJohn Marino o parse.c: add .dinclude for handling included 2239f445c897SJohn Marino makefile like .depend 2240f445c897SJohn Marino 2241f445c897SJohn Marino2015-12-20 Simon J. Gerraty <sjg@bad.crufty.net> 2242f445c897SJohn Marino 2243f445c897SJohn Marino * Makefile (MAKE_VERSION): 20151220 2244f445c897SJohn Marino Merge with NetBSD make, pick up 2245f445c897SJohn Marino o suff.c: re-initialize suffNull when clearing suffixes. 2246f445c897SJohn Marino 2247f445c897SJohn Marino2015-12-01 Simon J. Gerraty <sjg@bad.crufty.net> 2248f445c897SJohn Marino 2249f445c897SJohn Marino * Makefile (MAKE_VERSION): 20151201 2250f445c897SJohn Marino Merge with NetBSD make, pick up 2251f445c897SJohn Marino o cond.c: CondCvtArg: avoid access beyond end of empty buffer. 2252f445c897SJohn Marino o meta.c: meta_oodate: use lstat(2) for checking link target 2253f445c897SJohn Marino in case it is a symlink. 2254f445c897SJohn Marino o var.c: avoid calling brk_string and Var_Export1 with empty 2255f445c897SJohn Marino strings. 2256f445c897SJohn Marino 2257f445c897SJohn Marino2015-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 2258f445c897SJohn Marino 2259f445c897SJohn Marino * Makefile (MAKE_VERSION): 20151126 2260f445c897SJohn Marino Merge with NetBSD make, pick up 2261f445c897SJohn Marino o parse.c: ParseTrackInput don't access beyond 2262f445c897SJohn Marino end of old value. 2263f445c897SJohn Marino 2264f445c897SJohn Marino2015-10-22 Simon J. Gerraty <sjg@bad.crufty.net> 2265f445c897SJohn Marino 2266f445c897SJohn Marino * Makefile (MAKE_VERSION): 20151022 2267f445c897SJohn Marino 2268f445c897SJohn Marino * Add support for BSD/OS which lacks inttypes.h 2269f445c897SJohn Marino and really needs sys/param.h for sys/sysctl.h 2270f445c897SJohn Marino also 'type' is not a shell builtin. 2271f445c897SJohn Marino 2272f445c897SJohn Marino * var.c: eliminate uint32_t and need for inttypes.h 2273f445c897SJohn Marino 2274f445c897SJohn Marino * main.c: PrintOnError flush stdout before run .ERROR 2275f445c897SJohn Marino 2276f445c897SJohn Marino * parse.c: cope with _SC_PAGESIZE not being defined. 2277f445c897SJohn Marino 2278f445c897SJohn Marino 2279f445c897SJohn Marino2015-10-20 Simon J. Gerraty <sjg@bad.crufty.net> 2280f445c897SJohn Marino 2281f445c897SJohn Marino * Makefile (MAKE_VERSION): 20151020 2282f445c897SJohn Marino Merge with NetBSD make, pick up 2283f445c897SJohn Marino o var.c: fix uninitialized var 2284f445c897SJohn Marino 2285f445c897SJohn Marino2015-10-12 Simon J. Gerraty <sjg@bad.crufty.net> 2286f445c897SJohn Marino 2287f445c897SJohn Marino * var.c: the conditional expressions used with ':?' can be 2288f445c897SJohn Marino expensive, if already discarding do not evaluate or expand 2289f445c897SJohn Marino anything. 2290f445c897SJohn Marino 2291f445c897SJohn Marino2015-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 2292f445c897SJohn Marino 2293f445c897SJohn Marino * Makefile (MAKE_VERSION): 20151010 2294f445c897SJohn Marino Merge with NetBSD make, pick up 2295f445c897SJohn Marino o Add Boolean wantit flag to Var_Subst and Var_Parse 2296f445c897SJohn Marino when FALSE we know we are discarding the result and can 2297f445c897SJohn Marino skip operations like Cmd_Exec. 2298f445c897SJohn Marino 2299f445c897SJohn Marino2015-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 2300f445c897SJohn Marino 2301f445c897SJohn Marino * Makefile (MAKE_VERSION): 20151009 2302f445c897SJohn Marino Merge with NetBSD make, pick up 2303f445c897SJohn Marino o var.c: don't check for NULL before free() 2304f445c897SJohn Marino o meta.c: meta_oodate, do not hard code ignore of makeDependfile 2305f445c897SJohn Marino 2306f445c897SJohn Marino2015-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 2307f445c897SJohn Marino 2308f445c897SJohn Marino * Makefile (MAKE_VERSION): 20150910 2309f445c897SJohn Marino Merge with NetBSD make, pick up 2310f445c897SJohn Marino o main.c: with -w print Enter/Leaving messages for objdir too 2311f445c897SJohn Marino if necessary. 2312f445c897SJohn Marino o centralize shell metachar handling 2313f445c897SJohn Marino 2314f445c897SJohn Marino * FILES: add metachar.[ch] 2315f445c897SJohn Marino 2316f445c897SJohn Marino2015-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 2317f445c897SJohn Marino 2318f445c897SJohn Marino * Makefile (MAKE_VERSION): 20150606 2319f445c897SJohn Marino Merge with NetBSD make, pick up 2320f445c897SJohn Marino o make.1: document .OBJDIR target 2321f445c897SJohn Marino 2322f445c897SJohn Marino2015-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 2323f445c897SJohn Marino 2324f445c897SJohn Marino * Makefile (MAKE_VERSION): 20150505 2325f445c897SJohn Marino Merge with NetBSD make, pick up 2326f445c897SJohn Marino o cond.c: be strict about lhs of comparison when evaluating .if 2327f445c897SJohn Marino but less so when called from variable expansion. 2328f445c897SJohn Marino o unit-tests/cond2.mk: test various error conditions 2329f445c897SJohn Marino 2330f445c897SJohn Marino2015-05-04 Simon J. Gerraty <sjg@bad.crufty.net> 2331f445c897SJohn Marino 2332f445c897SJohn Marino * machine.sh (MACHINE): Add Bitrig 2333f445c897SJohn Marino patch from joerg@netbsd.org 2334f445c897SJohn Marino 2335f445c897SJohn Marino2015-04-18 Simon J. Gerraty <sjg@bad.crufty.net> 2336f445c897SJohn Marino 2337f445c897SJohn Marino * Makefile (MAKE_VERSION): 20150418 2338f445c897SJohn Marino Merge with NetBSD make, pick up 2339f445c897SJohn Marino o job.c: use memmove() rather than memcpy() 2340f445c897SJohn Marino 2341f445c897SJohn Marino * unit-tests/varshell.mk: SunOS cannot handle the TERMINATED_BY_SIGNAL 2342f445c897SJohn Marino case, so skip it. 2343f445c897SJohn Marino 2344f445c897SJohn Marino2015-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 2345f445c897SJohn Marino 2346f445c897SJohn Marino * Makefile (MAKE_VERSION): 20150411 2347f445c897SJohn Marino bump version - only mk/ changes. 2348f445c897SJohn Marino 2349f445c897SJohn Marino2015-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 2350f445c897SJohn Marino 2351f445c897SJohn Marino * Makefile (MAKE_VERSION): 20150410 2352f445c897SJohn Marino Merge with NetBSD make, pick up 2353f445c897SJohn Marino o document different handling of '-' in jobs mode vs compat 2354f445c897SJohn Marino o fix jobs mode so that '-' only applies to whole job 2355f445c897SJohn Marino when shell lacks hasErrCtl 2356f445c897SJohn Marino o meta.c: use separate vars to track lcwd and latestdir (read) 2357f445c897SJohn Marino per process 2358f445c897SJohn Marino 2359f445c897SJohn Marino2015-04-01 Simon J. Gerraty <sjg@bad.crufty.net> 2360f445c897SJohn Marino 2361f445c897SJohn Marino * Makefile (MAKE_VERSION): 20150401 2362f445c897SJohn Marino Merge with NetBSD make, pick up 2363f445c897SJohn Marino o meta.c: close meta file in child 2364f445c897SJohn Marino 2365f445c897SJohn Marino * Makefile: use BINDIR.bmake if set. 2366f445c897SJohn Marino Same for MANDIR and SHAREDIR 2367f445c897SJohn Marino Handy for testing release candidates 2368f445c897SJohn Marino in various environments. 2369f445c897SJohn Marino 2370f445c897SJohn Marino2015-03-26 Simon J. Gerraty <sjg@bad.crufty.net> 2371f445c897SJohn Marino 2372f445c897SJohn Marino * move initialization of savederr to block where it is used 2373f445c897SJohn Marino to avoid spurious warning from gcc5 2374f445c897SJohn Marino 23756a91b982SJohn Marino2014-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 23766a91b982SJohn Marino 23776a91b982SJohn Marino * Makefile (MAKE_VERSION): 20141111 23786a91b982SJohn Marino just a cooler number 23796a91b982SJohn Marino 23806a91b982SJohn Marino2014-11-05 Simon J. Gerraty <sjg@bad.crufty.net> 23816a91b982SJohn Marino 23826a91b982SJohn Marino * Makefile (MAKE_VERSION): 20141105 23836a91b982SJohn Marino Merge with NetBSD make, pick up 23846a91b982SJohn Marino o revert major overhaul of suffix handling 23856a91b982SJohn Marino and POSIX compliance - too much breakage 23866a91b982SJohn Marino and impossible to make backwards compatible. 23876a91b982SJohn Marino o we still have the new unit test structure which is ok. 23886a91b982SJohn Marino o meta.c ensure "-- filemon" is at start of line. 23896a91b982SJohn Marino 23906a91b982SJohn Marino2014-09-17 Simon J. Gerraty <sjg@bad.crufty.net> 23916a91b982SJohn Marino 23926a91b982SJohn Marino * configure.in: test that result of getconf PATH_MAX is numeric 23936a91b982SJohn Marino and discard if not. Apparently needed for Hurd. 23946a91b982SJohn Marino 23956a91b982SJohn Marino2014-08-30 Simon J. Gerraty <sjg@bad.crufty.net> 23966a91b982SJohn Marino 23976a91b982SJohn Marino * Makefile (MAKE_VERSION): 20140830 23986a91b982SJohn Marino Merge with NetBSD make, pick up 23996a91b982SJohn Marino o major overhaul of suffix handling 24006a91b982SJohn Marino o improved POSIX compliance 24016a91b982SJohn Marino o overhauled unit-tests 24026a91b982SJohn Marino 24036a91b982SJohn Marino2014-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 24046a91b982SJohn Marino 24056a91b982SJohn Marino * Makefile (MAKE_VERSION): 20140620 24066a91b982SJohn Marino Merge with NetBSD make, pick up 24076a91b982SJohn Marino o var.c return varNoError rather than var_Error for ::= modifiers. 24086a91b982SJohn Marino 24096a91b982SJohn Marino2014-05-22 Simon J. Gerraty <sjg@bad.crufty.net> 24106a91b982SJohn Marino 24116a91b982SJohn Marino * Makefile (MAKE_VERSION): 20140522 24126a91b982SJohn Marino Merge with NetBSD make, pick up 24136a91b982SJohn Marino o var.c detect some parse errors. 24146a91b982SJohn Marino 24156a91b982SJohn Marino2014-04-05 Simon J. Gerraty <sjg@bad.crufty.net> 24166a91b982SJohn Marino 24176a91b982SJohn Marino * Fix spelling errors - patch from Pedro Giffuni 24186a91b982SJohn Marino 24196a91b982SJohn Marino2014-02-14 Simon J. Gerraty <sjg@bad.crufty.net> 24206a91b982SJohn Marino 24216a91b982SJohn Marino * Makefile (MAKE_VERSION): 20140214 24226a91b982SJohn Marino Merge with NetBSD make, pick up 24236a91b982SJohn Marino o .INCLUDEFROM* 24246a91b982SJohn Marino o use Var_Value to get MAKEOBJDIR[PREFIX] 24256a91b982SJohn Marino o reduced realloc'ign in brk_string. 24266a91b982SJohn Marino * configure.in: add a check for compiler supporting __func__ 24276a91b982SJohn Marino 24286a91b982SJohn Marino2014-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 24296a91b982SJohn Marino 24306a91b982SJohn Marino * boot-strap: ignore mksrc=none 24316a91b982SJohn Marino 24326a91b982SJohn Marino2014-01-02 Simon J. Gerraty <sjg@bad.crufty.net> 24336a91b982SJohn Marino 24346a91b982SJohn Marino * Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk 24356a91b982SJohn Marino 24366a91b982SJohn Marino2014-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 24376a91b982SJohn Marino 24386a91b982SJohn Marino * Makefile (MAKE_VERSION): 20140101 24396a91b982SJohn Marino * configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024) 24406a91b982SJohn Marino * Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max 24416a91b982SJohn Marino * make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for 24426a91b982SJohn Marino Hurd) 24436a91b982SJohn Marino * configure.in: Add AC_PREREQ and check for 24446a91b982SJohn Marino sysctl; patch from Andrew Shadura andrewsh at debian.org 24456a91b982SJohn Marino 24466a91b982SJohn Marino2013-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 24476a91b982SJohn Marino 24486a91b982SJohn Marino * Makefile (MAKE_VERSION): 20131010 24496a91b982SJohn Marino * lose the const from arg to systcl to avoid problems on older BSDs. 24506a91b982SJohn Marino 24515f1e34d9SAlexandre Perrin2013-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 24525f1e34d9SAlexandre Perrin 24535f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20131001 24545f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 24555f1e34d9SAlexandre Perrin o main.c: for NATIVE build sysctl to get MACHINE_ARCH from 24565f1e34d9SAlexandre Perrin hw.machine_arch if necessary. 24575f1e34d9SAlexandre Perrin o meta.c: meta_oodate - need to look at src of Link and target 24585f1e34d9SAlexandre Perrin of Move as well. 24595f1e34d9SAlexandre Perrin * main.c: check that CTL_HW and HW_MACHINE_ARCH exist. 24605f1e34d9SAlexandre Perrin provide __arraycount() if needed. 24615f1e34d9SAlexandre Perrin 24625f1e34d9SAlexandre Perrin2013-09-04 Simon J. Gerraty <sjg@bad.crufty.net> 24635f1e34d9SAlexandre Perrin 24645f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130904 24655f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 24665f1e34d9SAlexandre Perrin o Add VAR_INTERNAL context, so that internal setting of 24675f1e34d9SAlexandre Perrin MAKEFILE does not override value set by makefiles. 24685f1e34d9SAlexandre Perrin 24695f1e34d9SAlexandre Perrin2013-09-02 Simon J. Gerraty <sjg@bad.crufty.net> 24705f1e34d9SAlexandre Perrin 24715f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130902 24725f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 24735f1e34d9SAlexandre Perrin o CompatRunCommand: only apply shellErrFlag when errCheck is true 24745f1e34d9SAlexandre Perrin 24755f1e34d9SAlexandre Perrin2013-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 24765f1e34d9SAlexandre Perrin 24775f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130828 24785f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 24795f1e34d9SAlexandre Perrin o Fix VAR :sh = syntax from Will Andrews at freebsd.org 24805f1e34d9SAlexandre Perrin o Call Job_SetPrefix() from Job_Init() so makefiles have 24815f1e34d9SAlexandre Perrin opportunity to set .MAKE.JOB.PREFIX 24825f1e34d9SAlexandre Perrin 24835f1e34d9SAlexandre Perrin2013-07-30 Simon J. Gerraty <sjg@bad.crufty.net> 24845f1e34d9SAlexandre Perrin 24855f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130730 24865f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 24875f1e34d9SAlexandre Perrin o Allow suppression of --- job -- tokens by setting 24885f1e34d9SAlexandre Perrin .MAKE.JOB.PREFIX empty. 24895f1e34d9SAlexandre Perrin 24905f1e34d9SAlexandre Perrin2013-07-16 Simon J. Gerraty <sjg@bad.crufty.net> 24915f1e34d9SAlexandre Perrin 24925f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130716 24935f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 24946a91b982SJohn Marino o number of gmake compatibility tweaks 24955f1e34d9SAlexandre Perrin -w for gmake style entering/leaving messages 24965f1e34d9SAlexandre Perrin if .MAKE.LEVEL > 0 indicate it in progname "make[1]" etc. 24975f1e34d9SAlexandre Perrin handle MAKEFLAGS containing only letters. 24985f1e34d9SAlexandre Perrin o when overriding a GLOBAL variable on the command line, 24995f1e34d9SAlexandre Perrin delete it from GLOBAL context so -V doesn't show the wrong 25005f1e34d9SAlexandre Perrin value. 25015f1e34d9SAlexandre Perrin 25025f1e34d9SAlexandre Perrin2013-07-06 Simon J. Gerraty <sjg@bad.crufty.net> 25035f1e34d9SAlexandre Perrin 25045f1e34d9SAlexandre Perrin * configure.in: We don't need MAKE_LEVEL_SAFE anymore. 25055f1e34d9SAlexandre Perrin 25065f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130706 25075f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25085f1e34d9SAlexandre Perrin o Shell_Init(): export shellErrFlag if commandShell hasErrCtl is 25095f1e34d9SAlexandre Perrin true so that CompatRunCommand() can use it, to ensure 25105f1e34d9SAlexandre Perrin consistent behavior with jobs mode. 25115f1e34d9SAlexandre Perrin o use MAKE_LEVEL_ENV to define the variable to propagate 25125f1e34d9SAlexandre Perrin .MAKE.LEVEL - currently set to MAKELEVEL (same as gmake). 25135f1e34d9SAlexandre Perrin o meta.c: use .MAKE.META.IGNORE_PATHS to allow customization of 25145f1e34d9SAlexandre Perrin paths to ignore. 25155f1e34d9SAlexandre Perrin 25165f1e34d9SAlexandre Perrin2013-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 25175f1e34d9SAlexandre Perrin 25185f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130604 25195f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25205f1e34d9SAlexandre Perrin o job.c: JobCreatePipe: do fcntl() after any tweaking of fd's 25215f1e34d9SAlexandre Perrin to avoid leaking descriptors. 25225f1e34d9SAlexandre Perrin 25235f1e34d9SAlexandre Perrin2013-05-28 Simon J. Gerraty <sjg@bad.crufty.net> 25245f1e34d9SAlexandre Perrin 25255f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130528 25265f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25275f1e34d9SAlexandre Perrin o var.c: cleanup some left-overs in VarHash() 25285f1e34d9SAlexandre Perrin 25295f1e34d9SAlexandre Perrin2013-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 25305f1e34d9SAlexandre Perrin 25315f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130520 25325f1e34d9SAlexandre Perrin generate manifest from component FILES rather than have to 25335f1e34d9SAlexandre Perrin update FILES when mk/FILES changes. 25345f1e34d9SAlexandre Perrin 25355f1e34d9SAlexandre Perrin2013-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 25365f1e34d9SAlexandre Perrin 25375f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130518 25385f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25395f1e34d9SAlexandre Perrin o suff.c: don't skip all processsing for .PHONY targets 25405f1e34d9SAlexandre Perrin else wildcard srcs do not get expanded. 25415f1e34d9SAlexandre Perrin o var.c: expand name of variable to delete if necessary. 25425f1e34d9SAlexandre Perrin 25435f1e34d9SAlexandre Perrin2013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 25445f1e34d9SAlexandre Perrin 25455f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130330 25465f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25475f1e34d9SAlexandre Perrin o meta.c: refine the handling of .OODATE in commands. 25485f1e34d9SAlexandre Perrin Rather than suppress command comparison for the entire script 25495f1e34d9SAlexandre Perrin as though .NOMETA_CMP had been used, only suppress it for the 25505f1e34d9SAlexandre Perrin one command line. 25515f1e34d9SAlexandre Perrin This allows something like ${.OODATE:M.NOMETA_CMP} to be used to 25525f1e34d9SAlexandre Perrin suppress comparison of a command without otherwise affecting it. 25535f1e34d9SAlexandre Perrin o make.1: document that 25545f1e34d9SAlexandre Perrin 25555f1e34d9SAlexandre Perrin2013-03-22 Simon J. Gerraty <sjg@bad.crufty.net> 25565f1e34d9SAlexandre Perrin 25575f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130321 25585f1e34d9SAlexandre Perrin yes, not quite right but its a cooler number. 25595f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25605f1e34d9SAlexandre Perrin o parse.c: fix ParseGmakeExport to be portable 25615f1e34d9SAlexandre Perrin and add a unit-test. 25625f1e34d9SAlexandre Perrin * meta.c: call meta_init() before makefiles are read and if built 25635f1e34d9SAlexandre Perrin with filemon support set .MAKE.PATH_FILEMON to _PATH_FILEMON 25645f1e34d9SAlexandre Perrin this let's makefiles test for support. 25655f1e34d9SAlexandre Perrin Call meta_mode_init() to process .MAKE.MODE. 25665f1e34d9SAlexandre Perrin 25675f1e34d9SAlexandre Perrin2013-03-13 Simon J. Gerraty <sjg@bad.crufty.net> 25685f1e34d9SAlexandre Perrin 25695f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130305 25705f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25715f1e34d9SAlexandre Perrin o run .STALE: target when a dependency from .depend is missing. 25725f1e34d9SAlexandre Perrin o job.c: add Job_RunTarget() for the above and .BEGIN 25735f1e34d9SAlexandre Perrin 25745f1e34d9SAlexandre Perrin2013-03-03 Simon J. Gerraty <sjg@bad.crufty.net> 25755f1e34d9SAlexandre Perrin 25765f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130303 25775f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25785f1e34d9SAlexandre Perrin o main.c: set .MAKE.OS to utsname.sysname 25795f1e34d9SAlexandre Perrin o job.c: more checks for read and poll errors 25805f1e34d9SAlexandre Perrin o var.c: lose VarChangeCase() saves 4% time 25815f1e34d9SAlexandre Perrin 25825f1e34d9SAlexandre Perrin2013-03-02 Simon J. Gerraty <sjg@bad.crufty.net> 25835f1e34d9SAlexandre Perrin 25845f1e34d9SAlexandre Perrin * boot-strap: remove MAKEOBJDIRPREFIX from environment since we 25855f1e34d9SAlexandre Perrin want to use MAKEOBJDIR 25865f1e34d9SAlexandre Perrin 25875f1e34d9SAlexandre Perrin2013-01-27 Simon J. Gerraty <sjg@bad.crufty.net> 25885f1e34d9SAlexandre Perrin 25895f1e34d9SAlexandre Perrin * Merge with NetBSD make, pick up 25905f1e34d9SAlexandre Perrin o make.1: more info on how shell commands are handled. 25915f1e34d9SAlexandre Perrin o job.c,main.c: detect write errors to job pipes. 25925f1e34d9SAlexandre Perrin 25935f1e34d9SAlexandre Perrin2013-01-25 Simon J. Gerraty <sjg@bad.crufty.net> 25945f1e34d9SAlexandre Perrin 25955f1e34d9SAlexandre Perrin * Makefile (MAKE_VERSION): 20130123 25965f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 25975f1e34d9SAlexandre Perrin o meta.c: if script uses .OODATE and meta_oodate() decides 25985f1e34d9SAlexandre Perrin rebuild is needed, .OODATE will be empty - set it to .ALLSRC. 25995f1e34d9SAlexandre Perrin o var.c: in debug output indicate which variabale modifiers 26005f1e34d9SAlexandre Perrin apply to. 26015f1e34d9SAlexandre Perrin o remove Check_Cwd logic the makefiles have been fixed. 26025f1e34d9SAlexandre Perrin 26035f1e34d9SAlexandre Perrin2012-12-12 Simon J. Gerraty <sjg@bad.crufty.net> 26045f1e34d9SAlexandre Perrin 26055f1e34d9SAlexandre Perrin * makefile.in: add a simple makefile for folk who insist on 26065f1e34d9SAlexandre Perrin ./configure; make; make install 26075f1e34d9SAlexandre Perrin it just runs boot-strap 26085f1e34d9SAlexandre Perrin * include mk/* to accommodate the above 26095f1e34d9SAlexandre Perrin * boot-strap: re-work to accommodate the above 26105f1e34d9SAlexandre Perrin mksrc defaults to $Mydir/mk 26115f1e34d9SAlexandre Perrin allow op={configure,build,install,clean,all} 26125f1e34d9SAlexandre Perrin add options to facilitate install 26135f1e34d9SAlexandre Perrin * Makefile.config.in: just the bits set by configure 26145f1e34d9SAlexandre Perrin * Makefile: bump version to 20121212 26155f1e34d9SAlexandre Perrin abandon Makefile.in (NetBSD Makefile) 26165f1e34d9SAlexandre Perrin leverage mk/* instead 26175f1e34d9SAlexandre Perrin * configure.in: ensure srcdir is absolute 26185f1e34d9SAlexandre Perrin 26195f1e34d9SAlexandre Perrin2012-11-11 Simon J. Gerraty <sjg@bad.crufty.net> 26205f1e34d9SAlexandre Perrin 26215f1e34d9SAlexandre Perrin * Makefile.in (MAKE_VERSION): 20121111 26225f1e34d9SAlexandre Perrin fix generation of bmake.cat1 26235f1e34d9SAlexandre Perrin 26245f1e34d9SAlexandre Perrin2012-11-09 Simon J. Gerraty <sjg@bad.crufty.net> 26255f1e34d9SAlexandre Perrin 26265f1e34d9SAlexandre Perrin * Makefile.in (MAKE_VERSION): 20121109 26275f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 26285f1e34d9SAlexandre Perrin o make.c: MakeBuildChild: return 0 so search continues if a 26295f1e34d9SAlexandre Perrin .ORDER dependency is detected. 26305f1e34d9SAlexandre Perrin o unit-tests/order: test the above 26315f1e34d9SAlexandre Perrin 26325f1e34d9SAlexandre Perrin2012-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 26335f1e34d9SAlexandre Perrin 26345f1e34d9SAlexandre Perrin * Makefile.in (MAKE_VERSION): 20121102 26355f1e34d9SAlexandre Perrin Merge with NetBSD make, pick up 26365f1e34d9SAlexandre Perrin o cond.c: allow cond_state[] to grow. 26375f1e34d9SAlexandre Perrin In meta mode with a very large tree, we can hit the limit 26385f1e34d9SAlexandre Perrin while processing dirdeps. 26395f1e34d9SAlexandre Perrin 26405f1e34d9SAlexandre Perrin2012-10-25 Simon J. Gerraty <sjg@bad.crufty.net> 26415f1e34d9SAlexandre Perrin 26425f1e34d9SAlexandre Perrin * Makefile.in: we need to use ${srcdir} not ${.CURDIR} 26435f1e34d9SAlexandre Perrin 264401e196c8SJohn Marino2012-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 264501e196c8SJohn Marino 264601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): 20121010 264701e196c8SJohn Marino o protect syntax that only bmake parses correctly. 264801e196c8SJohn Marino o remove auto setting of FORCE_MACHINE, use configure's 264901e196c8SJohn Marino --with-force-machine=whatever if that is desired. 265001e196c8SJohn Marino 265101e196c8SJohn Marino2012-10-08 Simon J. Gerraty <sjg@bad.crufty.net> 265201e196c8SJohn Marino 265301e196c8SJohn Marino * Makefile.in: do not lose history from make.1 when generating bmake.1 265401e196c8SJohn Marino 265501e196c8SJohn Marino2012-10-07 Simon J. Gerraty <sjg@bad.crufty.net> 265601e196c8SJohn Marino 265701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): 20121007 265801e196c8SJohn Marino Merge with NetBSD make, pick up 265901e196c8SJohn Marino o compat.c: ignore empty commands - same as jobs mode. 266001e196c8SJohn Marino o make.1: document meta chars that cause use of shell 266101e196c8SJohn Marino 266201e196c8SJohn Marino2012-09-11 Simon J. Gerraty <sjg@bad.crufty.net> 266301e196c8SJohn Marino 266401e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120911 266501e196c8SJohn Marino * bsd.after-import.mk: include Makefile.inc early and allow it to 266601e196c8SJohn Marino override PROG 266701e196c8SJohn Marino 266801e196c8SJohn Marino2012-08-31 Simon J. Gerraty <sjg@bad.crufty.net> 266901e196c8SJohn Marino 267001e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120831 267101e196c8SJohn Marino Merge with NetBSD make, pick up 267201e196c8SJohn Marino o cast sizeof() to int for comparison 267301e196c8SJohn Marino o minor make.1 tweak 267401e196c8SJohn Marino 267501e196c8SJohn Marino2012-08-30 Simon J. Gerraty <sjg@bad.crufty.net> 267601e196c8SJohn Marino 267701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120830 267801e196c8SJohn Marino Merge with NetBSD make, pick up 267901e196c8SJohn Marino o .MAKE.EXPAND_VARIABLES knob can control default behavior of -V 268001e196c8SJohn Marino o debug flag -dV causes -V to show raw value regardless. 268101e196c8SJohn Marino 268201e196c8SJohn Marino2012-07-05 Simon J. Gerraty <sjg@bad.crufty.net> 268301e196c8SJohn Marino 268401e196c8SJohn Marino * bsd.after-import.mk (after-import): ensure unit-tests/Makefile 268501e196c8SJohn Marino gets SRCTOP set. 268601e196c8SJohn Marino 268701e196c8SJohn Marino2012-07-04 Simon J. Gerraty <sjg@bad.crufty.net> 268801e196c8SJohn Marino 268901e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120704 269001e196c8SJohn Marino Merge with NetBSD make, pick up 269101e196c8SJohn Marino o Job_ParseShell should call Shell_Init if it has been 269201e196c8SJohn Marino previously called. 269301e196c8SJohn Marino * Makefile.in: set USE_META based on configure result. 269401e196c8SJohn Marino also .PARSEDIR is safer indicator of bmake. 269501e196c8SJohn Marino 269601e196c8SJohn Marino2012-06-26 Simon J. Gerraty <sjg@bad.crufty.net> 269701e196c8SJohn Marino 269801e196c8SJohn Marino * Makefile.in: bump version to 20120626 269901e196c8SJohn Marino ensure CPPFLAGS is in CFLAGS 270001e196c8SJohn Marino * meta.c: avoid nested externs 270101e196c8SJohn Marino * bsd.after-import.mk: avoid ${.CURDIR}/Makefile as target 270201e196c8SJohn Marino 270301e196c8SJohn Marino2012-06-20 Simon J. Gerraty <sjg@bad.crufty.net> 270401e196c8SJohn Marino 270501e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120620 270601e196c8SJohn Marino Merge with NetBSD make, pick up 270701e196c8SJohn Marino o make_malloc.c: avoid including make_malloc.h again 270801e196c8SJohn Marino 270901e196c8SJohn Marino * Makefile.in: avoid bmake only syntax or protect with 271001e196c8SJohn Marino .if defined(.MAKE.LEVEL) 271101e196c8SJohn Marino * bsd.after-import.mk: replace .-include with .sinclude 271201e196c8SJohn Marino ensure? SRCTOP gets a value 271301e196c8SJohn Marino * configure.in: look for filemon.h in /usr/include/dev/filemon first. 271401e196c8SJohn Marino 271501e196c8SJohn Marino2012-06-19 Simon J. Gerraty <sjg@bad.crufty.net> 271601e196c8SJohn Marino 271701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120612 271801e196c8SJohn Marino Merge with NetBSD make, pick up 271901e196c8SJohn Marino o use MAKE_ATTR_* rather than those defined by cdefs.h or compiler 272001e196c8SJohn Marino for greater portability. 272101e196c8SJohn Marino o unit-tests/forloop: check that .for works as expected wrt 272201e196c8SJohn Marino number of times and with "quoted strings". 272301e196c8SJohn Marino 272401e196c8SJohn Marino2012-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 272501e196c8SJohn Marino 272601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120606 272701e196c8SJohn Marino Merge with NetBSD make, pick up 272801e196c8SJohn Marino o compat.c: use kill(2) rather than raise(3). 272901e196c8SJohn Marino * configure.in: look for sys/dev/filemon 273001e196c8SJohn Marino * bsd.after-import.mk: add a .-include "Makefile.inc" to Makefile 273101e196c8SJohn Marino and pass BOOTSTRAP_XTRAS to boot-strap. 273201e196c8SJohn Marino 273301e196c8SJohn Marino2012-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 273401e196c8SJohn Marino 273501e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120604 273601e196c8SJohn Marino Merge with NetBSD make, pick up 273701e196c8SJohn Marino o util.c and var.c share same var for tracking if environ 273801e196c8SJohn Marino has been reallocated. 273901e196c8SJohn Marino o util.c provide getenv with setenv. 274001e196c8SJohn Marino * Add MAKE_LEVEL_SAFE as an alternate means of passing MAKE_LEVEL 274101e196c8SJohn Marino when the shell actively strips .MAKE.* from the environment. 274201e196c8SJohn Marino We still refer to the variable always as .MAKE.LEVEL 274301e196c8SJohn Marino * util.c fix bug in findenv() was finding prefix of name. 274401e196c8SJohn Marino * compat.c: re-raising SIGINT etc after running .INTERRUPT 274501e196c8SJohn Marino results in more reliable termination of all activity on many 274601e196c8SJohn Marino platforms. 274701e196c8SJohn Marino 274801e196c8SJohn Marino2012-06-02 Simon J. Gerraty <sjg@bad.crufty.net> 274901e196c8SJohn Marino 275001e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120602 275101e196c8SJohn Marino Merge with NetBSD make, pick up 275201e196c8SJohn Marino o for.c: handle quoted items in .for list 275301e196c8SJohn Marino 275401e196c8SJohn Marino2012-05-30 Simon J. Gerraty <sjg@bad.crufty.net> 275501e196c8SJohn Marino 275601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120530 275701e196c8SJohn Marino Merge with NetBSD make, pick up 275801e196c8SJohn Marino o compat.c: ignore empty command. 275901e196c8SJohn Marino 276001e196c8SJohn Marino2012-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 276101e196c8SJohn Marino 276201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120524 276301e196c8SJohn Marino * FILES: add bsd.after-import.mk: 276401e196c8SJohn Marino A simple means of integrating bmake into a BSD build system. 276501e196c8SJohn Marino 276601e196c8SJohn Marino2012-05-20 Simon J. Gerraty <sjg@bad.crufty.net> 276701e196c8SJohn Marino 276801e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120520 276901e196c8SJohn Marino Merge with NetBSD make, pick up 277001e196c8SJohn Marino o increased limit for nested conditionals. 277101e196c8SJohn Marino 277201e196c8SJohn Marino2012-05-18 Simon J. Gerraty <sjg@bad.crufty.net> 277301e196c8SJohn Marino 277401e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120518 277501e196c8SJohn Marino Merge with NetBSD make, pick up 277601e196c8SJohn Marino o use _exit(2) in signal hanlder 277701e196c8SJohn Marino o Don't use the [dir] cache when building nodes that might have 277801e196c8SJohn Marino changed since the last exec. 277901e196c8SJohn Marino o Avoid nested extern declaration warnings. 278001e196c8SJohn Marino 278101e196c8SJohn Marino2012-04-27 Simon J. Gerraty <sjg@bad.crufty.net> 278201e196c8SJohn Marino 278301e196c8SJohn Marino * meta.c (fgetLine): avoid %z - not portable. 278401e196c8SJohn Marino * parse.c: Since we moved include of sys/mman.h 278501e196c8SJohn Marino and def's of MAP_COPY etc. we got dups from a merge. 278601e196c8SJohn Marino 278701e196c8SJohn Marino2012-04-24 Simon J. Gerraty <sjg@bad.crufty.net> 278801e196c8SJohn Marino 278901e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120420 279001e196c8SJohn Marino Merge with NetBSD make, pick up 279101e196c8SJohn Marino o restore duplicate supression in .MAKE.MAKEFILES 279201e196c8SJohn Marino runtime saving can be significant. 279301e196c8SJohn Marino o Var_Subst() uses Buf_DestroyCompact() to reduce memory 279401e196c8SJohn Marino consumption up to 20%. 279501e196c8SJohn Marino 279601e196c8SJohn Marino2012-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 279701e196c8SJohn Marino 279801e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120420 279901e196c8SJohn Marino Merge with NetBSD make, pick up 280001e196c8SJohn Marino o remove duplicate supression in .MAKE.MAKEFILES 280101e196c8SJohn Marino o improved dir cache behavior 280201e196c8SJohn Marino o gmake'ish export command 280301e196c8SJohn Marino 280401e196c8SJohn Marino2012-03-25 Simon J. Gerraty <sjg@bad.crufty.net> 280501e196c8SJohn Marino 280601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20120325 280701e196c8SJohn Marino Merge with NetBSD make, pick up 280801e196c8SJohn Marino o fix parsing of :[#] in conditionals. 280901e196c8SJohn Marino 281001e196c8SJohn Marino2012-02-10 Simon J. Gerraty <sjg@bad.crufty.net> 281101e196c8SJohn Marino 281201e196c8SJohn Marino * Makefile.in: replace use of .Nx in bmake.1 with NetBSD 281301e196c8SJohn Marino since some systems cannot cope with .Nx <version> 281401e196c8SJohn Marino 281501e196c8SJohn Marino2011-11-14 Simon J. Gerraty <sjg@bad.crufty.net> 281601e196c8SJohn Marino 281701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20111111 281801e196c8SJohn Marino Merge with NetBSD make, pick up 281901e196c8SJohn Marino o debug output for .PARSEDIR and .PARSEFILE 282001e196c8SJohn Marino 282101e196c8SJohn Marino2011-10-10 Simon J. Gerraty <sjg@bad.crufty.net> 282201e196c8SJohn Marino 282301e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20111010 282401e196c8SJohn Marino 282501e196c8SJohn Marino2011-10-09 Simon J. Gerraty <sjg@bad.crufty.net> 282601e196c8SJohn Marino 282701e196c8SJohn Marino * boot-strap: check for an expected file in the dirs we look for. 282801e196c8SJohn Marino * make-bootstrap.sh: pass on LDSTATIC 282901e196c8SJohn Marino 283001e196c8SJohn Marino2011-10-01 Simon J. Gerraty <sjg@bad.crufty.net> 283101e196c8SJohn Marino 283201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20111001 283301e196c8SJohn Marino Merge with NetBSD make, pick up 283401e196c8SJohn Marino o ensure .PREFIX is set for .PHONY 283501e196c8SJohn Marino and .TARGET set for .PHONY run via .END 283601e196c8SJohn Marino o __dead used consistently 283701e196c8SJohn Marino 283801e196c8SJohn Marino2011-09-10 Simon J. Gerraty <sjg@bad.crufty.net> 283901e196c8SJohn Marino 284001e196c8SJohn Marino * Makefile.in (MAKE_VERSION): 20110909 is a better number ;-) 284101e196c8SJohn Marino 284201e196c8SJohn Marino2011-09-05 Simon J. Gerraty <sjg@bad.crufty.net> 284301e196c8SJohn Marino 284401e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110905 284501e196c8SJohn Marino Merge with NetBSD make, pick up 284601e196c8SJohn Marino o meta_oodate: ignore makeDependfile 284701e196c8SJohn Marino 284801e196c8SJohn Marino2011-08-28 Simon J. Gerraty <sjg@bad.crufty.net> 284901e196c8SJohn Marino 285001e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110828 285101e196c8SJohn Marino Merge with NetBSD make, pick up 285201e196c8SJohn Marino o silent=yes in .MAKE.MODE causes meta mode to mark targets 285301e196c8SJohn Marino as SILENT if a .meta file is created 285401e196c8SJohn Marino 285501e196c8SJohn Marino2011-08-18 Simon J. Gerraty <sjg@bad.crufty.net> 285601e196c8SJohn Marino 285701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110818 285801e196c8SJohn Marino Merge with NetBSD make, pick up 285901e196c8SJohn Marino o in meta mode, if target flagged .META a missing .meta file 286001e196c8SJohn Marino means target is out-of-date 286101e196c8SJohn Marino o fixes for gcc 4.5 warnings 286201e196c8SJohn Marino o simplify job printing code 286301e196c8SJohn Marino 286401e196c8SJohn Marino2011-08-09 Simon J. Gerraty <sjg@bad.crufty.net> 286501e196c8SJohn Marino 286601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110808 286701e196c8SJohn Marino Merge with NetBSD make, pick up 286801e196c8SJohn Marino o do not touch OP_SPECIAL targets when doing make -t 286901e196c8SJohn Marino 287001e196c8SJohn Marino2011-06-22 Simon J. Gerraty <sjg@bad.crufty.net> 287101e196c8SJohn Marino 287201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110622 287301e196c8SJohn Marino Merge with NetBSD make, pick up 287401e196c8SJohn Marino o meta_oodate detect corrupted .meta file and declare oodate. 287501e196c8SJohn Marino * configure.in: add check for setsid 287601e196c8SJohn Marino 287701e196c8SJohn Marino2011-06-07 Simon J. Gerraty <sjg@bad.crufty.net> 287801e196c8SJohn Marino 287901e196c8SJohn Marino * Merge with NetBSD make, pick up 288001e196c8SJohn Marino o unit-tests/modts now works on MirBSD 288101e196c8SJohn Marino 288201e196c8SJohn Marino2011-06-04 Simon J. Gerraty <sjg@bad.crufty.net> 288301e196c8SJohn Marino 288401e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110606 288501e196c8SJohn Marino Merge with NetBSD make, pick up 288601e196c8SJohn Marino o ApplyModifiers: when we parse a variable which is not 288701e196c8SJohn Marino the entire modifier string, or not followed by ':', do not 288801e196c8SJohn Marino consider it as containing modifiers. 288901e196c8SJohn Marino o loadfile: ensure newline at end of mapped file. 289001e196c8SJohn Marino 289101e196c8SJohn Marino2011-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 289201e196c8SJohn Marino 289301e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110505 289401e196c8SJohn Marino Merge with NetBSD make, pick up 289501e196c8SJohn Marino o .MAKE.META.BAILIWICK - list of prefixes which define the scope 289601e196c8SJohn Marino of make's control. In meta mode, any generated file within 289701e196c8SJohn Marino said bailiwick, which is found to be missing, causes current 289801e196c8SJohn Marino target to be out-of-date. 289901e196c8SJohn Marino 290001e196c8SJohn Marino2011-04-11 Simon J. Gerraty <sjg@bad.crufty.net> 290101e196c8SJohn Marino 290201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110411 290301e196c8SJohn Marino Merge with NetBSD make, pick up 290401e196c8SJohn Marino o when long modifiers fail to match, check sysV style. 290501e196c8SJohn Marino - add a test case 290601e196c8SJohn Marino 290701e196c8SJohn Marino2011-04-10 Simon J. Gerraty <sjg@bad.crufty.net> 290801e196c8SJohn Marino 290901e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110410 291001e196c8SJohn Marino Merge with NetBSD make, pick up 291101e196c8SJohn Marino o :hash - cheap 32bit hash of value 291201e196c8SJohn Marino o :localtime, :gmtime - use value as format string for strftime. 291301e196c8SJohn Marino 291401e196c8SJohn Marino2011-03-30 Simon J. Gerraty <sjg@bad.crufty.net> 291501e196c8SJohn Marino 291601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110330 291701e196c8SJohn Marino mostly because its a cooler version. 291801e196c8SJohn Marino Merge with NetBSD make, pick up 291901e196c8SJohn Marino o NetBSD tags for meta.[ch] 292001e196c8SJohn Marino o job.c call meta_job_finish() after meta_job_error(). 292101e196c8SJohn Marino o meta_job_error() should call meta_job_finish() to ensure 292201e196c8SJohn Marino .meta file is closed, and safe to copy - if .ERROR target wants. 292301e196c8SJohn Marino meta_job_finish() is safe to call repeatedly. 292401e196c8SJohn Marino 292501e196c8SJohn Marino2011-03-29 Simon J. Gerraty <sjg@bad.crufty.net> 292601e196c8SJohn Marino 292701e196c8SJohn Marino * unit-tests/modts: use printf if it is a builtin, 292801e196c8SJohn Marino to save us from MirBSD 292901e196c8SJohn Marino 293001e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110329 293101e196c8SJohn Marino Merge with NetBSD make, pick up 293201e196c8SJohn Marino o fix for use after free() in CondDoExists(). 293301e196c8SJohn Marino o meta_oodate() report extra commands and return earlier. 293401e196c8SJohn Marino 293501e196c8SJohn Marino2011-03-27 Simon J. Gerraty <sjg@bad.crufty.net> 293601e196c8SJohn Marino 293701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110327 293801e196c8SJohn Marino Merge with NetBSD make, pick up 293901e196c8SJohn Marino o meta.c, if .MAKE.MODE contains curdirOk=yes 294001e196c8SJohn Marino allow creating .meta files in .CURDIR 294101e196c8SJohn Marino * boot-strap (TOOL_DIFF): aparently at least on linux distro 294201e196c8SJohn Marino formats the output of 'type' differently - so eat any "()" 294301e196c8SJohn Marino 294401e196c8SJohn Marino2011-03-06 Simon J. Gerraty <sjg@bad.crufty.net> 294501e196c8SJohn Marino 294601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110306 294701e196c8SJohn Marino Merge with NetBSD make, pick up 294801e196c8SJohn Marino o meta.c, only do getcwd() once 294901e196c8SJohn Marino 295001e196c8SJohn Marino2011-03-05 Simon J. Gerraty <sjg@bad.crufty.net> 295101e196c8SJohn Marino 295201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110305 295301e196c8SJohn Marino Merge with NetBSD make, pick up 295401e196c8SJohn Marino o correct sysV substitution handling of empty lhs and variable 295501e196c8SJohn Marino o correct exists() check for dir with trailing / 295601e196c8SJohn Marino o correct handling of modifiers for non-existant variables 295701e196c8SJohn Marino during evaluation of conditionals. 295801e196c8SJohn Marino o ensure MAP_FILE is defined. 295901e196c8SJohn Marino o meta.c use curdir[] now exported by main.c 296001e196c8SJohn Marino 296101e196c8SJohn Marino2011-02-25 Simon J. Gerraty <sjg@bad.crufty.net> 296201e196c8SJohn Marino 296301e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110225 296401e196c8SJohn Marino Merge with NetBSD make, pick up 296501e196c8SJohn Marino o fix for incorrect .PARSEDIR when .OBJDIR is re-computed after 296601e196c8SJohn Marino makefiles have been read. 296701e196c8SJohn Marino o fix example of :? modifier in man page. 296801e196c8SJohn Marino 296901e196c8SJohn Marino2011-02-13 Simon J. Gerraty <sjg@bad.crufty.net> 297001e196c8SJohn Marino 297101e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110214 297201e196c8SJohn Marino Merge with NetBSD make, pick up 297301e196c8SJohn Marino o meta.c handle realpath() failing when generating meta file 297401e196c8SJohn Marino name. 297501e196c8SJohn Marino 297601e196c8SJohn Marino * sigcompat.c: convert to ansi so we can use higher warning levels. 297701e196c8SJohn Marino 297801e196c8SJohn Marino 297901e196c8SJohn Marino2011-02-07 Simon J. Gerraty <sjg@bad.crufty.net> 298001e196c8SJohn Marino 298101e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110207 298201e196c8SJohn Marino Merge with NetBSD make, pick up 298301e196c8SJohn Marino o fix for bug in meta mode. 298401e196c8SJohn Marino 298501e196c8SJohn Marino2011-01-03 Simon J. Gerraty <sjg@bad.crufty.net> 298601e196c8SJohn Marino 298701e196c8SJohn Marino * parse.c: SunOS 5.8 at least does not have MAP_FILE 298801e196c8SJohn Marino 298901e196c8SJohn Marino2011-01-01 Simon J. Gerraty <sjg@bad.crufty.net> 299001e196c8SJohn Marino 299101e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20110101 299201e196c8SJohn Marino Merge with NetBSD make, pick up 299301e196c8SJohn Marino o use mmap(2) if available, for reading makefiles 299401e196c8SJohn Marino 299501e196c8SJohn Marino2010-12-15 Simon J. Gerraty <sjg@bad.crufty.net> 299601e196c8SJohn Marino 299701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20101215 299801e196c8SJohn Marino Merge with NetBSD make, pick up 299901e196c8SJohn Marino o ensure meta_job_error() does not report a previous .meta file 300001e196c8SJohn Marino as being culprit. 300101e196c8SJohn Marino 300201e196c8SJohn Marino2010-12-10 Simon J. Gerraty <sjg@bad.crufty.net> 300301e196c8SJohn Marino 300401e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20101210 300501e196c8SJohn Marino Merge with NetBSD make, pick up 300601e196c8SJohn Marino o meta_oodate: track cwd per process, and only consider target 300701e196c8SJohn Marino out-of-date if missing file is outside make's CWD. 300801e196c8SJohn Marino Ignore files in /tmp/ etc. 300901e196c8SJohn Marino o to ensure unit-tests results match, need to control LC_ALL 301001e196c8SJohn Marino as well as LANG. 301101e196c8SJohn Marino o fix for parsing bug in var.c 301201e196c8SJohn Marino 301301e196c8SJohn Marino2010-11-26 Simon J. Gerraty <sjg@bad.crufty.net> 301401e196c8SJohn Marino 301501e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20101126 301601e196c8SJohn Marino Merge with NetBSD make, pick up 301701e196c8SJohn Marino o if stale dependency is an IMPSRC, search via .PATH 301801e196c8SJohn Marino o meta_oodate: if a referenced file is missing, target is 301901e196c8SJohn Marino out-of-date. 302001e196c8SJohn Marino o meta_oodate: if a target uses .OODATE in its commands, 302101e196c8SJohn Marino it (.OODATE) needs to be recomputed. 302201e196c8SJohn Marino o keep a pointer to youngest child node, rather than just its 302301e196c8SJohn Marino mtime. 302401e196c8SJohn Marino 302501e196c8SJohn Marino2010-11-02 Simon J. Gerraty <sjg@bad.crufty.net> 302601e196c8SJohn Marino 302701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20101101 302801e196c8SJohn Marino 302901e196c8SJohn Marino2010-10-16 Simon J. Gerraty <sjg@bad.crufty.net> 303001e196c8SJohn Marino 303101e196c8SJohn Marino * machine.sh: like os.sh, 303201e196c8SJohn Marino allow for uname -p producing useless drivel 303301e196c8SJohn Marino 303401e196c8SJohn Marino2010-09-13 Simon J. Gerraty <sjg@bad.crufty.net> 303501e196c8SJohn Marino 303601e196c8SJohn Marino * boot-strap: document configure knobs for meta and filemon. 303701e196c8SJohn Marino 303801e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100911 303901e196c8SJohn Marino Merge with NetBSD make, pick up 304001e196c8SJohn Marino o meta.c - meta mode 304101e196c8SJohn Marino 304201e196c8SJohn Marino * make-bootstrap.sh.in: handle meta.c 304301e196c8SJohn Marino * configure.in: add knobs for use_meta and filemon_h 304401e196c8SJohn Marino also, look for dirname, str[e]sep and strlcpy 304501e196c8SJohn Marino * util.c: add simple err[x] and warn[x] 304601e196c8SJohn Marino 304701e196c8SJohn Marino2010-08-08 Simon J. Gerraty <sjg@bad.crufty.net> 304801e196c8SJohn Marino 304901e196c8SJohn Marino * boot-strap (TOOL_DIFF): set this to ensure tests use 305001e196c8SJohn Marino the same version of diff that configure tested 305101e196c8SJohn Marino 305201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100808 305301e196c8SJohn Marino Merge with NetBSD make, pick up 305401e196c8SJohn Marino o in jobs mode, when we discover we cannot make something, 305501e196c8SJohn Marino call PrintOnError before exit. 305601e196c8SJohn Marino 305701e196c8SJohn Marino2010-08-06 Simon J. Gerraty <sjg@bad.crufty.net> 305801e196c8SJohn Marino 305901e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100806 306001e196c8SJohn Marino Merge with NetBSD make, pick up 306101e196c8SJohn Marino o formatting fixes for ignored errors 306201e196c8SJohn Marino o ensure jobs are cleaned up regardless of where wait() was called. 306301e196c8SJohn Marino 306401e196c8SJohn Marino2010-06-28 Simon J. Gerraty <sjg@bad.crufty.net> 306501e196c8SJohn Marino 306601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100618 306701e196c8SJohn Marino * os.sh (MACHINE_ARCH): watch out for drivel from uname -p 306801e196c8SJohn Marino 306901e196c8SJohn Marino2010-06-16 Simon J. Gerraty <sjg@bad.crufty.net> 307001e196c8SJohn Marino 307101e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100616 307201e196c8SJohn Marino Merge with NetBSD make, pick up 307301e196c8SJohn Marino o man page update 307401e196c8SJohn Marino o call PrintOnError from JobFinish when we detect an error we 307501e196c8SJohn Marino are not ignoring. 307601e196c8SJohn Marino 307701e196c8SJohn Marino2010-06-06 Simon J. Gerraty <sjg@bad.crufty.net> 307801e196c8SJohn Marino 307901e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100606 308001e196c8SJohn Marino Merge with NetBSD make, pick up 308101e196c8SJohn Marino o man page update 308201e196c8SJohn Marino 308301e196c8SJohn Marino2010-06-05 Simon J. Gerraty <sjg@bad.crufty.net> 308401e196c8SJohn Marino 308501e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100605 308601e196c8SJohn Marino Merge with NetBSD make, pick up 308701e196c8SJohn Marino o use bmake_signal() which is a wrapper around sigaction() 308801e196c8SJohn Marino in place of signal() 308901e196c8SJohn Marino o add .export-env to allow exporting variables to environment 309001e196c8SJohn Marino without tracking (so no re-export when the internal value is 309101e196c8SJohn Marino changed). 309201e196c8SJohn Marino 309301e196c8SJohn Marino2010-05-24 Simon J. Gerraty <sjg@bad.crufty.net> 309401e196c8SJohn Marino 309501e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100524 309601e196c8SJohn Marino Merge with NetBSD make, pick up 309701e196c8SJohn Marino o fix for .info et al being greedy. 309801e196c8SJohn Marino 309901e196c8SJohn Marino2010-05-23 Simon J. Gerraty <sjg@bad.crufty.net> 310001e196c8SJohn Marino 310101e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100520 310201e196c8SJohn Marino Merge with NetBSD make, pick up 310301e196c8SJohn Marino o back to using realpath on argv[0] 310401e196c8SJohn Marino but only if contains '/' and does not start with '/'. 310501e196c8SJohn Marino 310601e196c8SJohn Marino2010-05-10 Simon J. Gerraty <sjg@bad.crufty.net> 310701e196c8SJohn Marino 310801e196c8SJohn Marino * boot-strap: use absolute path for bmake when running tests. 310901e196c8SJohn Marino 311001e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100510 311101e196c8SJohn Marino Merge with NetBSD make, pick up 311201e196c8SJohn Marino o revert use of realpath on argv[0] 311301e196c8SJohn Marino too many corner cases. 311401e196c8SJohn Marino o print MAKE_PRINT_VAR_ON_ERROR before running .ERROR target. 311501e196c8SJohn Marino 311601e196c8SJohn Marino2010-05-05 Simon J. Gerraty <sjg@bad.crufty.net> 311701e196c8SJohn Marino 311801e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100505 311901e196c8SJohn Marino Merge with NetBSD make, pick up 312001e196c8SJohn Marino o fix for missed SIGCHLD when compiled with SunPRO 312101e196c8SJohn Marino actually for bmake, defining FORCE_POSIX_SIGNALS would have 312201e196c8SJohn Marino done the job. 312301e196c8SJohn Marino 312401e196c8SJohn Marino2010-04-30 Simon J. Gerraty <sjg@bad.crufty.net> 312501e196c8SJohn Marino 312601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100430 312701e196c8SJohn Marino Merge with NetBSD make, pick up 312801e196c8SJohn Marino o fflush stdout before writing to stdout 312901e196c8SJohn Marino 313001e196c8SJohn Marino2010-04-23 Simon J. Gerraty <sjg@bad.crufty.net> 313101e196c8SJohn Marino 313201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100423 313301e196c8SJohn Marino Merge with NetBSD make, pick up 313401e196c8SJohn Marino o updated unit tests for Haiku (this time for sure). 313501e196c8SJohn Marino * boot-strap: based on patch from joerg 313601e196c8SJohn Marino honor --with-default-sys-path better. 313701e196c8SJohn Marino * boot-strap: remove mention of --with-prefix-sys-path 313801e196c8SJohn Marino 313901e196c8SJohn Marino2010-04-22 Simon J. Gerraty <sjg@bad.crufty.net> 314001e196c8SJohn Marino 314101e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100422 314201e196c8SJohn Marino * Merge with NetBSD make, pick up 314301e196c8SJohn Marino o fix for vfork() on Darwin. 314401e196c8SJohn Marino o fix for bogus $TMPDIR. 314501e196c8SJohn Marino o set .MAKE.MODE=compat for -B 314601e196c8SJohn Marino o set .MAKE.JOBS=max_jobs for -j max_jobs 314701e196c8SJohn Marino o allow unit-tests to run without any *.mk 314801e196c8SJohn Marino o unit-tests/modmisc be more conservative in dirs presumed to exist. 314901e196c8SJohn Marino * boot-strap: ignore /usr/share/mk except on NetBSD. 315001e196c8SJohn Marino * unit-tests/Makefile.in: set LANG=C when running unit-tests to 315101e196c8SJohn Marino ensure sort(1) behaves as expected. 315201e196c8SJohn Marino 315301e196c8SJohn Marino2010-04-21 Simon J. Gerraty <sjg@bad.crufty.net> 315401e196c8SJohn Marino 315501e196c8SJohn Marino * boot-strap: add FindHereOrAbove so we can use -m .../mk 315601e196c8SJohn Marino 315701e196c8SJohn Marino2010-04-20 Simon J. Gerraty <sjg@bad.crufty.net> 315801e196c8SJohn Marino 315901e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100420 316001e196c8SJohn Marino * Merge with NetBSD make, pick up 316101e196c8SJohn Marino o fix for variable realpath() behavior. 316201e196c8SJohn Marino we have to stat(2) the result to be sure. 316301e196c8SJohn Marino o fix for .export (all) when nested vars use :sh 316401e196c8SJohn Marino 316501e196c8SJohn Marino2010-04-14 Simon J. Gerraty <sjg@bad.crufty.net> 316601e196c8SJohn Marino 316701e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100414 316801e196c8SJohn Marino * Merge with NetBSD make, pick up 316901e196c8SJohn Marino o use realpath to resolve argv[0] (for .MAKE) if needed. 317001e196c8SJohn Marino o add realpath from libc. 317101e196c8SJohn Marino o add :tA to resolve variable via realpath(3) if possible. 317201e196c8SJohn Marino 317301e196c8SJohn Marino2010-04-08 Simon J. Gerraty <sjg@bad.crufty.net> 317401e196c8SJohn Marino 317501e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100408 317601e196c8SJohn Marino * Merge with NetBSD make, pick up 317701e196c8SJohn Marino o unit tests for .ERROR, .error 317801e196c8SJohn Marino o fix for .ERROR to ensure it cannot be default target. 317901e196c8SJohn Marino 318001e196c8SJohn Marino2010-04-06 Simon J. Gerraty <sjg@bad.crufty.net> 318101e196c8SJohn Marino 318201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100406 318301e196c8SJohn Marino * Merge with NetBSD make, pick up 318401e196c8SJohn Marino o fix for compat mode "Error code" going to debug_file. 318501e196c8SJohn Marino o fix for .ALLSRC being populated twice. 318601e196c8SJohn Marino o support for .info, .warning and .error directives 318701e196c8SJohn Marino o .MAKE.MODE to control make's operational mode 318801e196c8SJohn Marino o .MAKE.MAKEFILE_PREFERENCE to control the preferred makefile 318901e196c8SJohn Marino name(s). 319001e196c8SJohn Marino o .MAKE.DEPENDFILE to control the name of the depend file 319101e196c8SJohn Marino o .ERROR target - run on failure. 319201e196c8SJohn Marino 319301e196c8SJohn Marino2010-03-18 Simon J. Gerraty <sjg@bad.crufty.net> 319401e196c8SJohn Marino 319501e196c8SJohn Marino * make-bootstrap.sh.in: extract MAKE_VERSION from Makefile 319601e196c8SJohn Marino 319701e196c8SJohn Marino * os.sh,arch.c: patch for Haiku from joerg at netbsd 319801e196c8SJohn Marino 319901e196c8SJohn Marino2010-03-17 Simon J. Gerraty <sjg@bad.crufty.net> 320001e196c8SJohn Marino 320101e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100222 320201e196c8SJohn Marino * Merge with NetBSD make, pick up 320301e196c8SJohn Marino o better error msg for .for with mutiple inter vars 320401e196c8SJohn Marino 320501e196c8SJohn Marino * boot-strap: 320601e196c8SJohn Marino o use make-bootstrap.sh from joerg at netbsd 320701e196c8SJohn Marino to avoid the need for a native make when bootstrapping. 320801e196c8SJohn Marino o add "" everywhere ;-) 320901e196c8SJohn Marino o if /usr/share/tmac/andoc.tmac exists install nroff bmake.1 321001e196c8SJohn Marino otherwise the pre-formated version. 321101e196c8SJohn Marino 321201e196c8SJohn Marino2010-01-04 Simon J. Gerraty <sjg@bad.crufty.net> 321301e196c8SJohn Marino 321401e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20100102 321501e196c8SJohn Marino * Merge with NetBSD make, pick up: 321601e196c8SJohn Marino o fix for -m .../ 321701e196c8SJohn Marino 321801e196c8SJohn Marino2009-11-18 Simon J. Gerraty <sjg@void.crufty.net> 321901e196c8SJohn Marino 322001e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20091118 322101e196c8SJohn Marino * Merge with NetBSD make, pick up: 322201e196c8SJohn Marino o .unexport 322301e196c8SJohn Marino o report lines that start with '.' and should have ':' 322401e196c8SJohn Marino (catch typo's of .el*if). 322501e196c8SJohn Marino 322601e196c8SJohn Marino2009-10-30 Simon J. Gerraty <sjg@void.crufty.net> 322701e196c8SJohn Marino 322801e196c8SJohn Marino * configure.in: Ensure that srcdir and mksrc are absolute paths. 322901e196c8SJohn Marino 323001e196c8SJohn Marino2009-10-09 Simon J. Gerraty <sjg@void.crufty.net> 323101e196c8SJohn Marino 323201e196c8SJohn Marino * Makefile.in (MAKE_VERSION): fix version to 20091007 323301e196c8SJohn Marino 323401e196c8SJohn Marino2009-10-07 Simon J. Gerraty <sjg@void.crufty.net> 323501e196c8SJohn Marino 323601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 200910007 323701e196c8SJohn Marino * Merge with NetBSD make, pick up: 323801e196c8SJohn Marino o fix for parsing of :S;...;...; applied to .for loop iterator 323901e196c8SJohn Marino appearing in a dependency line. 324001e196c8SJohn Marino 324101e196c8SJohn Marino2009-09-09 Simon J. Gerraty <sjg@void.crufty.net> 324201e196c8SJohn Marino 324301e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20090909 324401e196c8SJohn Marino * Merge with NetBSD make, pick up: 324501e196c8SJohn Marino o fix for -C, .CURDIR and .OBJDIR 324601e196c8SJohn Marino * boot-strap: 324701e196c8SJohn Marino o allow share_dir to be set independent of prefix. 324801e196c8SJohn Marino o select default share_dir better when prefix ends in $HOST_TARGET 324901e196c8SJohn Marino o if FORCE_BSD_MK etc were set, include them in the suggested 325001e196c8SJohn Marino install-mk command. 325101e196c8SJohn Marino 325201e196c8SJohn Marino2009-09-08 Simon J. Gerraty <sjg@void.crufty.net> 325301e196c8SJohn Marino 325401e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20090908 325501e196c8SJohn Marino * Merge with NetBSD make, pick up: 325601e196c8SJohn Marino o .MAKE.LEVEL for recursion tracking 325701e196c8SJohn Marino o fix for :M scanning \: 325801e196c8SJohn Marino 325901e196c8SJohn Marino2009-09-03 Simon J. Gerraty <sjg@void.crufty.net> 326001e196c8SJohn Marino 326101e196c8SJohn Marino * configure.in: Don't -D__EXTENSIONS__ if 326201e196c8SJohn Marino AC_USE_SYSTEM_EXTENSIONS says "no". 326301e196c8SJohn Marino 326401e196c8SJohn Marino2009-08-26 Simon J. Gerraty <sjg@void.crufty.net> 326501e196c8SJohn Marino 326601e196c8SJohn Marino * Makefile.in (MAKE_VERSION): bump version to 20090826 326701e196c8SJohn Marino Simplify MAKE_VERSION to just the bare date. 326801e196c8SJohn Marino * Merge with NetBSD make, pick up: 326901e196c8SJohn Marino o -C directory support. 327001e196c8SJohn Marino o support for SIGINFO 327101e196c8SJohn Marino o use $TMPDIR for temp files. 327201e196c8SJohn Marino o child of vfork should be careful about modifying parent's state. 327301e196c8SJohn Marino 327401e196c8SJohn Marino 327501e196c8SJohn Marino2009-03-26 Simon J. Gerraty <sjg@void.crufty.net> 327601e196c8SJohn Marino 327701e196c8SJohn Marino * Appy some patches for MiNT from David Brownlee 327801e196c8SJohn Marino 327901e196c8SJohn Marino2009-02-26 Simon J. Gerraty <sjg@void.crufty.net> 328001e196c8SJohn Marino 328101e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20090222 328201e196c8SJohn Marino * Merge with NetBSD make, pick up: 328301e196c8SJohn Marino o Possible null pointer de-ref in Var_Set. 328401e196c8SJohn Marino 328501e196c8SJohn Marino2009-02-08 Simon J. Gerraty <sjg@void.crufty.net> 328601e196c8SJohn Marino 328701e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20090204 328801e196c8SJohn Marino * Merge with NetBSD make, pick up: 328901e196c8SJohn Marino o bmake_malloc et al moved to their own .c 329001e196c8SJohn Marino o Count both () and {} when looking for the end of a :M pattern 329101e196c8SJohn Marino o Change 'Buffer' so that it is the actual struct, not a pointer to it. 329201e196c8SJohn Marino o strlist.c - functions for processing extendable arrays of pointers to strings. 329301e196c8SJohn Marino o ClientData replaced with void *, so const void * can be used. 329401e196c8SJohn Marino o New debug flag C for DEBUG_CWD 329501e196c8SJohn Marino 329601e196c8SJohn Marino2008-11-11 Simon J. Gerraty <sjg@void.crufty.net> 329701e196c8SJohn Marino 329801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20081111 329901e196c8SJohn Marino Apply patch from Joerg Sonnenberge to 330001e196c8SJohn Marino configure.in: 330101e196c8SJohn Marino o remove some redundant checks 330201e196c8SJohn Marino o check for emlloc etc only in libutil and require the whole family. 330301e196c8SJohn Marino util.c: 330401e196c8SJohn Marino o remove [v]asprintf which is no longer used. 330501e196c8SJohn Marino 330601e196c8SJohn Marino2008-11-04 Simon J. Gerraty <sjg@void.crufty.net> 330701e196c8SJohn Marino 330801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20081101 330901e196c8SJohn Marino * Merge with NetBSD make, pick up: 331001e196c8SJohn Marino o util.c: avoid use of putenv() - christos 331101e196c8SJohn Marino 331201e196c8SJohn Marino2008-10-30 Simon J. Gerraty <sjg@void.crufty.net> 331301e196c8SJohn Marino 331401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20081030 331501e196c8SJohn Marino pick up man page tweaks. 331601e196c8SJohn Marino 331701e196c8SJohn Marino2008-10-29 Simon J. Gerraty <sjg@void.crufty.net> 331801e196c8SJohn Marino 331901e196c8SJohn Marino * Makefile.in: move processing of LIBOBJS to after is definition! 332001e196c8SJohn Marino thus we'll have getenv.c in SRCS only if needed. 332101e196c8SJohn Marino 332201e196c8SJohn Marino * make.1: add examples of how to use :? 332301e196c8SJohn Marino 332401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20081029 332501e196c8SJohn Marino * Merge with NetBSD make, pick up: 332601e196c8SJohn Marino o fix for .END processing with -j 332701e196c8SJohn Marino o segfault from Parse_Error when no makefile is open 332801e196c8SJohn Marino o handle numeric expressions in any variable expansion 332901e196c8SJohn Marino o debug output now defaults to stderr, -dF to change it - apb 333001e196c8SJohn Marino o make now uses bmake_malloc etc so that it can build natively 333101e196c8SJohn Marino on A/UX - wasn't an issue for bmake, but we want to keep in sync. 333201e196c8SJohn Marino 333301e196c8SJohn Marino2008-09-27 Simon J. Gerraty <sjg@void.crufty.net> 333401e196c8SJohn Marino 333501e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20080808 333601e196c8SJohn Marino * Merge with NetBSD make, pick up: 333701e196c8SJohn Marino o fix for PR/38840: Pierre Pronchery: make crashes while parsing 333801e196c8SJohn Marino long lines in Makefiles 333901e196c8SJohn Marino o optimizations for VarQuote by joerg 334001e196c8SJohn Marino o fix for PR/38756: dominik: make dumps core on invalid makefile 334101e196c8SJohn Marino 334201e196c8SJohn Marino2008-05-15 Simon J. Gerraty <sjg@void.crufty.net> 334301e196c8SJohn Marino 334401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20080515 334501e196c8SJohn Marino * Merge with NetBSD make, pick up: 334601e196c8SJohn Marino o fix skip setting vars in VAR_GLOBAL context, to handle 334701e196c8SJohn Marino cases where VAR_CMD is used for other than command line vars. 334801e196c8SJohn Marino 334901e196c8SJohn Marino2008-05-14 Simon J. Gerraty <sjg@void.crufty.net> 335001e196c8SJohn Marino 335101e196c8SJohn Marino * boot-strap (make_version): we may need to look in 335201e196c8SJohn Marino $prefix/share/mk for sys.mk 335301e196c8SJohn Marino 335401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20080514 335501e196c8SJohn Marino * Merge with NetBSD make, pick up: 335601e196c8SJohn Marino o skip setting vars in VAR_GLOBAL context, when already set in 335701e196c8SJohn Marino VAR_CMD which takes precedence. 335801e196c8SJohn Marino 335901e196c8SJohn Marino2008-03-30 Simon J. Gerraty <sjg@void.crufty.net> 336001e196c8SJohn Marino 336101e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20080330 336201e196c8SJohn Marino * Merge with NetBSD make, pick up: 336301e196c8SJohn Marino o fix for ?= when LHS contains variable reference. 336401e196c8SJohn Marino 336501e196c8SJohn Marino2008-02-15 Simon J. Gerraty <sjg@void.crufty.net> 336601e196c8SJohn Marino 336701e196c8SJohn Marino * merge some patches from NetBSD pkgsrc. 336801e196c8SJohn Marino 336901e196c8SJohn Marino * makefile.boot.in (BOOTSTRAP_SYS_PATH): Allow better control of 337001e196c8SJohn Marino the MAKSYSPATH used during bootstrap. 337101e196c8SJohn Marino 337201e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20080215 337301e196c8SJohn Marino * Merge with NetBSD make, pick up: 337401e196c8SJohn Marino o warn if non-space chars follow 'empty' in a conditional. 337501e196c8SJohn Marino 337601e196c8SJohn Marino2008-01-18 Simon J. Gerraty <sjg@void.crufty.net> 337701e196c8SJohn Marino 337801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20080118 337901e196c8SJohn Marino * Merge with NetBSD make, pick up: 338001e196c8SJohn Marino o consider dependencies read from .depend as optional - dsl 338101e196c8SJohn Marino o remember when buffer for reading makefile grows - dsl 338201e196c8SJohn Marino o add -dl (aka LOUD) - David O'Brien 338301e196c8SJohn Marino 338401e196c8SJohn Marino2007-10-22 Simon J. Gerraty <sjg@void.crufty.net> 338501e196c8SJohn Marino 338601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20071022 338701e196c8SJohn Marino * Merge with NetBSD make, pick up: 338801e196c8SJohn Marino o Allow .PATH<suffix> to be used for .include "" 338901e196c8SJohn Marino 339001e196c8SJohn Marino * boot-strap: source default settings from .bmake-boot-strap.rc 339101e196c8SJohn Marino 339201e196c8SJohn Marino2007-10-16 Simon J. Gerraty <sjg@void.crufty.net> 339301e196c8SJohn Marino 339401e196c8SJohn Marino * Makefile.in: fix maninstall on various systems 339501e196c8SJohn Marino provided that our man.mk is used. 339601e196c8SJohn Marino For non-BSD systems we install the preformatted page 339701e196c8SJohn Marino into $MANDIR/cat1 339801e196c8SJohn Marino 339901e196c8SJohn Marino2007-10-15 Simon J. Gerraty <sjg@void.crufty.net> 340001e196c8SJohn Marino 340101e196c8SJohn Marino * boot-strap: make bmake.1 too, so maninstall works. 340201e196c8SJohn Marino 340301e196c8SJohn Marino2007-10-14 Simon J. Gerraty <sjg@void.crufty.net> 340401e196c8SJohn Marino 340501e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20071014 340601e196c8SJohn Marino * Merge with NetBSD make, pick up: 340701e196c8SJohn Marino o revamped handling of defshell - configure no longer needs to 340801e196c8SJohn Marino know the content of the shells array - apb 340901e196c8SJohn Marino o stop Var_Subst modifying its input - apb 341001e196c8SJohn Marino o avoid calling ParseTrackInput too often - dsl 341101e196c8SJohn Marino 341201e196c8SJohn Marino2007-10-11 Simon J. Gerraty <sjg@void.crufty.net> 341301e196c8SJohn Marino 341401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20071011 341501e196c8SJohn Marino * Merge with NetBSD make, pick up: 341601e196c8SJohn Marino o fix Shell_Init for case that _BASENAME_DEFSHELL is absolute path. 341701e196c8SJohn Marino 341801e196c8SJohn Marino * sigcompat.c: some tweaks for HP-UX 11.x based on 341901e196c8SJohn Marino patch from Tobias Nygren 342001e196c8SJohn Marino 342101e196c8SJohn Marino * configure.in: update handling of --with-defshell to match 342201e196c8SJohn Marino new make behavior. --with-defshell=/usr/xpg4/bin/sh 342301e196c8SJohn Marino will now do what one might hope - provided the chosen shell 342401e196c8SJohn Marino behaves enough like sh. 342501e196c8SJohn Marino 342601e196c8SJohn Marino2007-10-08 Simon J. Gerraty <sjg@void.crufty.net> 342701e196c8SJohn Marino 342801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20071008 342901e196c8SJohn Marino * Merge with NetBSD make, pick up: 343001e196c8SJohn Marino o .MAKE.JOB.PREFIX - control the token output before jobs - sjg 343101e196c8SJohn Marino o .export/.MAKE.EXPORTED - export of variables - sjg 343201e196c8SJohn Marino o .MAKE.MAKEFILES - track all makefiles read - sjg 343301e196c8SJohn Marino o performance improvements - dsl 343401e196c8SJohn Marino o revamp parallel job scheduling - dsl 343501e196c8SJohn Marino 343601e196c8SJohn Marino2006-07-28 Simon J. Gerraty <sjg@void.crufty.net> 343701e196c8SJohn Marino 343801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20060728 343901e196c8SJohn Marino * Merge with NetBSD make, pick up: 344001e196c8SJohn Marino o extra debug info during variable and cond processing - sjg 344101e196c8SJohn Marino o shell definition now covers newline - rillig 344201e196c8SJohn Marino o minor mem leak in PrintOnError - sjg 344301e196c8SJohn Marino 344401e196c8SJohn Marino2006-05-11 Simon J. Gerraty <sjg@void.crufty.net> 344501e196c8SJohn Marino 344601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20060511 344701e196c8SJohn Marino * Merge with NetBSD make, pick up: 344801e196c8SJohn Marino o more memory leaks - coverity 344901e196c8SJohn Marino o possible overflow in ArchFindMember - coverity 345001e196c8SJohn Marino o extract variable modifier code out of Var_Parse() 345101e196c8SJohn Marino so it can be called recursively - sjg 345201e196c8SJohn Marino o unit-tests/moderrs - sjg 345301e196c8SJohn Marino 345401e196c8SJohn Marino2006-04-12 Simon J. Gerraty <sjg@void.crufty.net> 345501e196c8SJohn Marino 345601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20060412 345701e196c8SJohn Marino * Merge with NetBSD make, pick up: 345801e196c8SJohn Marino o fixes for some memory leaks - coverity 345901e196c8SJohn Marino o only read first sys.mk etc when searching sysIncPath - sjg 346001e196c8SJohn Marino 346101e196c8SJohn Marino * main.c (ReadMakefile): remove hack for __INTERIX that prevented 346201e196c8SJohn Marino setting ${MAKEFILE} - OBATA Akio 346301e196c8SJohn Marino 346401e196c8SJohn Marino2006-03-18 Simon J. Gerraty <sjg@void.crufty.net> 346501e196c8SJohn Marino 346601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20060318 346701e196c8SJohn Marino * Merge with NetBSD make, pick up: 346801e196c8SJohn Marino o cleanup of job.c to remove remote handling, distcc is more 346901e196c8SJohn Marino useful and this code was likely bit-rotting - dsl 347001e196c8SJohn Marino o fix for :P modifier - sjg 347101e196c8SJohn Marino * boot-strap: set default prefix to something reasonable 347201e196c8SJohn Marino (for me anyway). 347301e196c8SJohn Marino 347401e196c8SJohn Marino2006-03-01 Simon J. Gerraty <sjg@void.crufty.net> 347501e196c8SJohn Marino 347601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20060301 347701e196c8SJohn Marino * Merge with NetBSD make, pick up: 347801e196c8SJohn Marino o make .WAIT apply recursively, document and test case - apb 347901e196c8SJohn Marino o allow variable modifiers in a variable appear anywhere in 348001e196c8SJohn Marino modifier list, document and test case - sjg 348101e196c8SJohn Marino 348201e196c8SJohn Marino2006-02-22 Simon J. Gerraty <sjg@void.crufty.net> 348301e196c8SJohn Marino 348401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20060222 348501e196c8SJohn Marino * Merge with NetBSD make, pick up: 348601e196c8SJohn Marino o improved job token handling - dsl 348701e196c8SJohn Marino o SIG_DFL the correct signal before exec - dsl 348801e196c8SJohn Marino o more debug info during parsing - dsl 348901e196c8SJohn Marino o allow variable modifiers to be specified via variable - sjg 349001e196c8SJohn Marino * boot-strap: explain why we died if no mksrc 349101e196c8SJohn Marino 349201e196c8SJohn Marino2005-11-05 Simon J. Gerraty <sjg@void.crufty.net> 349301e196c8SJohn Marino 349401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20051105 349501e196c8SJohn Marino * configure.in: always set default_sys_path 349601e196c8SJohn Marino default is ${prefix}/share/mk 349701e196c8SJohn Marino - remove prefix_sys_path, anyone wanting more than above 349801e196c8SJohn Marino needs to set it manually. 349901e196c8SJohn Marino 350001e196c8SJohn Marino2005-11-04 Simon J. Gerraty <sjg@void.crufty.net> 350101e196c8SJohn Marino 350201e196c8SJohn Marino * boot-strap: make this a bit easier for pkgsrc folk. 350301e196c8SJohn Marino bootstrap still fails on IRIX64 since MACHINE_ARCH gets set to 350401e196c8SJohn Marino 'mips' while pkgsrc wants 'mipseb' or 'mipsel' 350501e196c8SJohn Marino 350601e196c8SJohn Marino2005-11-02 Simon J. Gerraty <sjg@void.crufty.net> 350701e196c8SJohn Marino 350801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20051102 350901e196c8SJohn Marino * job.c (JobFinish): fix likely ancient merge lossage 351001e196c8SJohn Marino fix from Todd Vierling. 351101e196c8SJohn Marino * boot-strap (srcdir): allow setting mksrc=none 351201e196c8SJohn Marino 351301e196c8SJohn Marino2005-10-31 Simon J. Gerraty <sjg@void.crufty.net> 351401e196c8SJohn Marino 351501e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20051031 351601e196c8SJohn Marino * ranlib.h: skip on OSF too. 351701e196c8SJohn Marino (NetBSD PR 31864) 351801e196c8SJohn Marino 351901e196c8SJohn Marino2005-10-10 Simon J. Gerraty <sjg@void.crufty.net> 352001e196c8SJohn Marino 352101e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20051002 352201e196c8SJohn Marino fix a silly typo 352301e196c8SJohn Marino 352401e196c8SJohn Marino2005-10-09 Simon J. Gerraty <sjg@void.crufty.net> 352501e196c8SJohn Marino 352601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20051001 352701e196c8SJohn Marino support for UnixWare and some other systems, 352801e196c8SJohn Marino based on patches from pkgsrc/bootstrap 352901e196c8SJohn Marino 353001e196c8SJohn Marino2005-09-03 Simon J. Gerraty <sjg@void.crufty.net> 353101e196c8SJohn Marino 353201e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20050901 353301e196c8SJohn Marino * Merge with NetBSD make, pick up: 353401e196c8SJohn Marino o possible parse error causing us to wander off. 353501e196c8SJohn Marino 353601e196c8SJohn Marino2005-06-06 Simon J. Gerraty <sjg@void.crufty.net> 353701e196c8SJohn Marino 353801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20050606 353901e196c8SJohn Marino * Merge with NetBSD make, pick up: 354001e196c8SJohn Marino o :0x modifier for randomizing a list 354101e196c8SJohn Marino o fixes for a number of -Wuninitialized issues. 354201e196c8SJohn Marino 354301e196c8SJohn Marino2005-05-30 Simon J. Gerraty <sjg@void.crufty.net> 354401e196c8SJohn Marino 354501e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20050530 354601e196c8SJohn Marino * Merge with NetBSD make, pick up: 354701e196c8SJohn Marino o Handle dependencies for .BEGIN, .END and .INTERRUPT 354801e196c8SJohn Marino 354901e196c8SJohn Marino * README: was seriously out of date. 355001e196c8SJohn Marino 355101e196c8SJohn Marino2005-03-22 Simon J. Gerraty <sjg@void.crufty.net> 355201e196c8SJohn Marino 355301e196c8SJohn Marino * Important to use .MAKE rather than MAKE. 355401e196c8SJohn Marino 355501e196c8SJohn Marino2005-03-15 Simon J. Gerraty <sjg@void.crufty.net> 355601e196c8SJohn Marino 355701e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20050315 355801e196c8SJohn Marino * Merge with NetBSD make, pick up: 355901e196c8SJohn Marino o don't mistake .elsefoo for .else 356001e196c8SJohn Marino o use suffix-specific search path correctly 356101e196c8SJohn Marino o bunch of style nits 356201e196c8SJohn Marino 356301e196c8SJohn Marino2004-05-11 Simon J. Gerraty <sjg@void.crufty.net> 356401e196c8SJohn Marino 356501e196c8SJohn Marino * boot-strap: 356601e196c8SJohn Marino o ensure that args to --src and --with-mksrc 356701e196c8SJohn Marino are resolved before giving them to configure. 356801e196c8SJohn Marino o add -o "objdir" so that builder can control it, 356901e196c8SJohn Marino default is $OS as determined by os.sh 357001e196c8SJohn Marino o add -q to suppress all the install instructions. 357101e196c8SJohn Marino 357201e196c8SJohn Marino2004-05-08 Simon J. Gerraty <sjg@void.crufty.net> 357301e196c8SJohn Marino 357401e196c8SJohn Marino * Remove __IDSTRING() 357501e196c8SJohn Marino 357601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20040508 357701e196c8SJohn Marino * Merge with NetBSD make, pick up: 357801e196c8SJohn Marino o posix fixes 357901e196c8SJohn Marino - remove '-e' from compat mode 358001e196c8SJohn Marino - add support for '+' command-line prefix. 358101e196c8SJohn Marino o fix for handling '--' on command-line. 358201e196c8SJohn Marino o fix include in lst.lib/lstInt.h to simplify '-I's 358301e196c8SJohn Marino o we also picked up replacement of MAKE_BOOTSTRAP 358401e196c8SJohn Marino with !MAKE_NATIVE which is a noop, but possibly confusing. 358501e196c8SJohn Marino 358601e196c8SJohn Marino2004-04-14 Simon J. Gerraty <sjg@void.crufty.net> 358701e196c8SJohn Marino 358801e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20040414 358901e196c8SJohn Marino * Merge with NetBSD make, pick up: 359001e196c8SJohn Marino o allow quoted strings on lhs of conditionals 359101e196c8SJohn Marino o issue warning when extra .else is seen 359201e196c8SJohn Marino o print line numer when errors encountered during parsing from 359301e196c8SJohn Marino string. 359401e196c8SJohn Marino 359501e196c8SJohn Marino2004-02-20 Simon J. Gerraty <sjg@void.crufty.net> 359601e196c8SJohn Marino 359701e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20040220 359801e196c8SJohn Marino * Merge with NetBSD make, pick up: 359901e196c8SJohn Marino o fix for old :M parsing bug. 360001e196c8SJohn Marino o re-jigged unit-tests 360101e196c8SJohn Marino 360201e196c8SJohn Marino2004-02-15 Simon J. Gerraty <sjg@void.crufty.net> 360301e196c8SJohn Marino 360401e196c8SJohn Marino * Makefile.in (accept test): use ${.MAKE:S,^./,${.CURDIR}/,} 360501e196c8SJohn Marino so that './bmake -f Makefile test' works. 360601e196c8SJohn Marino 360701e196c8SJohn Marino2004-02-14 Simon J. Gerraty <sjg@void.crufty.net> 360801e196c8SJohn Marino 360901e196c8SJohn Marino * Makefile.in: (BMAKE_VERSION): bump to 20040214 361001e196c8SJohn Marino * Merge with NetBSD make, pick up: 361101e196c8SJohn Marino o search upwards for *.mk 361201e196c8SJohn Marino o fix for double free of var substitution buffers 361301e196c8SJohn Marino o use of getopt replaced with custom code, since the usage 361401e196c8SJohn Marino (re-scanning) isn't posix compatible. 361501e196c8SJohn Marino 361601e196c8SJohn Marino2004-02-12 Simon J. Gerraty <sjg@void.crufty.net> 361701e196c8SJohn Marino 361801e196c8SJohn Marino * arch.c: don't include ranlib.h on ELF systems 361901e196c8SJohn Marino (thanks to Chuck Cranor <chuck@ece.cmu.edu>). 362001e196c8SJohn Marino 362101e196c8SJohn Marino2004-01-18 Simon J. Gerraty <sjg@void.crufty.net> 362201e196c8SJohn Marino 362301e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump to 20040118 362401e196c8SJohn Marino 362501e196c8SJohn Marino * boot-strap (while): export vars we assign to on cmdline 362601e196c8SJohn Marino * unit-test/Makefile.in: ternary is .PHONY 362701e196c8SJohn Marino 362801e196c8SJohn Marino2004-01-08 Simon J. Gerraty <sjg@void.crufty.net> 362901e196c8SJohn Marino 363001e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20040108 363101e196c8SJohn Marino * Merge with NetBSD make, pick up: 363201e196c8SJohn Marino o fix for ternary modifier 363301e196c8SJohn Marino 363401e196c8SJohn Marino2004-01-06 Simon J. Gerraty <sjg@void.crufty.net> 363501e196c8SJohn Marino 363601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20040105 363701e196c8SJohn Marino * Merge with NetBSD make, pick up: 363801e196c8SJohn Marino o fix for cond.c to handle compound expressions better 363901e196c8SJohn Marino o variable expansion within sysV style replacements 364001e196c8SJohn Marino 364101e196c8SJohn Marino2003-12-22 Simon J. Gerraty <sjg@void.crufty.net> 364201e196c8SJohn Marino 364301e196c8SJohn Marino * Make portable snprintf safer - output to /dev/null first to 364401e196c8SJohn Marino check space needed. 364501e196c8SJohn Marino 364601e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20031222 364701e196c8SJohn Marino * Merge with NetBSD make, pick up: 364801e196c8SJohn Marino o -dg3 to show input graph when things go wrong. 364901e196c8SJohn Marino o explicitly look for makefiles in objdir if not found in curdir so 365001e196c8SJohn Marino that errors in .depend etc will be reported accurarely. 365101e196c8SJohn Marino o avoid use of -e in shell scripts in jobs mode, use '|| exit $?' 365201e196c8SJohn Marino instead as it more accurately reflects the expected behavior and 365301e196c8SJohn Marino is more consistently implemented. 365401e196c8SJohn Marino o avoid use of asprintf. 365501e196c8SJohn Marino 365601e196c8SJohn Marino2003-09-28 Simon J. Gerraty <sjg@void.crufty.net> 365701e196c8SJohn Marino 365801e196c8SJohn Marino * util.c: Add asprintf and vasprintf. 365901e196c8SJohn Marino 366001e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20030928 366101e196c8SJohn Marino * Merge with NetBSD make, pick up: 366201e196c8SJohn Marino :[] modifier - allows picking words from a variable. 366301e196c8SJohn Marino :tW modifier - allows treating value as one big word. 366401e196c8SJohn Marino W flag for :C and :S - allows treating value as one big word. 366501e196c8SJohn Marino 366601e196c8SJohn Marino2003-09-12 Simon J. Gerraty <sjg@void.crufty.net> 366701e196c8SJohn Marino 366801e196c8SJohn Marino * Merge with NetBSD make 366901e196c8SJohn Marino pick up -de flag to enable printing failed command. 367001e196c8SJohn Marino don't skip 1st two dir entries (normally . and ..) since 367101e196c8SJohn Marino coda does not have them. 367201e196c8SJohn Marino 367301e196c8SJohn Marino2003-09-09 Simon J. Gerraty <sjg@void.crufty.net> 367401e196c8SJohn Marino 367501e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20030909 367601e196c8SJohn Marino * Merge with NetBSD make, pick up: 367701e196c8SJohn Marino - changes for -V '${VAR}' to print fully expanded value 367801e196c8SJohn Marino cf. -V VAR 367901e196c8SJohn Marino - CompatRunCommand now prints the command that failed. 368001e196c8SJohn Marino - several files got updated 3 clause Berkeley license. 368101e196c8SJohn Marino 368201e196c8SJohn Marino2003-08-02 Simon J. Gerraty <sjg@void.crufty.net> 368301e196c8SJohn Marino 368401e196c8SJohn Marino * boot-strap: Allow setting configure args on command line. 368501e196c8SJohn Marino 368601e196c8SJohn Marino2003-07-31 Simon J. Gerraty <sjg@void.crufty.net> 368701e196c8SJohn Marino 368801e196c8SJohn Marino * configure.in: add --with-defshell to allow sh or ksh 368901e196c8SJohn Marino to be selected as default shell. 369001e196c8SJohn Marino 369101e196c8SJohn Marino * Makefile.in: bump version to 20030731 369201e196c8SJohn Marino 369301e196c8SJohn Marino * Merge with NetBSD make 369401e196c8SJohn Marino Pick up .SHELL spec for ksh and associate man page changes. 369501e196c8SJohn Marino Also compat mode now uses the same shell specs. 369601e196c8SJohn Marino 369701e196c8SJohn Marino2003-07-29 Simon J. Gerraty <sjg@void.crufty.net> 369801e196c8SJohn Marino 369901e196c8SJohn Marino * var.c (Var_Parse): ensure delim is initialized. 370001e196c8SJohn Marino 370101e196c8SJohn Marino * unit-tests/Makefile.in: use single quotes to avoid problems from 370201e196c8SJohn Marino some shells. 370301e196c8SJohn Marino 370401e196c8SJohn Marino * makefile.boot.in: 370501e196c8SJohn Marino Run the unit-tests as part of the bootstrap procedure. 370601e196c8SJohn Marino 370701e196c8SJohn Marino2003-07-28 Simon J. Gerraty <sjg@void.crufty.net> 370801e196c8SJohn Marino 370901e196c8SJohn Marino * unit-tests/Makefile.in: always force complaints from 371001e196c8SJohn Marino ${TEST_MAKE} to be from 'make'. 371101e196c8SJohn Marino 371201e196c8SJohn Marino * configure.in: add check for 'diff -u' 371301e196c8SJohn Marino also fix some old autoconf'isms 371401e196c8SJohn Marino 371501e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20030728. 371601e196c8SJohn Marino if using GCC add -Wno-cast-qual to CFLAGS for var.o 371701e196c8SJohn Marino 371801e196c8SJohn Marino * Merge with NetBSD make 371901e196c8SJohn Marino Pick up fix for :ts parsing error in some cases. 372001e196c8SJohn Marino Pick unit-tests. 372101e196c8SJohn Marino 372201e196c8SJohn Marino2003-07-23 Simon J. Gerraty <sjg@void.crufty.net> 372301e196c8SJohn Marino 372401e196c8SJohn Marino * Makefile.in (BMAKE_VERSION): bump version to 20030723. 372501e196c8SJohn Marino 372601e196c8SJohn Marino * var.c (Var_Parse): fix bug in :ts modifier, after const 372701e196c8SJohn Marino correctness fixes, must pass nstr to VarModify. 372801e196c8SJohn Marino 372901e196c8SJohn Marino2003-07-14 Simon J. Gerraty <sjg@void.crufty.net> 373001e196c8SJohn Marino 373101e196c8SJohn Marino * Makefile.in: BMAKE_VERSION switch to a date based version. 373201e196c8SJohn Marino We'll generally use the date of last import from NetBSD. 373301e196c8SJohn Marino 373401e196c8SJohn Marino * Merge with NetBSD make 373501e196c8SJohn Marino Pick up fixes for const-correctness, now passes WARNS=3 on 373601e196c8SJohn Marino NetBSD. 373701e196c8SJohn Marino Pick up :ts modifier, allows controlling the separator used 373801e196c8SJohn Marino between words in variable expansion. 373901e196c8SJohn Marino 374001e196c8SJohn Marino2003-07-11 Simon J. Gerraty <sjg@void.crufty.net> 374101e196c8SJohn Marino 374201e196c8SJohn Marino * FILES: include boot-strap and os.sh 374301e196c8SJohn Marino 374401e196c8SJohn Marino * Makefile.in: only set WARNS if we are NetBSD, the effect on 374501e196c8SJohn Marino FreeBSD is known to be bad. 374601e196c8SJohn Marino 374701e196c8SJohn Marino * makefile.boot.in (bootstrap): make this the default target. 374801e196c8SJohn Marino 374901e196c8SJohn Marino * Makefile.in: bump version to 3.1.19 375001e196c8SJohn Marino 375101e196c8SJohn Marino * machine.sh: avoid A-Z with tr as it is bound to lose. 375201e196c8SJohn Marino 375301e196c8SJohn Marino2003-07-10 Simon J. Gerraty <sjg@void.crufty.net> 375401e196c8SJohn Marino 375501e196c8SJohn Marino * Merge with NetBSD make 375601e196c8SJohn Marino Pick up fix for PR/19781 - unhelpful error msg on unclosed ${var:foo 375701e196c8SJohn Marino Plus some doc fixes. 375801e196c8SJohn Marino 375901e196c8SJohn Marino2003-04-27 Simon J. Gerraty <sjg@void.crufty.net> 376001e196c8SJohn Marino 376101e196c8SJohn Marino * Merge with NetBSD make 376201e196c8SJohn Marino Pick up fix for PR/1523 - don't count a library as built, if there 376301e196c8SJohn Marino is no way to build it 376401e196c8SJohn Marino 376501e196c8SJohn Marino * Bump version to 3.1.18 376601e196c8SJohn Marino 376701e196c8SJohn Marino2003-03-23 Simon J. Gerraty <sjg@void.crufty.net> 376801e196c8SJohn Marino 376901e196c8SJohn Marino * Merge with NetBSD make 377001e196c8SJohn Marino Pick up fix for ParseDoSpecialSrc - we only use it if .WAIT 377101e196c8SJohn Marino appears in src list. 377201e196c8SJohn Marino 377301e196c8SJohn Marino2003-03-21 Simon J. Gerraty <sjg@void.crufty.net> 377401e196c8SJohn Marino 377501e196c8SJohn Marino * Merge with NetBSD make (mmm 10th anniversary!) 377601e196c8SJohn Marino pick up fix for .WAIT in srcs that refer to $@ or $* (PR#20828) 377701e196c8SJohn Marino pick up -X which tells us to not export VAR=val via setenv if 377801e196c8SJohn Marino we are already doing so via MAKEFLAGS. This saves valuable env 377901e196c8SJohn Marino space on systems like Darwin. 378001e196c8SJohn Marino set MAKE_VERSION to 3.1.17 378101e196c8SJohn Marino 378201e196c8SJohn Marino * parse.c: pix up fix for suffix rules 378301e196c8SJohn Marino 378401e196c8SJohn Marino2003-03-06 Simon J. Gerraty <sjg@void.crufty.net> 378501e196c8SJohn Marino 378601e196c8SJohn Marino * Merge with NetBSD make. 378701e196c8SJohn Marino pick up fix for propagating -B via MAKEFLAGS. 378801e196c8SJohn Marino set MAKE_VERSION to 3.1.16 378901e196c8SJohn Marino 379001e196c8SJohn Marino * Apply some patches from pkgsrc-bootstrap/bmake 379101e196c8SJohn Marino Originally by Grant Beattie <grant@netbsd.org> 379201e196c8SJohn Marino I may have missed some - since they are based on bmake-3.1.12 379301e196c8SJohn Marino 379401e196c8SJohn Marino2002-12-03 Simon J. Gerraty <sjg@void.crufty.net> 379501e196c8SJohn Marino 379601e196c8SJohn Marino * makefile.boot.in (bmake): update install targets for those that 379701e196c8SJohn Marino use them, also clear MAKEFLAGS when invoking bmake.boot to avoid 379801e196c8SJohn Marino havoc from gmake -w. Thanks to Harlan Stenn <hstenn@cisco.com>. 379901e196c8SJohn Marino 380001e196c8SJohn Marino * bmake.cat1: update the pre-formatted man page! 380101e196c8SJohn Marino 380201e196c8SJohn Marino2002-11-30 Simon J. Gerraty <sjg@void.crufty.net> 380301e196c8SJohn Marino 380401e196c8SJohn Marino * Merge with NetBSD make. 380501e196c8SJohn Marino pick up fix for premature free of pointer used in call 380601e196c8SJohn Marino to Dir_InitCur(). 380701e196c8SJohn Marino set MAKE_VERSION to 3.1.15 380801e196c8SJohn Marino 380901e196c8SJohn Marino2002-11-26 Simon J. Gerraty <sjg@void.crufty.net> 381001e196c8SJohn Marino 381101e196c8SJohn Marino * configure.in: determine suitable value for MKSRC. 381201e196c8SJohn Marino override using --with-mksrc=PATH. 381301e196c8SJohn Marino 381401e196c8SJohn Marino * machine.sh: use `uname -p` for MACHINE_ARCH on modern SunOS systems. 381501e196c8SJohn Marino configs(8) will use 'sun4' as an alias for 'sparc'. 381601e196c8SJohn Marino 381701e196c8SJohn Marino2002-11-25 Simon J. Gerraty <sjg@void.crufty.net> 381801e196c8SJohn Marino 381901e196c8SJohn Marino * Merge with NetBSD make. 382001e196c8SJohn Marino pick up ${.PATH} 382101e196c8SJohn Marino pick up fix for finding ../cat.c via .PATH when .CURDIR=.. 382201e196c8SJohn Marino set MAKE_VERSION to 3.1.14 382301e196c8SJohn Marino add configure checks for killpg and sys/socket.h 382401e196c8SJohn Marino 382501e196c8SJohn Marino2002-09-16 Simon J. Gerraty <sjg@void.crufty.net> 382601e196c8SJohn Marino 382701e196c8SJohn Marino * tag bmake-3-1-13 382801e196c8SJohn Marino 382901e196c8SJohn Marino * makefile.boot.in (bmake): use install-mk 383001e196c8SJohn Marino Also setup ./mk before trying to invoke bmake.boot incase we 383101e196c8SJohn Marino needed install-mk to create a sys.mk for us. 383201e196c8SJohn Marino 383301e196c8SJohn Marino * configure.in: If we need to add -I${srcdir}/missing, make it an 383401e196c8SJohn Marino absolute path so that it works for lst.lib too. 383501e196c8SJohn Marino 383601e196c8SJohn Marino * make.h: always include sys/cdefs.h since we provide one if the 383701e196c8SJohn Marino host does not. 383801e196c8SJohn Marino 383901e196c8SJohn Marino * Makefile.in (install-mk): 384001e196c8SJohn Marino use MKSRC/install-mk which will do the right thing. 384101e196c8SJohn Marino use uname -p for ARCH if possible. 384201e196c8SJohn Marino since install-mk will setup links bsd.prog.mk -> prog.mk if 384301e196c8SJohn Marino needed, just .include bsd.prog.mk 384401e196c8SJohn Marino 384501e196c8SJohn Marino * Merge with NetBSD make (NetBSD-1.6) 384601e196c8SJohn Marino Code is ansi-C only now. 384701e196c8SJohn Marino Bug in handling of dotLast is fixed. 384801e196c8SJohn Marino Can now assign .OBJDIR and make will reset its notions of life. 384901e196c8SJohn Marino New modifiers :tu :tl for toUpper and toLower. 385001e196c8SJohn Marino 385101e196c8SJohn MarinoTue Oct 16 12:18:42 2001 Simon J. Gerraty <sjg@zen.crufty.net> 385201e196c8SJohn Marino 385301e196c8SJohn Marino * Merge with NetBSD make 385401e196c8SJohn Marino pick up fix for .END failure in compat mode. 385501e196c8SJohn Marino pick up fix for extra va_end() in ParseVErrorInternal. 385601e196c8SJohn Marino 385701e196c8SJohn MarinoThu Oct 11 13:20:06 2001 Simon J. Gerraty <sjg@zen.crufty.net> 385801e196c8SJohn Marino 385901e196c8SJohn Marino * configure.in: for systems that have sys/cdefs.h check if it is 386001e196c8SJohn Marino compatible. If not, include the one under missing, but tell it to 386101e196c8SJohn Marino include the native one too - necessary on Linux. 386201e196c8SJohn Marino 386301e196c8SJohn Marino * missing/sys/cdefs.h: if NEED_HOST_CDEFS_H is defined, use 386401e196c8SJohn Marino include_next (for gcc) to get the native sys/cdefs.h 386501e196c8SJohn Marino 386601e196c8SJohn MarinoTue Aug 21 02:29:34 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 386701e196c8SJohn Marino 386801e196c8SJohn Marino * job.c (JobFinish): Fix an earlier merge bug that resulted in 386901e196c8SJohn Marino leaking descriptors when using -jN. 387001e196c8SJohn Marino 387101e196c8SJohn Marino * job.c (JobPrintCommand): See if "curdir" exists before 387201e196c8SJohn Marino attempting to chdir(). Doing the chdir directly in make (when in 387301e196c8SJohn Marino compat mode) fails silently, so let the -jN version do the same. 387401e196c8SJohn Marino This can happen when building kernels in an object tree and 387501e196c8SJohn Marino playing clever games to reset .CURDIR. 387601e196c8SJohn Marino 387701e196c8SJohn Marino * Merged with NetBSD make 387801e196c8SJohn Marino pick up .USEBEFORE 387901e196c8SJohn Marino 388001e196c8SJohn MarinoTue Jun 26 23:45:11 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 388101e196c8SJohn Marino 388201e196c8SJohn Marino * makefile.boot.in: Give bmake.boot a MAKESYSPATH that might work. 388301e196c8SJohn Marino 388401e196c8SJohn MarinoTue Jun 12 16:48:57 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 388501e196c8SJohn Marino 388601e196c8SJohn Marino * var.c (Var_Set): Add 4th (flags) arg so VarLoopExpand can tell 388701e196c8SJohn Marino us not to export the iterator variable when using VAR_CMD context. 388801e196c8SJohn Marino 388901e196c8SJohn MarinoSun Jun 10 21:55:21 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 389001e196c8SJohn Marino 389101e196c8SJohn Marino * job.c (Job_CatchChildren): don't call Job_CatchOutput() here, 389201e196c8SJohn Marino its the wrong "fix". 389301e196c8SJohn Marino 389401e196c8SJohn MarinoSat Jun 9 00:11:24 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 389501e196c8SJohn Marino 389601e196c8SJohn Marino * Redesigned export of VAR_CMD's via MAKEFLAGS. 389701e196c8SJohn Marino We now simply append the variable names to .MAKEOVERRIDES, and 389801e196c8SJohn Marino handle duplicate suppression and quoting in ExportMAKEFLAGS using: 389901e196c8SJohn Marino ${.MAKEOVERRIDES:O:u:@v@$v=${$v:Q}@} 390001e196c8SJohn Marino Apart from fixing quoting bugs in previous version, this allows us 390101e196c8SJohn Marino to export vars to the environment by simply doing: 390201e196c8SJohn Marino .MAKEOVERRIDES+= PATH 390301e196c8SJohn Marino Merged again with NetBSD make, but the above is the only change. 390401e196c8SJohn Marino 390501e196c8SJohn Marino * configure.in: added 390601e196c8SJohn Marino --disable-pwd-override disable $PWD overriding getcwd() 390701e196c8SJohn Marino --disable-check-make-chdir disable make trying to guess 390801e196c8SJohn Marino when it should automatically cd ${.CURDIR} 390901e196c8SJohn Marino 391001e196c8SJohn Marino * Merge with NetBSD make, changes include: 391101e196c8SJohn Marino parse.c (ParseDoDependency): Spot that the syntax error is 391201e196c8SJohn Marino caused by an unresolved cvs/rcs conflict and say so. 391301e196c8SJohn Marino var.c: most of Var* functions now take a ctxt as 1st arg. 391401e196c8SJohn Marino now does variable substituion on rhs of sysv style modifiers. 391501e196c8SJohn Marino 391601e196c8SJohn Marino * var.c (Var_Set): exporting of command line variables (VAR_CMD) 391701e196c8SJohn Marino is now done here. We append the name='value' to .MAKEOVERRIDES 391801e196c8SJohn Marino rather than directly into MAKEFLAGS as this allows a Makefile to 391901e196c8SJohn Marino use .MAKEOVERRIDES= to disable this behaviour. GNU make uses a 392001e196c8SJohn Marino very similar mechanism. Note that in adding name='value' to 392101e196c8SJohn Marino .MAKEOVERRIDES we do the moral equivalent of: 392201e196c8SJohn Marino .MAKEOVERRIDES:= ${.MAKEOVERRIDES:Nname=*} name='val' 392301e196c8SJohn Marino 392401e196c8SJohn MarinoFri Jun 1 14:08:02 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 392501e196c8SJohn Marino 392601e196c8SJohn Marino * make-conf.h (USE_IOVEC): make it conditional on HAVE_SYS_UIO_H 392701e196c8SJohn Marino 392801e196c8SJohn Marino * Merged with NetBSD make 392901e196c8SJohn Marino make -dx can now be used to run commands via sh -x 393001e196c8SJohn Marino better error messages on exec failures. 393101e196c8SJohn Marino 393201e196c8SJohn MarinoThu May 31 01:44:54 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 393301e196c8SJohn Marino 393401e196c8SJohn Marino * Makefile.in (main.o): depends on ${SRCS} ${MAKEFILE} so that 393501e196c8SJohn Marino MAKE_VERSION gets updated. Also don't use ?= for MAKE_VERSION, 393601e196c8SJohn Marino MACHINE etc otherwise they propagate from the previous bmake. 393701e196c8SJohn Marino 393801e196c8SJohn Marino * configure.in (machine): allow --with-machine=generic to make 393901e196c8SJohn Marino configure use machine.sh to set MACHINE. 394001e196c8SJohn Marino 394101e196c8SJohn Marino * job.c (JobInterrupt): convert to using WAIT_T and friends. 394201e196c8SJohn Marino 394301e196c8SJohn Marino * Makefile.in: mention in bmake.1 that we use autoconf. 394401e196c8SJohn Marino 394501e196c8SJohn Marino * make.1: mention MAKE_PRINT_VAR_ON_ERROR. 394601e196c8SJohn Marino 394701e196c8SJohn MarinoWed May 30 23:17:18 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 394801e196c8SJohn Marino 394901e196c8SJohn Marino * main.c (ReadMakefile): don't set MAKEFILE if reading ".depend" 395001e196c8SJohn Marino as that rather defeats the usefulness of ${MAKEFILE}. 395101e196c8SJohn Marino 395201e196c8SJohn Marino * main.c (MainParseArgs): append command line variable assignments 395301e196c8SJohn Marino to MAKEFLAGS so that they get propagated to child make's. 395401e196c8SJohn Marino Apparently this is required POSIX behaviour? Its useful anyway. 395501e196c8SJohn Marino 395601e196c8SJohn MarinoTue May 29 02:20:07 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 395701e196c8SJohn Marino 395801e196c8SJohn Marino * compat.c (CompatRunCommand): don't use perror() since stdio may 395901e196c8SJohn Marino cause problems in child of vfork(). 396001e196c8SJohn Marino 396101e196c8SJohn Marino * compat.c, main.c: Call PrintOnError() when we are going to bail. 396201e196c8SJohn Marino This routine prints out the .curdir where we stopped and will also 396301e196c8SJohn Marino display any vars listed in ${MAKE_PRINT_VAR_ON_ERROR}. 396401e196c8SJohn Marino 396501e196c8SJohn Marino * main.c: add ${.newline} to hold a "\n" - sometimes handy in 396601e196c8SJohn Marino :@ expansion. 396701e196c8SJohn Marino 396801e196c8SJohn Marino * var.c: VarLoopExpand: ignore addSpace if a \n is present. 396901e196c8SJohn Marino 397001e196c8SJohn Marino * Added RCSid's for the files we've touched. 397101e196c8SJohn Marino 397201e196c8SJohn MarinoThu May 24 15:41:37 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 397301e196c8SJohn Marino 397401e196c8SJohn Marino * configure.in: Thanks to some clues from mdb@juniper.net, 397501e196c8SJohn Marino added autoconf magic to control setting of MACHINE, MACHINE_ARCH 397601e196c8SJohn Marino as well as what ends up in _PATH_DEFSYSPATH. We now have: 397701e196c8SJohn Marino 397801e196c8SJohn Marino --with-machine=MACHINE explicitly set MACHINE 397901e196c8SJohn Marino --with-force-machine=MACHINE set FORCE_MACHINE 398001e196c8SJohn Marino --with-machine_arch=MACHINE_ARCH explicitly set MACHINE_ARCH 398101e196c8SJohn Marino --with-default-sys-path=PATH:DIR:LIST use an explicit _PATH_DEFSYSPATH 398201e196c8SJohn Marino --with-prefix-sys-path=PATH:DIR:LIST prefix _PATH_PREFIX_SYSPATH 398301e196c8SJohn Marino --with-path-objdirprefix=PATH override _PATH_OBJDIRPREFIX 398401e196c8SJohn Marino 398501e196c8SJohn Marino If _PATH_OBJDIRPREFIX is set to "no" we won't define it. 398601e196c8SJohn Marino 398701e196c8SJohn Marino * makefile: added a pathetically simple makefile to drive 398801e196c8SJohn Marino bootstrapping. Running configure by hand is more useful. 398901e196c8SJohn Marino 399001e196c8SJohn Marino * Makefile.in: added MAKE_VERSION, and reworked things to be less 399101e196c8SJohn Marino dependent on NetBSD bsd.*.mk 399201e196c8SJohn Marino 399301e196c8SJohn Marino * pathnames.h: allow NO_PATH_OBJDIRPREFIX to stop us defining 399401e196c8SJohn Marino _PATH_OBJDIRPREFIX for those that don't want a default. 399501e196c8SJohn Marino construct _PATH_DEFSYSPATH from the info we get from configure. 399601e196c8SJohn Marino 399701e196c8SJohn Marino * main.c: allow for no _PATH_OBJDIRPREFIX, set ${MAKE_VERSION} 399801e196c8SJohn Marino if MAKE_VERSION is defined. 399901e196c8SJohn Marino 400001e196c8SJohn Marino * compat.c: when we bail, print out the .CURDIR we were in. 400101e196c8SJohn Marino 400201e196c8SJohn MarinoSat May 12 00:34:12 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 400301e196c8SJohn Marino 400401e196c8SJohn Marino * Merged with NetBSD make 400501e196c8SJohn Marino 400601e196c8SJohn Marino * var.c: fixed a bug in the handling of the modifier :P 400701e196c8SJohn Marino if the node as found but the path was null, we segfault trying to 400801e196c8SJohn Marino duplicate it. 400901e196c8SJohn Marino 401001e196c8SJohn MarinoMon Mar 5 16:20:33 2001 Simon J. Gerraty <sjg@zen.quick.com.au> 401101e196c8SJohn Marino 401201e196c8SJohn Marino * Merged with NetBSD make 401301e196c8SJohn Marino 401401e196c8SJohn Marino * make.c: Make_OODate's test for a library out of date was using 401501e196c8SJohn Marino cmtime where it should have used mtime (my bug). 401601e196c8SJohn Marino 401701e196c8SJohn Marino * compat.c: Use perror() to tell us what really went wrong when we 401801e196c8SJohn Marino cannot exec a command. 401901e196c8SJohn Marino 402001e196c8SJohn MarinoFri Dec 15 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 402101e196c8SJohn Marino 402201e196c8SJohn Marino * Merged with NetBSD make 402301e196c8SJohn Marino 402401e196c8SJohn MarinoSat Jun 10 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 402501e196c8SJohn Marino 402601e196c8SJohn Marino * Merged with NetBSD make 402701e196c8SJohn Marino 402801e196c8SJohn MarinoThu Jun 1 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 402901e196c8SJohn Marino 403001e196c8SJohn Marino * Merged with NetBSD make 403101e196c8SJohn Marino 403201e196c8SJohn MarinoTue May 30 10:11:08 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 403301e196c8SJohn Marino 403401e196c8SJohn Marino * Merged with NetBSD make 403501e196c8SJohn Marino 403601e196c8SJohn MarinoThu Apr 27 00:07:47 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 403701e196c8SJohn Marino 403801e196c8SJohn Marino * util.c: don't provide signal() since we use sigcompat.c 403901e196c8SJohn Marino 404001e196c8SJohn Marino * Makefile.in: added a build target. 404101e196c8SJohn Marino 404201e196c8SJohn Marino * var.c (Var_Parse): added ODE modifiers :U, :D, :L, :P, :@ and :! 404301e196c8SJohn Marino These allow some quite clever magic. 404401e196c8SJohn Marino 404501e196c8SJohn Marino * main.c (main): added support for getenv(MAKESYSPATH). 404601e196c8SJohn Marino 404701e196c8SJohn MarinoMon Apr 2 16:25:13 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 404801e196c8SJohn Marino 404901e196c8SJohn Marino * Disable $PWD overriding getcwd() if MAKEOBJDIRPREFIX is set. 405001e196c8SJohn Marino This avoids objdir having a different value depending on how a 405101e196c8SJohn Marino directory was reached (via command line, or subdir.mk). 405201e196c8SJohn Marino 405301e196c8SJohn Marino * If FORCE_MACHINE is defined, ignore getenv("MACHINE"). 405401e196c8SJohn Marino 405501e196c8SJohn MarinoMon Apr 2 23:15:31 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 405601e196c8SJohn Marino 405701e196c8SJohn Marino * Do a chdir(${.CURDIR}) before invoking ${.MAKE} or ${.MAKE:T} if 405801e196c8SJohn Marino MAKEOBJDIRPREFIX is set and NOCHECKMAKECHDIR is not. 405901e196c8SJohn Marino I've been testing this in NetBSD's make for some weeks. 406001e196c8SJohn Marino 406101e196c8SJohn Marino * Turn Makefile into Makefile.in and make it useful. 406201e196c8SJohn Marino 406301e196c8SJohn MarinoTue Feb 29 22:08:00 2000 Simon J. Gerraty <sjg@zen.quick.com.au> 406401e196c8SJohn Marino 406501e196c8SJohn Marino * Imported NetBSD's -current make(1) and resolve conflicts. 406601e196c8SJohn Marino 406701e196c8SJohn Marino * Applied autoconf patches from bmake v2 406801e196c8SJohn Marino 406901e196c8SJohn Marino * Imported clean code base from NetBSD-1.0 4070