mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
regexp: Fix generation of _unicode_mapping.c.
* configure.ac (AWK_HEX_NUMBER_OPTION): Detect GNU Awk. * regexp/Makefile.am: Use AWK_HEX_NUMBER_OPTION. * regexp/parse-unidata.awk: Don't use strtonum. -- Backport master commit of: 50b320952e99ea20f9b77c6c501280fe37fd2598 GnuPG-bug-id: 4915 Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
parent
199309190a
commit
8904b18822
10
configure.ac
10
configure.ac
@ -622,6 +622,16 @@ AC_SYS_LARGEFILE
|
||||
GNUPG_CHECK_USTAR
|
||||
|
||||
|
||||
# GNU AWK requires -n option to interpret "0xHH" as a number
|
||||
if $AWK 'BEGIN { if (PROCINFO@<:@"version"@:>@) exit 1 }'; then
|
||||
AWK_HEX_NUMBER_OPTION=''
|
||||
AC_MSG_NOTICE([awk with no option for hexadecimal])
|
||||
else
|
||||
AWK_HEX_NUMBER_OPTION='-n'
|
||||
AC_MSG_NOTICE([awk with an option -n for hexadecimal])
|
||||
fi
|
||||
AC_SUBST(AWK_HEX_NUMBER_OPTION)
|
||||
|
||||
# We need to compile and run a program on the build machine. A
|
||||
# comment in libgpg-error says that the AC_PROG_CC_FOR_BUILD macro in
|
||||
# the AC archive is broken for autoconf 2.57. Given that there is no
|
||||
|
@ -34,5 +34,6 @@ BUILT_SOURCES = _unicode_mapping.c
|
||||
MAINTAINERCLEANFILES = _unicode_mapping.c
|
||||
|
||||
_unicode_mapping.c: parse-unidata.awk UnicodeData.txt
|
||||
$(AWK) -f $(srcdir)/parse-unidata.awk $(srcdir)/UnicodeData.txt >$@
|
||||
$(AWK) $(AWK_HEX_NUMBER_OPTION) -f $(srcdir)/parse-unidata.awk \
|
||||
$(srcdir)/UnicodeData.txt >$@
|
||||
endif
|
||||
|
@ -32,17 +32,17 @@ BEGIN {
|
||||
}
|
||||
|
||||
{
|
||||
code = strtonum(("0x" $1))
|
||||
code = int("0x" $1)
|
||||
name = $2
|
||||
class = $3
|
||||
upper = $13
|
||||
lower = $14
|
||||
title = $15
|
||||
|
||||
if (code <= 0x7f) {
|
||||
if (code <= 127) {
|
||||
next
|
||||
}
|
||||
if (code > 0xffff) {
|
||||
if (code > 65535) {
|
||||
next
|
||||
}
|
||||
if ($3 !~ /^L.*/) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user