VirtualBox

Changeset 2591 in kBuild for trunk/src/kmk/NEWS


Ignore:
Timestamp:
Jun 17, 2012 8:45:31 PM (13 years ago)
Author:
bird
Message:

kmk: Merged in changes from GNU make 3.82. Previous GNU make base version was gnumake-2008-10-28-CVS.

Location:
trunk/src/kmk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kmk

    • Property svn:ignore
      •  

        old new  
        1313stamp-*
        1414makebook*
         15
        1516.*gdbinit
         17.gdb_history
         18
        1619*.dep
        1720*.dvi
         
        3134*.pg
        3235*.pgs
         36
        3337README
        3438README.DOS
        3539README.W32
         40README.OS2
        3641aclocal.m4
        3742autom4te.cache
         
        5257config.h.W32
        5358config.h-vms
         59
        5460loadavg
        5561loadavg.c
        5662make
         63
        5764.deps
        5865.dep_segment
         66ID
         67TAGS
         68
        5969_*
        6070sun4
         
        7282sol2
        7383i486-linux
         84
        7485customs
         86
        7587install-sh
        7688mkinstalldirs
         89
         90.directive.asc
  • trunk/src/kmk/NEWS

    r1993 r2591  
    11GNU make NEWS                                               -*-indented-text-*-
    22  History of user-visible changes.
    3   1 April 2006
     3  28 July 2010
    44
    55See the end of this file for copyrights and conditions.
     
    1111
    1212
    13 Version 3.81.90
     13Version 3.82
     14
     15A complete list of bugs fixed in this version is available here:
     16
     17http://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=104&set=custom
    1418
    1519* Compiling GNU make now requires a conforming ISO C 1989 compiler and
    1620  standard runtime library.
     21
     22* WARNING: Future backward-incompatibility!
     23  Wildcards are not documented as returning sorted values, but up to and
     24  including this release the results have been sorted and some makefiles are
     25  apparently depending on that.  In the next release of GNU make, for
     26  performance reasons, we may remove that sorting.  If your makefiles
     27  require sorted results from wildcard expansions, use the $(sort ...)
     28  function to request it explicitly.
     29
     30* WARNING: Backward-incompatibility!
     31  The POSIX standard for make was changed in the 2008 version in a
     32  fundamentally incompatible way: make is required to invoke the shell as if
     33  the '-e' flag were provided.  Because this would break many makefiles that
     34  have been written to conform to the original text of the standard, the
     35  default behavior of GNU make remains to invoke the shell with simply '-c'.
     36  However, any makefile specifying the .POSIX special target will follow the
     37  new POSIX standard and pass '-e' to the shell.  See also .SHELLFLAGS
     38  below.
     39
     40* WARNING: Backward-incompatibility!
     41  The '$?' variable now contains all prerequisites that caused the target to
     42  be considered out of date, even if they do not exist (previously only
     43  existing targets were provided in $?).
     44
     45* WARNING: Backward-incompatibility!
     46  As a result of parser enhancements, three backward-compatibility issues
     47  exist: first, a prerequisite containing an "=" cannot be escaped with a
     48  backslash any longer.  You must create a variable containing an "=" and
     49  use that variable in the prerequisite.  Second, variable names can no
     50  longer contain whitespace, unless you put the whitespace in a variable and
     51  use the variable.  Third, in previous versions of make it was sometimes
     52  not flagged as an error for explicit and pattern targets to appear in the
     53  same rule.  Now this is always reported as an error.
     54
     55* WARNING: Backward-incompatibility!
     56  The pattern-specific variables and pattern rules are now applied in the
     57  shortest stem first order instead of the definition order (variables
     58  and rules with the same stem length are still applied in the definition
     59  order). This produces the usually-desired behavior where more specific
     60  patterns are preferred. To detect this feature search for 'shortest-stem'
     61  in the .FEATURES special variable.
     62
     63* WARNING: Backward-incompatibility!
     64  The library search behavior has changed to be compatible with the standard
     65  linker behavior. Prior to this version for prerequisites specified using
     66  the -lfoo syntax make first searched for libfoo.so in the current
     67  directory, vpath directories, and system directories. If that didn't yield
     68  a match, make then searched for libfoo.a in these directories. Starting
     69  with this version make searches first for libfoo.so and then for libfoo.a
     70  in each of these directories in order.
     71
     72* New command line option: --eval=STRING causes STRING to be evaluated as
     73  makefile syntax (akin to using the $(eval ...) function).  The evaluation
     74  is performed after all default rules and variables are defined, but before
     75  any makefiles are read.
    1776
    1877* New special variable: .RECIPEPREFIX allows you to reset the recipe
    1978  introduction character from the default (TAB) to something else.  The
    2079  first character of this variable value is the new recipe introduction
    21   character.  If the variable is set to the empty string, TAB is used
    22   again.  It can be set and reset at will; rules will be parsed
    23   according to the current value.
     80  character.  If the variable is set to the empty string, TAB is used again.
     81  It can be set and reset at will; recipes will use the value active when
     82  they were first parsed.  To detect this feature check the value of
     83  $(.RECIPEPREFIX).
     84
     85* New special variable: .SHELLFLAGS allows you to change the options passed
     86  to the shell when it invokes recipes.  By default the value will be "-c"
     87  (or "-ec" if .POSIX is set).
     88
     89* New special target: .ONESHELL instructs make to invoke a single instance
     90  of the shell and provide it with the entire recipe, regardless of how many
     91  lines it contains.  As a special feature to allow more straightforward
     92  conversion of makefiles to use .ONESHELL, any recipe line control
     93  characters ('@', '+', or '-') will be removed from the second and
     94  subsequent recipe lines.  This happens _only_ if the SHELL value is deemed
     95  to be a standard POSIX-style shell.  If not, then no interior line control
     96  characters are removed (as they may be part of the scripting language used
     97  with the alternate SHELL).
     98
     99* New variable modifier 'private': prefixing a variable assignment with the
     100  modifier 'private' suppresses inheritance of that variable by
     101  prerequisites.  This is most useful for target- and pattern-specific
     102  variables.
     103
     104* New make directive: 'undefine' allows you to undefine a variable so that
     105  it appears as if it was never set. Both $(flavor) and $(origin) functions
     106  will return 'undefined' for such a variable. To detect this feature search
     107  for 'undefine' in the .FEATURES special variable.
     108
     109* The parser for variable assignments has been enhanced to allow multiple
     110  modifiers ('export', 'override', 'private') on the same line as variables,
     111  including define/endef variables, and in any order.  Also, it is possible
     112  to create variables and targets named as these modifiers.
     113
     114* The 'define' make directive now allows a variable assignment operator
     115  after the variable name, to allow for simple, conditional, or appending
     116  multi-line variable assignment.
    24117
    25118
     
    60153
    61154* WARNING: Backward-incompatibility!
    62 
    63155  In order to comply with POSIX, the way in which GNU make processes
    64156  backslash-newline sequences in recipes has changed.  If your makefiles
     
    10591151-------------------------------------------------------------------------------
    10601152Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
    1061 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software
    1062 Foundation, Inc.
    1063 This file is part of GNU Make.
     11531998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
     11542010 Free Software Foundation, Inc.  This file is part of GNU Make.
    10641155
    10651156GNU Make is free software; you can redistribute it and/or modify it under the
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette