--- parser3/Attic/configure.in 2003/11/06 08:22:48 1.65 +++ parser3/Attic/configure.in 2011/04/03 01:39:06 1.136 @@ -2,13 +2,16 @@ dnl Process this file with autoconf to p AC_INIT(README) AC_PREREQ(2.57) -AM_INIT_AUTOMAKE(parser, 3.1.1, nodefine) +AM_INIT_AUTOMAKE(parser, 3.4.2b, nodefine) dnl expand srcdir P3S=`cd $srcdir/src ; pwd` AC_SUBST(P3S) -PARSER_VERSION=$VERSION +dnl AC_CANONICAL_SYSTEM +AC_CANONICAL_HOST + +PARSER_VERSION="$VERSION (compiled on $host)" echo "/* automatically generated by configure */" > $srcdir/src/include/pa_version.h.new echo "/* edit configure.in to change version number */" >> $srcdir/src/include/pa_version.h.new echo "#define PARSER_VERSION \"$PARSER_VERSION\"" >> $srcdir/src/include/pa_version.h.new @@ -22,8 +25,6 @@ fi -dnl AC_CANONICAL_SYSTEM -AC_CANONICAL_HOST AC_SUBST(host_os) case $host_os in *cygwin* ) AC_DEFINE(CYGWIN,,using cygwin building environment);; @@ -57,12 +58,19 @@ AC_C_INLINE dnl Arguments +AC_ARG_WITH(build-warnings, [ --with-build-warnings to enable build-time compiler warnings if gcc is used], + AC_MSG_WARN(enabling compiler warnings) + CXXFLAGS="$CXXFLAGS -W -Wall -Wstrict-prototypes -Wmissing-prototypes" +) + + AC_ARG_WITH(assertions, [ --with-assertions to enable assertions], AC_MSG_WARN(enabling assertions) , AC_DEFINE(NDEBUG,,assertions disabled) ) + AC_ARG_ENABLE(safe-mode, [ --disable-safe-mode to enable reading and executing files belonging to group+user other then effective], [ @@ -75,7 +83,8 @@ else AC_DEFINE(PA_SAFE_MODE,,disabled reading of files belonging to group+user other then effective) fi -AC_ARG_ENABLE(execs, [ --disable-execs to disable any execs + +AC_ARG_ENABLE(execs, [ --disable-execs to disable any execs (file::exec, file::cgi, unix mail:send)], [ if test "$enableval" = "no"; then @@ -86,6 +95,17 @@ fi ) +AC_ARG_ENABLE(stringstream, [ --disable-stringstream to disable stringstream usage. + when disabled table.save use more memory but it's safer on freebsd 4.x], +[ +if test "$enableval" = "no"; then + AC_MSG_WARN(disabling stringstream usage) + AC_DEFINE(NO_STRINGSTREAM,,stringstream disabled) +fi +] +) + + srccharsetsdir=$srcdir/etc/parser3.charsets CHARSETS_REQUESTED="windows-1251" AC_ARG_WITH(charsets, [ --with-charsets=CHARSET[,CHARSET,...] Enables charsets in root config (windows-1251, @@ -100,7 +120,7 @@ for c in $CHARSETS_REQUESTED; do done # Switching on commentcharset_XXX='#' -AC_DEFUN(PA_SUBSTCHARSET, [ +AC_DEFUN([PA_SUBSTCHARSET], [ commentcharset_$2='#' for c in $CHARSETS_REQUESTED; do if test "$1" = "$c"; then @@ -152,9 +172,10 @@ AC_ARG_WITH(mysql-client,[ --with-mysql ) AC_SUBST(mysql_client) + AC_ARG_WITH(pgsql-client,[ --with-pgsql-client=pgsqlclientlib?withparams PgSQL client dynamic library to root config], - mysql_client=$withval + pgsql_client=$withval , AC_MSG_CHECKING(for pgsql client) for lib in \ @@ -174,6 +195,7 @@ AC_ARG_WITH(pgsql-client,[ --with-pgsql ) AC_SUBST(pgsql_client) + AC_ARG_WITH(oracle-client,[ --with-oracle-client=oracleclientlib?withparams Oracle client dynamic library], oracle_client=$withval @@ -194,6 +216,29 @@ AC_ARG_WITH(oracle-client,[ --with-orac AC_SUBST(oracle_client) +AC_ARG_WITH(sqlite-client,[ --with-sqlite-client=sqliteclientlib?withparams + SQLite client dynamic library to root config], + sqlite_client=$withval +, + AC_MSG_CHECKING(for sqlite_client client) + for lib in \ + /usr/local/sqlite/lib/sqlite3.$dll_extension \ + /usr/local/lib/sqlite3.$dll_extension \ + /usr/lib/sqlite3.$dll_extension; do + if test -f $lib; then sqlite_client=$lib; fi + done + + if test -z "$sqlite_client"; then + sqlite_client="-configure could not guess-" + AC_MSG_RESULT(could not guess) + else + AC_MSG_RESULT($sqlite_client) + fi + +) +AC_SUBST(sqlite_client) + + AC_ARG_WITH(pathlink,[ --with-pathlink=LKEY put dynamic libraries paths to binary using linker key (-R, -rpath-link)], @@ -221,7 +266,7 @@ AC_ARG_WITH(shared-gc,[ --with-shared-g ]) AC_ARG_WITH(static-gc,[ --with-static-gc[=D] D is the directory where Boehm garbage collecting library is installed (static lib)],[ - GC_LIBS="-L$withval -Wl,-Bstatic -l$GC_LIB_NAME -Wl,-Bdynamic" + GC_LIBS="$withval/lib$GC_LIB_NAME.a" ]) if test -z "$GC_LIBS"; then #undefined? use any found in system @@ -246,10 +291,22 @@ AC_SUBST(GC_LIBS) LIBS=$SAVE_LIBS -AC_ARG_WITH(glib-config,[ --with-glib-config=FILE FILE is glib library - configuration file (search for glib*-config)], - GLIB_CONFIG=$withval -) +AC_ARG_WITH(static-pcre,[ --with-static-pcre=D D is the directory where + PCRE library is installed (static lib)],[ + PCRE=$withval + PCREINC="$PCRE/include" + PCRELIB="$PCRE/lib" + + if test \! -d $PCREINC -o \! -d $PCRELIB; then + AC_MSG_ERROR($PCRE does not seem to be valid PCRE installation directory) + fi + + PCRE_INCLUDES="-I$PCREINC" + PCRE_LIBS="$PCRELIB/libpcre.a" +]) +AC_SUBST(PCRE_INCLUDES) +AC_SUBST(PCRE_LIBS) + AC_ARG_WITH(shared-xml,[ --with-shared-xml=D D is the directory where Gnome XML libraries are installed (shared libs)],[ @@ -265,21 +322,11 @@ AC_ARG_WITH(shared-xml,[ --with-shared- AC_DEFINE(XML,,xml-abled parser (uses shared library)) LIBXML2_SO_NAME=`cd $XMLLIB ; ls libxml2.?? libxml2.??? 2>/dev/null | grep -v \.la$ | sed 's/lib//' | sed 's/\..*//'` - LIBGDOME_SO_NAME=`cd $XMLLIB ; ls libgdome.?? libgdome.??? 2>/dev/null | grep -v \.la$ | sed 's/lib//' | sed 's/\..*//'` LIBXSLT_SO_NAME=`cd $XMLLIB ; ls libxslt.?? libxslt.??? 2>/dev/null | grep -v \.la$ | sed 's/lib//' | sed 's/\..*//'` LIBEXSLT_SO_NAME=`cd $XMLLIB ; ls libexslt.?? libexslt.??? 2>/dev/null | grep -v \.la$ | sed 's/lib//' | sed 's/\..*//'` - if test -z "$GLIB_CONFIG"; then - GLIB_CONFIG=$XMLBIN/glib-config - if test \! -x $GLIB_CONFIG; then - GLIB_CONFIG=glib-config - fi - fi - GLIB_CFLAGS=`$GLIB_CONFIG --cflags` - GLIB_LIBS=`$GLIB_CONFIG --libs` - - XML_INCLUDES="$GLIB_CFLAGS -I$XMLINC -I$XMLINC/libgdome -I$XMLINC/libxml2" - XML_LIBS="$GLIB_LIBS -L$XMLLIB -l$LIBXML2_SO_NAME -l$LIBGDOME_SO_NAME -l$LIBXSLT_SO_NAME -l$LIBEXSLT_SO_NAME" + XML_INCLUDES="$GLIB_CFLAGS -I$XMLINC -I$XMLINC/libxml2" + XML_LIBS="-L$XMLLIB -l$LIBXML2_SO_NAME -l$LIBXSLT_SO_NAME -l$LIBEXSLT_SO_NAME" if test \! -z "$LD_PATHLINK"; then XML_LIBS="$XML_LIBS -Wl,$LD_PATHLINK -Wl,$XMLLIB" fi @@ -297,25 +344,30 @@ AC_ARG_WITH(static-xml,[ --with-static- AC_DEFINE(XML,,xml-abled parser (uses static library)) - if test -z "$GLIB_CONFIG"; then - GLIB_CONFIG=$XMLBIN/glib-config - if test \! -x $GLIB_CONFIG; then - GLIB_CONFIG=glib-config - fi - fi - GLIB_CFLAGS=`$GLIB_CONFIG --cflags` - -dnl '-L/usr/local/lib -lglib' -> /usr/local/lib -changequote(, )dnl - GLIB_DIR=`$GLIB_CONFIG --libs | sed 's/.*-L\([^ ]*\).*/\1/'` - GLIB_NAME=`$GLIB_CONFIG --libs | sed 's/.*-l\([^ ]*\).*/\1/'` -changequote([, ])dnl - XML_INCLUDES="$GLIB_CFLAGS -I$XMLINC -I$XMLINC/libgdome -I$XMLINC/libxml2" - XML_LIBS="$XMLLIB/libgdome.a $XMLLIB/libxslt.a $XMLLIB/libexslt.a $XMLLIB/libxml2.a $GLIB_DIR/lib$GLIB_NAME.a" + XML_INCLUDES="$GLIB_CFLAGS -I$XMLINC -I$XMLINC/libxml2" + XML_LIBS="$XMLLIB/libxslt.a $XMLLIB/libexslt.a $XMLLIB/libxml2.a" ]) AC_SUBST(XML_INCLUDES) AC_SUBST(XML_LIBS) +AC_ARG_WITH(curl,[ --with-curl=D D is the curl includes directory],[ + CURLINC=$withval + + if test \! -d $CURLINC -o \! -r $CURLINC/curl.h; then + AC_MSG_ERROR($CURLINC does not seem to be valid curl includes directory) + fi + + AC_DEFINE(HAVE_CURL,,curl enabled parser) + + CURL_INCLUDES="-I$CURLINC -I$CURLINC/../" +]) +AC_SUBST(CURL_INCLUDES) + +AC_ARG_WITH(glib-config,[ --with-glib-config=FILE FILE is glib library + configuration file (search for glib*-config)], + GLIB_CONFIG=$withval +) + AC_ARG_WITH(shared-mailreceive,[ --with-shared-mailreceive=D is the directory where Gnome MIME library is installed (shared lib)],[ GNOME_MIME=$withval @@ -332,9 +384,12 @@ AC_ARG_WITH(shared-mailreceive,[ --with LIBMIME_SO_NAME=`cd $MIMELIB ; ls libgmime.?? libgmime.??? 2>/dev/null | grep -v \.la$ | sed 's/lib//' | sed 's/\..*//'` if test -z "$GLIB_CONFIG"; then - GLIB_CONFIG=$MIMEBIN/glib-config + GLIB_CONFIG=$XMLBIN/glib-config if test \! -x $GLIB_CONFIG; then - GLIB_CONFIG=glib-config + GLIB_CONFIG=$XMLBIN/glib2-config + if test \! -x $GLIB_CONFIG; then + GLIB_CONFIG=glib-config + fi fi fi GLIB_CFLAGS=`$GLIB_CONFIG --cflags` @@ -360,9 +415,12 @@ AC_ARG_WITH(static-mailreceive,[ --with AC_DEFINE(WITH_MAILRECEIVE,,has \$mail:received (uses static library)) if test -z "$GLIB_CONFIG"; then - GLIB_CONFIG=$MIMEBIN/glib-config + GLIB_CONFIG=$XMLBIN/glib-config if test \! -x $GLIB_CONFIG; then - GLIB_CONFIG=glib-config + GLIB_CONFIG=$XMLBIN/glib2-config + if test \! -x $GLIB_CONFIG; then + GLIB_CONFIG=glib-config + fi fi fi GLIB_CFLAGS=`$GLIB_CONFIG --cflags` @@ -386,16 +444,29 @@ AC_ARG_WITH(sendmail,[ \"--with-sendmai ) -AC_ARG_WITH(apache13,[ --with-apache13=D D is the Apache13 source distribution directory - builds library for apache_module using that dir - (do not add /src)], - APACHE13=$withval - if test \! -f "$APACHE13/src/include/httpd.h"; then - AC_MSG_ERROR($APACHE13 does not seem to be valid Apache13 source distribution directory) +AC_ARG_WITH(apache,[ --with-apache=FILE is the full path for APXS + builds apache DSO module using apxs],[ + APXS=$withval + + if test -z "$APXS" -o "$APXS" = "yes"; then + APXS=`which apxs 2>/dev/null` + fi; + + APACHE=`$APXS -q TARGET 2>/dev/null` + + if test -z "$APACHE"; then + AC_MSG_ERROR($APXS does not seem to be valid apache apxs utility path) fi -) -AC_SUBST(APACHE13) -AM_CONDITIONAL(COMPILE_APACHE13_MODULE, test -n "$APACHE13") + + APACHE_MAIN_INC=`$APXS -q INCLUDEDIR` + APACHE_EXTRA_INC=`$APXS -q EXTRA_INCLUDES 2>/dev/null` + APACHE_INC="-I$APACHE_MAIN_INC $APACHE_EXTRA_INC" + APACHE_CFLAGS=`$APXS -q CFLAGS` +]) +AC_SUBST(APACHE) +AC_SUBST(APACHE_INC) +AC_SUBST(APACHE_CFLAGS) +AM_CONDITIONAL(COMPILE_APACHE_MODULE, test -n "$APACHE") dnl Enable building of the convenience library @@ -414,6 +485,14 @@ AC_SUBST(LIBADD_DL) dnl Checks for typedefs, structures, and compiler characteristics. +AC_C_BIGENDIAN( + AC_DEFINE(PA_BIG_ENDIAN,,compile for sparc processor) +, + AC_DEFINE(PA_LITTLE_ENDIAN,,compile for intel processor or compatible) +, + AC_MSG_ERROR(word endianness not determined for some obscure reason) +) + AC_TYPE_SIZE_T dnl gmime AC_CHECK_TYPE(off_t, long) @@ -460,6 +539,9 @@ dnl Checks for libraries. dnl Some systems (Solaris 2.x) require libnsl (Network Services Library) case "$host" in + *-freebsd4*) + AC_DEFINE(FREEBSD4,,FreeBSD4X target platform) + ;; *-sunos5.6* | *-solaris2.6*) AC_CHECK_LIB(xnet, main) ;; @@ -493,10 +575,13 @@ _locking \ fcntl \ lockf \ ftruncate \ +fchmod \ getrusage \ gettimeofday \ crypt \ -siglongjmp +sigsetjmp \ +siglongjmp \ +unsetenv ) dnl on some linux[seen on 2.4] it's a macro @@ -511,10 +596,9 @@ sign ) AC_LANG_POP -dnl We require qsort(3) and select(2). +dnl We require qsort(3) AC_CHECK_FUNCS(qsort, , AC_MSG_ERROR([No qsort library function.])) -AC_CHECK_FUNCS(select, , AC_MSG_ERROR([No select library function.])) dnl For correct mail receiving we need to know local offset from GMT dnl it be timezone+(daylight?60*60*sign(timezone):0) @@ -567,36 +651,6 @@ dnl fi dnl ] dnl ) -dnl install directories - -# expand apostrophed -e_prefix=$prefix -test "x$e_prefix" = xNONE && e_prefix=$ac_default_prefix - -e_sysconfdir=$sysconfdir -test "$e_sysconfdir" = "\${prefix}/etc" && e_sysconfdir="${e_prefix}/etc" - -dnl these are used to fill in etc/parser3.conf - -charsetsdir=$e_sysconfdir/parser3.charsets -AC_SUBST(charsetsdir) - -# expand apostrophed -e_libdir=$libdir -if test "$e_libdir" = "\${exec_prefix}/lib"; then - - # Let make expand exec_prefix. - e_exec_prefix=$exec_prefix - test "x$e_exec_prefix" = xNONE && e_exec_prefix=$e_prefix - - # expand apostrophed - test "$e_libdir" = "\${exec_prefix}/lib" && e_libdir="${e_exec_prefix}/lib" -fi - -sqldriversdir=$e_libdir -AC_SUBST(sqldriversdir) - - dnl Output header and makefiles AH_TEMPLATE([HAVE_DLD],[Define if you have the GNU dld library]) @@ -628,4 +682,33 @@ AH_TEMPLATE([HAVE_TM_TZADJ], AM_CONFIG_HEADER(src/include/pa_config_auto.h) -AC_OUTPUT(Makefile src/Makefile src/types/Makefile src/classes/Makefile src/classes/gd/Makefile src/classes/smtp/Makefile src/include/Makefile src/main/Makefile src/sql/Makefile src/lib/Makefile src/lib/patches/Makefile src/lib/gc/Makefile src/lib/gc/include/Makefile src/lib/cord/Makefile src/lib/cord/include/Makefile src/lib/cord/include/private/Makefile src/lib/ltdl/Makefile src/lib/pcre/Makefile src/lib/md5/Makefile src/targets/Makefile src/targets/cgi/Makefile src/targets/apache13core/Makefile src/targets/apache13/Makefile src/targets/apache13/p3runConfigure src/targets/isapi/Makefile etc/Makefile etc/parser3.charsets/Makefile bin/Makefile bin/auto.p.dist) +AC_OUTPUT( + Makefile + src/Makefile + src/types/Makefile + src/classes/Makefile + src/include/Makefile + src/main/Makefile + src/sql/Makefile + src/lib/Makefile + src/lib/gd/Makefile + src/lib/smtp/Makefile + src/lib/gc/Makefile + src/lib/gc/include/Makefile + src/lib/pcre/Makefile + src/lib/cord/Makefile + src/lib/cord/include/Makefile + src/lib/cord/include/private/Makefile + src/lib/ltdl/Makefile + src/lib/md5/Makefile + src/lib/sdbm/Makefile + src/lib/sdbm/pa-include/Makefile + src/lib/json/Makefile + src/targets/Makefile + src/targets/cgi/Makefile + src/targets/apache/Makefile + src/targets/isapi/Makefile + etc/Makefile + etc/parser3.charsets/Makefile + bin/Makefile + bin/auto.p.dist)