From: Ralf Wildenhues Date: Sat, 8 Dec 2007 10:39:34 +0000 (+0100) Subject: Sync from Automake. X-Git-Tag: v2.62~104 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7fb34e3eec4e64db248dc62bba8bf0e4af963750;p=thirdparty%2Fautoconf.git Sync from Automake. * lib/Autom4te/Channels.pm, lib/Autom4te/Configure_ac.pm, lib/Autom4te/Struct.pm, lib/Autom4te/XFile.pm: Likewise. * lib/Autom4te/FileUtils.pm (open_quote): New function. (update_file, contents): Use it. --- diff --git a/ChangeLog b/ChangeLog index 5c59f9f3..5d49b2cd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2007-12-08 Ralf Wildenhues + Sync from Automake. + * lib/Autom4te/Channels.pm, lib/Autom4te/Configure_ac.pm, + lib/Autom4te/Struct.pm, lib/Autom4te/XFile.pm: Likewise. + * lib/Autom4te/FileUtils.pm (open_quote): New function. + (update_file, contents): Use it. + * Makefile.am (autom4te-update): Rewrite for git. 2007-12-04 Ralf Wildenhues diff --git a/lib/Autom4te/Channels.pm b/lib/Autom4te/Channels.pm index 9840a3a9..7324f28b 100644 --- a/lib/Autom4te/Channels.pm +++ b/lib/Autom4te/Channels.pm @@ -1,9 +1,9 @@ # Copyright (C) 2002, 2004, 2006 Free Software Foundation, Inc. -# This program is free software: you can redistribute it and/or modify +# 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 3 of the License, or -# (at your option) any later version. +# the Free Software Foundation; either version 3, 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 diff --git a/lib/Autom4te/Configure_ac.pm b/lib/Autom4te/Configure_ac.pm index 48a1d19b..3ed65f45 100644 --- a/lib/Autom4te/Configure_ac.pm +++ b/lib/Autom4te/Configure_ac.pm @@ -1,9 +1,9 @@ # Copyright (C) 2003, 2005, 2006 Free Software Foundation, Inc. -# This program is free software: you can redistribute it and/or modify +# 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 3 of the License, or -# (at your option) any later version. +# the Free Software Foundation; either version 3, 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 diff --git a/lib/Autom4te/FileUtils.pm b/lib/Autom4te/FileUtils.pm index 3c9c1bad..819a7c38 100644 --- a/lib/Autom4te/FileUtils.pm +++ b/lib/Autom4te/FileUtils.pm @@ -1,9 +1,9 @@ -# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. -# This program is free software: you can redistribute it and/or modify +# 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 3 of the License, or -# (at your option) any later version. +# the Free Software Foundation; either version 3, 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 @@ -44,12 +44,38 @@ use Autom4te::ChannelDefs; use vars qw (@ISA @EXPORT); @ISA = qw (Exporter); -@EXPORT = qw (&contents +@EXPORT = qw (&open_quote &contents &find_file &mtime &update_file &up_to_date_p &xsystem &xqx &dir_has_case_matching_file &reset_dir_cache); +=item C + +Quote C<$file_name> for open. + +=cut + +# $FILE_NAME +# open_quote ($FILE_NAME) +# ----------------------- +# If the string $S is a well-behaved file name, simply return it. +# If it starts with white space, prepend `./', if it ends with +# white space, add `\0'. Return the new string. +sub open_quote($) +{ + my ($s) = @_; + if ($s =~ m/^\s/) + { + $s = "./$s"; + } + if ($s =~ m/\s$/) + { + $s = "$s\0"; + } + return $s; +} + =item C Return the first path for a C<$file_name> in the Cs. @@ -139,7 +165,7 @@ sub update_file ($$;$) if ($to eq '-') { - my $in = new IO::File ("$from"); + my $in = new IO::File ("< " . open_quote ($from)); my $out = new IO::File (">-"); while ($_ = $in->getline) { @@ -303,7 +329,7 @@ sub contents ($) my ($file) = @_; verb "reading $file"; local $/; # Turn on slurp-mode. - my $f = new Autom4te::XFile "< $file"; + my $f = new Autom4te::XFile "< " . open_quote ($file); my $contents = $f->getline; $f->close; return $contents; diff --git a/lib/Autom4te/Struct.pm b/lib/Autom4te/Struct.pm index 89c885c6..20357190 100644 --- a/lib/Autom4te/Struct.pm +++ b/lib/Autom4te/Struct.pm @@ -1,10 +1,10 @@ # autoconf -- create `configure' using m4 macros # Copyright (C) 2001, 2002, 2006 Free Software Foundation, Inc. -# This program is free software: you can redistribute it and/or modify +# 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 3 of the License, or -# (at your option) any later version. +# the Free Software Foundation; either version 3, 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 diff --git a/lib/Autom4te/XFile.pm b/lib/Autom4te/XFile.pm index 55ff2a1e..8d6e70ac 100644 --- a/lib/Autom4te/XFile.pm +++ b/lib/Autom4te/XFile.pm @@ -1,9 +1,9 @@ # Copyright (C) 2001, 2003, 2004, 2006 Free Software Foundation, Inc. -# This program is free software: you can redistribute it and/or modify +# 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 3 of the License, or -# (at your option) any later version. +# the Free Software Foundation; either version 3, 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 @@ -64,7 +64,7 @@ Autom4te::XFile - supply object methods for filehandles with error handling C inherits from C. It provides the method C returning the file name. It provides dying version of the methods C, C (corresponding to C), C, -C, C, and C. It also overrides the C +C, C, and C. It also overrides the C and C methods to translate C<\r\n> to C<\n>. =head1 SEE ALSO