head	1.14;
access;
symbols
	pkgsrc-2013Q3:1.13.0.22
	pkgsrc-2013Q3-base:1.13
	pkgsrc-2013Q2:1.13.0.20
	pkgsrc-2013Q2-base:1.13
	pkgsrc-2013Q1:1.13.0.18
	pkgsrc-2013Q1-base:1.13
	pkgsrc-2012Q4:1.13.0.16
	pkgsrc-2012Q4-base:1.13
	pkgsrc-2012Q3:1.13.0.14
	pkgsrc-2012Q3-base:1.13
	pkgsrc-2012Q2:1.13.0.12
	pkgsrc-2012Q2-base:1.13
	pkgsrc-2012Q1:1.13.0.10
	pkgsrc-2012Q1-base:1.13
	pkgsrc-2011Q4:1.13.0.8
	pkgsrc-2011Q4-base:1.13
	pkgsrc-2011Q3:1.13.0.6
	pkgsrc-2011Q3-base:1.13
	pkgsrc-2011Q2:1.13.0.4
	pkgsrc-2011Q2-base:1.13
	pkgsrc-2011Q1:1.13.0.2
	pkgsrc-2011Q1-base:1.13
	pkgsrc-2010Q4:1.11.0.4
	pkgsrc-2010Q4-base:1.11
	pkgsrc-2010Q3:1.11.0.2
	pkgsrc-2010Q3-base:1.11
	pkgsrc-2010Q2:1.10.0.38
	pkgsrc-2010Q2-base:1.10
	pkgsrc-2010Q1:1.10.0.36
	pkgsrc-2010Q1-base:1.10
	pkgsrc-2009Q4:1.10.0.34
	pkgsrc-2009Q4-base:1.10
	pkgsrc-2009Q3:1.10.0.32
	pkgsrc-2009Q3-base:1.10
	pkgsrc-2009Q2:1.10.0.30
	pkgsrc-2009Q2-base:1.10
	pkgsrc-2009Q1:1.10.0.28
	pkgsrc-2009Q1-base:1.10
	pkgsrc-2008Q4:1.10.0.26
	pkgsrc-2008Q4-base:1.10
	pkgsrc-2008Q3:1.10.0.24
	pkgsrc-2008Q3-base:1.10
	cube-native-xorg:1.10.0.22
	cube-native-xorg-base:1.10
	pkgsrc-2008Q2:1.10.0.20
	pkgsrc-2008Q2-base:1.10
	cwrapper:1.10.0.18
	pkgsrc-2008Q1:1.10.0.16
	pkgsrc-2008Q1-base:1.10
	pkgsrc-2007Q4:1.10.0.14
	pkgsrc-2007Q4-base:1.10
	pkgsrc-2007Q3:1.10.0.12
	pkgsrc-2007Q3-base:1.10
	pkgsrc-2007Q2:1.10.0.10
	pkgsrc-2007Q2-base:1.10
	pkgsrc-2007Q1:1.10.0.8
	pkgsrc-2007Q1-base:1.10
	pkgsrc-2006Q4:1.10.0.6
	pkgsrc-2006Q4-base:1.10
	pkgsrc-2006Q3:1.10.0.4
	pkgsrc-2006Q3-base:1.10
	pkgsrc-2006Q2:1.10.0.2
	pkgsrc-2006Q2-base:1.10
	pkgsrc-2006Q1:1.9.0.20
	pkgsrc-2006Q1-base:1.9
	pkgsrc-2005Q4:1.9.0.18
	pkgsrc-2005Q4-base:1.9
	pkgsrc-2005Q3:1.9.0.16
	pkgsrc-2005Q3-base:1.9
	pkgsrc-2005Q2:1.9.0.14
	pkgsrc-2005Q2-base:1.9
	pkgsrc-2005Q1:1.9.0.12
	pkgsrc-2005Q1-base:1.9
	pkgsrc-2004Q4:1.9.0.10
	pkgsrc-2004Q4-base:1.9
	pkgsrc-2004Q3:1.9.0.8
	pkgsrc-2004Q3-base:1.9
	pkgsrc-2004Q2:1.9.0.6
	pkgsrc-2004Q2-base:1.9
	pkgsrc-2004Q1:1.9.0.4
	pkgsrc-2004Q1-base:1.9
	pkgsrc-2003Q4:1.9.0.2
	pkgsrc-2003Q4-base:1.9
	netbsd-1-6:1.7.0.8
	netbsd-1-6-RELEASE-base:1.7
	pkgviews:1.7.0.4
	pkgviews-base:1.7
	buildlink2:1.7.0.2
	buildlink2-base:1.7
	netbsd-1-5-PATCH003:1.7
	netbsd-1-5-PATCH001:1.7
	comdex-fall-1999:1.4
	netbsd-1-4-PATCH001:1.4
	netbsd-1-4-RELEASE:1.4
	netbsd-1-3-PATCH003:1.3
	netbsd-1-3-PATCH002:1.2
	FreeBSD-current-1997-10-05:1.1.1.1
	FREEBSD:1.1.1;
locks; strict;
comment	@# @;


1.14
date	2013.10.23.08.54.59;	author wiz;	state dead;
branches;
next	1.13;
commitid	gxdDoE9TLwN7Doax;

1.13
date	2011.02.06.12.09.50;	author obache;	state Exp;
branches;
next	1.12;

1.12
date	2011.01.17.14.17.29;	author is;	state Exp;
branches;
next	1.11;

1.11
date	2010.08.07.06.31.16;	author wiz;	state Exp;
branches;
next	1.10;

1.10
date	2006.04.02.20.10.51;	author wiz;	state Exp;
branches;
next	1.9;

1.9
date	2003.02.21.12.40.54;	author grant;	state Exp;
branches;
next	1.8;

1.8
date	2002.10.16.00.21.22;	author dmcmahill;	state dead;
branches;
next	1.7;

1.7
date	2001.03.13.20.15.47;	author wiz;	state Exp;
branches;
next	1.6;

1.6
date	2001.02.27.08.48.15;	author tron;	state Exp;
branches;
next	1.5;

1.5
date	99.11.11.13.30.02;	author fredb;	state dead;
branches;
next	1.4;

1.4
date	99.03.05.09.20.16;	author agc;	state Exp;
branches;
next	1.3;

1.3
date	98.08.07.10.40.24;	author agc;	state Exp;
branches;
next	1.2;

1.2
date	98.01.30.20.47.25;	author frueauf;	state Exp;
branches;
next	1.1;

1.1
date	97.10.06.14.06.11;	author agc;	state Exp;
branches
	1.1.1.1;
next	;

1.1.1.1
date	97.10.06.14.06.11;	author agc;	state Exp;
branches;
next	;


desc
@@


1.14
log
@Update to 4.0:

Version 4.0 (09 Oct 2013)

A complete list of bugs fixed in this version is available here:

http://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=101&set=custom

* WARNING: Backward-incompatibility!
  If .POSIX is specified, then make adheres to the POSIX backslash/newline
  handling requirements, which introduces the following changes to the
  standard backslash/newline handling in non-recipe lines:
  * Any trailing space before the backslash is preserved
  * Each backslash/newline (plus subsequent whitespace) is converted to a
    single space

* New feature: GNU Guile integration
  This version of GNU make can be compiled with GNU Guile integration.
  GNU Guile serves as an embedded extension language for make.
  See the "Guile Function" section in the GNU Make manual for details.
  Currently GNU Guile 1.8 and 2.0+ are supported.  In Guile 1.8 there is no
  support for internationalized character sets.  In Guile 2.0+, scripts can be
  encoded in UTF-8.

* New command line option: --output-sync (-O) enables grouping of output by
  target or by recursive make.  This is useful during parallel builds to avoid
  mixing output from different jobs together giving hard-to-understand
  results.  Original implementation by David Boyce <dsb@@boyski.com>.
  Reworked and enhanced by Frank Heckenbach <f.heckenbach@@fh-soft.de>.
  Windows support by Eli Zaretskii <eliz@@gnu.org>.

* New command line option: --trace enables tracing of targets.  When enabled
  the recipe to be invoked is printed even if it would otherwise be suppressed
  by .SILENT or a "@@" prefix character.  Also before each recipe is run the
  makefile name and linenumber where it was defined are shown as well as the
  prerequisites that caused the target to be considered out of date.

* New command line option argument: --debug now accepts a "n" (none) flag
  which disables all debugging settings that are currently enabled.

* New feature: The "job server" capability is now supported on Windows.
  Implementation contributed by Troy Runkel <Troy.Runkel@@mathworks.com>

* New feature: The .ONESHELL capability is now supported on Windows.  Support
  added by Eli Zaretskii <eliz@@gnu.org>.

* New feature: "!=" shell assignment operator as an alternative to the
  $(shell ...) function.  Implemented for compatibility with BSD makefiles.
  Note there are subtle differences between "!=" and $(shell ...).  See the
  description in the GNU make manual.
  WARNING: Backward-incompatibility!
  Variables ending in "!" previously defined as "variable!= value" will now be
  interpreted as shell assignment.  Change your assignment to add whitespace
  between the "!" and "=": "variable! = value"

* New feature: "::=" simple assignment operator as defined by POSIX in 2012.
  This operator has identical functionality to ":=" in GNU make, but will be
  portable to any implementation of make conforming to a sufficiently new
  version of POSIX (see http://austingroupbugs.net/view.php?id=330).  It is
  not necessary to define the .POSIX target to access this operator.

* New feature: Loadable objects
  This version of GNU make contains a "technology preview": the ability to
  load dynamic objects into the make runtime.  These objects can be created by
  the user and can add extended functionality, usable by makefiles.

* New function: $(file ...) writes to a file.

* New variable: $(GNUMAKEFLAGS) will be parsed for make flags, just like
  MAKEFLAGS is.  It can be set in the environment or the makefile, containing
  GNU make-specific flags to allow your makefile to be portable to other
  versions of make.  Once this variable is parsed, GNU make will set it to the
  empty string so that flags will not be duplicated on recursion.

* New variable: `MAKE_HOST' gives the name of the host architecture
  make was compiled for.  This is the same value you see after 'Built for'
  when running 'make --version'.

* Behavior of MAKEFLAGS and MFLAGS is more rigorously defined.  All simple
  flags are grouped together in the first word of MAKEFLAGS.  No options that
  accept arguments appear in the first word.  If no simple flags are present
  MAKEFLAGS begins with a space.  Flags with both short and long versions
  always use the short versions in MAKEFLAGS.  Flags are listed in
  alphabetical order using ASCII ordering.  MFLAGS never begins with "- ".

* Setting the -r and -R options in MAKEFLAGS inside a makefile now works as
  expected, removing all built-in rules and variables, respectively.

* If a recipe fails, the makefile name and linenumber of the recipe are shown.

* A .RECIPEPREFIX setting is remembered per-recipe and variables expanded
  in that recipe also use that recipe prefix setting.

* In -p output, .RECIPEPREFIX settings are shown and all target-specific
  variables are output as if in a makefile, instead of as comments.

* On MS-Windows, recipes that use ".." quoting will no longer force
  invocation of commands via temporary batch files and stock Windows
  shells, they will be short-circuited and invoked directly.  (In
  other words, " is no longer a special character for stock Windows
  shells.)  This avoids hitting shell limits for command length when
  quotes are used, but nothing else in the command requires the shell.
  This change could potentially mean some minor incompatibilities in
  behavior when the recipe uses quoted string on shell command lines.
@
text
@$NetBSD: patch-aa,v 1.13 2011/02/06 12:09:50 obache Exp $

--- make.h.orig	2010-07-20 13:12:06.000000000 +0000
+++ make.h
@@@@ -36,7 +36,7 @@@@ this program.  If not, see <http://www.g
  #pragma alloca
 # else
 #  if !defined(__GNUC__) && !defined(WINDOWS32)
-#   ifndef alloca /* predefined by HP cc +Olibcalls */
+#   if !defined (alloca) && !defined (__FreeBSD__) /* predefined by HP cc +Olibcalls, part of stdlib.h on FreeBSD */
 char *alloca ();
 #   endif
 #  endif
@@@@ -249,6 +249,9 @@@@ char *strerror (int errnum);
 #if HAVE_INTTYPES_H
 # include <inttypes.h>
 #endif
+#if HAVE_STDINT_H
+# include <stdint.h>
+#endif
 #define FILE_TIMESTAMP uintmax_t
 
 #if !defined(HAVE_STRSIGNAL)
@@@@ -472,7 +475,7 @@@@ long int lseek ();
 #endif  /* Not GNU C library or POSIX.  */
 
 #ifdef  HAVE_GETCWD
-# if !defined(VMS) && !defined(__DECC)
+# if !defined(VMS) && !defined(__DECC) && !defined(HAVE_UNISTD_H)
 char *getcwd ();
 # endif
 #else
@


1.13
log
@uintmax_t is defined in stdint.h on SUA, include it additionally.
@
text
@d1 1
a1 1
$NetBSD: patch-aa,v 1.12 2011/01/17 14:17:29 is Exp $
@


1.12
log
@Declaring char *getcwd(); interfered with _USE_FORTIFY_SOURCE=N (for N>0).
(pointed out by aniou@@ircnet).

The problem is avoided by not declaring in make.h if defined(HAVE_UNISTD_H).

(I wish people would actually use configure's findings after it spent several
billions(en_US) of CPU cycles computing them.)
@
text
@d1 1
a1 1
$NetBSD$
d14 11
a24 1
@@@@ -472,7 +472,7 @@@@ long int lseek ();
@


1.11
log
@Update to 3.82:

Version 3.82

A complete list of bugs fixed in this version is available here:

http://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=104&set=custom

* Compiling GNU make now requires a conforming ISO C 1989 compiler and
  standard runtime library.

* WARNING: Future backward-incompatibility!
  Wildcards are not documented as returning sorted values, but up to and
  including this release the results have been sorted and some makefiles are
  apparently depending on that.  In the next release of GNU make, for
  performance reasons, we may remove that sorting.  If your makefiles
  require sorted results from wildcard expansions, use the $(sort ...)
  function to request it explicitly.

* WARNING: Backward-incompatibility!
  The POSIX standard for make was changed in the 2008 version in a
  fundamentally incompatible way: make is required to invoke the shell as if
  the '-e' flag were provided.  Because this would break many makefiles that
  have been written to conform to the original text of the standard, the
  default behavior of GNU make remains to invoke the shell with simply '-c'.
  However, any makefile specifying the .POSIX special target will follow the
  new POSIX standard and pass '-e' to the shell.  See also .SHELLFLAGS
  below.

* WARNING: Backward-incompatibility!
  The '$?' variable now contains all prerequisites that caused the target to
  be considered out of date, even if they do not exist (previously only
  existing targets were provided in $?).

* WARNING: Backward-incompatibility!
  As a result of parser enhancements, three backward-compatibility issues
  exist: first, a prerequisite containing an "=" cannot be escaped with a
  backslash any longer.  You must create a variable containing an "=" and
  use that variable in the prerequisite.  Second, variable names can no
  longer contain whitespace, unless you put the whitespace in a variable and
  use the variable.  Third, in previous versions of make it was sometimes
  not flagged as an error for explicit and pattern targets to appear in the
  same rule.  Now this is always reported as an error.

* WARNING: Backward-incompatibility!
  The pattern-specific variables and pattern rules are now applied in the
  shortest stem first order instead of the definition order (variables
  and rules with the same stem length are still applied in the definition
  order). This produces the usually-desired behavior where more specific
  patterns are preferred. To detect this feature search for 'shortest-stem'
  in the .FEATURES special variable.

* WARNING: Backward-incompatibility!
  The library search behavior has changed to be compatible with the standard
  linker behavior. Prior to this version for prerequisites specified using
  the -lfoo syntax make first searched for libfoo.so in the current
  directory, vpath directories, and system directories. If that didn't yield
  a match, make then searched for libfoo.a in these directories. Starting
  with this version make searches first for libfoo.so and then for libfoo.a
  in each of these directories in order.

* New command line option: --eval=STRING causes STRING to be evaluated as
  makefile syntax (akin to using the $(eval ...) function).  The evaluation
  is performed after all default rules and variables are defined, but before
  any makefiles are read.

* New special variable: .RECIPEPREFIX allows you to reset the recipe
  introduction character from the default (TAB) to something else.  The
  first character of this variable value is the new recipe introduction
  character.  If the variable is set to the empty string, TAB is used again.
  It can be set and reset at will; recipes will use the value active when
  they were first parsed.  To detect this feature check the value of
  $(.RECIPEPREFIX).

* New special variable: .SHELLFLAGS allows you to change the options passed
  to the shell when it invokes recipes.  By default the value will be "-c"
  (or "-ec" if .POSIX is set).

* New special target: .ONESHELL instructs make to invoke a single instance
  of the shell and provide it with the entire recipe, regardless of how many
  lines it contains.  As a special feature to allow more straightforward
  conversion of makefiles to use .ONESHELL, any recipe line control
  characters ('@@', '+', or '-') will be removed from the second and
  subsequent recipe lines.  This happens _only_ if the SHELL value is deemed
  to be a standard POSIX-style shell.  If not, then no interior line control
  characters are removed (as they may be part of the scripting language used
  with the alternate SHELL).

* New variable modifier 'private': prefixing a variable assignment with the
  modifier 'private' suppresses inheritance of that variable by
  prerequisites.  This is most useful for target- and pattern-specific
  variables.

* New make directive: 'undefine' allows you to undefine a variable so that
  it appears as if it was never set. Both $(flavor) and $(origin) functions
  will return 'undefined' for such a variable. To detect this feature search
  for 'undefine' in the .FEATURES special variable.

* The parser for variable assignments has been enhanced to allow multiple
  modifiers ('export', 'override', 'private') on the same line as variables,
  including define/endef variables, and in any order.  Also, it is possible
  to create variables and targets named as these modifiers.

* The 'define' make directive now allows a variable assignment operator
  after the variable name, to allow for simple, conditional, or appending
  multi-line variable assignment.
@
text
@d1 1
a1 1
$NetBSD: patch-aa,v 1.10 2006/04/02 20:10:51 wiz Exp $
d14 9
@


1.10
log
@Update to 3.81:

Version 3.81

* GNU make is ported to OS/2.

* GNU make is ported to MinGW.  The MinGW build is only supported by
  the build_w32.bat batch file; see the file README.W32 for more
  details.

* WARNING: Future backward-incompatibility!
  Up to and including this release, the '$?' variable does not contain
  any prerequisite that does not exist, even though that prerequisite
  might have caused the target to rebuild.  Starting with the _next_
  release of GNU make, '$?' will contain all prerequisites that caused
  the target to be considered out of date.  See this Savannah bug:
  http://savannah.gnu.org/bugs/index.php?func=detailitem&item_id=16051

* WARNING: Backward-incompatibility!
  GNU make now implements a generic "second expansion" feature on the
  prerequisites of both explicit and implicit (pattern) rules.  In order
  to enable this feature, the special target '.SECONDEXPANSION' must be
  defined before the first target which takes advantage of it.  If this
  feature is enabled then after all rules have been parsed the
  prerequisites are expanded again, this time with all the automatic
  variables in scope.  This means that in addition to using standard
  SysV $$@@ in prerequisites lists, you can also use complex functions
  such as $$(notdir $$@@) etc.  This behavior applies to implicit rules,
  as well, where the second expansion occurs when the rule is matched.
  However, this means that when '.SECONDEXPANSION' is enabled you must
  double-quote any "$" in your filenames; instead of "foo: boo$$bar" you
  now must write "foo: foo$$$$bar".  Note that the SysV $$@@ etc. feature,
  which used to be available by default, is now ONLY available when the
  .SECONDEXPANSION target is defined.  If your makefiles take advantage
  of this SysV feature you will need to update them.

* WARNING: Backward-incompatibility!
  In order to comply with POSIX, the way in which GNU make processes
  backslash-newline sequences in command strings has changed.  If your
  makefiles use backslash-newline sequences inside of single-quoted
  strings in command scripts you will be impacted by this change.  See
  the GNU make manual subsection "Splitting Command Lines" (node
  "Splitting Lines"), in section "Command Syntax", chapter "Writing the
  Commands in Rules", for details.

* WARNING: Backward-incompatibility!
  Some previous versions of GNU make had a bug where "#" in a function
  invocation such as $(shell ...) was treated as a make comment.  A
  workaround was to escape these with backslashes.  This bug has been
  fixed: if your makefile uses "\#" in a function invocation the
  backslash is now preserved, so you'll need to remove it.

* New command-line option: -L (--check-symlink-times).  On systems that
  support symbolic links, if this option is given then GNU make will
  use the most recent modification time of any symbolic links that are
  used to resolve target files.  The default behavior remains as it
  always has: use the modification time of the actual target file only.

* The "else" conditional line can now be followed by any other valid
  conditional on the same line: this does not increase the depth of the
  conditional nesting, so only one "endif" is required to close the
  conditional.

* All pattern-specific variables that match a given target are now used
  (previously only the first match was used).

* Target-specific variables can be marked as exportable using the
  "export" keyword.

* In a recursive $(call ...) context, any extra arguments from the outer
  call are now masked in the context of the inner call.

* Implemented a solution for the "thundering herd" problem with "-j -l".
  This version of GNU make uses an algorithm suggested by Thomas Riedl
  <thomas.riedl@@siemens.com> to track the number of jobs started in the
  last second and artificially adjust GNU make's view of the system's
  load average accordingly.

* New special variables available in this release:
   - .INCLUDE_DIRS: Expands to a list of directories that make searches
     for included makefiles.
   - .FEATURES: Contains a list of special features available in this
     version of GNU make.
   - .DEFAULT_GOAL: Set the name of the default goal make will
     use if no goals are provided on the command line.
   - MAKE_RESTARTS: If set, then this is the number of times this
     instance of make has been restarted (see "How Makefiles Are Remade"
     in the manual).
   - New automatic variable: $| (added in 3.80, actually): contains all
     the order-only prerequisites defined for the target.

* New functions available in this release:
   - $(lastword ...) returns the last word in the list.  This gives
     identical results as $(word $(words ...) ...), but is much faster.
   - $(abspath ...) returns the absolute path (all "." and ".."
     directories resolved, and any duplicate "/" characters removed) for
     each path provided.
   - $(realpath ...) returns the canonical pathname for each path
     provided.  The canonical pathname is the absolute pathname, with
     all symbolic links resolved as well.
   - $(info ...) prints its arguments to stdout.  No makefile name or
     line number info, etc. is printed.
   - $(flavor ...) returns the flavor of a variable.
   - $(or ...) provides a short-circuiting OR conditional: each argument
     is expanded.  The first true (non-empty) argument is returned; no
     further arguments are expanded.  Expands to empty if there are no
     true arguments.
   - $(and ...) provides a short-circuiting AND conditional: each
     argument is expanded.  The first false (empty) argument is
     returned; no further arguments are expanded.  Expands to the last
     argument if all arguments are true.

* Changes made for POSIX compatibility:
   - Only touch targets (under -t) if they have at least one command.
   - Setting the SHELL make variable does NOT change the value of the
     SHELL environment variable given to programs invoked by make.  As
     an enhancement to POSIX, if you export the make variable SHELL then
     it will be set in the environment, just as before.

* On MS Windows systems, explicitly setting SHELL to a pathname ending
  in "cmd" or "cmd.exe" (case-insensitive) will force GNU make to use
  the DOS command interpreter in batch mode even if a UNIX-like shell
  could be found on the system.

* On VMS there is now support for case-sensitive filesystems such as ODS5.
  See the readme.vms file for information.

* Parallel builds (-jN) no longer require a working Bourne shell on
  Windows platforms.  They work even with the stock Windows shells, such
  as cmd.exe and command.com.

* Updated to autoconf 2.59, automake 1.9.5, and gettext 0.14.1.  Users
  should not be impacted.

* New translations for Swedish, Chinese (simplified), Ukrainian,
  Belarusian, Finnish, Kinyarwandan, and Irish.  Many updated
  translations.

A complete list of bugs fixed in this version is available here:

  http://savannah.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=103
@
text
@d1 1
a1 1
$NetBSD: patch-aa,v 1.9 2003/02/21 12:40:54 grant Exp $
d3 1
a3 1
--- make.h.orig	2006-02-15 23:54:43.000000000 +0000
d5 1
a5 2
@@@@ -31,7 +31,7 @@@@ Foundation, Inc., 51 Franklin St, Fifth 
 #  ifdef _AIX
d7 2
a8 1
 #  else
@


1.9
log
@add some patches from FreeBSD Ports, and tidy up patching of
make.texi.
@
text
@d1 1
a1 1
$NetBSD$
d3 1
a3 1
--- make.h.orig	Thu Sep 12 02:55:44 2002
d5 1
a5 1
@@@@ -33,7 +33,7 @@@@ Boston, MA 02111-1307, USA.  */
@


1.8
log
@update to gmake-3.80

Changes since 3.79.1 are:

Version 3.80

* A new feature exists: order-only prerequisites.  These prerequisites
  affect the order in which targets are built, but they do not impact
  the rebuild/no-rebuild decision of their dependents.  That is to say,
  they allow you to require target B be built before target A, without
  requiring that target A will always be rebuilt if target B is updated.
  Patch for this feature provided by Greg McGary <greg@@mcgary.org>.

* For compatibility with SysV make, GNU make now supports the peculiar
  syntax $$@@, $$(@@D), and $$(@@F) in the prerequisites list of a rule.
  This syntax is only valid within explicit and static pattern rules: it
  cannot be used in implicit (suffix or pattern) rules.  Edouard G. Parmelan
  <egp@@free.fr> provided a patch implementing this feature; however, I
  decided to implement it in a different way.

* The argument to the "ifdef" conditional is now expanded before it's
  tested, so it can be a constructed variable name.

  Similarly, the arguments to "export" (when not used in a variable
  definition context) and "unexport" are also now expanded.

* A new function is defined: $(value ...).  The argument to this
  function is the _name_ of a variable.  The result of the function is
  the value of the variable, without having been expanded.

* A new function is defined: $(eval ...).  The arguments to this
  function should expand to makefile commands, which will then be
  evaluated as if they had appeared in the makefile.  In combination
  with define/endef multiline variable definitions this is an extremely
  powerful capability.  The $(value ...) function is also sometimes
  useful here.

* A new built-in variable is defined, $(MAKEFILE_LIST).  It contains a
  list of each makefile GNU make has read, or started to read, in the
  order in which they were encountered.  So, the last filename in the
  list when a makefile is just being read (before any includes) is the
  name of the current makefile.

* A new built-in variable is defined: $(.VARIABLES).  When it is
  expanded it returns a complete list of variable names defined by all
  makefiles at that moment.

* A new command-line option is defined, -B or --always-make.  If
  specified GNU make will consider all targets out-of-date even if they
  would otherwise not be.

* The arguments to $(call ...) functions were being stored in $1, $2,
  etc. as recursive variables, even though they are fully expanded
  before assignment.  This means that escaped dollar signs ($$ etc.)
  were not behaving properly.  Now the arguments are stored as simple
  variables.  This may mean that if you added extra escaping to your
  $(call ...) function arguments you will need to undo it now.

* The variable invoked by $(call ...) can now be recursive: unlike other
  variables it can reference itself and this will not produce an error
  when it is used as the first argument to $(call ...) (but only then).

* New pseudo-target .LOW_RESOLUTION_TIME, superseding the configure
  option --disable-nsec-timestamps.  You might need this if your build
  process depends on tools like "cp -p" preserving time stamps, since
  "cp -p" (right now) doesn't preserve the subsecond portion of a time
  stamp.

* Updated translations for French, Galician, German, Japanese, Korean,
  and Russian.  New translations for Croatian, Danish, Hebrew, and
  Turkish.

* Updated internationalization support to Gettext 0.11.5.
  GNU make now uses Gettext's "external" feature, and does not include
  any internationalization code itself.  Configure will search your
  system for an existing implementation of GNU Gettext (only GNU Gettext
  is acceptable) and use it if it exists.  If not, NLS will be disabled.
  See ABOUT-NLS for more information.

* Updated to autoconf 2.54 and automake 1.7.  Users should not be impacted.
@
text
@d1 1
a1 1
$NetBSD: patch-aa,v 1.7 2001/03/13 20:15:47 wiz Exp $
d3 11
a13 39
--- configure.orig	Fri Jun 23 18:09:54 2000
+++ configure
@@@@ -2528,7 +2528,7 @@@@
     # Check whether --with-included-gettext or --without-included-gettext was given.
 if test "${with_included_gettext+set}" = set; then
   withval="$with_included_gettext"
-  with_included_gettext=yes
+  with_included_gettext=$withval
 else
   with_included_gettext=maybe
 fi
@@@@ -2669,12 +2669,8 @@@@
 
 int main() {
 
-#if __USE_GNU_GETTEXT
   extern int _nl_msg_cat_cntr;
   return _nl_msg_cat_cntr;
-#else
-not GNU gettext
-#endif
 
 ; return 0; }
 EOF
@@@@ -2851,12 +2847,12 @@@@
 
     if test "x$prefix" = xNONE; then
       cat >> confdefs.h <<EOF
-#define LOCALEDIR "$ac_default_prefix/share/locale"
+#define LOCALEDIR "$ac_default_prefix/${PKGLOCALEDIR}/locale"
 EOF
 
     else
       cat >> confdefs.h <<EOF
-#define LOCALEDIR "$prefix/share/locale"
+#define LOCALEDIR "$prefix/${PKGLOCALEDIR}/locale"
 EOF
 
     fi
@


1.7
log
@Try to compile with system-provided libintl, if possible.
Patch by Patrick Welche in pkg/11991.
@
text
@d1 1
a1 1
$NetBSD$
@


1.6
log
@Install locale files to "${PKGLOCALEDIR}/locale" instead of hard coding
the path to "share/locale".
@
text
@d4 24
a27 2
+++ configure	Tue Feb 27 09:31:08 2001
@@@@ -2851,12 +2851,12 @@@@
@


1.5
log
@Fix for `patch -F0' by eliminating patches
- - use --program-prefix="g" for make -> gmake
- - use '${SED}' to fix @@dircategory
@
text
@d1 1
a1 1
$NetBSD: patch-aa,v 1.4 1999/03/05 09:20:16 agc Exp $
d3 17
a19 13
Install the program as gmake, the man page as gmake.1

--- configure-orig	Fri Sep 19 20:37:14 1997
+++ configure	Mon Dec  1 20:41:54 1997
@@@@ -59,7 +59,7 @@@@
 prefix=NONE
 program_prefix=NONE
 program_suffix=NONE
-program_transform_name=s,x,x,
+program_transform_name='s,^,g,'
 silent=
 site=
 srcdir=
@


1.4
log
@Escape the sed expression from interpretation by the shell by using
quotation marks.
@
text
@d1 1
a1 1
$NetBSD: patch-aa,v 1.3 1998/08/07 10:40:24 agc Exp $
@


1.3
log
@Add NetBSD RCS Ids.
@
text
@d1 3
a3 1
$NetBSD$
d12 1
a12 1
+program_transform_name=s,^,g,
@


1.2
log
@upgrade GNU make to 3.76.1
@
text
@d1 2
@


1.1
log
@Initial revision
@
text
@d1 11
a11 62
--- Makefile.in.orig	Thu Aug 29 06:13:09 1996
+++ Makefile.in	Thu Jun 12 20:53:26 1997
@@@@ -79,7 +79,7 @@@@
 # Number to put on the man page filename.
 manext = 1
 # Prefix to put on installed `make' binary file name.
-binprefix =
+binprefix = g
 # Prefix to put on installed `make' man page file name.
 manprefix = $(binprefix)
 
@@@@ -130,14 +130,14 @@@@
 .SUFFIXES:
 .SUFFIXES: .o .c .h .ps .dvi .info .texinfo
 
-all: make
+all: make info
 info: make.info
 dvi: make.dvi
 # Some makes apparently use .PHONY as the default goal if it is before `all'.
 .PHONY: all check info dvi
 
 make.info: make.texinfo
-	$(MAKEINFO) -I$(srcdir) $(srcdir)/make.texinfo -o make.info
+	rm -f make.info* && $(MAKEINFO) --no-split -I$(srcdir) $(srcdir)/make.texinfo -o make.info
 
 make.dvi: make.texinfo
 	$(TEXI2DVI) $(srcdir)/make.texinfo
@@@@ -175,6 +175,8 @@@@
 
 installdirs:
 	$(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(mandir)
+	rm -f $(bindir)/$(binprefix)make $(infodir)/make.info \
+		$(mandir)/$(manprefix)make.$(manext)
 
 $(bindir)/$(binprefix)make: make
 	$(INSTALL_PROGRAM) make $@@.new
@@@@ -204,10 +206,10 @@@@
 # line so we notice real errors from install-info.
 # We use `$(SHELL) -c' because some shells do not
 # fail gracefully when there is an unknown command.
-	if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
-	  if [ -r ./make.info ]; then dir=.; else dir=$(srcdir); fi; \
-	  install-info --infodir=$(infodir) $$dir/make.info; \
-	else true; fi
+#	if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
+#	  if [ -r ./make.info ]; then dir=.; else dir=$(srcdir); fi; \
+#	  install-info --infodir=$(infodir) $$dir/make.info; \
+#	else true; fi
 
 $(mandir)/$(manprefix)make.$(manext): make.man
 	$(INSTALL_DATA) $(srcdir)/make.man $@@
@@@@ -250,7 +252,8 @@@@
 	$(SHELL) config.status
 glob/Makefile: config.status $(srcdir)/glob/Makefile.in
 	$(SHELL) config.status
-config.h: stamp-config ;
+config.h: stamp-config
+
 stamp-config: config.status $(srcdir)/config.h.in
 	$(SHELL) config.status
 	touch stamp-config
@


1.1.1.1
log
@Initial import of FreeBSD devel ports into NetBSD
packages system.
@
text
@@
