Changeset 2591 in kBuild for trunk/src/kmk/ChangeLog
- Timestamp:
- Jun 17, 2012 8:45:31 PM (13 years ago)
- Location:
- trunk/src/kmk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kmk
- Property svn:ignore
-
old new 13 13 stamp-* 14 14 makebook* 15 15 16 .*gdbinit 17 .gdb_history 18 16 19 *.dep 17 20 *.dvi … … 31 34 *.pg 32 35 *.pgs 36 33 37 README 34 38 README.DOS 35 39 README.W32 40 README.OS2 36 41 aclocal.m4 37 42 autom4te.cache … … 52 57 config.h.W32 53 58 config.h-vms 59 54 60 loadavg 55 61 loadavg.c 56 62 make 63 57 64 .deps 58 65 .dep_segment 66 ID 67 TAGS 68 59 69 _* 60 70 sun4 … … 72 82 sol2 73 83 i486-linux 84 74 85 customs 86 75 87 install-sh 76 88 mkinstalldirs 89 90 .directive.asc
-
- Property svn:ignore
-
trunk/src/kmk/ChangeLog
r1993 r2591 1 2010-07-28 Paul Smith <[email protected]> 2 3 Version 3.82 released. 4 5 * configure.in: Change release version. 6 * NEWS: Change the date. 7 8 * read.c (parse_file_seq): Remove GLOB_NOSORT for 9 backward-compatibility. We'll add it back in next release. 10 * NEWS: Note it. 11 12 2010-07-24 Eli Zaretskii <[email protected]> 13 14 * job.c (pid2str) [WINDOWS32]: Fix CPP conditionals for using %Id 15 format. 16 17 2010-07-18 Paul Smith <[email protected]> 18 19 * configure.in: Switch bsd_signal to AC_CHECK_DECLS() to make sure 20 we have a declaration. Fixes Savannah bug #25713 (maybe?) 21 * doc/make.texi (Complex Makefile): Cleanup variable assignments. 22 (One Shell): New subsection for the .ONESHELL special target. 23 24 Patches by Ozkan Sezer <[email protected]>: 25 26 * misc.c (strncasecmp): Local implementation for systems without. 27 * config.h.W32.template (HAVE_STRNICMP): Define on Windows. 28 * configure.in: Check for strncasecmp/strncmpi/strnicmp. 29 * job.c [WINDOWS32]: Don't define dup2 on Windows. 30 (pid2str): Use "%Id" even with MSVC 31 (exec_command): Cast to pid_t when calling pid2str(). 32 * w32/subproc/sub_proc.c [WINDOWS32]: Include config.h first. 33 Use stddef.h on MSVC to get intptr_t. 34 * w32/subproc/misc.c [WINDOWS32]: Include config.h first. 35 * w32/compat/dirent.c [WINDOWS32]: Include config.h first. 36 (readdir): Cast -1 to correct type for d_ino. 37 * w32/pathstuff.c [WINDOWS32]: Ensure make.h is included first. 38 * make.h [WINDOWS32]: Don't prototype alloca() on Windows. 39 Add configuration for strncasecmp(). 40 * main.c (ADD_SIG) [WINDOWS32]: Avoid warnings in MSVC. 41 * config.h.W32.template [WINDOWS32]: Don't warn on unsafe 42 functions or variables. 43 * NMakefile.template [WINDOWS32]: Remove /MACHINE:I386. 44 * main.c (clean_jobserver): Cast due to MSVC brokenness. 45 (decode_switches): Ditto. 46 * vpath.c (construct_vpath_list): Ditto. 47 * rule.c (freerule): Ditto. 48 * ar.c (ar_glob): Ditto. 49 50 2010-07-16 Boris Kolpackov <[email protected]> 51 52 * misc.c (concat): Fix buffer overrun. 53 54 2010-07-12 Paul Smith <[email protected]> 55 56 Update copyrights to add 2010. 57 58 * build_w32.bat: Support for MSVC Windows x86_64 builds. 59 * job.c: Don't define execve() on MSVC/64bit. 60 Patch by Viktor Szakats. Fixes Savannah bug #27590. 61 62 2010-07-12 Eli Zaretskii <[email protected]> 63 64 * make.h (alloca) [!__GNUC__]: Don't define prototype. 65 (int w32_kill): Use pid_t for process ID argument. 66 Fixes Savannah bug #27809. 67 68 2010-07-12 Paul Smith <[email protected]> 69 70 Integrated new .ONESHELL feature. 71 Patch by David Boyce <[email protected]>. Modified by me. 72 73 * NEWS: Add a note about the new feature. 74 * job.c (is_bourne_compatible_shell): Determine whether we're 75 using a standard POSIX shell or not. 76 (start_job_command): Accept '-ec' as POSIX shell flags. 77 (construct_command_argv_internal): If one_shell is set and we are 78 using a POSIX shell, remove "interior" prefix characters such as 79 "@", "+", "-". Also treat "\n" as a special character when 80 choosing the slow path, if ONESHELL is set. 81 * job.h (is_bourne_compatible_argv): Define the new function. 82 83 * make.h (one_shell): New global variable to remember setting. 84 * main.c: Declare it. 85 * read.c (record_files): Set it. 86 * commands.c (chop_commands): If one_shell is set, don't chop 87 commands into multiple lines; just keep one line. 88 89 2010-07-09 Eli Zaretskii <[email protected]> 90 91 * w32/subproc/sub_proc.c: Include stdint.h. 92 (sub_process_t): Use intptr_t for file handles and pid_t for 93 process ID. 94 (process_pipes, process_init_fd, process_begin): Use intptr_t for 95 file handles and pid_t for process ID. Fixes Savannah bug #27809. 96 Patch by Ozkan Sezer <[email protected]> 97 98 * function.c (abspath): Support absolute file names in UNC format. 99 Fixes Savannah bug #30312. 100 101 * job.c (pid2str) [WINDOWS32]: Don't use %Id with GCC < 4.x. 102 (exec_command) [WINDOWS32]: Use pid2str instead of non-portable 103 %Id. 104 105 * main.c (handle_runtime_exceptions): Use %p to print addresses, 106 to DTRT on both 32-bit and 64-bit hosts. Savannah bug #27809. 107 108 * job.c (w32_kill, start_job_command, create_batch_file): Use 109 pid_t for process IDs and intptr_t for the 1st arg of 110 _open_osfhandle. 111 * function.c (windows32_openpipe): Use pid_t for process IDs and 112 intptr_t for the 1st arg of _open_osfhandle. 113 (func_shell): Use pid_t for process IDs. 114 * main.c (main) [WINDOWS32]: Pacify the compiler. 115 * config.h.W32.template (pid_t): Add a definition for 64-bit 116 Windows builds that don't use GCC. Fixes Savannah bug #27809. 117 Patch by Ozkan Sezer <[email protected]> 118 119 2010-07-07 Paul Smith <[email protected]> 120 121 * configure.in: Bump to a new prerelease version 3.81.91. 122 123 2010-07-06 Paul Smith <[email protected]> 124 125 * main.c (main): Set a default value of "-c" for .SHELLFLAGS. 126 * NEWS: Mention the new behavior of .POSIX and the new .SHELLFLAGS 127 variable. 128 * job.c (construct_command_argv): Retrieve the .SHELLFLAGS value 129 and pass it to construct_command_argv_internal(). 130 (construct_command_argv_internal): If .SHELLFLAGS is non-standard 131 use the slow path. Use that value instead of hard-coded "-c". 132 133 2010-07-05 Paul Smith <[email protected]> 134 135 * implicit.c (pattern_search): lastslash can be const. 136 * dir.c (downcase): Remove unused variable. 137 * hash.c (hash_init): Cast sizeof for error message. 138 * arscan.c (ar_scan): Cast to char* for WINDOWS32. 139 (ar_member_touch): Ditto. 140 * ar.c (glob_pattern_p): Avoid symbol collision: open -> opened 141 * signame.c (strsignal): Ditto: signal -> sig 142 * job.c (create_batch_file): Ditto: error -> error_string 143 (pid2str): Portably convert a pid_t into a string 144 (reap_children): Use it. 145 (start_waiting_job): Use it. 146 Savannah bug #27809. Patch by Ozkan Sezer <[email protected]> 147 148 2010-07-03 Paul Smith <[email protected]> 149 150 * read.c (parse_file_seq): All archive groups must end with ')' as 151 the LAST character in a word. If there is no word ending in ')' 152 then it's not an archive group. Fixes Savannah bug #28525. 153 154 2010-07-01 Paul Smith <[email protected]> 155 156 * main.c (main): Append optional features using separate calls. 157 Not as efficient but not all compilers allow conditionals inside 158 macro calls. Fixes Savannah bug #29244. 159 160 2010-01-10 Paul Smith <[email protected]> 161 162 * make.h (patheq): Rename strieq() to patheq() for clarity. 163 * dir.c (dir_contents_file_exists_p): Use it. 164 165 * dir.c (file_impossible): Convert xmalloc/memset to xcalloc. 166 * file.c (enter_file): Ditto. 167 * job.c (new_job): Ditto. 168 169 2009-12-11 Eli Zaretskii <[email protected]> 170 171 * job.c (construct_command_argv_internal) <sh_cmds_dos> 172 [WINDOWS32]: Add "echo." and a few more commands that are built 173 into cmd.exe. Fixes Savannah bug #28126. 174 175 * file.c (lookup_file) [HAVE_DOS_PATHS]: Treat '\\' like we do 176 with '/'. 177 178 2009-11-15 Paul Smith <[email protected]> 179 180 Patches for VMS provided by Hartmut Becker <[email protected]> 181 182 * vmsjobs.c (ctrlYPressed) [VMS]: Deal with CTRL-Y. 183 (vmsHandleChildTerm) [VMS]: Ditto. 184 (astYHandler) [VMS]: Ditto. 185 (tryToSetupYAst) [VMS]: Ditto. 186 (child_execute_job) [VMS]: Ditto. 187 188 * vmsify.c (trnlog) [VMS]: Fix const errors. 189 (vmsify) [VMS]: Ditto. 190 191 * readme.vms [VMS]: Update with notes for 3.82. 192 193 * job.h (comname) [VMS]: Remember the temporary command filename 194 195 * dir.c (vmsify) [VMS]: Fix const errors. 196 (vms_hash) [VMS]: Ditto. 197 (vmsstat_dir) [VMS]: Ditto. 198 (find_directory) [VMS]: Fix case-insensitive option for VMS 199 (dir_contents_file_exists_p) [VMS]: Ditto. 200 (file_impossible) [VMS]: Ditto. 201 202 * config.h-vms.template (HAVE_FDOPEN) [VMS]: Have it. 203 (HAVE_STRCASECMP) [VMS]: Ditto. 204 205 * arscan.c (VMS_get_member_info) [VMS]: Fix timezone computation. 206 (ar_scan) [VMS]: Fix const error. 207 208 2009-11-12 Boris Kolpackov <[email protected]> 209 210 * vpath.c (vpath_search, selective_vpath_search): Add index arguments 211 which allows the caller to get the index of the matching directory. 212 213 * make.h (vpath_search): Update prototype. 214 215 * remake.c (library_search): Implement linker-compatible library 216 search. Use the new VPATH_SEARCH index functionality to keep track 217 of the directory index for each match. Select the match with the 218 lowest directory index. 219 220 * implicit.c (pattern_search): Pass NULL for the index arguments in 221 the VPATH_SEARCH call. 222 223 * doc/make.texi (Directory Search for Link Libraries): Describe the 224 new search behavior. 225 226 * NEWS: Add a note about the new behavior. 227 228 2009-10-25 Paul Smith <[email protected]> 229 230 * AUTHORS, et.al.: Update copyright years. 231 232 * implicit.c (stemlen_compare): Fix qsort() compare bug that 233 caused implicit rules with equal stem lengths to be sorted 234 indeterminately. 235 236 2009-10-24 Paul Smith <[email protected]> 237 238 * main.c (usage): Add --eval to the usage string. 239 (switches): Add the --eval switch. 240 (main): If --eval is given, add them to the simply-expanded variable 241 -*-eval-flags-*- (necessary to allow recursion to work properly). 242 (define_makeflags): Add -*-eval-flags-*- to MAKEFLAGS. 243 244 * NEWS: Describe the new --eval command line argument. 245 * doc/make.texi (Options Summary): Document --eval. 246 247 * dep.h: eval_buffer() returns void. 248 * read.c (eval_buffer): Ditto. 249 (eval): Ditto. 250 251 * variable.h (define_variable_cname): New macro for constant 252 variable names. 253 * default.c (set_default_suffixes): Use it. 254 * main.c (main): Ditto. 255 (handle_non_switch_argument): Ditto. 256 (define_makeflags): Ditto. 257 * read.c (read_all_makefiles): Ditto. 258 * variable.c (define_automatic_variables): Ditto. 259 260 * commands.c (dep_hash_cmp): Avoid casts. 261 (dep_hash_1): Ditto. 262 (dep_hash_2): Ditto. 263 264 2009-10-22 Boris Kolpackov <[email protected]> 265 266 * read.c (read_all_makefiles): Mark the default makefile dependency 267 dontcare. 268 269 2009-10-07 Boris Kolpackov <[email protected]> 270 271 * read.c (do_undefine): Free the expanded variable name. 272 273 * commands.c (dep_hash_cmp, set_file_variables): Move the order-only 274 to normal upgrade logic from dep_hash_cmp to set_file_variables. 275 276 2009-10-06 Boris Kolpackov <[email protected]> 277 278 * dep.h (uniquize_deps): Remove. 279 280 * read.c (uniquize_deps): Merge into set_file_variables in 281 commands.c. 282 (dep_hash_1, dep_hash_2, dep_hash_cmp): Move to commands.c. 283 284 * commands.c (set_file_variables): Avoid modifying the dep 285 chain to achieve uniqueness. Fixes savannah bug 25780. 286 287 * implicit.c (pattern_search): Instead of re-setting all automatic 288 variables for each rule we try, just update $*. 289 290 2009-10-06 Boris Kolpackov <[email protected]> 291 292 * variable.h (undefine_variable_in_set): New function declaration. 293 (undefine_variable_global): New macro. 294 295 * variable.c (undefine_variable_in_set): New function implementation. 296 297 * read.c (vmodifiers): Add undefine_v modifier. 298 (parse_var_assignment): Parse undefine. 299 (do_undefine): Handle the undefine directive. 300 (eval): Call do_undefine if undefine_v is set. 301 302 * main.c (.FEATURES): Add a keyword to indicate the new feature. 303 304 * doc/make.texi (Undefine Directive): Describe the new directive. 305 306 * NEWS: Add a note about the new directive. 307 308 2009-10-05 Boris Kolpackov <[email protected]> 309 310 * implicit.c (pattern_search): Initialize file variables only 311 if we need to parse a rule that requires the second expansion. 312 313 2009-10-03 Paul Smith <[email protected]> 314 315 * make.h: Include <alloca.h> even on systems where __GNUC__ is 316 defined. Not sure why it was done the other way. 317 Requested by David Boyce <[email protected]>. 318 319 2009-09-30 Boris Kolpackov <[email protected]> 320 321 * dep.h (dep): Add the DONTCARE bitfield. 322 323 * filedef.h (file):Add the NO_DIAG bitfield. 324 325 * read.c (eval_makefile): Set the DONTCARE flag in struct dep, 326 not struct file (a file can be a dependency of many targets, 327 some don't care, some do). 328 329 * remake.c (update_goal_chain): Propagate DONTCARE from struct 330 dep to struct file before updating the goal and restore it 331 afterwards. 332 (update_file): Don't prune the dependency graph if this target 333 has failed but the diagnostics hasn't been issued. 334 (complain): Scan the file's dependency graph to find the file 335 that caused the failure. 336 (update_file_1): Use NO_DIAG instead of DONTCARE to decide 337 whether to print diagnostics. 338 339 Fixes Savannah bugs #15110, #25493, #12686, and #17740. 340 341 2009-09-28 Paul Smith <[email protected]> 342 343 * doc/make.texi (Pattern Intro): Move the match algorithm 344 discussion into the "Pattern Match" node. 345 (Pattern Match): Expand on the pattern rule matching algorithm. 346 347 2009-09-28 Andreas Buening <[email protected]> 348 349 * job.c (construct_command_argv_internal) [OS2]: Don't eat too 350 much of the command line on a single pass. 351 352 2009-09-28 Boris Kolpackov <[email protected]> 353 354 * varible.c (create_pattern_var): Insert variables into the 355 PATTERN_VARS list in the shortest patterns first order. 356 357 * implicit.c (tryrule): Add STEMLEN and ORDER members. These are 358 used to sort the rules. 359 (stemlen_compare): Compare two tryrule elements. 360 (pattern_search): Sort the rules so that they are in the shortest 361 stem first order. 362 363 * main.c (.FEATURES): Add a keyword to indicate the new behavior. 364 365 * doc/make.texi (Pattern-specific Variable Values): Describe the 366 new pattern-specific variables application order. 367 (Introduction to Pattern Rules): Describe the new pattern rules 368 search order. 369 370 * NEWS: Add a note about the new behavior. 371 372 2009-09-27 Paul Smith <[email protected]> 373 374 * doc/make.texi (Double-Colon): Mention that pattern rules with 375 double-colons have a different meaning. Savannah bug #27497. 376 377 2009-09-27 Juan Manuel Guerrero <[email protected]> 378 379 * configh.dos.template: Remove unconditional definition of 380 SYS_SIGLIST_DECLARED. 381 Include <sys/version.h> because ports of GCC 4.3.0 and later no 382 longer include it, so macros like __DJGPP_MINOR__ are no longer 383 defined automatically. 384 385 * Makefile.DOS.template (INCLUDES): Use $(prefix) and the 386 corresponding variables to define LIBDIR, INCLUDEDIR and LOCALEDIR 387 instead of using the hardcoded ones. 388 (SUBDIRS): doc subdir added. 389 (INFO_DEPS, DVIS): Values changed to 'make.info' and 'make.dvi'. 390 (TEXI2HTML, TEXI2HTML_FLAGS): Removed. Use makeinfo --html to 391 create html formated docs. texi2html may not be ported to DOS. 392 (make.info, make.dvi, make.ps, make.html): Make targets depend on 393 'make.texi'. 394 (.texi.info, .texi, .texi.dvi): Now invoked recursively. Change 395 -I switch to look in ./ instead of ./doc. 396 (html): Target depend on html-recursive instead of make_1.html. 397 (make_1.html): Removed. 398 (mostlyclean-aminfo): Use $(srcdir)/doc instead of ./ as prefix. 399 (all-recursive): Allow for more than one subdir in the build 400 process. 401 (mostlyclean-recursive, clean-recursive, distclean-recursive) 402 (maintainer-clean-recursive, check-recursive): Enter in doc/ too. 403 (tags-recursive): Allow for more than one subdir in the build 404 process. 405 (info-recursive, dvi-recursive, ps-recursive, html-recursive): New 406 targets. Enter into doc/ to produce the targets. 407 (all-am): $(INFO_DEPS) replaced by info. 408 409 2009-09-26 Paul Smith <[email protected]> 410 411 * read.c (record_files): Use free_ns() to free struct nameseq. 412 (eval): Ditto. 413 414 * rule.c (freerule): Use free_dep_chain(). 415 416 * read.c (record_files): Free FILENAMES chain for implicit rules. 417 (eval): Static pattern targets go into the string cache. 418 419 * function.c (string_glob): Free NAME in the nameseq chain. 420 421 2009-09-25 Boris Kolpackov <[email protected]> 422 423 * implicit.c (pattern_search): Terminate early if we haven't 424 found any rules to try (performance improvement). 425 426 2009-09-25 Boris Kolpackov <[email protected]> 427 428 * implicit.c (pattern_search): Merge three parallel arrays, 429 TRYRULES, MATCHES, and CHECKED_LASTSLASH, into one array 430 of struct TRYRULE. In the old version the latter two arrays 431 had insufficient length. 432 433 2009-09-24 Paul Smith <[email protected]> 434 435 * implicit.c (pattern_search): Add back support for order-only 436 prerequisites for secondary expansion implicit rules, that were 437 accidentally dropped. If we find a "|", enable order-only mode 438 and set IGNORE_MTIME on all deps that are seen afterward. 439 (pattern_search): Fix memory leaks: for intermediate files where 440 we've already set the file variable and pattern variable sets, be 441 sure to either save or free them as appropriate. 442 443 2009-09-23 Paul Smith <[email protected]> 444 445 Rework the way secondary expansion is stored, for efficiency. 446 This changes secondary expansion so that ONLY WHEN we know we have 447 a possibility of needing secondary expansion, do we defer the 448 secondary expansion. This means more parsing the deps but we use 449 a lot less memory (due to the strcache). Also, this fixes 450 Savannah bug #18622. 451 452 * read.c (eval): Don't parse the dep string here anymore. 453 (record_files): Take the dep argument as an unparsed string. If 454 secondary expansion is enabled AND the prereq string has a '$' in 455 it, then set NEED_2ND_EXPANSION and keep the entire string. 456 Otherwise, parse the dep string here to construct the dep list 457 with the names in the strcache. 458 459 * misc.c (copy_dep_chain): For NEED_2ND_EXPANSION, we need to 460 duplicate the name string (others are in the strcache). 461 462 * implicit.c: Remove struct idep and free_idep_chain(): unused. 463 (struct patdeps): New structure to store prereq information. 464 (pattern_search): Use the NEED_2ND_EXPANSION flag to determine 465 which prerequisites need expansion, and expand only those. 466 467 * file.c (split_prereqs): Break parse_prereqs() into two parts: this 468 and enter_prereqs(). split_prereqs() takes a fully-expanded string 469 and splits it into a DEP list, handling order-only prereqs. 470 (enter_prereqs): This function enters a list of DEPs into the file 471 database. If there's a stem defined, expand any pattern chars. 472 (expand_deps): Only try to expand DEPs which have NEED_2ND_EXPANSION 473 set. Use the above functions. 474 (snap_deps): Only perform second expansion on prereqs that need it, 475 as defined by the NEED_2ND_EXPANSION flag. 476 (print_prereqs): New function to print the prereqs 477 (print_file): Call print_prereqs() rather than print inline. 478 479 * hash.h (STRING_COMPARE): Take advantage of strcache() by 480 comparing pointers. 481 (STRING_N_COMPARE): Ditto. 482 (ISTRING_COMPARE): Ditto. 483 484 * dep.h (PARSE_FILE_SEQ): New macro to reduce casts. 485 (parse_file_seq): Return void* 486 * read.c (parse_file_seq): Return void*. 487 (eval): Invoke macroized version of parse_file_seq() 488 * default.c (set_default_suffixes): Ditto. 489 * file.c (split_prereqs): Ditto. 490 * function.c (string_glob): Ditto. 491 * main.c (main): Ditto. 492 * rule.c (install_pattern_rule): Ditto. 493 494 * filedef.h: Add split_prereqs(), enter_prereqs(), etc. 495 496 2009-09-16 Paul Smith <[email protected]> 497 498 * misc.c (alloc_dep, free_dep): Now that we have xcalloc(), 499 convert to macros. 500 * dep.h: Create alloc_dep() / free_dep() macros. 501 502 * implicit.c (pattern_search): Take advantage of the new 503 parse_file_seq() to add the directory prefix to each prereq. 504 505 * dep.h: Remove multi_glob() and enhance parse_file_seq() to do it 506 all. Avoid reversing chains. Support adding prefixes. 507 * read.c (parse_file_seq): Rewrite to support globbing. Allow for 508 cached/non-cached results. 509 (eval): Remove multi_glob() & invoke new parse_file_seq(). 510 * rule.c (install_pattern_rule): Ditto. 511 * main.c (main): Ditto. 512 * implicit.c (pattern_search): Ditto. 513 * function.c (string_glob): Ditto. 514 * file.c (parse_prereqs): Ditto. 515 * default.c (set_default_suffixes): Ditto. 516 517 * variable.c (parse_variable_definition): Don't run off the end of 518 the string if it ends in whitespace (found with valgrind). 519 520 * commands.c (set_file_variables): Keep space for all targets in 521 $? if -B is given (found with valgrind). 522 523 2009-09-15 Paul Smith <[email protected]> 524 525 * misc.c (concat): Make concat() variadic so it takes >3 arguments. 526 (xcalloc): Add new function. 527 * make.h: New declarations. 528 529 * ar.c (ar_glob_match): New calling method for concat(). 530 * main.c (main): Ditto. 531 (decode_env_switches): Ditto. 532 * read.c (eval_makefile): Ditto. 533 (tilde_expand): Ditto. 534 (parse_file_seq): Ditto. 535 * variable.c (target_environment): Ditto. 536 (sync_Path_environment): Ditto. 537 538 * ar.c (ar_glob_match): Use xcalloc(). 539 * dir.c (file_impossible): Ditto. 540 * file.c (enter_file): Ditto. 541 * job.c (new_job): Ditto. 542 * read.c (parse_file_seq): Ditto. 543 * vmsfunctions.c (opendir): Ditto. 544 545 2009-09-14 Rafi Einstein <[email protected]> (tiny patch) 546 547 * w32/subproc/sub_proc.c (process_begin): Check *ep non-NULL 548 inside the loop that looks up environment for PATH. 549 550 2009-08-31 Eli Zaretskii <[email protected]> 551 552 * function.c (windows32_openpipe): Update envp after calling 553 sync_Path_environment. 554 555 2009-08-02 Paul Smith <[email protected]> 556 557 * remake.c (notice_finished_file): Ensure file->cmds is not null 558 before looping through them. Fixes Savannah bug #21824. 559 560 * doc/make.texi (Wildcard Examples): Clarify when objects is 561 wildcard-expanded. Fixes Savannah bug #24509. Patch by Martin Dorey. 562 (Include): Clarify the behavior of -include. 563 Fixes Savannah bug #18963. 564 565 2009-08-01 Paul Smith <[email protected]> 566 567 * doc/make.texi (Catalogue of Rules): Clarify where -c, -F, 568 etc. come on the command line. Fixes Savannah bug #27093. 569 570 * expand.c (expand_argument): If the argument is large enough use 571 xmalloc() instead of alloca(). Fixes Savannah bug #27143. 572 573 * variable.c (do_variable_definition): Avoid using alloca() to 574 hold values, which can be large. Fixes Savannah bug #23960. 575 576 * job.c (new_job): Use memmove() instead of strcpy() since both 577 pointers are in the same memory block. Fixes Savannah bug #27148. 578 Patch by Petr Machata. 579 580 2009-07-29 Ralf Wildenhues <[email protected]> 581 582 * job.c (construct_command_argv_internal): Add "ulimit" and 583 "unset" to the sh_cmds for Unixy shells. 584 585 2009-07-29 Ralf Wildenhues <[email protected]> 586 587 * configure.in: Move side-effects outside AC_CACHE_VAL arguments 588 that set make_cv_sys_gnu_glob, so they are also correctly set 589 when the cache has been populated before. 590 591 2009-07-04 Eli Zaretskii <[email protected]> 592 593 * function.c (func_realpath) [!HAVE_REALPATH]: Require the file to 594 exist, as realpath(3) does where it's supported. 595 596 2006-07-04 Eli Zaretskii <[email protected]> 597 598 * function.c (IS_ABSOLUTE, ROOT_LEN): New macros. 599 (abspath): Support systems that define HAVE_DOS_PATHS (have 600 drive letters in their file names). Use IS_PATHSEP instead of a 601 literal '/' comparison. Fixes Savannah bug #26886. 602 603 2009-06-14 Paul Smith <[email protected]> 604 605 * remake.c (update_file_1): Remember the original file we marked 606 as updating, so we can clear that flag again. If we find a target 607 via vpath, FILE might change. 608 (check_dep): Ditto. Fixes Savannah bug #13529. 609 Patch by Reid Madsen <[email protected]>. 610 611 2009-06-13 Paul Smith <[email protected]> 612 613 * doc/make.texi (MAKEFILES Variable): Be explicit that files 614 included by MAKEFILES cannot give default goals. 615 * read.c (eval): If set_default is not set, pass the no-default-goal 616 value when we read included makefiles. Fixes Savannah bug #13401. 617 618 * ar.c (ar_name): Ensure that targets with empty parens aren't 619 considered archive member references: archive members must have a 620 non-empty "member" string. Fixes Savannah bug #18435. 621 622 * function.c (string_glob): Rely on multi_glob() to determine 623 whether files exist or not. Remove call to file_exists_p() which 624 is not always correct. Fixes Savannah bug #21231. 625 * read.c (multi_glob): Add a new argument EXISTS_ONLY; if true 626 then only files that really exist will be returned. 627 * dep.h: Add new argument to multi_glob(). 628 * rule.c (install_pattern_rule): Ditto. 629 * read.c (eval): Ditto. 630 * main.c (main): Ditto. 631 * implicit.c (pattern_search): Ditto. 632 * file.c (parse_prereqs): Ditto. 633 * default.c (set_default_suffixes): Ditto. 634 635 2009-06-09 Paul Smith <[email protected]> 636 637 * commands.c (set_file_variables): If always_make_flag is set, 638 always add the prereq to $?. Fixes Savannah bug #17825. 639 640 * remake.c (update_file_1): When rebuilding deps of FILE, also try 641 to rebuild the deps of all the also_make targets for that file. 642 Fixes Savannah bug #19108. 643 644 * implicit.c (pattern_search): Undo test for is_target, added by 645 BorisK on 21 Sep 2004. This goes against step 5c in the "Implicit 646 Rule Search Algorithm". Fixes Savannah bug #17752. 647 648 * main.c (clean_jobserver): Clear the jobserver_fds options and 649 set job_slots to the default when we clean up. 650 (define_makeflags): Return the new MAKEFLAGS value. 651 (main): Reset MAKEFLAGS in the environment when we re-exec. 652 Fixes Savannah bug #18124. 653 654 2009-06-08 Paul Smith <[email protected]> 655 656 * read.c (eval): Collapse continuations post-semicolon on target- 657 specific variables. Fixes Savannah bug #17521. 658 659 2009-06-07 Paul Smith <[email protected]> 660 661 * job.c (reap_children): For older systems without waitpid() (are 662 there any of these left?) run wait(2) inside EINTRLOOP to handle 663 EINTR errors. Fixes Savannah bug #16401. 664 665 * (various): Debug message cleanup. Fixes Savannah bug #16469. 666 667 * main.c: Fix bsd_signal() typedef. Fixes Savannah bug #16473. 668 669 * file.c (snap_deps): Set SNAPPED_DEPS at the start of snapping, 670 not the end, to catch second expansion $(eval ...) defining new 671 target/prereq relationships during snap_deps. 672 Fixes Savannah bug #24622. 673 674 * read.c (record_files): The second-expansion "f->updating" hack 675 was not completely correct: if assumed that the target with 676 commands always had prerequisites; if one didn't then the ordering 677 was messed up. Fixed for now to use f->updating to decide whether 678 to preserve the last element in the deps list... but this whole 679 area of constructing and reversing the deps list is too confusing 680 and needs to be reworked. Fixes Savannah bug #21198. 681 682 2009-06-06 Paul Smith <[email protected]> 683 684 * hash.c (hash_insert): Remove useless test for NULL. 685 Fixes Savannah bug #21823. 686 687 * make.h: Move SET_STACK_SIZE determination to make.h. 688 * main.c (main): New global variable, STACK_LIMIT, holds the 689 original stack limit when make was started. 690 * job.c (start_job_command): Reset the stack limit, if we changed it. 691 Fixes Savannah bug #22010. 692 693 * remake.c (check_dep): Only set the target's state to not-started 694 if it's not already running. Found this while testing -j10 builds 695 of glibc: various targets were being rebuilt multiple times. 696 Fix from Knut St. Osmundsen; fixes a problem reported in Savannah 697 bug #15919. 698 699 * read.c (multi_glob): Don't pass GLOB_NOCHECK to glob(3); instead 700 handle the GLOB_NOMATCH error. This is to work around Sourceware.org 701 Bugzilla bug 10246. 702 703 2009-06-04 Paul Smith <[email protected]> 704 705 * read.c (eval): Skip initial whitespace (ffeed, vtab, etc.) 706 707 * maintMakefile: Modify access of config and gnulib Savannah 708 modules to use GIT instead of CVS. 709 710 * main.c (main): Initialize the LENGTH field in SHELL_VAR. 711 Fixes Savannah bug #24655. 712 713 * read.c (eval_buffer): Don't dereference reading_file if it's NULL; 714 this can happen during some invocations of $(eval ...) for example. 715 Fixes Savannah bug #24588. Patch by Lars Jessen <[email protected]> 716 717 2009-06-02 Paul Smith <[email protected]> 718 719 * configure.in: Check for fileno() 720 * read.c (eval_makefile): If fileno() is available, set CLOSE_ON_EXEC 721 for the makefile file so invocations of $(shell ...) don't inherit it. 722 Fixes Savannah bug #24277. 723 724 2009-06-01 Paul Smith <[email protected]> 725 726 * main.c (main): The previous fix for .DEFAULT_GOAL had issues; 727 expansion was handled incorrectly. Rework the default goal 728 handling to save the variable only. Remove default_goal_file and 729 default_goal_name. 730 * read.c (eval): Check default_goal_var, not default_goal_name. 731 * read.c (record_target_var): Don't check default_goal_file here. 732 733 2009-05-31 Paul Smith <[email protected]> 734 735 * main.c (main): Expand the .DEFAULT_GOAL variable before using 736 it, and if the multi_glob() returns nothing (say it expanded to 737 nothing but spaces) then don't crash. Fixes Savannah bug #25697. 738 739 * doc/make.texi (Quick Reference): Add $(if ..), $(or ..), and 740 $(and ..) to the reference. Fixes Savannah bug #25694. 741 742 * make.1: Be clear that some recipes will be executed even with -n. 743 * doc/make.texi: Ditto. Fixes Savannah bug #25460. 744 745 * doc/make.texi (Override Directive): Make more clear how 746 overrides and appends interact. 747 Elucidates part of Savannah bug #26207. 748 749 * read.c (record_target_var): Don't reset the origin on 750 target-specific variables; try_variable_definition() will handle 751 this correctly. Fixes Savannah bug #26207. 752 753 * maintMakefile (do-po-update): Copy PO files into $(top_srcdir). 754 Fixes Savannah bug #25712. 755 756 * implicit.c (pattern_search): Keep a pointer to the beginning of 757 the filename and save that instead of the constructed pointer. 758 Fixes Savannah bug #26593. 759 Patch by Mark Seaborn <[email protected]> 760 761 2009-05-30 Paul Smith <[email protected]> 762 763 * doc/make.texi (Multi-Line): Add a description of the new abilities 764 of define/endef. Rename "Sequences" to "Multi-Line" and fix some 765 "command sequence" vs. "recipe" syntax. 766 * read.c (do_define): Modify to allow assignment tokens (=, :=, etc.) 767 after a define, to create variables with those flavors. 768 769 2009-05-25 Paul Smith <[email protected]> 770 771 Reworked the parser for variable assignments to allow multiple 772 modifiers, and in any order. Also allows variable and 773 prerequisites to be modifier names ('export', 'private', etc.) 774 775 * NEWS: Add notes about user-visible changes. 776 777 * read.c (struct vmodifiers): Remember what modifiers were seen. 778 (parse_var_assignment): New function to parse variable assignments. 779 (eval): Call the new function. Handle variable assignments earlier. 780 781 * variable.c (parse_variable_definition): Only parse; don't create var. 782 (assign_variable_definition): Call parse, then create the var. 783 784 2009-05-24 Paul Smith <[email protected]> 785 786 * doc/make.texi: Fix the ISBN for the GNU make manual. Incorrect 787 value noticed by Hans Stol <[email protected]>. 788 789 2009-03-14 Eli Zaretskii <[email protected]> 790 791 * w32/pathstuff.c (convert_Path_to_windows32): Fix last change. 792 Fixes Savannah bug #25412. 793 794 * w32/subproc/sub_proc.c <top level>: Update Copyright years. Add 795 prototype for xmalloc. 796 (find_file): Accept 3 arguments PATH_VAR, FULL_FNAME, and FULL_LEN 797 instead of an LPOFSTRUCT pointer. Use xmalloc instead of malloc. 798 Loop over an array of extensions, instead of duplicating the same 799 code inline. Use SearchPath followed by CreateFile, instead of 800 the obsolete OpenFile. Fixes Savannah bug #17277. 801 (process_begin): Find $(PATH) in `envp', and pass a pointer to it 802 to `find_file'. Fixes Savannah bug #25662. 803 804 2009-03-07 Eli Zaretskii <[email protected]> 805 806 * function.c (func_shell): Don't close pipedes[1] if it is -1. 807 Fixes Savannah bug #20495. 808 809 2009-02-28 Ralf Wildenhues <address@hidden> 810 811 * doc/make.texi (Instead of Execution): Document interaction of 812 -t with phony targets. 813 814 2009-02-23 Ramon Garcia <[email protected]> 815 816 Introduce a new keyword "private" which applies to target-specific 817 variables and prevents their values from being inherited. 818 819 * variable.h (struct variable): Add private_var flag to each variable. 820 Add a flag to specify which list entry switches to the parent target. 821 * variable.c (define_variable_in_set): Initialize private_var flag. 822 (lookup_variable): Skip private variables in parent contexts. 823 (initialize_file_variables): Set next_is_parent appropriately. 824 (print_variable): Show the private_var flag. 825 * read.c (eval): Recognize the private keyword. 826 (record_target_var): Set private_var. 827 * doc/make.texi (Suppressing Inheritance): Add documentation. 828 829 2008-10-26 Paul Smith <[email protected]> 830 831 * configure.in: Check for strndup(). 832 * misc.c (xstrndup): Rename savestring to xstrndup. Use strndup 833 if it's available. 834 * make.h: Rename savestring to xstrndup. 835 * commands.c (chop_commands): Ditto. 836 * function.c (func_foreach): Ditto. 837 * read.c (eval, record_files): Ditto. 838 * variable.c (define_variable_in_set): Ditto. 839 1 840 2008-09-30 Eli Zaretskii <[email protected]> 2 841 … … 816 1655 817 1656 * make.1: Fix some display errors and document all existing options. 818 Patch providedby Mike Frysinger <[email protected]>.1657 Patch by Mike Frysinger <[email protected]>. 819 1658 820 1659 2005-12-11 Paul D. Smith <[email protected]> … … 3164 4003 3165 4004 3166 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software3167 Foundation, Inc.4005 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free 4006 Software Foundation, Inc. 3168 4007 This file is part of GNU Make. 3169 4008
Note:
See TracChangeset
for help on using the changeset viewer.