X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/5aff007d8fcfb4c6cc3c3627ae15f45562db7a0d..5dcfc065d123f6643b12ed1766c7976e58b6941a:/acinclude.m4 diff --git a/acinclude.m4 b/acinclude.m4 index 9a11b7a..287c256 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1,27 +1,25 @@ # This file is part of DisOrder. # Copyright (C) 2004, 2005, 2007, 2008 Richard Kettlewell # -# This program is free software; you can redistribute it and/or modify +# This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 -# USA +# along with this program. If not, see . # AC_DEFUN([RJK_FIND_GC_H],[ AC_CACHE_CHECK([looking for ],[rjk_cv_gc_h],[ - AC_PREPROC_IFELSE([ + AC_PREPROC_IFELSE([AC_LANG_PROGRAM([ #include - ], + ],[])], [rjk_cv_gc_h="on default include path"],[ oldCPPFLAGS="${CPPFLAGS}" for dir in /usr/include/gc /usr/local/include/gc; do @@ -30,9 +28,9 @@ AC_DEFUN([RJK_FIND_GC_H],[ else CPPFLAGS="${oldCPPFLAGS} -I$dir" fi - AC_PREPROC_IFELSE([ + AC_PREPROC_IFELSE([AC_LANG_PROGRAM([ #include - ], + ],[])], [rjk_cv_gc_h=$dir;break],[rjk_cv_gc_h="not found"]) done CPPFLAGS="${oldCPPFLAGS}" @@ -103,6 +101,44 @@ AC_DEFUN([RJK_REQUIRE_PCRE_UTF8],[ fi ]) +AC_DEFUN([RJK_REQUIRE_PCRE2_UTF8],[ + AC_CACHE_CHECK([whether libpcre2 was built with UTF-8 support], + [rjk_cv_pcre_utf8],[ + save_CFLAGS="$CFLAGS" save_LIBS="$LIBS" + CFLAGS="$CFLAGS $1" LIBS="$LIBS $2" + AC_RUN_IFELSE([AC_LANG_PROGRAM([ + #define PCRE2_CODE_UNIT_WIDTH 8 + #include + #include + ], + [ + pcre2_code *r; + int errcode; + int erroffset; + char errbuf[[128]]; + + r = pcre2_compile("\x80\x80", 2, PCRE2_UTF, + &errcode, &erroffset, 0); + if(!r) { + pcre2_get_error_message(errcode, errbuf, sizeof(errbuf)); + fprintf(stderr, "pcre2_compile: %s at %d", + errbuf, erroffset); + exit(0); + } else { + fprintf(stderr, "accepted bogus UTF-8 string\n"); + exit(1); + } + ])], + [rjk_cv_pcre_utf8=yes], + [rjk_cv_pcre_utf8=no], + [AC_MSG_WARN([cross-compiling, cannot check libpcre2 behaviour])]) + CFLAGS="$save_CFLAGS" LIBS="$save_LIBS" + ]) + if test $rjk_cv_pcre_utf8 = no; then + AC_MSG_ERROR([please rebuild your pcre library with --enable-utf8]) + fi +]) + AC_DEFUN([RJK_GCOV],[ GCOV=${GCOV:-true} AC_ARG_WITH([gcov],