X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=configure.in;h=227ecdfb9baac75a82a9e800ae916045761246e1;hp=45c90285d2f881e2bfdfde19f02d341d66167fec;hb=9314c337844dc6f41bfca7c611bddddebbe19a49;hpb=ac83d5047a08638161667a53a97898c77551d652 diff --git a/configure.in b/configure.in index 45c90285..227ecdfb 100644 --- a/configure.in +++ b/configure.in @@ -1,9 +1,9 @@ dnl Process this file with autoconf to produce a configure script. dnl -dnl $Id: configure.in,v 1.40 2002/03/09 14:33:30 oes Exp $ +dnl $Id: configure.in,v 1.64 2002/04/22 16:32:31 morcego Exp $ dnl -dnl Written by and Copyright (C) 2001 the SourceForge -dnl IJBSWA team. http://ijbswa.sourceforge.net +dnl Written by and Copyright (C) 2001, 2002 the SourceForge +dnl Privoxy team. http://www.privoxy.org/ dnl dnl Based on the Internet Junkbuster originally written dnl by and Copyright (C) 1997 Anonymous Coders and @@ -28,6 +28,89 @@ dnl or write to the Free Software Foundation, Inc., 59 dnl Temple Place - Suite 330, Boston, MA 02111-1307, USA. dnl dnl $Log: configure.in,v $ +dnl Revision 1.64 2002/04/22 16:32:31 morcego +dnl configure.in, *.spec: Bumping release to 2 (2.9.14-2) +dnl -rh.spec: uid and gid are now macros +dnl -suse.spec: Changing the header Copyright to License (Copyright is +dnl deprecable) +dnl +dnl Revision 1.63 2002/04/11 11:00:21 oes +dnl Applied Moritz' fix for socklen_t on Solaris +dnl +dnl Revision 1.62 2002/04/11 10:09:20 oes +dnl Version 2.9.14 +dnl +dnl Revision 1.61 2002/04/10 18:14:45 morcego +dnl - (privoxy-rh.spec only) Relisting template files on the %%files section +dnl - (configure.in, privoxy-rh.spec) Bumped package release to 5 +dnl +dnl Revision 1.60 2002/04/09 16:38:49 oes +dnl Added detection of missing config.h.in +dnl +dnl Revision 1.59 2002/04/06 20:23:55 jongfoster +dnl Removing unnessacery tests (C++, ranlib) +dnl +dnl Revision 1.58 2002/04/04 20:49:20 swa +dnl attempt to consolidate the +dnl different dokbook versions. +dnl +dnl Revision 1.57 2002/04/04 00:36:36 gliptak +dnl always use pcre for matching +dnl +dnl Revision 1.56 2002/04/03 22:28:03 gliptak +dnl Removed references to gnu_regex +dnl +dnl Revision 1.55 2002/04/03 03:54:38 gliptak +dnl Checking pcre version +dnl +dnl Revision 1.54 2002/04/01 00:54:24 gliptak +dnl More changes needed around regex support. +dnl +dnl Revision 1.53 2002/03/29 20:09:01 swa +dnl al's patch +dnl +dnl Revision 1.52 2002/03/29 19:51:40 gliptak +dnl Correcting compile problem with Debian +dnl +dnl Revision 1.51 2002/03/28 20:43:00 swa +dnl set make correctly +dnl +dnl Revision 1.50 2002/03/27 03:03:45 hal9 +dnl Add test for man2html +dnl +dnl Revision 1.49 2002/03/27 02:19:52 david__schmidt +dnl More Mac OSX support: +dnl - Get rid of extraneous, noisy -pthread warnings +dnl - Define unix so we get oes' unix-tagged changes +dnl +dnl Revision 1.48 2002/03/26 22:29:54 swa +dnl we have a new homepage! +dnl +dnl Revision 1.47 2002/03/26 16:41:00 hal9 +dnl Upped RPM Release to 3 (need to build new RH packages) +dnl +dnl Revision 1.46 2002/03/24 18:55:06 jongfoster +dnl Making Docbook work under Windows +dnl +dnl Revision 1.45 2002/03/24 14:19:55 swa +dnl set rpm package release in configure.in. nowhere else. +dnl +dnl Revision 1.44 2002/03/24 13:25:43 swa +dnl name change related issues +dnl +dnl Revision 1.43 2002/03/24 12:56:21 swa +dnl name change related issues. +dnl +dnl Revision 1.42 2002/03/22 18:11:37 jongfoster +dnl Bumping version number to 2.9.12 +dnl +dnl Revision 1.41 2002/03/19 19:30:04 morcego +dnl - Fixing stylesheet checking on configure. If it is found, no further checks +dnl should be done +dnl +dnl - configure will now check for db2html or docbook2html (should work now +dnl on SuSe without the docbktls package) +dnl dnl Revision 1.40 2002/03/09 14:33:30 oes dnl Fixing the (harmless) AC_CHECK_FILE warnings dnl @@ -270,9 +353,21 @@ dnl ================================================================= dnl AutoConf Initialization dnl ================================================================= -AC_REVISION($Revision: 1.40 $) +AC_REVISION($Revision: 1.64 $) AC_INIT(jcc.c) -AC_CONFIG_HEADER(config.h) + +if test ! -f config.h.in; then + echo "You need to run autoheader first. " + echo -n "Shall I do this for you now? (y/n) " + read answer + if test $answer != "y"; then + exit 1 + else + autoheader + fi +fi + +AC_CONFIG_HEADER([config.h]) AC_CANONICAL_HOST dodk=auto @@ -304,7 +399,7 @@ dnl ================================================================= VERSION_MAJOR=2 VERSION_MINOR=9 -VERSION_POINT=11 +VERSION_POINT=14 CODE_STATUS="beta" dnl CODE_STATUS can be "alpha", "beta", or "stable", and will be @@ -331,12 +426,9 @@ dnl Checks for programs needed to build. dnl ================================================================= AC_PROG_CC AC_PROG_CPP -dnl AC_PROG_CXX -dnl AC_PROG_INSTALL -dnl AC_PROG_LN_S -dnl AC_PROG_MAKE_SET -dnl RANLIB is for PCRE: -dnl AC_PROG_RANLIB +AC_PROG_INSTALL +AC_PROG_LN_S +AC_PROG_MAKE_SET AC_CHECK_PROG(GDB,gdb,yes,no) @@ -373,6 +465,35 @@ AC_ARG_WITH(debug, ] ) +AC_ARG_WITH(user, + [ --with-user=privoxy Set user under which privoxy run], + [ + if test "x$withval" != "xyes"; then + USER=$with_user; + else + AC_MSG_ERROR(We need a user if you give me this parameter) + fi + ], + [ + USER=privoxy; + ] +) +AC_SUBST(USER) + +AC_ARG_WITH(group, + [ --with-group=privoxy Set group for privoxy], + [ + if test "x$withval" != "xyes"; then + GROUP=$with_group; + else + AC_MSG_ERROR(We need a group if you give me this parameter) + fi + ], + [ + GROUP=privoxy; + ] +) +AC_SUBST(GROUP) dnl ================================================================= dnl additional gcc flags dnl ================================================================= @@ -477,22 +598,38 @@ dnl Check for jade, so we can build the documentation AC_CHECK_PROGS(JADEBIN,jade openjade,false) AC_SUBST(JADEBIN) +dnl Check for man2html for docs. +AC_CHECK_PROGS(MAN2HTML,man2html,false) +AC_SUBST(MAN2HTML) + dnl Checking for the docbook.dsl stylesheet file dnl It is still not portable (directory slash) +JADECAT="" if test $dodk = yes; then if test $DKPREFIX = none; then - for i in /usr/share/sgml/docbook/dsssl-stylesheets /usr/share/sgml/docbkdsl; do + for i in /usr/share/sgml/docbook/dsssl-stylesheets /usr/share/sgml/docbkdsl /usr/share/sgml/docbook-dsssl; do echo -n "checking for $i/html/docbook.dsl..." if test -f $i/html/docbook.dsl; then echo "yes" DKPREFIX=$i - break + break + else + echo "no" + fi + done +# where are the catalogs? + for i in /usr/share/sgml/CATALOG.docbk30 /usr/share/sgml/CATALOG.docbk31; do + echo -n "checking for $i..." + if test -f $i; then + echo "yes" + JADECAT="$JADECAT -c $i" else echo "no" fi done fi fi +AC_SUBST(JADECAT) AC_SUBST(DKPREFIX) dnl Save old CFLAGS so we can restore them later, then add SPECIAL_CFLAGS @@ -675,6 +812,10 @@ AC_CHECK_FUNC(localtime_r, [ dnl ================================================================= dnl Solaris specific dnl FIXME: Not tested on Solaris yet... +dnl ISFIXED: Have tested it on Solaris, but there are other ways to +dnl make these checks generic, e.g.: +dnl AC_CHECK_FUNC(getsockopt, , AC_CHECK_LIB(socket, getsockopt)) +dnl (Moritz Barsnick ) dnl ================================================================= @@ -697,6 +838,17 @@ esac AC_SUBST(SOCKET_LIB) +dnl ================================================================= +dnl Solaris problem, and others perhaps (socklen_t is undefined) +dnl ================================================================= + +AC_MSG_CHECKING([for socklen_t]) +AC_EGREP_HEADER(socklen_t, sys/socket.h, AC_MSG_RESULT([yes]), + AC_MSG_RESULT([no]) + AC_DEFINE(socklen_t,int, + [ Define to 'int' if doesn't have it. ])) + + dnl ================================================================= dnl OS/2 specific dnl ================================================================= @@ -708,6 +860,15 @@ esac AC_SUBST(SOCKET_LIB) +dnl ================================================================= +dnl Mac OSX specific +dnl ================================================================= + +case "$host" in +*-apple-darwin*) SPECIAL_CFLAGS="-Dunix" +;; +esac + dnl ================================================================= dnl AmigaOS specific dnl ================================================================= @@ -728,8 +889,12 @@ dnl ================================================================= AC_EXEEXT AC_OBJEXT AC_HEADER_STDC +AC_HEADER_DIRENT AC_C_CONST AC_TYPE_SIZE_T +AC_TYPE_PID_T +AC_HEADER_TIME +AC_STRUCT_TM AC_CHECK_SIZEOF(int, 4) AC_CHECK_SIZEOF(char *, 4) AC_CHECK_SIZEOF(long, 4) @@ -739,12 +904,21 @@ AC_CHECK_SIZEOF(size_t, 4) dnl Checks for header files. dnl AC_HEADER_SYS_WAIT dnl AC_CHECK_HEADERS(fcntl.h limits.h malloc.h sys/time.h unistd.h) +AC_CHECK_HEADERS([OS.h arpa/inet.h errno.h fcntl.h limits.h locale.h netdb.h netinet/in.h stddef.h stdlib.h string.h sys/ioctl.h sys/socket.h sys/time.h sys/timeb.h sys/wait.h unistd.h]) dnl Checks for library functions. dnl AC_TYPE_SIGNAL dnl AC_CHECK_FUNC(strstr) dnl bcopy and memmove are for PCRE -AC_CHECK_FUNCS(strerror bcopy memmove) +AC_CHECK_FUNCS([strerror bcopy memmove]) +AC_PROG_GCC_TRADITIONAL +dnl uncommenting does not work for swa. suse linux +dnl AC_FUNC_MALLOC +AC_FUNC_SETPGRP +AC_TYPE_SIGNAL +dnl uncommenting does not work for swa. suse linux +dnl AC_FUNC_STAT +AC_CHECK_FUNCS([atexit getcwd gethostbyaddr gethostbyname inet_ntoa localtime_r memchr memmove memset regcomp select setlocale socket strchr strdup strerror strftime strstr strtoul]) dnl ================================================================= @@ -752,8 +926,9 @@ dnl Checks for libraries. dnl ================================================================= dnl Note: Some systems may have the library but not the system header dnl file, so we must check for both. -AC_CHECK_LIB(pcre, pcre_compile, [AC_CHECK_HEADER(pcre.h, [have_pcre=yes], [have_pcre=no])], [have_pcre=no]) -AC_CHECK_LIB(pcreposix, regcomp, [AC_CHECK_HEADER(pcreposix.h, [have_pcreposix=yes], [have_pcreposix=no])], [have_pcreposix=no], -lpcre) +dnl Also check for correct version +AC_CHECK_LIB(pcre, pcre_compile, [AC_CHECK_HEADER(pcre.h, [AC_EGREP_HEADER(pcre_fullinfo, pcre.h, [have_pcre=yes], [AC_MSG_WARN([[pcre old version installed]]); have_pcre=no])], [have_pcre=no])], [have_pcre=no]) +AC_CHECK_LIB(pcreposix, regcomp, [AC_CHECK_HEADER(pcreposix.h, [AC_EGREP_HEADER(pcreposix_regerror, pcreposix.h, [AC_MSG_WARN([[pcreposix old version installed]]); have_pcreposix=no], [have_pcreposix=yes])], [have_pcreposix=no])], [have_pcreposix=no], -lpcre) AC_CHECK_LIB(pcrs, pcrs_compile, [AC_CHECK_HEADER(pcrs.h, [have_pcrs=yes], [have_pcrs=no])], [have_pcrs=no]) @@ -855,16 +1030,6 @@ dnl pcre/pcrs is needed for CGI anyway, so dnl the choice is only between static and dnl dynamic: -AC_ARG_ENABLE(regex-matching, -[ --enable-regex-matching=pcre Use perl-compatible regex for actionsfile - pattern matching (default) - --enable-regex-matching=gnu Use gnu style regex for actionsfile pattern - matching (-> bigger binary) - --disable-regex-matching Don't use regex matching, compare URL - prefix instead (won't shrink birary)], -[ regex_matching=$enableval ], -[ regex_matching=pcre ]) - AC_ARG_ENABLE(dynamic-pcre, [ --disable-dynamic-pcre Use the built-in, static pcre, even if libpcre is available], @@ -876,24 +1041,15 @@ AC_ARG_ENABLE(dynamic-pcrs, [ if test $enableval = "no"; then have_pcrs=no; fi ]) -# Is the regex URL matching based on libpcreposix, but we -# don't have that library? -# -if test $have_pcreposix = "yes" -o $regex_matching != "pcre"; then - dont_miss_pcreposix=yes -else - dont_miss_pcreposix=no -fi - # If we have libpcre and either we also have pcreposix or # we don't need pcreposix, then link pcre dynamically; else # build it and link statically # -if test $have_pcre = "yes" -a $dont_miss_pcreposix = "yes"; then +if test $have_pcre = "yes"; then echo "using libpcre" pcre_dyn=yes STATIC_PCRE_ONLY=# - LIBS="$LIBS -lpcre" + LIBS="$LIBS -lpcre -lpcreposix" else echo "using built-in static pcre" pcre_dyn=no @@ -915,30 +1071,6 @@ else STATIC_PCRS_ONLY= fi -# Which method should be used for URL matching? -# pcre, gnu regex or prefix matching? -# -if test $regex_matching = "gnu"; then - echo "using gnu regex for URL matching" - AC_DEFINE(REGEX_GNU) - GNU_REGEX_ONLY= - PCRE_REGEX_ONLY=# -elif test $regex_matching = "pcre"; then - echo "using pcre regex for URL matching" - AC_DEFINE(REGEX_PCRE) - GNU_REGEX_ONLY=# - PCRE_REGEX_ONLY= - if test $pcre_dyn = "yes"; then - LIBS="$LIBS -lpcreposix" - fi -else - echo -e "using prefix matching for URLs\nHint: This does NOT make the executable any smaller!" - GNU_REGEX_ONLY=# - PCRE_REGEX_ONLY=# -fi - -AC_SUBST(GNU_REGEX_ONLY) -AC_SUBST(PCRE_REGEX_ONLY) AC_SUBST(STATIC_PCRE_ONLY) AC_SUBST(STATIC_PCRS_ONLY)