On Mar 19, 2001, Jim Meyering <[EMAIL PROTECTED]> wrote:
> Akim Demaille <[EMAIL PROTECTED]> wrote:
> | prog=$1
> | shift
> | "$prog" "$@"
> His suggested change didn't have double quotes around $prog.
Hmm... I had meant to put them in.
If it doesn't work with them, I think we're out of luck
Akim Demaille <[EMAIL PROTECTED]> wrote:
| | It looks like it'll work just fine as long as you don't
| | put quotes around `bison -y'.
| |
| | $ printf '\na:\n\n' > j.y
| | $ sh missing --run bison -y j.y
| | $
| |
|
| Yes, that's not what I meant. My question is that ISTR that Aut
| It looks like it'll work just fine as long as you don't
| put quotes around `bison -y'.
|
| $ printf '\na:\n\n' > j.y
| $ sh missing --run bison -y j.y
| $
|
Yes, that's not what I meant. My question is that ISTR that Automake
supports `missing'ing yacc, and we must make sure
Akim Demaille <[EMAIL PROTECTED]> wrote:
| > "Jim" == Jim Meyering <[EMAIL PROTECTED]> writes:
|
| Jim> | prog=$1 | shift | "$prog" "$@"
|
| Jim> His suggested change didn't have double quotes around $prog.
| Jim> Besides, if you do use double quotes around it, as you've
| Jim> written, above,
> "Jim" == Jim Meyering <[EMAIL PROTECTED]> writes:
Jim> | prog=$1 | shift | "$prog" "$@"
Jim> His suggested change didn't have double quotes around $prog.
Jim> Besides, if you do use double quotes around it, as you've
Jim> written, above, then Ultrix4.4's /bin/sh fails in exactly the
Jim> s
Akim Demaille <[EMAIL PROTECTED]> wrote:
| > "Jim" == Jim Meyering <[EMAIL PROTECTED]> writes:
|
| Jim> Hi Akim,
|
| Jim> So consider a name containing some other shell meta-character.
|
| I don't understand what difference you make between the two approaches
| wrt meta-characters.
|
| Wer ar
> "Jim" == Jim Meyering <[EMAIL PROTECTED]> writes:
Jim> Hi Akim,
Jim> So consider a name containing some other shell meta-character.
I don't understand what difference you make between the two approaches
wrt meta-characters.
Wer are talking about
( exec "$@" )
vs
prog=$1
shift
"$prog
Akim Demaille <[EMAIL PROTECTED]> wrote:
| > "Jim" == Jim Meyering <[EMAIL PROTECTED]> writes:
|
| Jim> IMHO, it is always best to `do it right'. Evaluating `$1' one
| Jim> extra time is probably just fine for all current uses of `missing
| Jim> --run PROG_AND_ARGS', but someone may well hav
> "Russ" == Russ Allbery <[EMAIL PROTECTED]> writes:
Russ> (If you want to rewrite the code, you can use a hash of sub refs
Russ> instead of the computed name method, but that isn't always any
Russ> cleaner or more readable.)
In fact, since I wrote that patch, I learned about objects in Perl
> "Jim" == Jim Meyering <[EMAIL PROTECTED]> writes:
Jim> IMHO, it is always best to `do it right'. Evaluating `$1' one
Jim> extra time is probably just fine for all current uses of `missing
Jim> --run PROG_AND_ARGS', but someone may well have to use it on a
Jim> program whose name contains s
Akim Demaille <[EMAIL PROTECTED]> wrote:
| | Alexandre Oliva <[EMAIL PROTECTED]> wrote:
| | | On Mar 17, 2001, Jim Meyering <[EMAIL PROTECTED]> wrote:
| | |
| | | > * missing (--run): Use `eval' to run `"$@"'. Otherwise, Ultrix4.4's
| | | > /bin/sh fails and outputs garbage.
| |
Akim Demaille <[EMAIL PROTECTED]> writes:
> I don't know how to fix the `use strict refs' part. In particular, it
> dies on computed sub names:
> & $my_sub ();
> fails, and I don't know how to rewrite it the way strict refs wants it.
You can't. You have to do something like:
{ no
| Alexandre Oliva <[EMAIL PROTECTED]> wrote:
| | On Mar 17, 2001, Jim Meyering <[EMAIL PROTECTED]> wrote:
| |
| | > * missing (--run): Use `eval' to run `"$@"'. Otherwise, Ultrix4.4's
| | > /bin/sh fails and outputs garbage.
| |
| | Won't this evaluate the arguments one too many
This patch introduces one semantical difference: tags-recursive is
bound to tags, not TAGS as was before. I think (i) it is cleaner, and
(ii) anyway it seems to me that TAGS itself performs its own
recursion:
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&handle_single_transform_list): Remove $xbase,
unused.
(&handle_source_transform): All the variables have conditions now,
simplify.
(&variable_delete): Admit an argument @conds.
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in ($source_suffix_pattern): Remove, unused.
%extension_map seems to have replaced it.
Index: automake.in
--- automake.in Thu, 15 Mar 2001 00:48:39 +0100 akim (am/f/39_automake.i 1.195 755)
+++ automake.in Thu,
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* ext-compile.am: New file.
* automake.in (&finish_languages): Output it.
Require a C linker if there are several registered source suffixes.
(&handle_compile): No longer push the `.c', `.o', `.obj', `.lo'
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&handle_compile): Extract from...
(&get_object_extension): here.
(&read_am_file): Call it.
($included_generic_compile, $included_knr_compile)
($included_libtool_compile): Remov
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
Use AM_CONDITIONAL and if/endif for AMDEP.
* m4/depend.m4 (AM_DEP_TRACK): Use AM_CONDITIONAL to define AMDEP.
* automake.in (&add_depend2): Transform %AMDEP% into `AMDEP' (leading
to a configure time if/endi
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* tags.am: Fix missing leading tabs.
Index: tags.am
--- tags.am Wed, 14 Mar 2001 23:14:29 +0100 akim (am/g/12_tags.am 1.8 644)
+++ tags.am Wed, 14 Mar 2001 23:15:34 +0100 akim (am/g/12_tags.am 1.8 644)
@@ -45,11 +45,13 @@
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in: Use simple quotes to define the _PATTERN variables
to unobfuscate the regexps.
($AM_CONDITIONAL_PATTERN): Let the user quote the variable.
Index: automake.in
--- automake.in Wed, 14 M
There are two chunks I would have liked to remove, but couldn't:
@@ -1266,8 +1266,6 @@ sub get_object_extension
}
}
- push (@suffixes, '.c', '.o', '.obj');
-
$included_generic_compile = 1;
}
I can remove this one, because I have not yet found where the ru
Isn't this beautiful? A *.am file only change!
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* subdirs.am: Don't define info related recursive targets.
* texinfos.am: Do.
Index: Makefile.in
--- Makefile.in Tue, 13 Mar 2001 01:18:40 +0100 akim (am/h/16_Makefile.i 1.53
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* subdirs.am (RECURSIVE_TARGETS): New variable.
Use it.
* automake.in (&handle_subdirs): Output it.
(&file_contents_internal): Support value spread on several lines.
Index: Makefile.in
--- Makefile.in Sun,
Here are the results on Autoconf.
/tmp/ace % for i in **/Makefile
diff -u $i.old $i.in
--- man/Makefile.oldTue Mar 13 00:12:01 2001
+++ man/Makefile.in Tue Mar 13 00:41:10 2001
@@ -93,10 +93,9 @@
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
DIST
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&variable_dump): Use %var_type properly.
(&variable_define): Enforce better overriding rules.
Handle the special case that used to handle...
(&define_pretty_variable): this.
Hence, don
The aim of this patch and the next is to clarify the status of
variables: who owns them, and how their defined type (+=, := or =) can
change.
I end up with a rule which is somewhat unsatisfying:
# An Automake variable must be consistently defined with the same
# sign by Automake. A user var
There is one test that fails with this patch, but I leave it on
purpose, because there is a choice to make: is it Makefile.in that
should be pretty, or is it Makefile?
The current situation, left by this patch, looks like:
am/tests/testSubDir % cat produced 22:3
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&handle_configure): Don't bother with optimizing
macro uses.
Index: automake.in
--- automake.in Mon, 12 Mar 2001 21:28:36 +0100 akim (am/f/39_automake.i 1.179 755)
+++ automake.in Mon, 12 Mar
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&am_install_var): Transform DIST, and let the *.am
files handle DIST_COMMON.
* data.am, header.am, java.am, list.am, python.am, script.am: Set
DIST_COMMON.
Index: automake.in
--- automake.in
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (%dist_common): Remove.
(%configure_dist_common): Replace with...
($configure_dist_common): this.
(&generate_makefile): Read the user file before using
push_dist_common, as it sets DIST
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&get_object_extension): Use ansi2knr.am.
* clean-kr.am, kr-extra.am: Remove, merged into...
* ansi2knr.am: this new file.
Index: Makefile.am
--- Makefile.am Sun, 11 Mar 2001 21:03:14 +0100 akim (am/f
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&transform): Fix an incredible bug which was
breaking the if/endif system.
($ELSE_PATTERN): Admit an optional argument.
Index: automake.in
--- automake.in Sun, 11 Mar 2001 21:03:14 +0100 akim (am/f/3
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* comp-vars.am: Remove, merged into...
* compile.am: here.
* automake.in (&get_object_extension): Adjust.
Index: Makefile.am
--- Makefile.am Sun, 11 Mar 2001 20:39:39 +0100 akim (am/f/46_Makefile.a 1.19 644)
+++ Mak
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&handle_aclocal_m4): Rename as...
(&scan_aclocal_m4): this.
Return the list of aclocal.m4 dependencies.
(&handle_configure): Invoke it, and use it when loading...
* configure.am: Templ
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* remake.am: Merge into...
* configure.am: ... here.
* automake.in (&handle_configure): Adjust.
Index: Makefile.am
--- Makefile.am Sun, 11 Mar 2001 20:30:44 +0100 akim (am/f/46_Makefile.a 1.18 644)
+++ Makefile.am S
I don't know how to fix the `use strict refs' part. In particular, it
dies on computed sub names:
& $my_sub ();
fails, and I don't know how to rewrite it the way strict refs wants it.
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in: Use strict vars and s
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&output_lex_build_rule): Output this...
* lex.am: New file.
Index: Makefile.am
--- Makefile.am Sun, 11 Mar 2001 20:15:57 +0100 akim (am/f/46_Makefile.a 1.17 644)
+++ Makefile.am Sun, 11 Mar 2001 20:29:13 +010
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&condition_negate): New.
(&variable_conditions_permutations): Use it.
(&read_am_file, &file_contents): Use it on `else' clauses to
support `if FALSE'.
(&output_yacc_build_rule): Output
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&make_paragraphs): Transform TOPDIR_P and TOPDIR.
(&handle_dist): Don't.
(&handle_clean): Don't handle config.status here, let...
* clean.am: ... do it.
* distdir.am: Adjust.
Index: Ma
Alexandre Oliva <[EMAIL PROTECTED]> wrote:
| On Mar 17, 2001, Jim Meyering <[EMAIL PROTECTED]> wrote:
|
| > * missing (--run): Use `eval' to run `"$@"'. Otherwise, Ultrix4.4's
| > /bin/sh fails and outputs garbage.
|
| Won't this evaluate the arguments one too many times?
Thanks!
41 matches
Mail list logo