Diff for /parser3/configure.ac between versions 1.38 and 1.70

version 1.38, 2020/12/07 17:17:09 version 1.70, 2025/01/25 15:51:11
Line 1 Line 1
 dnl Autoconf initialisation  dnl Autoconf initialization
 AC_PREREQ(2.59)  AC_PREREQ(2.59)
 AC_INIT(parser, 3.4.6b)  AC_INIT(parser, 3.5.2b)
 AC_CONFIG_SRCDIR(README)  AC_CONFIG_SRCDIR(README)
   AC_CONFIG_MACRO_DIRS(src/lib/ltdl/m4)
   
   
 dnl Automake Initialization  dnl Automake Initialization
Line 45  AC_PROG_CXX Line 46  AC_PROG_CXX
 AC_PROG_CC  AC_PROG_CC
   
 dnl most tests should be compiled with C compiler [especially qsort test]  dnl most tests should be compiled with C compiler [especially qsort test]
 AC_LANG_C  AC_LANG([C])
   
   
 dnl Dll extension  dnl Dll extension
Line 61  AC_SUBST(dll_extension) Line 62  AC_SUBST(dll_extension)
 dnl Misc arguments  dnl Misc arguments
 AC_ARG_WITH(build-warnings, [  --with-build-warnings   to enable build-time compiler warnings if gcc is used],  AC_ARG_WITH(build-warnings, [  --with-build-warnings   to enable build-time compiler warnings if gcc is used],
         AC_MSG_WARN(enabling compiler warnings)          AC_MSG_WARN(enabling compiler warnings)
         CXXFLAGS="$CXXFLAGS -Wextra -Wall -Wno-parentheses"          CXXFLAGS="$CXXFLAGS -D_FORTIFY_SOURCE=2 -Wextra -Wall -Wno-parentheses"
 )  )
   
 AC_ARG_WITH(coverage, [  --with-coverage         to enable gcov code coverage support],  AC_ARG_WITH(coverage, [  --with-coverage         to enable gcov code coverage support],
Line 95  AC_ARG_WITH(system-cfg, [  --with-system Line 96  AC_ARG_WITH(system-cfg, [  --with-system
 )  )
   
   
 AC_ARG_WITH(system-log, [  --with-system-log=FILE  to specify system-wide parser3.log],  
         AC_DEFINE_UNQUOTED(SYSTEM_LOG_FILE,"$withval",system-wide parser3.log)  
 )  
   
   
 dnl Safe mode argument  dnl Safe mode argument
 AC_ARG_ENABLE(safe-mode, [  --disable-safe-mode   to enable reading and executing  AC_ARG_ENABLE(safe-mode, [  --disable-safe-mode   to enable reading and executing
                           files belonging to group+user other then effective],                            files belonging to group+user other then effective],
Line 166  if test -z "$GC_OK"; then Line 162  if test -z "$GC_OK"; then
         AC_MSG_CHECKING(for libgc)          AC_MSG_CHECKING(for libgc)
         SAVE_LIBS=$LIBS          SAVE_LIBS=$LIBS
         LIBS="$LIBS $GC_LIBS"          LIBS="$LIBS $GC_LIBS"
         AC_TRY_LINK([ extern int GC_dont_gc; ],[ GC_dont_gc=0; ],          PA_TRY_LINK([ extern int GC_dont_gc; ],[ GC_dont_gc=0; ],
                 AC_MSG_RESULT(yes)                  AC_MSG_RESULT(yes)
         ,          ,
                 AC_MSG_RESULT(no)                  AC_MSG_RESULT(no)
Line 186  dnl PCRE argument Line 182  dnl PCRE argument
 AC_ARG_WITH(pcre,[  --with-pcre=DIR         DIR is the directory where  AC_ARG_WITH(pcre,[  --with-pcre=DIR         DIR is the directory where
                           PCRE library is installed],[                            PCRE library is installed],[
         PCRE=$withval          PCRE=$withval
         PCRE_INCLUDES="-I$PCRE/include"  
         PCRE_LIBS="$PCRE/lib/libpcre.la"  
   
         if test -f $PCRE/include/pcre.h -a -f $PCRE_LIBS; then  
                 PCRE_OK="yes"  
         else  
                 PCRE_LIBS="-L$PCRE/lib -lpcre"  
         fi  
   
         if test "$PCRE" = "yes"; then          if test "$PCRE" = "yes"; then
                 PCRE=""                  PCRE=""
                 PCRE_LIBS="-lpcre"  
                 PCRE_INCLUDES=""  
                 AC_MSG_WARN([--with-pcre value was not specified, hoping linker would find it])                  AC_MSG_WARN([--with-pcre value was not specified, hoping linker would find it])
           else
                   PCRE_INCLUDES="-I$PCRE/include"
   
                   if test -f $PCRE/include/pcre.h -a -f $PCRE/lib/libpcre.la; then
                           PCRE_OK="yes"
                           PCRE_LIBS="$PCRE/lib/libpcre.la"
                   else
                           if test -f $PCRE/include/pcre2.h -a -f $PCRE/lib/libpcre2-8.la; then
                                   PCRE_OK="yes"
                                   PCRE_LIBS="$PCRE/lib/libpcre2-8.la"
                                   AC_DEFINE(HAVE_PCRE2,,PCRE2 is available)
                           else
                                   PCRE_LIBS="-L$PCRE/lib"
                           fi
                   fi
         fi          fi
 ],[  ],[
         PCRE_LIBS="-lpcre"  
         PCRE_INCLUDES=""  
         AC_MSG_WARN([--with-pcre was not specified, hoping linker would find it])          AC_MSG_WARN([--with-pcre was not specified, hoping linker would find it])
 ])  ])
   
 if test -z "$PCRE_OK"; then  if test -z "$PCRE_OK"; then
         AC_MSG_CHECKING(for prce)          AC_MSG_CHECKING(for pcre2)
           SAVE_LIBS=$LIBS
           LIBS="$LIBS $PCRE_LIBS $PCRE_INCLUDES -lpcre2-8"
           PA_TRY_LINK([ #define PCRE2_CODE_UNIT_WIDTH 8
   #include <pcre2.h> ],[ void *v=pcre2_general_context_create(0,0,0); ],
                   AC_MSG_RESULT(yes)
                   PCRE_LIBS="$PCRE_LIBS -lpcre2-8"
                   AC_DEFINE(HAVE_PCRE2,,PCRE2 is available)
                   PCRE_OK="yes"
           ,
                   AC_MSG_RESULT(no)
           )
           LIBS=$SAVE_LIBS
   fi
   
   if test -z "$PCRE_OK"; then
           AC_MSG_CHECKING(for pcre)
           PCRE_LIBS="$PCRE_LIBS -lpcre"
         SAVE_LIBS=$LIBS          SAVE_LIBS=$LIBS
         LIBS="$LIBS $PCRE_LIBS $PCRE_INCLUDES"          LIBS="$LIBS $PCRE_LIBS $PCRE_INCLUDES"
         AC_TRY_LINK([ #include <pcre.h> ],[ const char *v=pcre_version(); ],          PA_TRY_LINK([ #include <pcre.h> ],[ const char *v=pcre_version(); ],
                 AC_MSG_RESULT(yes)                  AC_MSG_RESULT(yes)
         ,          ,
                 AC_MSG_RESULT(no)                  AC_MSG_RESULT(no)
Line 254  AC_ARG_WITH(xml,[  --with-xml=DIR Line 270  AC_ARG_WITH(xml,[  --with-xml=DIR
                 AC_MSG_CHECKING(for xml)                  AC_MSG_CHECKING(for xml)
                 SAVE_LIBS=$LIBS                  SAVE_LIBS=$LIBS
                 LIBS="$LIBS $XML_LIBS $XML_INCLUDES"                  LIBS="$LIBS $XML_LIBS $XML_INCLUDES"
                 AC_TRY_LINK([ #include <libxslt/xslt.h> ],[ const char *v=xsltEngineVersion; ],                  PA_TRY_LINK([ #include <libxslt/xslt.h> ],[ const char *v=xsltEngineVersion; ],
                         AC_MSG_RESULT(yes)                          AC_MSG_RESULT(yes)
                 ,                  ,
                         AC_MSG_RESULT(no)                          AC_MSG_RESULT(no)
Line 309  AC_ARG_WITH(mailreceive,[  --with-mailre Line 325  AC_ARG_WITH(mailreceive,[  --with-mailre
                 AC_MSG_CHECKING(for mime)                  AC_MSG_CHECKING(for mime)
                 SAVE_LIBS=$LIBS                  SAVE_LIBS=$LIBS
                 LIBS="$LIBS $MIME_LIBS $MIME_INCLUDES"                  LIBS="$LIBS $MIME_LIBS $MIME_INCLUDES"
                 AC_TRY_LINK([ #include <gmime/gmime.h> ],[ guint v=gmime_major_version; ],                  PA_TRY_LINK([ #include <gmime/gmime.h> ],[ guint v=gmime_major_version; ],
                         AC_MSG_RESULT(yes)                          AC_MSG_RESULT(yes)
                 ,                  ,
                         AC_MSG_RESULT(no)                          AC_MSG_RESULT(no)
Line 392  AC_STRUCT_DIRENT_D_TYPE Line 408  AC_STRUCT_DIRENT_D_TYPE
 AC_SYS_LARGEFILE  AC_SYS_LARGEFILE
   
 dnl Checks for C header files  dnl Checks for C header files
 AC_HEADER_STDC  
 AC_HEADER_TIME  
   
 AC_CHECK_HEADERS(stdio.h sys/types.h sys/stat.h stdlib.h stddef.h memory.h string.h strings.h inttypes.h stdint.h unistd.h)  AC_CHECK_HEADERS(stdio.h sys/types.h sys/stat.h stdlib.h stddef.h memory.h string.h strings.h inttypes.h stdint.h unistd.h)
 AC_CHECK_HEADERS(assert.h limits.h ctype.h math.h process.h stdarg.h setjmp.h signal.h)  AC_CHECK_HEADERS(time.h sys/time.h assert.h limits.h ctype.h math.h process.h stdarg.h setjmp.h signal.h pthread.h)
 AC_CHECK_HEADERS(errno.h dirent.h fcntl.h io.h sys/file.h sys/locking.h sys/select.h sys/resource.h sys/wait.h)  AC_CHECK_HEADERS(errno.h dirent.h fcntl.h io.h sys/file.h sys/locking.h sys/select.h sys/resource.h sys/wait.h)
 AC_CHECK_HEADERS(sys/socket.h netinet/in.h arpa/inet.h netdb.h)  AC_CHECK_HEADERS(sys/socket.h netinet/in.h arpa/inet.h netdb.h)
   
Line 430  AC_CHECK_LIB(crypt, crypt) Line 443  AC_CHECK_LIB(crypt, crypt)
   
   
 dnl Checks for functions  dnl Checks for functions
 AC_CHECK_FUNCS(flock _locking fcntl lockf ftruncate fchmod)  AC_CHECK_FUNCS(flock fcntl lockf ftruncate fchmod)
 AC_CHECK_FUNCS(getrusage gettimeofday crypt sigsetjmp siglongjmp unsetenv)  AC_CHECK_FUNCS(getrusage gettimeofday crypt sigsetjmp siglongjmp unsetenv syslog)
   
   
 dnl on some linux[seen on 2.4] it's a macro  dnl on some linux[seen on 2.4] it's a macro
Line 452  dnl For build-in date implementation we Line 465  dnl For build-in date implementation we
   
 AC_LANG_PUSH(C++)  AC_LANG_PUSH(C++)
 AC_MSG_CHECKING(for timezone variable)  AC_MSG_CHECKING(for timezone variable)
 AC_TRY_COMPILE([#include <time.h>], [int test=timezone;], AC_DEFINE(HAVE_TIMEZONE) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))  PA_TRY_COMPILE([#include <time.h>], [int test=timezone;], AC_DEFINE(HAVE_TIMEZONE) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
 AC_LANG_POP  AC_LANG_POP
   
 AC_MSG_CHECKING(for tm_gmtoff in struct tm)  AC_MSG_CHECKING(for tm_gmtoff in struct tm)
 AC_TRY_COMPILE([#include <time.h>], [struct tm tm; tm.tm_gmtoff=0;], AC_DEFINE(HAVE_TM_GMTOFF) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))  PA_TRY_COMPILE([#include <time.h>], [struct tm tm; tm.tm_gmtoff=0;], AC_DEFINE(HAVE_TM_GMTOFF) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
   
 AC_MSG_CHECKING(for tm_tzadj in struct tm)  AC_MSG_CHECKING(for tm_tzadj in struct tm)
 AC_TRY_COMPILE([#include <time.h>], [struct tm tm; tm.tm_tzadj=0;], AC_DEFINE(HAVE_TM_TZADJ) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))  PA_TRY_COMPILE([#include <time.h>], [struct tm tm; tm.tm_tzadj=0;], AC_DEFINE(HAVE_TM_TZADJ) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
   
   AC_MSG_CHECKING(for gettid)
   PA_TRY_COMPILE([
   #include <sys/types.h>
   #include <sys/syscall.h>
   ], [uint tid=syscall(__NR_gettid);], AC_DEFINE(HAVE_GETTID) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
   
   AC_MSG_CHECKING(for TLS)
   PA_TRY_COMPILE([__thread int i=0;], [], AC_DEFINE(HAVE_TLS) AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
   
 AC_MSG_CHECKING(for 0..9999 year date range support)  AC_MSG_CHECKING(for 0..9999 year date range support)
 AC_TRY_RUN([  AC_RUN_IFELSE([AC_LANG_SOURCE([
 #include <string.h>  #include <string.h>
 #include <time.h>  #include <time.h>
   
Line 477  int main() { Line 499  int main() {
         tmH.tm_mday=31;          tmH.tm_mday=31;
         return mktime(&tmL)==-1 || mktime(&tmH)==-1;          return mktime(&tmL)==-1 || mktime(&tmH)==-1;
 }  }
 ], AC_DEFINE(PA_DATE64) AC_MSG_RESULT(yes), AC_MSG_RESULT(no), AC_MSG_RESULT(no))  ])], AC_DEFINE(PA_DATE64) AC_MSG_RESULT(yes), AC_MSG_RESULT(no), AC_MSG_RESULT(no))
   
 dnl Output header and makefiles  dnl Output header and makefiles
 AH_TEMPLATE([HAVE_TIMEZONE],[Define if you have timezone external variable in <time.h>])  AH_TEMPLATE([HAVE_TIMEZONE],[Define if you have timezone external variable in <time.h>])
 AH_TEMPLATE([HAVE_TM_GMTOFF],[Define if you have tm_gmtoff member of tm structure in <time.h>])  AH_TEMPLATE([HAVE_TM_GMTOFF],[Define if you have tm_gmtoff member of tm structure in <time.h>])
 AH_TEMPLATE([HAVE_TM_TZADJ],[Define if you have tm_tzadj member of tm structure in <time.h>])  AH_TEMPLATE([HAVE_TM_TZADJ],[Define if you have tm_tzadj member of tm structure in <time.h>])
   AH_TEMPLATE([HAVE_GETTID],[Define if you have gettid()])
   AH_TEMPLATE([HAVE_TLS],[Define if you have Thread-Local Storage])
 AH_TEMPLATE([PA_DATE64],[Define if you have 0..9999 year date range support])  AH_TEMPLATE([PA_DATE64],[Define if you have 0..9999 year date range support])
   
 AM_CONFIG_HEADER(src/include/pa_config_auto.h)  AC_CONFIG_HEADERS(src/include/pa_config_auto.h)
   
 AC_OUTPUT(  AC_CONFIG_FILES([
         Makefile           Makefile
         src/Makefile           src/Makefile
         src/types/Makefile           src/types/Makefile
         src/classes/Makefile           src/classes/Makefile
         src/include/Makefile           src/include/Makefile
         src/main/Makefile           src/main/Makefile
         src/sql/Makefile           src/sql/Makefile
         src/lib/Makefile           src/lib/Makefile
         src/lib/gd/Makefile           src/lib/gd/Makefile
         src/lib/smtp/Makefile           src/lib/smtp/Makefile
         src/lib/gc/Makefile           src/lib/gc/Makefile
         src/lib/gc/include/Makefile          src/lib/gc/include/Makefile
         src/lib/pcre/Makefile           src/lib/pcre/Makefile
         src/lib/cord/Makefile          src/lib/cord/Makefile
         src/lib/cord/include/Makefile          src/lib/cord/include/Makefile
         src/lib/cord/include/private/Makefile          src/lib/cord/include/private/Makefile
Line 517  AC_OUTPUT( Line 541  AC_OUTPUT(
         src/targets/isapi/Makefile          src/targets/isapi/Makefile
         etc/Makefile          etc/Makefile
         etc/parser3.charsets/Makefile          etc/parser3.charsets/Makefile
         etc/auto.p)          etc/auto.p])
   AC_OUTPUT

Removed from v.1.38  
changed lines
  Added in v.1.70


E-mail: