diff options
Diffstat (limited to 'lib')
73 files changed, 257 insertions, 837 deletions
diff --git a/lib/Automake/ChannelDefs.pm b/lib/Automake/ChannelDefs.pm index 0fe619753..bb62d5767 100644 --- a/lib/Automake/ChannelDefs.pm +++ b/lib/Automake/ChannelDefs.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2013 Free Software Foundation, Inc. +# Copyright (C) 2002-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Channels.pm b/lib/Automake/Channels.pm index fe843ab9a..9fd513f31 100644 --- a/lib/Automake/Channels.pm +++ b/lib/Automake/Channels.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2013 Free Software Foundation, Inc. +# Copyright (C) 2002-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Condition.pm b/lib/Automake/Condition.pm index 3231d716b..bc4f8bac5 100644 --- a/lib/Automake/Condition.pm +++ b/lib/Automake/Condition.pm @@ -1,4 +1,4 @@ -# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# Copyright (C) 1997-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Config.in b/lib/Automake/Config.in index 885e74e5d..eee94157c 100644 --- a/lib/Automake/Config.in +++ b/lib/Automake/Config.in @@ -1,5 +1,5 @@ # -*- Perl -*- -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # @configure_input@ # This program is free software; you can redistribute it and/or modify diff --git a/lib/Automake/Configure_ac.pm b/lib/Automake/Configure_ac.pm index 8e48991de..e7c6df6e8 100644 --- a/lib/Automake/Configure_ac.pm +++ b/lib/Automake/Configure_ac.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/DisjConditions.pm b/lib/Automake/DisjConditions.pm index c68d4cb32..c8a294941 100644 --- a/lib/Automake/DisjConditions.pm +++ b/lib/Automake/DisjConditions.pm @@ -1,4 +1,4 @@ -# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# Copyright (C) 1997-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/FileUtils.pm b/lib/Automake/FileUtils.pm index d650aef28..13e11b560 100644 --- a/lib/Automake/FileUtils.pm +++ b/lib/Automake/FileUtils.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/General.pm b/lib/Automake/General.pm index 86a367b72..269ba644a 100644 --- a/lib/Automake/General.pm +++ b/lib/Automake/General.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Getopt.pm b/lib/Automake/Getopt.pm index c03b9cf28..f6ff9bdd6 100644 --- a/lib/Automake/Getopt.pm +++ b/lib/Automake/Getopt.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2012-2013 Free Software Foundation, Inc. +# Copyright (C) 2012-2014 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Item.pm b/lib/Automake/Item.pm index 6b699be66..fc46047a8 100644 --- a/lib/Automake/Item.pm +++ b/lib/Automake/Item.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/ItemDef.pm b/lib/Automake/ItemDef.pm index 416ae12c8..6a09aa019 100644 --- a/lib/Automake/ItemDef.pm +++ b/lib/Automake/ItemDef.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Language.pm b/lib/Automake/Language.pm index a678e1e4d..176baa37e 100644 --- a/lib/Automake/Language.pm +++ b/lib/Automake/Language.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2013 Free Software Foundation, Inc. +# Copyright (C) 2013-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Location.pm b/lib/Automake/Location.pm index 1a9bc6feb..0eb2f9ffb 100644 --- a/lib/Automake/Location.pm +++ b/lib/Automake/Location.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2013 Free Software Foundation, Inc. +# Copyright (C) 2002-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Makefile.inc b/lib/Automake/Makefile.inc index 48b15231f..fbbe54dcf 100644 --- a/lib/Automake/Makefile.inc +++ b/lib/Automake/Makefile.inc @@ -1,6 +1,6 @@ ## Included by top-level Makefile for Automake. -## Copyright (C) 1995-2013 Free Software Foundation, Inc. +## Copyright (C) 1995-2014 Free Software Foundation, Inc. ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Options.pm b/lib/Automake/Options.pm index fab33f3a3..7d782c3c9 100644 --- a/lib/Automake/Options.pm +++ b/lib/Automake/Options.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Rule.pm b/lib/Automake/Rule.pm index a28a78d36..5544fc042 100644 --- a/lib/Automake/Rule.pm +++ b/lib/Automake/Rule.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -340,8 +340,8 @@ sub reset() # Tarballing. 'dist-all' => [], - # Phonying. '.PHONY' => [], + '.PRECIOUS' => [], # Recursive install targets (so "make -n install" works for BSD Make). '.MAKE' => [], ); diff --git a/lib/Automake/RuleDef.pm b/lib/Automake/RuleDef.pm index 35a053087..9b657c990 100644 --- a/lib/Automake/RuleDef.pm +++ b/lib/Automake/RuleDef.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/VarDef.pm b/lib/Automake/VarDef.pm index 279e17cae..156f853de 100644 --- a/lib/Automake/VarDef.pm +++ b/lib/Automake/VarDef.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Variable.pm b/lib/Automake/Variable.pm index 4751563a3..87baaddeb 100644 --- a/lib/Automake/Variable.pm +++ b/lib/Automake/Variable.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Version.pm b/lib/Automake/Version.pm index c2d9dd7a7..b29d5bfda 100644 --- a/lib/Automake/Version.pm +++ b/lib/Automake/Version.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/Wrap.pm b/lib/Automake/Wrap.pm index 0aa42e17d..e56817c1c 100644 --- a/lib/Automake/Wrap.pm +++ b/lib/Automake/Wrap.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Automake/XFile.pm b/lib/Automake/XFile.pm index 97307f956..8ad292a93 100644 --- a/lib/Automake/XFile.pm +++ b/lib/Automake/XFile.pm @@ -1,4 +1,4 @@ -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/Makefile.inc b/lib/Makefile.inc index d1971f55f..7f1d298fb 100644 --- a/lib/Makefile.inc +++ b/lib/Makefile.inc @@ -1,6 +1,6 @@ ## Included by top-level Makefile for Automake. -## Copyright (C) 1995-2013 Free Software Foundation, Inc. +## Copyright (C) 1995-2014 Free Software Foundation, Inc. ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -40,8 +40,7 @@ dist_script_DATA = \ %D%/py-compile \ %D%/ar-lib \ %D%/test-driver \ - %D%/tap-driver.sh \ - %D%/tap-driver.pl + %D%/tap-driver.sh install-data-hook: @$(POST_INSTALL) diff --git a/lib/am/Makefile.inc b/lib/am/Makefile.inc index da9468284..7fe59f9e4 100644 --- a/lib/am/Makefile.inc +++ b/lib/am/Makefile.inc @@ -1,6 +1,6 @@ ## Included by top-level Makefile for Automake. -## Copyright (C) 1995-2013 Free Software Foundation, Inc. +## Copyright (C) 1995-2014 Free Software Foundation, Inc. ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/check.am b/lib/am/check.am index 7012d5a2b..869a72402 100644 --- a/lib/am/check.am +++ b/lib/am/check.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2001-2013 Free Software Foundation, Inc. +## Copyright (C) 2001-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -274,7 +274,9 @@ $(TEST_SUITE_LOG): $(TEST_LOGS) if test -n "$$am__remaking_logs"; then \ echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ "recursion detected" >&2; \ - else \ +## Invoking this unconditionally could cause a useless "make all" to +## be invoked when '$redo_logs' expands to empty (automake bug#16302). + elif test -n "$$redo_logs"; then \ am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ fi; \ if $(am__make_dryrun); then :; else \ diff --git a/lib/am/check2.am b/lib/am/check2.am index 79d2b5b49..eead73cab 100644 --- a/lib/am/check2.am +++ b/lib/am/check2.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2008-2013 Free Software Foundation, Inc. +## Copyright (C) 2008-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/clean-hdr.am b/lib/am/clean-hdr.am index 3c0d761eb..4afb580b7 100644 --- a/lib/am/clean-hdr.am +++ b/lib/am/clean-hdr.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/clean.am b/lib/am/clean.am index 8c3756653..5eb74b9e4 100644 --- a/lib/am/clean.am +++ b/lib/am/clean.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/compile.am b/lib/am/compile.am index 3e3b17184..fcef98455 100644 --- a/lib/am/compile.am +++ b/lib/am/compile.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/configure.am b/lib/am/configure.am index d159e1b55..34ebd17ad 100644 --- a/lib/am/configure.am +++ b/lib/am/configure.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2001-2013 Free Software Foundation, Inc. +## Copyright (C) 2001-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/data.am b/lib/am/data.am index e0ef5629a..de4497706 100644 --- a/lib/am/data.am +++ b/lib/am/data.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/dejagnu.am b/lib/am/dejagnu.am index d2ca5344f..5ae86fe02 100644 --- a/lib/am/dejagnu.am +++ b/lib/am/dejagnu.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/depend.am b/lib/am/depend.am index 1c00aae16..00ba5b36f 100644 --- a/lib/am/depend.am +++ b/lib/am/depend.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/depend2.am b/lib/am/depend2.am index 5c6439ad6..551ead835 100644 --- a/lib/am/depend2.am +++ b/lib/am/depend2.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/distdir.am b/lib/am/distdir.am index 3fe53f3ff..e4b1d5ca3 100644 --- a/lib/am/distdir.am +++ b/lib/am/distdir.am @@ -349,9 +349,9 @@ dist-tarZ: distdir ?SHAR?DIST_ARCHIVES += $(distdir).shar.gz .PHONY: dist-shar dist-shar: distdir - @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__post_remove_distdir) diff --git a/lib/am/footer.am b/lib/am/footer.am index dbc3ae44d..1c08c1e9e 100644 --- a/lib/am/footer.am +++ b/lib/am/footer.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/header.am b/lib/am/header.am index 0d93293a7..0d7d1d775 100644 --- a/lib/am/header.am +++ b/lib/am/header.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/inst-vars.am b/lib/am/inst-vars.am index 6e5c37baa..aa61e0e14 100644 --- a/lib/am/inst-vars.am +++ b/lib/am/inst-vars.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2004-2013 Free Software Foundation, Inc. +## Copyright (C) 2004-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/install.am b/lib/am/install.am index 47f7e679b..fc436d89c 100644 --- a/lib/am/install.am +++ b/lib/am/install.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2001-2013 Free Software Foundation, Inc. +## Copyright (C) 2001-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/java.am b/lib/am/java.am index e54121432..10230b57f 100644 --- a/lib/am/java.am +++ b/lib/am/java.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1998-2013 Free Software Foundation, Inc. +## Copyright (C) 1998-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/lang-compile.am b/lib/am/lang-compile.am index 900272000..be210ca65 100644 --- a/lib/am/lang-compile.am +++ b/lib/am/lang-compile.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2001-2013 Free Software Foundation, Inc. +## Copyright (C) 2001-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/lex.am b/lib/am/lex.am index 7fcc9c17f..9c89e3bc5 100644 --- a/lib/am/lex.am +++ b/lib/am/lex.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2001-2013 Free Software Foundation, Inc. +## Copyright (C) 2001-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/library.am b/lib/am/library.am index c01d221ef..7893539fe 100644 --- a/lib/am/library.am +++ b/lib/am/library.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/libs.am b/lib/am/libs.am index f2eb17b90..477a65a41 100644 --- a/lib/am/libs.am +++ b/lib/am/libs.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/libtool.am b/lib/am/libtool.am index 0aa8c084b..0acbdd94d 100644 --- a/lib/am/libtool.am +++ b/lib/am/libtool.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/lisp.am b/lib/am/lisp.am index bfb023f53..984c367b8 100644 --- a/lib/am/lisp.am +++ b/lib/am/lisp.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1996-2013 Free Software Foundation, Inc. +## Copyright (C) 1996-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/ltlib.am b/lib/am/ltlib.am index 9cf07045f..bdd014087 100644 --- a/lib/am/ltlib.am +++ b/lib/am/ltlib.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/ltlibrary.am b/lib/am/ltlibrary.am index 642d032ba..486fde3c2 100644 --- a/lib/am/ltlibrary.am +++ b/lib/am/ltlibrary.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/mans-vars.am b/lib/am/mans-vars.am index 7e866e728..f046c5d66 100644 --- a/lib/am/mans-vars.am +++ b/lib/am/mans-vars.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/mans.am b/lib/am/mans.am index 4abaa0d9b..9c93b20d6 100644 --- a/lib/am/mans.am +++ b/lib/am/mans.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1998-2013 Free Software Foundation, Inc. +## Copyright (C) 1998-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/program.am b/lib/am/program.am index 131c4a9c6..f7acc2e87 100644 --- a/lib/am/program.am +++ b/lib/am/program.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/progs.am b/lib/am/progs.am index 987927901..a2e55eb63 100644 --- a/lib/am/progs.am +++ b/lib/am/progs.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/python.am b/lib/am/python.am index 06545b187..5c36a2cf4 100644 --- a/lib/am/python.am +++ b/lib/am/python.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1999-2013 Free Software Foundation, Inc. +## Copyright (C) 1999-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/remake-hdr.am b/lib/am/remake-hdr.am index 979427d41..18414b7a7 100644 --- a/lib/am/remake-hdr.am +++ b/lib/am/remake-hdr.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/scripts.am b/lib/am/scripts.am index 0f5730aa7..71fffc0f4 100644 --- a/lib/am/scripts.am +++ b/lib/am/scripts.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/subdirs.am b/lib/am/subdirs.am index 999aa7877..88979554b 100644 --- a/lib/am/subdirs.am +++ b/lib/am/subdirs.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/tags.am b/lib/am/tags.am index 57eb1163c..51dee58cb 100644 --- a/lib/am/tags.am +++ b/lib/am/tags.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/texi-vers.am b/lib/am/texi-vers.am index e98bb8234..ec91dfe02 100644 --- a/lib/am/texi-vers.am +++ b/lib/am/texi-vers.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/texibuild.am b/lib/am/texibuild.am index a59d443ed..f9f345da7 100644 --- a/lib/am/texibuild.am +++ b/lib/am/texibuild.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/texinfos.am b/lib/am/texinfos.am index c2b080ab2..b33b105d8 100644 --- a/lib/am/texinfos.am +++ b/lib/am/texinfos.am @@ -1,6 +1,6 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1994-2013 Free Software Foundation, Inc. +## Copyright (C) 1994-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/vala.am b/lib/am/vala.am index 12891754b..dd7fb4ff5 100644 --- a/lib/am/vala.am +++ b/lib/am/vala.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 2008-2013 Free Software Foundation, Inc. +## Copyright (C) 2008-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/am/yacc.am b/lib/am/yacc.am index a1fb43ea2..6daf8fc06 100644 --- a/lib/am/yacc.am +++ b/lib/am/yacc.am @@ -1,5 +1,5 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1998-2013 Free Software Foundation, Inc. +## Copyright (C) 1998-2014 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff --git a/lib/ar-lib b/lib/ar-lib index fe2301e71..463b9ec02 100755 --- a/lib/ar-lib +++ b/lib/ar-lib @@ -4,7 +4,7 @@ me=ar-lib scriptversion=2012-03-01.08; # UTC -# Copyright (C) 2010-2013 Free Software Foundation, Inc. +# Copyright (C) 2010-2014 Free Software Foundation, Inc. # Written by Peter Rosin <peda@lysator.liu.se>. # # This program is free software; you can redistribute it and/or modify diff --git a/lib/compile b/lib/compile index 531136b06..a85b723c7 100755 --- a/lib/compile +++ b/lib/compile @@ -3,7 +3,7 @@ scriptversion=2012-10-14.11; # UTC -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey <tromey@cygnus.com>. # # This program is free software; you can redistribute it and/or modify diff --git a/lib/depcomp b/lib/depcomp index 4ebd5b3a2..fc98710e2 100755 --- a/lib/depcomp +++ b/lib/depcomp @@ -3,7 +3,7 @@ scriptversion=2013-05-30.07; # UTC -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/install-sh b/lib/install-sh index 377bb8687..0b0fdcbba 100755 --- a/lib/install-sh +++ b/lib/install-sh @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2011-11-20.07; # UTC +scriptversion=2013-12-25.23; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -41,19 +41,15 @@ scriptversion=2011-11-20.07; # UTC # This script is compatible with the BSD install script, but was written # from scratch. +tab=' ' nl=' ' -IFS=" "" $nl" +IFS=" $tab$nl" -# set DOITPROG to echo to test this script +# Set DOITPROG to "echo" to test this script. -# Don't use :- since 4.3BSD and earlier shells don't like it. doit=${DOITPROG-} -if test -z "$doit"; then - doit_exec=exec -else - doit_exec=$doit -fi +doit_exec=${doit:-exec} # Put in absolute file names if you don't have them in your path; # or use environment vars. @@ -68,17 +64,6 @@ mvprog=${MVPROG-mv} rmprog=${RMPROG-rm} stripprog=${STRIPPROG-strip} -posix_glob='?' -initialize_posix_glob=' - test "$posix_glob" != "?" || { - if (set -f) 2>/dev/null; then - posix_glob= - else - posix_glob=: - fi - } -' - posix_mkdir= # Desired mode of installed file. @@ -97,7 +82,7 @@ dir_arg= dst_arg= copy_on_change=false -no_target_directory= +is_target_a_directory=possibly usage="\ Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE @@ -137,46 +122,57 @@ while test $# -ne 0; do -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" - shift;; + shift;; --help) echo "$usage"; exit $?;; -m) mode=$2 - case $mode in - *' '* | *' '* | *' -'* | *'*'* | *'?'* | *'['*) - echo "$0: invalid mode: $mode" >&2 - exit 1;; - esac - shift;; + case $mode in + *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) + echo "$0: invalid mode: $mode" >&2 + exit 1;; + esac + shift;; -o) chowncmd="$chownprog $2" - shift;; + shift;; -s) stripcmd=$stripprog;; - -t) dst_arg=$2 - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - shift;; + -t) + is_target_a_directory=always + dst_arg=$2 + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + shift;; - -T) no_target_directory=true;; + -T) is_target_a_directory=never;; --version) echo "$0 $scriptversion"; exit $?;; - --) shift - break;; + --) shift + break;; - -*) echo "$0: invalid option: $1" >&2 - exit 1;; + -*) echo "$0: invalid option: $1" >&2 + exit 1;; *) break;; esac shift done +# We allow the use of options -d and -T together, by making -d +# take the precedence; this is for compatibility with GNU install. + +if test -n "$dir_arg"; then + if test -n "$dst_arg"; then + echo "$0: target directory not allowed when installing a directory." >&2 + exit 1 + fi +fi + if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. @@ -208,6 +204,15 @@ if test $# -eq 0; then fi if test -z "$dir_arg"; then + if test $# -gt 1 || test "$is_target_a_directory" = always; then + if test ! -d "$dst_arg"; then + echo "$0: $dst_arg: Is not a directory." >&2 + exit 1 + fi + fi +fi + +if test -z "$dir_arg"; then do_exit='(exit $ret); exit $ret' trap "ret=129; $do_exit" 1 trap "ret=130; $do_exit" 2 @@ -223,16 +228,16 @@ if test -z "$dir_arg"; then *[0-7]) if test -z "$stripcmd"; then - u_plus_rw= + u_plus_rw= else - u_plus_rw='% 200' + u_plus_rw='% 200' fi cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; *) if test -z "$stripcmd"; then - u_plus_rw= + u_plus_rw= else - u_plus_rw=,u+rw + u_plus_rw=,u+rw fi cp_umask=$mode$u_plus_rw;; esac @@ -269,41 +274,15 @@ do # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then - if test -n "$no_target_directory"; then - echo "$0: $dst_arg: Is a directory" >&2 - exit 1 + if test "$is_target_a_directory" = never; then + echo "$0: $dst_arg: Is a directory" >&2 + exit 1 fi dstdir=$dst dst=$dstdir/`basename "$src"` dstdir_status=0 else - # Prefer dirname, but fall back on a substitute if dirname fails. - dstdir=` - (dirname "$dst") 2>/dev/null || - expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$dst" : 'X\(//\)[^/]' \| \ - X"$dst" : 'X\(//\)$' \| \ - X"$dst" : 'X\(/\)' \| . 2>/dev/null || - echo X"$dst" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q' - ` - + dstdir=`dirname "$dst"` test -d "$dstdir" dstdir_status=$? fi @@ -314,74 +293,74 @@ do if test $dstdir_status != 0; then case $posix_mkdir in '') - # Create intermediate dirs using mode 755 as modified by the umask. - # This is like FreeBSD 'install' as of 1997-10-28. - umask=`umask` - case $stripcmd.$umask in - # Optimize common cases. - *[2367][2367]) mkdir_umask=$umask;; - .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; - - *[0-7]) - mkdir_umask=`expr $umask + 22 \ - - $umask % 100 % 40 + $umask % 20 \ - - $umask % 10 % 4 + $umask % 2 - `;; - *) mkdir_umask=$umask,go-w;; - esac - - # With -d, create the new directory with the user-specified mode. - # Otherwise, rely on $mkdir_umask. - if test -n "$dir_arg"; then - mkdir_mode=-m$mode - else - mkdir_mode= - fi - - posix_mkdir=false - case $umask in - *[123567][0-7][0-7]) - # POSIX mkdir -p sets u+wx bits regardless of umask, which - # is incompatible with FreeBSD 'install' when (umask & 300) != 0. - ;; - *) - tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 - - if (umask $mkdir_umask && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 - then - if test -z "$dir_arg" || { - # Check for POSIX incompatibilities with -m. - # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. - # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - ls_ld_tmpdir=`ls -ld "$tmpdir"` - case $ls_ld_tmpdir in - d????-?r-*) different_mode=700;; - d????-?--*) different_mode=755;; - *) false;; - esac && - $mkdirprog -m$different_mode -p -- "$tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$tmpdir"` - test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" - } - } - then posix_mkdir=: - fi - rmdir "$tmpdir/d" "$tmpdir" - else - # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null - fi - trap '' 0;; - esac;; + # Create intermediate dirs using mode 755 as modified by the umask. + # This is like FreeBSD 'install' as of 1997-10-28. + umask=`umask` + case $stripcmd.$umask in + # Optimize common cases. + *[2367][2367]) mkdir_umask=$umask;; + .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; + + *[0-7]) + mkdir_umask=`expr $umask + 22 \ + - $umask % 100 % 40 + $umask % 20 \ + - $umask % 10 % 4 + $umask % 2 + `;; + *) mkdir_umask=$umask,go-w;; + esac + + # With -d, create the new directory with the user-specified mode. + # Otherwise, rely on $mkdir_umask. + if test -n "$dir_arg"; then + mkdir_mode=-m$mode + else + mkdir_mode= + fi + + posix_mkdir=false + case $umask in + *[123567][0-7][0-7]) + # POSIX mkdir -p sets u+wx bits regardless of umask, which + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 + + if (umask $mkdir_umask && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + ls_ld_tmpdir=`ls -ld "$tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/d" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null + fi + trap '' 0;; + esac;; esac if $posix_mkdir && ( - umask $mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" + umask $mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else @@ -391,53 +370,51 @@ do # directory the slow way, step by step, checking for races as we go. case $dstdir in - /*) prefix='/';; - [-=\(\)!]*) prefix='./';; - *) prefix='';; + /*) prefix='/';; + [-=\(\)!]*) prefix='./';; + *) prefix='';; esac - eval "$initialize_posix_glob" - oIFS=$IFS IFS=/ - $posix_glob set -f + set -f set fnord $dstdir shift - $posix_glob set +f + set +f IFS=$oIFS prefixes= for d do - test X"$d" = X && continue - - prefix=$prefix$d - if test -d "$prefix"; then - prefixes= - else - if $posix_mkdir; then - (umask=$mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break - # Don't fail if two instances are running concurrently. - test -d "$prefix" || exit 1 - else - case $prefix in - *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; - *) qprefix=$prefix;; - esac - prefixes="$prefixes '$qprefix'" - fi - fi - prefix=$prefix/ + test X"$d" = X && continue + + prefix=$prefix$d + if test -d "$prefix"; then + prefixes= + else + if $posix_mkdir; then + (umask=$mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break + # Don't fail if two instances are running concurrently. + test -d "$prefix" || exit 1 + else + case $prefix in + *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; + *) qprefix=$prefix;; + esac + prefixes="$prefixes '$qprefix'" + fi + fi + prefix=$prefix/ done if test -n "$prefixes"; then - # Don't fail if two instances are running concurrently. - (umask $mkdir_umask && - eval "\$doit_exec \$mkdirprog $prefixes") || - test -d "$dstdir" || exit 1 - obsolete_mkdir_used=true + # Don't fail if two instances are running concurrently. + (umask $mkdir_umask && + eval "\$doit_exec \$mkdirprog $prefixes") || + test -d "$dstdir" || exit 1 + obsolete_mkdir_used=true fi fi fi @@ -472,15 +449,12 @@ do # If -C, don't bother to copy if it wouldn't change the file. if $copy_on_change && - old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && - new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && - - eval "$initialize_posix_glob" && - $posix_glob set -f && + old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && + new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && + set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && - $posix_glob set +f && - + set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then @@ -493,24 +467,24 @@ do # to itself, or perhaps because mv is so ancient that it does not # support -f. { - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - test ! -f "$dst" || - $doit $rmcmd -f "$dst" 2>/dev/null || - { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && - { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } - } || - { echo "$0: cannot unlink or rename $dst" >&2 - (exit 1); exit 1 - } - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dst" + # Now remove or move aside any old file at destination location. + # We try this two ways since rm can't unlink itself on some + # systems and the destination file might be busy for other + # reasons. In this case, the final cleanup might fail but the new + # file should still install successfully. + { + test ! -f "$dst" || + $doit $rmcmd -f "$dst" 2>/dev/null || + { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && + { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + } || + { echo "$0: cannot unlink or rename $dst" >&2 + (exit 1); exit 1 + } + } && + + # Now rename the file to the real destination. + $doit $mvcmd "$dsttmp" "$dst" } fi || exit 1 diff --git a/lib/mdate-sh b/lib/mdate-sh index b3719cf76..e8dfaca1d 100755 --- a/lib/mdate-sh +++ b/lib/mdate-sh @@ -3,7 +3,7 @@ scriptversion=2010-08-21.06; # UTC -# Copyright (C) 1995-2013 Free Software Foundation, Inc. +# Copyright (C) 1995-2014 Free Software Foundation, Inc. # written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, June 1995 # # This program is free software; you can redistribute it and/or modify diff --git a/lib/missing b/lib/missing index db98974ff..f62bbae30 100755 --- a/lib/missing +++ b/lib/missing @@ -3,7 +3,7 @@ scriptversion=2013-10-28.13; # UTC -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. # This program is free software; you can redistribute it and/or modify diff --git a/lib/py-compile b/lib/py-compile index 46ea866a7..bc2039140 100755 --- a/lib/py-compile +++ b/lib/py-compile @@ -3,7 +3,7 @@ scriptversion=2011-06-08.12; # UTC -# Copyright (C) 2000-2013 Free Software Foundation, Inc. +# Copyright (C) 2000-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/tap-driver.pl b/lib/tap-driver.pl deleted file mode 100755 index aca65fe44..000000000 --- a/lib/tap-driver.pl +++ /dev/null @@ -1,564 +0,0 @@ -#! /usr/bin/env perl -# Copyright (C) 2011-2013 Free Software Foundation, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -# ---------------------------------- # -# Imports, static data, and setup. # -# ---------------------------------- # - -use warnings FATAL => 'all'; -use strict; -use Getopt::Long (); -use TAP::Parser; - -my $VERSION = '2012-02-01.19'; # UTC - -my $ME = "tap-driver.pl"; - -my $USAGE = <<'END'; -Usage: - tap-driver --test-name=NAME --log-file=PATH --trs-file=PATH - [--expect-failure={yes|no}] [--color-tests={yes|no}] - [--enable-hard-errors={yes|no}] [--ignore-exit] - [--diagnostic-string=STRING] [--merge|--no-merge] - [--comments|--no-comments] [--] TEST-COMMAND -The `--test-name', `--log-file' and `--trs-file' options are mandatory. -END - -my $HELP = "$ME: TAP-aware test driver for Automake testsuite harness." . - "\n" . $USAGE; - -# Keep this in sync with `lib/am/check.am:$(am__tty_colors)'. -my %COLOR = ( - red => "\e[0;31m", - grn => "\e[0;32m", - lgn => "\e[1;32m", - blu => "\e[1;34m", - mgn => "\e[0;35m", - brg => "\e[1m", - std => "\e[m", -); - -# It's important that NO_PLAN evaluates "false" as a boolean. -use constant NO_PLAN => 0; -use constant EARLY_PLAN => 1; -use constant LATE_PLAN => 2; - -# ------------------- # -# Global variables. # -# ------------------- # - -my $testno = 0; # Number of test results seen so far. -my $bailed_out = 0; # Whether a "Bail out!" directive has been seen. -my $parser; # TAP parser object (will be initialized later). - -# Whether the TAP plan has been seen or not, and if yes, which kind -# it is ("early" is seen before any test result, "late" otherwise). -my $plan_seen = NO_PLAN; - -# ----------------- # -# Option parsing. # -# ----------------- # - -my %cfg = ( - "color-tests" => 0, - "expect-failure" => 0, - "merge" => 0, - "comments" => 0, - "ignore-exit" => 0, -); - -my $test_script_name = undef; -my $log_file = undef; -my $trs_file = undef; -my $diag_string = "#"; - -Getopt::Long::GetOptions - ( - 'help' => sub { print $HELP; exit 0; }, - 'version' => sub { print "$ME $VERSION\n"; exit 0; }, - 'test-name=s' => \$test_script_name, - 'log-file=s' => \$log_file, - 'trs-file=s' => \$trs_file, - 'color-tests=s' => \&bool_opt, - 'expect-failure=s' => \&bool_opt, - 'enable-hard-errors=s' => sub {}, # No-op. - 'diagnostic-string=s' => \$diag_string, - 'comments' => sub { $cfg{"comments"} = 1; }, - 'no-comments' => sub { $cfg{"comments"} = 0; }, - 'merge' => sub { $cfg{"merge"} = 1; }, - 'no-merge' => sub { $cfg{"merge"} = 0; }, - 'ignore-exit' => sub { $cfg{"ignore-exit"} = 1; }, - ) or exit 1; - -# ------------- # -# Prototypes. # -# ------------- # - -sub add_test_result ($); -sub bool_opt ($$); -sub colored ($$); -sub copy_in_global_log (); -sub decorate_result ($); -sub extract_tap_comment ($); -sub finish (); -sub get_global_test_result (); -sub get_test_exit_message (); -sub get_test_results (); -sub handle_tap_bailout ($); -sub handle_tap_plan ($); -sub handle_tap_result ($); -sub is_null_string ($); -sub main (@); -sub must_recheck (); -sub report ($;$); -sub setup_io (); -sub setup_parser (@); -sub stringify_result_obj ($); -sub testsuite_error ($); -sub trap_perl_warnings_and_errors (); -sub write_test_results (); -sub yn ($); - -# -------------- # -# Subroutines. # -# -------------- # - -sub bool_opt ($$) -{ - my ($opt, $val) = @_; - if ($val =~ /^(?:y|yes)\z/i) - { - $cfg{$opt} = 1; - } - elsif ($val =~ /^(?:n|no)\z/i) - { - $cfg{$opt} = 0; - } - else - { - die "$ME: invalid argument '$val' for option '$opt'\n"; - } -} - -# If the given string is undefined or empty, return true, otherwise -# return false. This function is useful to avoid pitfalls like: -# if ($message) { print "$message\n"; } -# which wouldn't print anything if $message is the literal "0". -sub is_null_string ($) -{ - my $str = shift; - return ! (defined $str and length $str); -} - -# Convert a boolean to a "yes"/"no" string. -sub yn ($) -{ - my $bool = shift; - return $bool ? "yes" : "no"; -} - -TEST_RESULTS : -{ - my (@test_results_list, %test_results_seen); - - sub add_test_result ($) - { - my $res = shift; - push @test_results_list, $res; - $test_results_seen{$res} = 1; - } - - sub get_test_results () - { - return @test_results_list; - } - - # Whether the test script should be re-run by "make recheck". - sub must_recheck () - { - return grep { !/^(?:XFAIL|PASS|SKIP)$/ } (keys %test_results_seen); - } - - # Whether the content of the log file associated to this test should - # be copied into the "global" test-suite.log. - sub copy_in_global_log () - { - return grep { not $_ eq "PASS" } (keys %test_results_seen); - } - - # FIXME: this can certainly be improved ... - sub get_global_test_result () - { - return "ERROR" - if $test_results_seen{"ERROR"}; - return "FAIL" - if $test_results_seen{"FAIL"} || $test_results_seen{"XPASS"}; - return "SKIP" - if scalar keys %test_results_seen == 1 && $test_results_seen{"SKIP"}; - return "PASS"; - } - -} - -sub write_test_results () -{ - open RES, ">", $trs_file or die "$ME: opening $trs_file: $!\n"; - print RES ":global-test-result: " . get_global_test_result . "\n"; - print RES ":recheck: " . yn (must_recheck) . "\n"; - print RES ":copy-in-global-log: " . yn (copy_in_global_log) . "\n"; - foreach my $result (get_test_results) - { - print RES ":test-result: $result\n"; - } - close RES or die "$ME: closing $trs_file: $!\n"; -} - -sub trap_perl_warnings_and_errors () -{ - $SIG{__WARN__} = $SIG{__DIE__} = sub - { - # Be sure to send the warning/error message to the original stderr - # (presumably the console), not into the log file. - open STDERR, ">&OLDERR"; - die @_; - } -} - -sub setup_io () -{ - # Redirect stderr and stdout to a temporary log file. Save the - # original stdout stream, since we need it to print testsuite - # progress output. Save original stderr stream, so that we can - # redirect warning and error messages from perl there. - open LOG, ">", $log_file or die "$ME: opening $log_file: $!\n"; - open OLDOUT, ">&STDOUT" or die "$ME: duplicating stdout: $!\n"; - open OLDERR, ">&STDERR" or die "$ME: duplicating stdout: $!\n"; - *OLDERR = *OLDERR; # To pacify a "used only once" warning. - trap_perl_warnings_and_errors; - open STDOUT, ">&LOG" or die "$ME: redirecting stdout: $!\n"; - open STDERR, ">&LOG" or die "$ME: redirecting stderr: $!\n"; -} - -sub setup_parser (@) -{ - local $@ = ''; - eval { $parser = TAP::Parser->new ({exec => \@_, merge => $cfg{merge}}) }; - if ($@ ne '') - { - # Don't use the error message in $@ as set by TAP::Parser, since - # currently it's both too generic (at the point of being basically - # useless) and quite long. - report "ERROR", "- couldn't execute test script"; - finish; - } -} - -sub get_test_exit_message () -{ - my $wstatus = $parser->wait; - # Watch out for possible internal errors. - die "$ME: couldn't get the exit status of the TAP producer" - unless defined $wstatus; - # Return an undefined value if the producer exited with success. - return unless $wstatus; - # Otherwise, determine whether it exited with error or was terminated - # by a signal. - use POSIX qw (WIFEXITED WEXITSTATUS WIFSIGNALED WTERMSIG); - if (WIFEXITED ($wstatus)) - { - return sprintf "exited with status %d", WEXITSTATUS ($wstatus); - } - elsif (WIFSIGNALED ($wstatus)) - { - return sprintf "terminated by signal %d", WTERMSIG ($wstatus); - } - else - { - return "terminated abnormally"; - } -} - -sub stringify_result_obj ($) -{ - my $result_obj = shift; - my $COOKED_PASS = $cfg{"expect-failure"} ? "XPASS": "PASS"; - my $COOKED_FAIL = $cfg{"expect-failure"} ? "XFAIL": "FAIL"; - if ($result_obj->is_unplanned || $result_obj->number != $testno) - { - return "ERROR"; - } - elsif ($plan_seen == LATE_PLAN) - { - return "ERROR"; - } - elsif (!$result_obj->directive) - { - return $result_obj->is_ok ? $COOKED_PASS: $COOKED_FAIL; - } - elsif ($result_obj->has_todo) - { - return $result_obj->is_actual_ok ? "XPASS" : "XFAIL"; - } - elsif ($result_obj->has_skip) - { - return $result_obj->is_ok ? "SKIP" : $COOKED_FAIL; - } - die "$ME: INTERNAL ERROR"; # NOTREACHED -} - -sub colored ($$) -{ - my ($color_name, $text) = @_; - return $COLOR{$color_name} . $text . $COLOR{'std'}; -} - -sub decorate_result ($) -{ - my $result = shift; - return $result unless $cfg{"color-tests"}; - my %color_for_result = - ( - "ERROR" => 'mgn', - "PASS" => 'grn', - "XPASS" => 'red', - "FAIL" => 'red', - "XFAIL" => 'lgn', - "SKIP" => 'blu', - ); - if (my $color = $color_for_result{$result}) - { - return colored ($color, $result); - } - else - { - return $result; # Don't colorize unknown stuff. - } -} - -sub report ($;$) -{ - my ($msg, $result, $explanation) = (undef, @_); - if ($result =~ /^(?:X?(?:PASS|FAIL)|SKIP|ERROR)/) - { - $msg = ": $test_script_name"; - add_test_result $result; - } - elsif ($result eq "#") - { - $msg = " $test_script_name:"; - } - else - { - die "$ME: INTERNAL ERROR"; # NOTREACHED - } - $msg .= " $explanation" if defined $explanation; - $msg .= "\n"; - # Output on console might be colorized. - print OLDOUT decorate_result ($result) . $msg; - # Log the result in the log file too, to help debugging (this is - # especially true when said result is a TAP error or "Bail out!"). - print $result . $msg; -} - -sub testsuite_error ($) -{ - report "ERROR", "- $_[0]"; -} - -sub handle_tap_result ($) -{ - $testno++; - my $result_obj = shift; - - my $test_result = stringify_result_obj $result_obj; - my $string = $result_obj->number; - - my $description = $result_obj->description; - $string .= " $description" - unless is_null_string $description; - - if ($plan_seen == LATE_PLAN) - { - $string .= " # AFTER LATE PLAN"; - } - elsif ($result_obj->is_unplanned) - { - $string .= " # UNPLANNED"; - } - elsif ($result_obj->number != $testno) - { - $string .= " # OUT-OF-ORDER (expecting $testno)"; - } - elsif (my $directive = $result_obj->directive) - { - $string .= " # $directive"; - my $explanation = $result_obj->explanation; - $string .= " $explanation" - unless is_null_string $explanation; - } - - report $test_result, $string; -} - -sub handle_tap_plan ($) -{ - my $plan = shift; - if ($plan_seen) - { - # Error, only one plan per stream is acceptable. - testsuite_error "multiple test plans"; - return; - } - # The TAP plan can come before or after *all* the TAP results; we speak - # respectively of an "early" or a "late" plan. If we see the plan line - # after at least one TAP result has been seen, assume we have a late - # plan; in this case, any further test result seen after the plan will - # be flagged as an error. - $plan_seen = ($testno >= 1 ? LATE_PLAN : EARLY_PLAN); - # If $testno > 0, we have an error ("too many tests run") that will be - # automatically dealt with later, so don't worry about it here. If - # $plan_seen is true, we have an error due to a repeated plan, and that - # has already been dealt with above. Otherwise, we have a valid "plan - # with SKIP" specification, and should report it as a particular kind - # of SKIP result. - if ($plan->directive && $testno == 0) - { - my $explanation = is_null_string ($plan->explanation) ? - undef : "- " . $plan->explanation; - report "SKIP", $explanation; - } -} - -sub handle_tap_bailout ($) -{ - my ($bailout, $msg) = ($_[0], "Bail out!"); - $bailed_out = 1; - $msg .= " " . $bailout->explanation - unless is_null_string $bailout->explanation; - testsuite_error $msg; -} - -sub extract_tap_comment ($) -{ - my $line = shift; - if (index ($line, $diag_string) == 0) - { - # Strip leading `$diag_string' from `$line'. - $line = substr ($line, length ($diag_string)); - # And strip any leading and trailing whitespace left. - $line =~ s/(?:^\s*|\s*$)//g; - # Return what is left (if any). - return $line; - } - return ""; -} - -sub finish () -{ - write_test_results; - close LOG or die "$ME: closing $log_file: $!\n"; - exit 0; -} - -sub main (@) -{ - setup_io; - setup_parser @_; - - while (defined (my $cur = $parser->next)) - { - # Verbatim copy any input line into the log file. - print $cur->raw . "\n"; - # Parsing of TAP input should stop after a "Bail out!" directive. - next if $bailed_out; - - if ($cur->is_plan) - { - handle_tap_plan ($cur); - } - elsif ($cur->is_test) - { - handle_tap_result ($cur); - } - elsif ($cur->is_bailout) - { - handle_tap_bailout ($cur); - } - elsif ($cfg{comments}) - { - my $comment = extract_tap_comment ($cur->raw); - report "#", "$comment" if length $comment; - } - } - # A "Bail out!" directive should cause us to ignore any following TAP - # error, as well as a non-zero exit status from the TAP producer. - if (!$bailed_out) - { - if (!$plan_seen) - { - testsuite_error "missing test plan"; - } - elsif ($parser->tests_planned != $parser->tests_run) - { - my ($planned, $run) = ($parser->tests_planned, $parser->tests_run); - my $bad_amount = $run > $planned ? "many" : "few"; - testsuite_error (sprintf "too %s tests run (expected %d, got %d)", - $bad_amount, $planned, $run); - } - if (!$cfg{"ignore-exit"}) - { - my $msg = get_test_exit_message (); - testsuite_error $msg if $msg; - } - } - finish; -} - -# ----------- # -# Main code. # -# ----------- # - -main @ARGV; - -# Local Variables: -# perl-indent-level: 2 -# perl-continued-statement-offset: 2 -# perl-continued-brace-offset: 0 -# perl-brace-offset: 0 -# perl-brace-imaginary-offset: 0 -# perl-label-offset: -2 -# cperl-indent-level: 2 -# cperl-brace-offset: 0 -# cperl-continued-brace-offset: 0 -# cperl-label-offset: -2 -# cperl-extra-newline-before-brace: t -# cperl-merge-trailing-else: nil -# cperl-continued-statement-offset: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "my $VERSION = " -# time-stamp-format: "'%:y-%02m-%02d.%02H'" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "; # UTC" -# End: diff --git a/lib/tap-driver.sh b/lib/tap-driver.sh index ee61fc112..4254e2b3d 100755 --- a/lib/tap-driver.sh +++ b/lib/tap-driver.sh @@ -1,5 +1,5 @@ #! /bin/sh -# Copyright (C) 2011-2013 Free Software Foundation, Inc. +# Copyright (C) 2011-2014 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/lib/test-driver b/lib/test-driver index d30605660..8e575b017 100755 --- a/lib/test-driver +++ b/lib/test-driver @@ -3,7 +3,7 @@ scriptversion=2013-07-13.22; # UTC -# Copyright (C) 2011-2013 Free Software Foundation, Inc. +# Copyright (C) 2011-2014 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -106,11 +106,14 @@ trap "st=143; $do_exit" 15 # Test script is run here. "$@" >$log_file 2>&1 estatus=$? + if test $enable_hard_errors = no && test $estatus -eq 99; then - estatus=1 + tweaked_estatus=1 +else + tweaked_estatus=$estatus fi -case $estatus:$expect_failure in +case $tweaked_estatus:$expect_failure in 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; 0:*) col=$grn res=PASS recheck=no gcopy=no;; 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; @@ -119,6 +122,12 @@ case $estatus:$expect_failure in *:*) col=$red res=FAIL recheck=yes gcopy=yes;; esac +# Report the test outcome and exit status in the logs, so that one can +# know whether the test passed or failed simply by looking at the '.log' +# file, without the need of also peaking into the corresponding '.trs' +# file (automake bug#11814). +echo "$res $test_name (exit status: $estatus)" >>$log_file + # Report outcome to console. echo "${col}${res}${std}: $test_name" diff --git a/lib/ylwrap b/lib/ylwrap index 8f072a8e9..7c2d927f7 100755 --- a/lib/ylwrap +++ b/lib/ylwrap @@ -3,7 +3,7 @@ scriptversion=2013-01-12.17; # UTC -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. # # Written by Tom Tromey <tromey@cygnus.com>. # |