mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-03 22:56:33 +02:00
gpg: Add regular expression support.
* AUTHORS, COPYING.other: Update. * Makefile.am (SUBDIRS): Add regexp sub directory. * configure.ac (DISABLE_REGEX): Remove. * g10/Makefile.am (needed_libs): Add libregexp.a. * g10/trustdb.c: Remove DISABLE_REGEX support. * regexp/LICENSE, regexp/jimregexp.c, regexp/jimregexp.h, regexp/utf8.c, regexp/utf8.h: New from Jim Tcl. * regexp/UnicodeData.txt: New from Unicode. * regexp/Makefile.am, regexp/parse-unidata.awk: New. * tests/openpgp/Makefile.am: Remove DISABLE_REGEX support. * tools/Makefile.am: Remove DISABLE_REGEX support. GnuPG-bug-id: 4843 Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
parent
61c5b0767f
commit
ba247a114c
17 changed files with 36313 additions and 94 deletions
64
configure.ac
64
configure.ac
|
@ -1476,62 +1476,6 @@ AC_CHECK_FUNCS([getpeerucred])
|
|||
#
|
||||
GNUPG_FUNC_MKDIR_TAKES_ONE_ARG
|
||||
|
||||
#
|
||||
# Sanity check regex. Tests adapted from mutt.
|
||||
#
|
||||
AC_MSG_CHECKING([whether regular expression support is requested])
|
||||
AC_ARG_ENABLE(regex,
|
||||
AC_HELP_STRING([--disable-regex],
|
||||
[do not handle regular expressions in trust signatures]),
|
||||
use_regex=$enableval, use_regex=yes)
|
||||
AC_MSG_RESULT($use_regex)
|
||||
|
||||
if test "$use_regex" = yes ; then
|
||||
_cppflags="${CPPFLAGS}"
|
||||
_ldflags="${LDFLAGS}"
|
||||
AC_ARG_WITH(regex,
|
||||
AC_HELP_STRING([--with-regex=DIR],[look for regex in DIR]),
|
||||
[
|
||||
if test -d "$withval" ; then
|
||||
CPPFLAGS="${CPPFLAGS} -I$withval/include"
|
||||
LDFLAGS="${LDFLAGS} -L$withval/lib"
|
||||
fi
|
||||
],withval="")
|
||||
|
||||
# Does the system have regex functions at all?
|
||||
AC_SEARCH_LIBS([regcomp], [regex])
|
||||
AC_CHECK_FUNC(regcomp, gnupg_cv_have_regex=yes, gnupg_cv_have_regex=no)
|
||||
|
||||
if test $gnupg_cv_have_regex = no; then
|
||||
use_regex=no
|
||||
else
|
||||
if test x"$cross_compiling" = xyes; then
|
||||
AC_MSG_WARN([cross compiling; assuming regexp library is not broken])
|
||||
else
|
||||
AC_CACHE_CHECK([whether your system's regexp library is broken],
|
||||
[gnupg_cv_regex_broken],
|
||||
AC_TRY_RUN([
|
||||
#include <unistd.h>
|
||||
#include <regex.h>
|
||||
main() { regex_t blah ; regmatch_t p; p.rm_eo = p.rm_eo; return regcomp(&blah, "foo.*bar", REG_NOSUB) || regexec (&blah, "foobar", 0, NULL, 0); }],
|
||||
gnupg_cv_regex_broken=no, gnupg_cv_regex_broken=yes, gnupg_cv_regex_broken=yes))
|
||||
|
||||
if test $gnupg_cv_regex_broken = yes; then
|
||||
AC_MSG_WARN([your regex is broken - disabling regex use])
|
||||
use_regex=no
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
CPPFLAGS="${_cppflags}"
|
||||
LDFLAGS="${_ldflags}"
|
||||
fi
|
||||
|
||||
if test "$use_regex" != yes ; then
|
||||
AC_DEFINE(DISABLE_REGEX,1, [Define to disable regular expression support])
|
||||
fi
|
||||
AM_CONDITIONAL(DISABLE_REGEX, test x"$use_regex" != xyes)
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Do we have zlib? Must do it here because Solaris failed
|
||||
|
@ -2071,6 +2015,7 @@ Makefile
|
|||
po/Makefile.in
|
||||
common/Makefile
|
||||
common/w32info-rc.h
|
||||
regexp/Makefile
|
||||
kbx/Makefile
|
||||
g10/Makefile
|
||||
sm/Makefile
|
||||
|
@ -2125,13 +2070,6 @@ echo "
|
|||
TOFU support: $use_tofu
|
||||
Tor support: $show_tor_support
|
||||
"
|
||||
if test x"$use_regex" != xyes ; then
|
||||
echo "
|
||||
Warning: No regular expression support available.
|
||||
OpenPGP trust signatures won't work.
|
||||
gpg-check-pattern will not be built.
|
||||
"
|
||||
fi
|
||||
if test "x${gpg_config_script_warn}" != x; then
|
||||
cat <<G10EOF
|
||||
Warning: Mismatches between the target platform and the
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue