From: Stefano Lattarini Date: Fri, 21 Sep 2012 08:51:36 +0000 (+0200) Subject: scripts: quote 'like this', not `like this' X-Git-Tag: v2.69b~210 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2ba184e5074625a3d7a8d93c3300c6a77b3862a4;p=thirdparty%2Fautoconf.git scripts: quote 'like this', not `like this' As per updated GCS recommendations. * bin/autoconf.as, bin/autoreconf.in, bin/autoscan.in, ifnames.in, bin/autoupdate.in: Throughout these files. * bin/autoheader.in, bin/autom4te.in: Likewise. Also, remove some useless escaping of the "'" single-quote characters, and reformat some message for better line wrapping. Signed-off-by: Stefano Lattarini --- diff --git a/bin/autoconf.as b/bin/autoconf.as index aa853949..c2f92308 100644 --- a/bin/autoconf.as +++ b/bin/autoconf.as @@ -1,7 +1,7 @@ AS_INIT[]dnl -*- shell-script -*- m4_divert_push([HEADER-COPYRIGHT])dnl # @configure_input@ -# autoconf -- create `configure' using m4 macros +# autoconf -- create 'configure' using m4 macros. # Copyright (C) 1992-1994, 1996, 1999-2012 Free Software Foundation, # Inc. @@ -26,9 +26,9 @@ usage=["\ Usage: $0 [OPTION]... [TEMPLATE-FILE] Generate a configuration script from a TEMPLATE-FILE if given, or -\`configure.ac' if present, or else \`configure.in'. Output is sent +'configure.ac' if present, or else 'configure.in'. Output is sent to the standard output if TEMPLATE-FILE is given, else into -\`configure'. +'configure'. Operation modes: -h, --help print this help, then exit @@ -40,15 +40,15 @@ Operation modes: -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax] Warning categories include: - \`cross' cross compilation issues - \`obsolete' obsolete constructs - \`syntax' dubious syntactic constructs - \`all' all the warnings - \`no-CATEGORY' turn off the warnings on CATEGORY - \`none' turn off all the warnings - \`error' warnings are error + 'cross' cross compilation issues + 'obsolete' obsolete constructs + 'syntax' dubious syntactic constructs + 'all' all the warnings + 'no-CATEGORY' turn off the warnings on CATEGORY + 'none' turn off all the warnings + 'error' warnings are error -The environment variables \`M4' and \`WARNINGS' are honored. +The environment variables 'M4' and 'WARNINGS' are honored. Library directories: -B, --prepend-include=DIR prepend directory DIR to search path @@ -59,7 +59,7 @@ Tracing: -i, --initialization also trace Autoconf's initialization process In tracing mode, no configuration script is created. FORMAT defaults -to \`\$f:\$l:\$n:\$%'; see \`autom4te --help' for information about FORMAT. +to '\$f:\$l:\$n:\$%'; see 'autom4te --help' for information about FORMAT. Report bugs to . GNU Autoconf home page: . @@ -76,10 +76,10 @@ There is NO WARRANTY, to the extent permitted by law. Written by David J. MacKenzie and Akim Demaille."] help="\ -Try \`$as_me --help' for more information." +Try '$as_me --help' for more information." exit_missing_arg=' - m4_bpatsubst([AS_ERROR([option `$[1]' requires an argument$as_nl$help])], + m4_bpatsubst([AS_ERROR([option '$[1]' requires an argument$as_nl$help])], ['], ['\\''])' # restore font-lock: ' @@ -153,7 +153,7 @@ while test $# -gt 0 ; do break ;; -* ) exec >&2 - AS_ERROR([invalid option `$[1]'$as_nl$help]) ;; #` + AS_ERROR([invalid option '$[1]'$as_nl$help]) ;; * ) break ;; esac @@ -164,8 +164,8 @@ case $# in 0) if test -f configure.ac; then if test -f configure.in; then - AS_ECHO(["$as_me: warning: both \`configure.ac' and \`configure.in' are present."]) >&2 - AS_ECHO(["$as_me: warning: proceeding with \`configure.ac'."]) >&2 + AS_ECHO(["$as_me: warning: both 'configure.ac' and 'configure.in' are present."]) >&2 + AS_ECHO(["$as_me: warning: proceeding with 'configure.ac'."]) >&2 fi infile=configure.ac elif test -f configure.in; then diff --git a/bin/autoheader.in b/bin/autoheader.in index d81a3138..dc3e25f8 100644 --- a/bin/autoheader.in +++ b/bin/autoheader.in @@ -5,7 +5,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac' if 0; -# autoheader -- create `config.h.in' from `configure.ac' +# autoheader -- create 'config.h.in' from 'configure.ac'. # Copyright (C) 1992-1994, 1996, 1998-2012 Free Software Foundation, # Inc. @@ -46,7 +46,7 @@ use Autom4te::General; use Autom4te::XFile; use strict; -# Using `do FILE', we need `local' vars. +# Using 'do FILE', we need 'local' vars. use vars qw ($config_h %verbatim %symbol); # Lib files. @@ -61,9 +61,9 @@ my @include; # ----- $help = "Usage: $0 [OPTION]... [TEMPLATE-FILE] -Create a template file of C \`\#define\' statements for \`configure\' to -use. To this end, scan TEMPLATE-FILE, or \`configure.ac\' if present, -or else \`configure.in\'. +Create a template file of C '\#define' statements for 'configure' to +use. To this end, scan TEMPLATE-FILE, or 'configure.ac' if present, +or else 'configure.in'. -h, --help print this help, then exit -V, --version print version number, then exit @@ -140,16 +140,16 @@ my $acconfig_h = find_file ("acconfig.h?", if ($config_h_top || $config_h_bot || $acconfig_h) { my $msg = << "END"; - Using auxiliary files such as \`acconfig.h\', \`config.h.bot\' - and \`config.h.top\', to define templates for \`config.h.in\' + Using auxiliary files such as 'acconfig.h', 'config.h.bot' + and 'config.h.top', to define templates for 'config.h.in' is deprecated and discouraged. - Using the third argument of \`AC_DEFINE\' and - \`AC_DEFINE_UNQUOTED\' allows one to define a template without - \`acconfig.h\': + Using the third argument of 'AC_DEFINE_UNQUOTED' and + 'AC_DEFINE' allows one to define a template without + 'acconfig.h': AC_DEFINE([NEED_FUNC_MAIN], 1, - [Define if a function \`main\' is needed.]) + [Define if a function 'main' is needed.]) More sophisticated templates can also be produced, see the documentation. @@ -175,14 +175,14 @@ verb "$me: running $autoconf to trace from $ARGV[0]"; my $quoted_tmp = shell_quote ($tmp); xsystem ("$autoconf" # If you change this list, update the - # `Autoheader-preselections' section of autom4te.in. + # 'Autoheader-preselections' section of autom4te.in. . ' --trace AC_CONFIG_HEADERS:\'$$config_h ||= \'"\'"\'$1\'"\'"\';\'' . ' --trace AH_OUTPUT:\'$$verbatim{\'"\'"\'$1\'"\'"\'} = \'"\'"\'$2\'"\'"\';\'' . ' --trace AC_DEFINE_TRACE_LITERAL:\'$$symbol{\'"\'"\'$1\'"\'"\'} = 1;\'' . " " . shell_quote ($ARGV[0]) . " >$quoted_tmp/traces.pl"); local (%verbatim, %symbol); -debug "$me: \`do'ing $tmp/traces.pl:\n" . `sed 's/^/| /' $quoted_tmp/traces.pl`; +debug "$me: 'do'ing $tmp/traces.pl:\n" . `sed 's/^/| /' $quoted_tmp/traces.pl`; do "$tmp/traces.pl"; warn "couldn't parse $tmp/traces.pl: $@" if $@; unless ($config_h) @@ -197,7 +197,7 @@ $config_h =~ s/ .*//; ($config_h, $config_h_in) = split (':', $config_h, 2); $config_h_in ||= "$config_h.in"; -# %SYMBOL might contain things like `F77_FUNC(name,NAME)', but we keep +# %SYMBOL might contain things like 'F77_FUNC(name,NAME)', but we keep # only the name of the macro. %symbol = map { s/\(.*//; $_ => 1 } keys %symbol; @@ -217,7 +217,7 @@ if ($config_h_top) } } -# Dump `acconfig.h', except for its bottom portion. +# Dump 'acconfig.h', except for its bottom portion. if ($acconfig_h) { my $in = new Autom4te::XFile ("< " . open_quote ($acconfig_h)); @@ -229,13 +229,13 @@ if ($acconfig_h) } } -# Dump the templates from `configure.ac'. +# Dump the templates from 'configure.ac'. foreach (sort keys %verbatim) { print $out "\n$verbatim{$_}\n"; } -# Dump bottom portion of `acconfig.h'. +# Dump bottom portion of 'acconfig.h'. if ($acconfig_h) { my $in = new Autom4te::XFile ("< " . open_quote ($acconfig_h)); diff --git a/bin/autom4te.in b/bin/autom4te.in index 11773c99..16387a1a 100644 --- a/bin/autom4te.in +++ b/bin/autom4te.in @@ -72,10 +72,10 @@ my $flock_implemented = '@PERL_FLOCK@'; my %trace; # The macros the user will want to trace in the future. -# We need `include' to get the included file, `m4_pattern_forbid' and -# `m4_pattern_allow' to check the output. +# We need 'include' to get the included file, 'm4_pattern_forbid' and +# 'm4_pattern_allow' to check the output. # -# FIXME: What about `sinclude'? +# FIXME: What about 'sinclude'? my @preselect = ('include', 'm4_pattern_allow', 'm4_pattern_forbid', '_m4_warn'); @@ -105,20 +105,20 @@ map { s/:.*//;s/\W// } @m4_builtin; # %M4_BUILTIN_ALTERNATE_NAME # -------------------------- -# The builtins are renamed, e.g., `define' is renamed `m4_define'. -# So map `define' to `m4_define' and conversely. +# The builtins are renamed, e.g., 'define' is renamed 'm4_define'. +# So map 'define' to 'm4_define' and conversely. # Some macros don't follow this scheme: be sure to properly map to their # alternate name too. # # FIXME: Trace status of renamed builtins was fixed in M4 1.4.5, which # we now depend on; do we still need to do this mapping? # -# So we will merge them, i.e., tracing `BUILTIN' or tracing -# `m4_BUILTIN' will be the same: tracing both, but honoring the +# So we will merge them, i.e., tracing 'BUILTIN' or tracing +# 'm4_BUILTIN' will be the same: tracing both, but honoring the # *last* trace specification. # -# FIXME: This is not enough: in the output `$0' will be `BUILTIN' -# sometimes and `m4_BUILTIN' at others. We should return a unique name, +# FIXME: This is not enough: in the output '$0' will be 'BUILTIN' +# sometimes and 'm4_BUILTIN' at others. We should return a unique name, # the one specified by the user. # # FIXME: To be absolutely rigorous, I would say that given that we @@ -139,38 +139,38 @@ $help = "Usage: $0 [OPTION]... [FILES] Run GNU M4 on the FILES, avoiding useless runs. Output the traces if tracing, the frozen file if freezing, otherwise the expansion of the FILES. -If some of the FILES are named \`FILE.m4f\' they are considered to be M4 +If some of the FILES are named 'FILE.m4f' they are considered to be M4 frozen files of all the previous files (which are therefore not loaded). -If \`FILE.m4f\' is not found, then \`FILE.m4\' will be used, together with +If 'FILE.m4f' is not found, then 'FILE.m4' will be used, together with all the previous files. Some files may be optional, i.e., will only be processed if found in the -include path, but then must end in \`.m4?\'; the question mark is not part of -the actual file name. +include path, but then must end in '.m4?'; the question mark is not part +of the actual file name. Operation modes: -h, --help print this help, then exit -V, --version print version number, then exit -v, --verbose verbosely report processing - -d, --debug don\'t remove temporary files - -o, --output=FILE save output in FILE (defaults to \`-\', stdout) - -f, --force don\'t rely on cached values + -d, --debug don't remove temporary files + -o, --output=FILE save output in FILE (defaults to '-', stdout) + -f, --force don't rely on cached values -W, --warnings=CATEGORY report the warnings falling in CATEGORY -l, --language=LANG specify the set of M4 macros to use -C, --cache=DIRECTORY preserve results for future runs in DIRECTORY --no-cache disable the cache -m, --mode=OCTAL change the non trace output file mode (0666) - -M, --melt don\'t use M4 frozen files + -M, --melt don't use M4 frozen files Languages include: - \`Autoconf\' create Autoconf configure scripts - \`Autotest\' create Autotest test suites - \`M4sh\' create M4sh shell scripts - \`M4sugar\' create M4sugar output + 'Autoconf' create Autoconf configure scripts + 'Autotest' create Autotest test suites + 'M4sh' create M4sh shell scripts + 'M4sugar' create M4sugar output " . Autom4te::ChannelDefs::usage . " -The environment variables \`M4\' and \`WARNINGS\' are honored. +The environment variables 'M4' and 'WARNINGS' are honored. Library directories: -B, --prepend-include=DIR prepend directory DIR to search path @@ -183,7 +183,7 @@ Tracing: Freezing: -F, --freeze produce an M4 frozen state file for FILES -FORMAT defaults to \`\$f:\$l:\$n:\$%\', and can use the following escapes: +FORMAT defaults to '\$f:\$l:\$n:\$%', and can use the following escapes: \$\$ literal \$ \$f file where macro was called \$l line where macro was called @@ -347,9 +347,9 @@ sub parse_args () "I|include=s" => \@include, # Tracing: - # Using a hash for traces is seducing. Unfortunately, upon `-t FOO', - # instead of mapping `FOO' to undef, Getopt maps it to `1', preventing - # us from distinguishing `-t FOO' from `-t FOO=1'. So let's do it + # Using a hash for traces is seducing. Unfortunately, upon '-t FOO', + # instead of mapping 'FOO' to undef, Getopt maps it to '1', preventing + # us from distinguishing '-t FOO' from '-t FOO=1'. So let's do it # by hand. "t|trace=s" => \@trace, "p|preselect=s" => \@preselect, @@ -363,7 +363,7 @@ sub parse_args () ); fatal "too few arguments -Try `$me --help' for more information." +Try '$me --help' for more information." unless @ARGV; # Freezing: @@ -388,13 +388,13 @@ Try `$me --help' for more information." # Normalize the includes: the first occurrence is enough, several is # a pain since it introduces a useless difference in the path which - # invalidates the cache. And strip `.' which is implicit and always + # invalidates the cache. And strip '.' which is implicit and always # first. @include = grep { !/^\.$/ } uniq (reverse(@prepend_include), @include); # Convert @trace to %trace, and work around the M4 builtins tracing # problem. - # The default format is `$f:$l:$n:$%'. + # The default format is '$f:$l:$n:$%'. foreach (@trace) { /^([^:]+)(?::(.*))?$/ms; @@ -413,9 +413,9 @@ Try `$me --help' for more information." # discarded: the frozen file is supposed to include them all. # # We don't want to depend upon m4's --include to find the top level - # files, so we use `find_file' here. Try to get a canonical name, + # files, so we use 'find_file' here. Try to get a canonical name, # as it's part of the key for caching. And some files are optional - # (also handled by `find_file'). + # (also handled by 'find_file'). my @argv; foreach (@ARGV) { @@ -425,7 +425,7 @@ Try `$me --help' for more information." } elsif (/\.m4f$/) { - # Frozen files are optional => pass a `?' to `find_file'. + # Frozen files are optional => pass a '?' to 'find_file'. my $file = find_file ("$_?", @include); if (!$melt && $file) { @@ -484,7 +484,7 @@ sub handle_m4 ($@) # warn_forbidden ($WHERE, $WORD, %FORBIDDEN) # ------------------------------------------ # $WORD is forbidden. Warn with a dedicated error message if in -# %FORBIDDEN, otherwise a simple `error: possibly undefined macro' +# %FORBIDDEN, otherwise a simple 'error: possibly undefined macro' # will do. my $first_warn_forbidden = 1; sub warn_forbidden ($$%) @@ -572,7 +572,7 @@ sub handle_output ($$) $res = $_; # Don't complain in comments. Well, until we have something - # better, don't consider `#include' etc. are comments. + # better, don't consider '#include' etc. are comments. s/\#.*// unless /^\#\s*(if|include|endif|ifdef|ifndef|define)\b/; foreach (split (/\W+/)) @@ -604,7 +604,7 @@ sub handle_output ($$) while ($_ = $file->getline) { # Don't complain in comments. Well, until we have something - # better, don't consider `#include' etc. to be comments. + # better, don't consider '#include' etc. to be comments. s/\#.*// unless /^\#(if|include|endif|ifdef|ifndef|define)\b/; @@ -703,10 +703,10 @@ sub trace_format_to_m4 ($) # handle_traces($REQ, $OUTPUT, %TRACE) # ------------------------------------ # We use M4 itself to process the traces. But to avoid name clashes when -# processing the traces, the builtins are disabled, and moved into `at_'. -# Actually, all the low level processing macros are in `at_' (and `_at_'). -# To avoid clashes between user macros and `at_' macros, the macros which -# implement tracing are in `AT_'. +# processing the traces, the builtins are disabled, and moved into 'at_'. +# Actually, all the low level processing macros are in 'at_' (and '_at_'). +# To avoid clashes between user macros and 'at_' macros, the macros which +# implement tracing are in 'AT_'. # # Having $REQ is needed to neutralize the macros which have been traced, # but are not wanted now. @@ -714,7 +714,7 @@ sub handle_traces ($$%) { my ($req, $output, %trace) = @_; - verb "formatting traces for `$output': " . join (', ', sort keys %trace); + verb "formatting traces for '$output': " . join (', ', sort keys %trace); # Processing the traces. my $trace_m4 = new Autom4te::XFile ("> " . open_quote ("$tmp/traces.m4")); @@ -726,9 +726,9 @@ sub handle_traces ($$%) # ---------------------------------- # List the elements, separating then with SEPARATOR. # MODE can be: - # `at' -- the elements are enclosed in brackets. - # `star' -- the elements are listed as are. - # `percent' -- the elements are `flattened': spaces are singled out, + # 'at' -- the elements are enclosed in brackets. + # 'star' -- the elements are listed as are. + # 'percent' -- the elements are 'flattened': spaces are singled out, # and no new line remains. define([_at_at], [at_ifelse([$#], [1], [], @@ -746,7 +746,7 @@ sub handle_traces ($$%) [[$2][$1]$0([$1], at_shift(at_shift($@)))])]) # FLATTEN quotes its result. - # Note that the second pattern is `newline, tab or space'. Don't lose + # Note that the second pattern is 'newline, tab or space'. Don't lose # the tab! define([at_flatten], [at_patsubst(at_patsubst([[[$1]]], [\\\n]), [[\n\t ]+], [ ])]) @@ -760,14 +760,14 @@ EOF s/^ //mg;s/\\t/\t/mg;s/\\n/\n/mg; print $trace_m4 $_; - # If you trace `define', then on `define([m4_exit], defn([m4exit])' you + # If you trace 'define', then on 'define([m4_exit], defn([m4exit])' you # will produce # # AT_define([m4sugar.m4], [115], [1], [define], [m4_exit], ) # - # Since `' is not quoted, the outer m4, when processing - # `trace.m4' will exit prematurely. Hence, move all the builtins to - # the `at_' name space. + # Since '' is not quoted, the outer m4, when processing + # 'trace.m4' will exit prematurely. Hence, move all the builtins to + # the 'at_' name space. print $trace_m4 "# Copy the builtins.\n"; map { print $trace_m4 "define([at_$_], defn([$_]))\n" } @m4_builtin; @@ -817,7 +817,7 @@ EOF # | AT_AC_SUBST([configure.ac], [3], [1], [AC_SUBST], [exec_prefix], [NONE]) # # Pay attention that the file name might include colons, if under DOS - # for instance, so we don't use `[^:]+'. + # for instance, so we don't use '[^:]+'. my $traces = new Autom4te::XFile ("< " . open_quote ($tcache . $req->id)); while ($_ = $traces->getline) { @@ -858,7 +858,7 @@ EOF # up_to_date ($REQ) # ----------------- # Are the cache files of $REQ up to date? -# $REQ is `valid' if it corresponds to the request and exists, which +# $REQ is 'valid' if it corresponds to the request and exists, which # does not mean it is up to date. It is up to date if, in addition, # its files are younger than its dependencies. sub up_to_date ($) @@ -939,7 +939,7 @@ sub freeze ($) fatal "freezing produced output:\n$result" if $result; - # If freezing produces output, something went wrong: a bad `divert', + # If freezing produces output, something went wrong: a bad 'divert', # or an improper paren etc. xsystem ("$m4" . ' --fatal-warning' @@ -1037,7 +1037,7 @@ if (%trace) { # Always produce traces, since even if the output is young enough, # there is no guarantee that the traces use the same *format* - # (e.g., `-t FOO:foo' and `-t FOO:bar' are both using the same M4 + # (e.g., '-t FOO:foo' and '-t FOO:bar' are both using the same M4 # traces, hence the M4 traces cache is usable, but its formatting # will yield different results). handle_traces ($req, $output, %trace); diff --git a/bin/autoreconf.in b/bin/autoreconf.in index acf25d48..7259666f 100644 --- a/bin/autoreconf.in +++ b/bin/autoreconf.in @@ -54,15 +54,15 @@ use strict; # ----- $help = "Usage: $0 [OPTION]... [DIRECTORY]... -Run `autoconf' (and `autoheader', `aclocal', `automake', `autopoint' -(formerly `gettextize'), and `libtoolize' where appropriate) +Run 'autoconf' (and 'autoheader', 'aclocal', 'automake', 'autopoint' +(formerly 'gettextize'), and 'libtoolize' where appropriate) repeatedly to remake the GNU Build System files in specified -DIRECTORIES and their subdirectories (defaulting to `.'). +DIRECTORIES and their subdirectories (defaulting to '.'). By default, it only remakes those files that are older than their sources. If you install new versions of the GNU Build System, -you can make `autoreconf' remake all of the files by giving it the -`--force' option. +you can make 'autoreconf' remake all of the files by giving it the +'--force' option. Operation modes: -h, --help print this help, then exit @@ -78,8 +78,8 @@ Operation modes: " . Autom4te::ChannelDefs::usage . " -The environment variable \`WARNINGS\' is honored. Some subtools might -support other warning types, using \`all' is encouraged. +The environment variable 'WARNINGS' is honored. Some subtools might +support other warning types, using 'all' is encouraged. Library directories: -B, --prepend-include=DIR prepend directory DIR to search path @@ -134,7 +134,7 @@ my @include; # List of command line warning requests. my @warning; -# Rerun `./configure && make'? +# Rerun './configure && make'? my $run_make = 0; # Recurse into subpackages @@ -354,7 +354,7 @@ sub autoreconf_current_directory () # Gettext is a bit of a problem: its macros are not necessarily # visible to aclocal, so if we start with a completely striped down - # package (think of a fresh CVS checkout), running `aclocal' first + # package (think of a fresh CVS checkout), running 'aclocal' first # will fail: the Gettext macros are missing. # # Therefore, we can't use the traces to decide if we use Gettext or @@ -366,7 +366,7 @@ sub autoreconf_current_directory () # prevents one to embed AM_GNU_GETTEXT_VERSION in another *.m4, but # anyway we don't limit the generality, since... that's what # autopoint does. Actually, it is even more restrictive, as it - # greps for `^AM_GNU_GETTEXT_VERSION('. We did this above, while + # greps for '^AM_GNU_GETTEXT_VERSION('. We did this above, while # scanning configure.ac. if (!$uses_gettext) { @@ -466,7 +466,7 @@ sub autoreconf_current_directory () . join (' ', map { ' --trace=' . $_ . ':\$n::\${::}%' } # If you change this list, update the - # `Autoreconf-preselections' section of autom4te.in. + # 'Autoreconf-preselections' section of autom4te.in. 'AC_CONFIG_AUX_DIR', 'AC_CONFIG_HEADERS', 'AC_CONFIG_SUBDIRS', @@ -580,7 +580,7 @@ sub autoreconf_current_directory () # Running autoconf. # # ------------------ # - # Don't try to be smarter than `autoconf', which does its own up to + # Don't try to be smarter than 'autoconf', which does its own up to # date checks. # # We prefer running autoconf before autoheader, because (i) the @@ -623,8 +623,8 @@ sub autoreconf_current_directory () else { # We should always run automake, and let it decide whether it shall - # update the file or not. In fact, the effect of `$force' is already - # included in `$automake' via `--no-force'. + # update the file or not. In fact, the effect of '$force' is already + # included in '$automake' via '--no-force'. xsystem ($automake); } @@ -666,7 +666,7 @@ sub autoreconf ($) # The format for this message is not free: taken from Emacs, itself # using GNU Make's format. - verb "Entering directory `$directory'"; + verb "Entering directory '$directory'"; chdir $directory or error "cannot chdir to $directory: $!"; @@ -674,7 +674,7 @@ sub autoreconf ($) # The format is not free: taken from Emacs, itself using GNU Make's # format. - verb "Leaving directory `$directory'"; + verb "Leaving directory '$directory'"; chdir $cwd or error "cannot chdir to $cwd: $!"; } @@ -690,7 +690,7 @@ mktmpdir ('ar'); $ENV{'TMPDIR'} = $tmp; parse_args; -# Autoreconf all the given configure.ac. Unless `--no-recursive' is passed, +# Autoreconf all the given configure.ac. Unless '--no-recursive' is passed, # AC_CONFIG_SUBDIRS will be traversed in &autoreconf_current_directory. $ENV{'AUTOM4TE'} = $autom4te; for my $directory (@ARGV) diff --git a/bin/autoscan.in b/bin/autoscan.in index a67c48d0..af855694 100644 --- a/bin/autoscan.in +++ b/bin/autoscan.in @@ -68,10 +68,10 @@ my %kind_comment = 'program' => 'Checks for programs.', ); -# $USED{KIND}{ITEM} is the list of locations where the ITEM (of KIND) was used -# in the user package. -# For instance $USED{function}{alloca} is the list of `file:line' where -# `alloca (...)' appears. +# $USED{KIND}{ITEM} is the list of locations where the ITEM (of KIND) was +# used in the user package. +# For instance $USED{function}{alloca} is the list of 'file:line' where +# 'alloca (...)' appears. my %used = (); # $MACRO{KIND}{ITEM} is the list of macros to use to test ITEM. @@ -80,8 +80,8 @@ my %used = (); my %macro = (); # $NEEDED_MACROS{MACRO} is an array of locations requiring MACRO. -# E.g., $NEEDED_MACROS{AC_FUNC_ALLOC} the list of `file:line' containing -# `alloca (...)'. +# E.g., $NEEDED_MACROS{AC_FUNC_ALLOC} the list of 'file:line' containing +# 'alloca (...)'. my %needed_macros = ( 'AC_PREREQ' => [$me], @@ -103,8 +103,8 @@ $help = "Usage: $0 [OPTION]... [SRCDIR] Examine source files in the directory tree rooted at SRCDIR, or the current directory if none is given. Search the source files for common portability problems, check for incompleteness of -`configure.ac', and create a file `$configure_scan' which is a -preliminary `configure.ac' for that package. +'configure.ac', and create a file '$configure_scan' which is a +preliminary 'configure.ac' for that package. -h, --help print this help, then exit -V, --version print version number, then exit @@ -148,7 +148,7 @@ sub parse_args () 'B|prepend-include=s' => \@prepend_include); die "$me: too many arguments -Try `$me --help' for more information.\n" +Try '$me --help' for more information.\n" if @ARGV > 1; my $srcdir = $ARGV[0] || "."; @@ -215,8 +215,8 @@ sub used ($$;$) my ($kind, $word, $where) = @_; $where ||= "$File::Find::name:$."; if ( - # Check for all the libraries. But `-links' is certainly a - # `find' argument, and `-le', a `test' argument. + # Check for all the libraries. But '-links' is certainly a + # 'find' argument, and '-le', a 'test' argument. ($kind eq 'library' && $word !~ /^(e|inks)$/) # Other than libraries are to be checked only if listed in # the Autoscan library files. @@ -322,8 +322,8 @@ sub scan_makefile ($) { used ('makevar', $1); } - # Be sure to catch a whole word. For instance `lex$U.$(OBJEXT)' - # is a single token. Otherwise we might believe `lex' is needed. + # Be sure to catch a whole word. For instance 'lex$U.$(OBJEXT)' + # is a single token. Otherwise we might believe 'lex' is needed. foreach my $word (split (/\s+/)) { # Libraries. @@ -332,8 +332,8 @@ sub scan_makefile ($) used ('library', $1); } # Tokens in the code. - # We allow some additional characters, e.g., `+', since - # autoscan/programs includes `c++'. + # We allow some additional characters, e.g., '+', since + # autoscan/programs includes 'c++'. if ($word =~ /^[a-zA-Z_][\w+]*$/) { used ('program', $word); @@ -385,7 +385,7 @@ sub scan_file () # Save $_ as Find::File requires it to be preserved. local $_ = $_; - # Strip a useless leading `./'. + # Strip a useless leading './'. $File::Find::name =~ s,^\./,,; if ($_ ne '.' and -d $_ and @@ -507,7 +507,7 @@ sub output_libraries ($) print $file "\n# Checks for libraries.\n"; foreach my $word (sort keys %{$used{'library'}}) { - print $file "# FIXME: Replace `main' with a function in `-l$word':\n"; + print $file "# FIXME: Replace 'main' with a function in '-l$word':\n"; print $file "AC_CHECK_LIB([$word], [main])\n"; } } @@ -583,7 +583,7 @@ sub check_configure_ac ($) # Find what needed macros are invoked in CONFIGURE_AC. # I'd be very happy if someone could explain to me why sort (uniq ...) - # doesn't work properly: I need `uniq (sort ...)'. --akim + # doesn't work properly: I need 'uniq (sort ...)'. --akim my $trace_option = join (' --trace=', '', uniq (sort (map { s/\(.*//; $_ } keys %needed_macros))); @@ -602,7 +602,7 @@ sub check_configure_ac ($) # separated macros. But there is no point. foreach my $word (split (/\s|,/, $args[0])) { - # AC_CHECK_MEMBERS wants `struct' or `union'. + # AC_CHECK_MEMBERS wants 'struct' or 'union'. if ($macro eq "AC_CHECK_MEMBERS" && $word =~ /^stat.st_/) { diff --git a/bin/autoupdate.in b/bin/autoupdate.in index 9737d494..0679140c 100644 --- a/bin/autoupdate.in +++ b/bin/autoupdate.in @@ -60,8 +60,8 @@ my $m4 = $ENV{"M4"} || '@M4@'; # ----- $help = "Usage: $0 [OPTION]... [TEMPLATE-FILE]... -Update each TEMPLATE-FILE if given, or `configure.ac' if present, -or else `configure.in', to the syntax of the current version of +Update each TEMPLATE-FILE if given, or 'configure.ac' if present, +or else 'configure.in', to the syntax of the current version of Autoconf. The original files are backed up. Operation modes: @@ -168,7 +168,7 @@ sub handle_autoconf_macros () delete $ac_macros{$_} foreach (keys %au_macros); # Don't keep M4sugar macros which are redefined by Autoconf, - # such as `builtin', `changequote' etc. See autoconf/autoconf.m4. + # such as 'builtin', 'changequote' etc. See autoconf/autoconf.m4. delete $ac_macros{$_} foreach (keys %m4_builtins); error "no current Autoconf macros found" @@ -228,7 +228,7 @@ $autoconf .= join (' --prepend-include=', '', map { shell_quote ($_) } @prepend_ mktmpdir ('au'); handle_autoconf_macros; -# $au_changequote -- enable the quote `[', `]' right before any AU macro. +# $au_changequote -- enable the quote '[', ']' right before any AU macro. my $au_changequote = 's/\b(' . join ('|', keys %au_macros) . ')\b/_au_m4_changequote([,])$1/g'; @@ -285,7 +285,7 @@ foreach my $file (@ARGV) # Redefine m4_location to fix the line number. m4_define([m4_location], [__file__:m4_eval(__line__ - _au__first_line)]) - # Move all the builtins into the `_au_' pseudo namespace + # Move all the builtins into the '_au_' pseudo namespace m4_include([m4save.m4]) # _au_defun(NAME, BODY) @@ -310,7 +310,7 @@ foreach my $file (@ARGV) # above). AU macros might use AU macros, which should # enable/disable only for the outer AU macros. # - # `_au_enabled' is used to this end, determining whether we really + # '_au_enabled' is used to this end, determining whether we really # enable/disable. @@ -367,7 +367,7 @@ foreach my $file (@ARGV) ## Disable, and process the file. ## ## ------------------------------- ## # The AC autoquoting macros are not loaded yet, hence invoking - # `_au_disable' would be wrong. + # '_au_disable' would be wrong. _au__include([unm4.m4]) # Disable special characters, and set the first line number. @@ -408,13 +408,13 @@ exit 0; # ## ---------------------------- ## -# ## How `autoupdate' functions. ## +# ## How 'autoupdate' functions. ## # ## ---------------------------- ## # -# The task of `autoupdate' is not trivial: the biggest difficulty being +# The task of 'autoupdate' is not trivial: the biggest difficulty being # that you must limit the changes to the parts that really need to be # updated. Finding a satisfying implementation proved to be quite hard, -# as this is the fifth implementation of `autoupdate'. +# as this is the fifth implementation of 'autoupdate'. # # Below, we will use a simple example of an obsolete macro: # @@ -440,7 +440,7 @@ exit 0; # The first implementation was only able to change the name of obsolete # macros. # -# The file `acoldnames.m4' defined the old names based on the new names. +# The file 'acoldnames.m4' defined the old names based on the new names. # It was simple then to produce a sed script such as: # # s/OLD/NEW/g @@ -448,7 +448,7 @@ exit 0; # Updating merely consisted in running this script on the file to # update. # -# This scheme suffers from an obvious limitation: that `autoupdate' was +# This scheme suffers from an obvious limitation: that 'autoupdate' was # unable to cope with new macros that just swap some of its arguments # compared to the old macro. Fortunately, that was enough to upgrade # from Autoconf 1 to Autoconf 2. (But I have no idea whether the @@ -460,7 +460,7 @@ exit 0; # # The version 2.15 of Autoconf brought a vast number of changes compared # to 2.13, so a solution was needed. One could think of extending the -# `sed' scripts with specialized code for complex macros. However, this +# 'sed' scripts with specialized code for complex macros. However, this # approach is of course full of flaws: # # a. the Autoconf maintainers have to write these snippets, which we @@ -484,7 +484,7 @@ exit 0; # warned), and its code is the code to use when running autoconf, # but that the very same code has to be used when running # autoupdate. To summarize, the interface I want is -# `AU_DEFUN(OLD-NAME, NEW-CODE)'. +# 'AU_DEFUN(OLD-NAME, NEW-CODE)'. # # # Now for the technical details. @@ -498,14 +498,14 @@ exit 0; # features, m4sugar.m4 is needed. Please note that the fact that # Autoconf's macros are not loaded is positive on two points: # -# - we do get an updated `configure.ac', not a `configure'! +# - we do get an updated 'configure.ac', not a 'configure'! # # - the old macros are replaced by *calls* to the new-macros, not the # body of the new macros, since their body is not defined!!! # (Whoa, that's really beautiful!). # # Additionally we need to disable the quotes when reading the input for -# two reasons: first because otherwise `m4' will swallow the quotes of +# two reasons: first because otherwise 'm4' will swallow the quotes of # other macros: # # NEW([1, 2], 3) @@ -526,9 +526,9 @@ exit 0; # Well, in this case, when running in autoupdate code, each macro first # reestablishes the quotes, expands itself, and disables the quotes. # -# Thinking a bit more, you realize that in fact, people may use `define', -# `ifelse' etc. in their files, and you certainly don't want to process -# them. Another example is `dnl': you don't want to remove the +# Thinking a bit more, you realize that in fact, people may use 'define', +# 'ifelse' etc. in their files, and you certainly don't want to process +# them. Another example is 'dnl': you don't want to remove the # comments. You then realize you don't want exactly to import m4sugar: # you want to specify when it is enabled (macros active), and disabled. # m4sugar provides m4_disable/m4_enable to this end. @@ -540,8 +540,8 @@ exit 0; # ways, the AC way, and the AU way. # # One first solution is to check whether acgeneral.m4 was loaded. But -# that's definitely not cute. Another is simply to install `hooks', -# that is to say, to keep in some place m4 knows, late `define' to be +# that's definitely not cute. Another is simply to install 'hooks', +# that is to say, to keep in some place m4 knows, late 'define' to be # triggered *only* in AU mode. # # You first think of designing AU_DEFUN like this: @@ -556,18 +556,18 @@ exit 0; # Disable the quotes.])]) # # but this will not work: NEW-CODE probably uses $1, $2 etc. and these -# guys will be replaced with the argument of `Store for late AU binding' +# guys will be replaced with the argument of 'Store for late AU binding' # when you call it. # # I don't think there is a means to avoid this using this technology # (remember that $1 etc. are *always* expanded in m4). You may also try # to replace them with $[1] to preserve them for a later evaluation, but -# if `Store for late AU binding' is properly written, it will remain +# if 'Store for late AU binding' is properly written, it will remain # quoted till the end... # -# You have to change technology. Since the problem is that `$1' -# etc. should be `consumed' right away, one solution is to define now a -# second macro, `AU_OLD-NAME', and to install a hook than binds OLD-NAME +# You have to change technology. Since the problem is that '$1' +# etc. should be 'consumed' right away, one solution is to define now a +# second macro, 'AU_OLD-NAME', and to install a hook than binds OLD-NAME # to AU_OLD-NAME. Then, autoupdate.m4 just need to run the hooks. By # the way, the same method was used in autoheader. # @@ -577,7 +577,7 @@ exit 0; # # Actually, this implementation was just a clean up of the previous # implementation: instead of defining hooks by hand, m4sugar was equipped -# with `namespaces'. What are they? +# with 'namespaces'. What are they? # # Sometimes we want to disable some *set* of macros, and restore them # later. We provide support for this via namespaces. @@ -587,19 +587,19 @@ exit 0; # (i.e., all the definitions it holds). # # Technically, to define a MACRO in NAMESPACE means to define the macro -# named `NAMESPACE::MACRO' to the VALUE. At the same time, we append -# `undefine(NAME)' in the macro named `m4_disable(NAMESPACE)', and -# similarly a binding of NAME to the value of `NAMESPACE::MACRO' in -# `m4_enable(NAMESPACE)'. These mechanisms allow to bind the macro of +# named 'NAMESPACE::MACRO' to the VALUE. At the same time, we append +# 'undefine(NAME)' in the macro named 'm4_disable(NAMESPACE)', and +# similarly a binding of NAME to the value of 'NAMESPACE::MACRO' in +# 'm4_enable(NAMESPACE)'. These mechanisms allow to bind the macro of # NAMESPACE and to unbind them at will. # # Of course this implementation is really inefficient: m4 has to grow # strings which can become quickly huge, which slows it significantly. # -# In particular one should avoid as much as possible to use `define' for -# temporaries. Now that `define' has quite a complex meaning, it is an +# In particular one should avoid as much as possible to use 'define' for +# temporaries. Now that 'define' has quite a complex meaning, it is an # expensive operations that should be limited to macros. Use -# `m4_define' for temporaries. +# 'm4_define' for temporaries. # # Private copies of the macros we used in entering / exiting the m4sugar # namespace. It is much more convenient than fighting with the renamed @@ -610,8 +610,8 @@ exit 0; # Those two implementations suffered from serious problems: # # - namespaces were really expensive, and incurred a major performance -# loss on `autoconf' itself, not only `autoupdate'. One solution -# would have been the limit the use of namespaces to `autoupdate', but +# loss on 'autoconf' itself, not only 'autoupdate'. One solution +# would have been the limit the use of namespaces to 'autoupdate', but # that's again some complications on m4sugar, which really doesn't need # this. So we wanted to get rid of the namespaces. # @@ -620,7 +620,7 @@ exit 0; # # foo([1, 2]) # -# m4 saw 2 arguments: `[1'and `2]'. A simple solution, somewhat +# m4 saw 2 arguments: '[1'and '2]'. A simple solution, somewhat # fragile, is to reestablish the quotes right before all the obsolete # macros, i.e., to use sed so that the previous text becomes # @@ -672,12 +672,12 @@ exit 0; # 0) # # Grpmh. Two problems. A minor problem: it would have been much better -# to have the `m4_eval' computed, and a major problem: you lost the +# to have the 'm4_eval' computed, and a major problem: you lost the # quotation in the result. # # Let's address the big problem first. One solution is to define any # modern macro to rewrite its calls with the proper quotation, thanks to -# `$@'. Again, tracing the `define's makes it possible to know which +# '$@'. Again, tracing the 'define's makes it possible to know which # are these macros, so you input is: # # divert(-1)dnl @@ -700,10 +700,10 @@ exit 0; # NEW([1, 2],[m4_eval(1 + 2)]) # NEW([0, 0],[0]) # -# Our problem is solved, i.e., the first call to `NEW' is properly +# Our problem is solved, i.e., the first call to 'NEW' is properly # quoted, but introduced another problem: we changed the layout of the # second calls, which can be a drama in the case of huge macro calls -# (think of `AC_TRY_RUN' for instance). This example didn't show it, +# (think of 'AC_TRY_RUN' for instance). This example didn't show it, # but we also introduced parens to macros which did not have some: # # AC_INIT @@ -715,8 +715,8 @@ exit 0; # Additionally, we introduced quotes that were not there before, which is # OK in most cases, but could change the semantics of the file. # -# Cruel dilemma: we do want the auto-quoting definition of `NEW' when -# evaluating `OLD', but we don't when we evaluate the second `NEW'. +# Cruel dilemma: we do want the auto-quoting definition of 'NEW' when +# evaluating 'OLD', but we don't when we evaluate the second 'NEW'. # Back to namespaces? # # No. @@ -742,12 +742,12 @@ exit 0; # NEW([0, 0], # 0) # -# i.e., the new value of `OLD' is precomputed using the auto-quoting -# definition of `NEW' and the m4 builtins. We'll see how afterwards, +# i.e., the new value of 'OLD' is precomputed using the auto-quoting +# definition of 'NEW' and the m4 builtins. We'll see how afterwards, # let's finish with the replacement. # # Of course the solution above is wrong: if there were other calls to -# `OLD' with different values, we would smash them to the same value. +# 'OLD' with different values, we would smash them to the same value. # But it is quite easy to generalize the scheme above: # # divert(-1)dnl @@ -764,7 +764,7 @@ exit 0; # NEW([0, 0], # 0) # -# i.e., for each call to obsolete macros, we build an array `call => +# i.e., for each call to obsolete macros, we build an array 'call => # value', and use a macro to dispatch these values. This results in: # # dnl The Unbelievable Truth @@ -772,8 +772,8 @@ exit 0; # NEW([0, 0], # 0) # -# In French, we say `Youpi !', which you might roughly translate as -# `Yippee!'. +# In French, we say 'Youpi !', which you might roughly translate as +# 'Yippee!'. # # # # First step: computation @@ -801,27 +801,27 @@ exit 0; # 0) # # -# # Computing the `values' section +# # Computing the 'values' section # # .............................. # # First we need to get the list of all the AU macro uses. To this end, -# first get the list of all the AU macros names by tracing `AU_DEFUN' in +# first get the list of all the AU macros names by tracing 'AU_DEFUN' in # the initialization of autoconf. This list is computed in the file -# `au.txt' below. +# 'au.txt' below. # # Then use this list to trace all the AU macro uses in the input. The # goal is obtain in the case of our example: # # [define([OLD([1],[2])],]@<<@OLD([1],[2])@>>@[)] # -# This is the file `values.in' below. +# This is the file 'values.in' below. # # We want to evaluate this with only the builtins (in fact m4sugar), the -# auto-quoting definitions of the new macros (`new.m4'), and the -# definition of the old macros (`old.m4'). Computing these last two -# files is easy: it's just a matter of using the right `--trace' option. +# auto-quoting definitions of the new macros ('new.m4'), and the +# definition of the old macros ('old.m4'). Computing these last two +# files is easy: it's just a matter of using the right '--trace' option. # -# So the content of `values.in' is: +# So the content of 'values.in' is: # # include($autoconf_dir/m4sugar.m4) # m4_include(new.m4) @@ -833,30 +833,30 @@ exit 0; # # define([OLD([1],[2])],@<<@NEW([1, 2], [3])@>>@) # -# Transform `@<<@' and `@>>@' into quotes and we get +# Transform '@<<@' and '@>>@' into quotes and we get # # define([OLD([1],[2])],[NEW([1, 2], [3])]) # -# This is `values.m4'. +# This is 'values.m4'. # # -# # Computing the `dispatcher' section +# # Computing the 'dispatcher' section # # .................................. # -# The `prologue', and the `disabler' are simple and need no commenting. +# The 'prologue', and the 'disabler' are simple and need no commenting. # -# To compute the `dispatcher' (`dispatch.m4'), again, it is a simple -# matter of using the right `--trace'. +# To compute the 'dispatcher' ('dispatch.m4'), again, it is a simple +# matter of using the right '--trace'. # # Finally, the input is not exactly the input file, rather it is the -# input file with the added `changequote'. To this end, we build -# `quote.sed'. +# input file with the added 'changequote'. To this end, we build +# 'quote.sed'. # # # # Putting it all together # # ....................... # -# We build the file `input.m4' which contains: +# We build the file 'input.m4' which contains: # # divert(-1)dnl # changequote([, ]) @@ -875,9 +875,9 @@ exit 0; # And we just run m4 on it. Et voila`, Monsieur ! Mais oui, mais oui. # # Well, there are a few additional technicalities. For instance, we -# rely on `changequote', `ifelse' and `defn', but we don't want to +# rely on 'changequote', 'ifelse' and 'defn', but we don't want to # interpret the changequotes of the user, so we simply use another name: -# `_au_changequote' etc. +# '_au_changequote' etc. # # # # Failure of the fourth approach @@ -885,14 +885,14 @@ exit 0; # # This approach is heavily based on traces, but then there is an obvious # problem: non expanded code will never be seen. In particular, the body -# of a `define' definition is not seen, so on the input +# of a 'define' definition is not seen, so on the input # # define([idem], [OLD(0, [$1])]) # -# autoupdate would never see the `OLD', and wouldn't have updated it. -# Worse yet, if `idem(0)' was used later, then autoupdate sees that -# `OLD' is used, computes the result for `OLD(0, 0)' and sets up a -# dispatcher for `OLD'. Since there was no computed value for `OLD(0, +# autoupdate would never see the 'OLD', and wouldn't have updated it. +# Worse yet, if 'idem(0)' was used later, then autoupdate sees that +# 'OLD' is used, computes the result for 'OLD(0, 0)' and sets up a +# dispatcher for 'OLD'. Since there was no computed value for 'OLD(0, # [$1])', the dispatcher would have replaced with... nothing, leading # to # @@ -920,7 +920,7 @@ exit 0; # OLD(1, 2) # NEW([0, 0], [0]) # -# you evaluate `input.m4': +# you evaluate 'input.m4': # # divert(-1) # changequote([, ]) @@ -932,7 +932,7 @@ exit 0; # OLD(1, 2) # NEW([0, 0], [0]) # -# where `m4_disable' undefines the m4 and m4sugar, and disables the quotes +# where 'm4_disable' undefines the m4 and m4sugar, and disables the quotes # and comments: # # define([m4_disable], @@ -941,22 +941,22 @@ exit 0; # changecom(#) # changequote()]) # -# `m4_enable' does the converse: reestablish quotes and comments -# --easy--, reestablish m4sugar --easy: just load `m4sugar.m4' again-- and +# 'm4_enable' does the converse: reestablish quotes and comments +# --easy--, reestablish m4sugar --easy: just load 'm4sugar.m4' again-- and # reenable the builtins. This later task requires that you first save -# the builtins. And BTW, the definition above of `m4_disable' cannot -# work: you undefined `changequote' before using it! So you need to use +# the builtins. And BTW, the definition above of 'm4_disable' cannot +# work: you undefined 'changequote' before using it! So you need to use # your privates copies of the builtins. Let's introduce three files for # this: # -# `m4save.m4' -# moves the m4 builtins into the `_au_' pseudo namespace, -# `unm4.m4' +# 'm4save.m4' +# moves the m4 builtins into the '_au_' pseudo namespace, +# 'unm4.m4' # undefines the builtins, -# `m4.m4' +# 'm4.m4' # restores them. # -# So `input.m4' is: +# So 'input.m4' is: # # divert(-1) # changequote([, ]) @@ -991,16 +991,16 @@ exit 0; # AC definitions must be disabled in the rest of the file, and enabled # inside AU macros. # -# Using `autoconf --trace' it is easy to build the files +# Using 'autoconf --trace' it is easy to build the files # -# `ac.m4' +# 'ac.m4' # define the autoquoting AC fake macros -# `disable.m4' +# 'disable.m4' # undefine the m4sugar and AC autoquoting macros. -# `au.m4' -# definitions of the AU macros (such as `OLD' above). +# 'au.m4' +# definitions of the AU macros (such as 'OLD' above). # -# Now, `input.m4' is: +# Now, 'input.m4' is: # # divert(-1) # changequote([, ]) diff --git a/bin/ifnames.in b/bin/ifnames.in index ba2cd056..30692244 100644 --- a/bin/ifnames.in +++ b/bin/ifnames.in @@ -51,8 +51,8 @@ $help = "Usage: $0 [OPTION]... [FILE]... Scan all of the C source FILES (or the standard input, if none are given) and write to the standard output a sorted list of all the -identifiers that appear in those files in `#if', `#elif', `#ifdef', or -`#ifndef' directives. Print each identifier on a line, followed by a +identifiers that appear in those files in '#if', '#elif', '#ifdef', or +'#ifndef' directives. Print each identifier on a line, followed by a space-separated list of the files in which that identifier occurs. -h, --help print this help, then exit