On Wed, Dec 16, 2009 at 09:11:09PM -0800, Roland Dreier wrote: > > > As Al Viro said, if we run awk with LC_ALL=C, then the characters will be > > sorted as ASCII. So, your patch is OK if you can add LC_ALL=C just before > > $(AWK). (I'm not so sure whether Makefile can accept it...) > > OK, updated patch: > > === > > x86: Don't use POSIX character classes in gen-insn-attr-x86.awk > > Not all awk implementations (including the default awk in Ubuntu 9.10) > support POSIX character classes. Since x86-opcode-map.txt is plain > ASCII, we can just use explicit ranges for lower case, alphabetic, and > alphanumeric characters instead. We set LC_ALL=C when invoking awk so > that ASCII ranges are never misinterpreted. > > I verified that the Debian version of mawk, which doesn't have POSIX > character set suport, generates the byte-for-byte the same inat-tables.c > after this patch as gawk did on an unpatched kernel. > > Signed-off-by: Roland Dreier <rolandd@xxxxxxxxx> > --- > arch/x86/lib/Makefile | 2 +- > arch/x86/tools/gen-insn-attr-x86.awk | 10 ++++------ > 2 files changed, 5 insertions(+), 7 deletions(-) > > diff --git a/arch/x86/lib/Makefile b/arch/x86/lib/Makefile > index 45b20e4..0c46d60 100644 > --- a/arch/x86/lib/Makefile > +++ b/arch/x86/lib/Makefile > @@ -5,7 +5,7 @@ > inat_tables_script = $(srctree)/arch/x86/tools/gen-insn-attr-x86.awk > inat_tables_maps = $(srctree)/arch/x86/lib/x86-opcode-map.txt > quiet_cmd_inat_tables = GEN $@ > - cmd_inat_tables = $(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@ > + cmd_inat_tables = LC_ALL=C $(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@ This will result in error messages in english always from awk - no? Some people will care. Sam -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html