Initial drop of dashboard instrumentation - enabled with
[privoxy.git] / configure.in
index ba95b32..2f16841 100644 (file)
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl 
-dnl $Id: configure.in,v 1.79 2002/09/07 02:11:06 hal9 Exp $
+dnl $Id: configure.in,v 1.86 2002/12/13 23:47:10 hal9 Exp $
 dnl 
 dnl Written by and Copyright (C) 2001, 2002 the SourceForge
 dnl Privoxy team. http://www.privoxy.org/
@@ -28,6 +28,29 @@ 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.86  2002/12/13 23:47:10  hal9
+dnl Add openbsd special flags per gunner at styx2002.no-ip.org
+dnl
+dnl Revision 1.85  2002/11/27 12:40:54  oes
+dnl Fixed broken handling of pre-set CFLAGS
+dnl
+dnl Revision 1.84  2002/10/24 22:24:57  hal9
+dnl Make install: Minor clean up for variable handling.
+dnl
+dnl Revision 1.83  2002/10/24 16:32:41  hal9
+dnl echo -n does not work with true /bin/sh. Use AC_MSG_CHECKING for docbook stuff.
+dnl
+dnl Revision 1.82  2002/09/27 04:24:07  hal9
+dnl Minor change of "! test" to "test -ne" for Solaris.
+dnl
+dnl Revision 1.81  2002/09/27 00:38:44  hal9
+dnl Some general cleanup of the user/group stuff. Including remove up to ':' to
+dnl make Linux (?) compatible with other *nix. Better AC output stuff.
+dnl
+dnl Revision 1.80  2002/09/26 18:47:46  hal9
+dnl This is most of Al's patch for --with-user and --with-group which tests that
+dnl these are valid values, if specified. If not specified, they are left empty.
+dnl
 dnl Revision 1.79  2002/09/07 02:11:06  hal9
 dnl Remove some testing stuff inadvertantly left in.
 dnl
@@ -413,14 +436,13 @@ dnl =================================================================
 dnl AutoConf Initialization
 dnl =================================================================
 
-AC_REVISION($Revision: 1.79 $)
+AC_REVISION($Revision: 1.86 $)
 AC_INIT(src/jcc.c)
-
 if test ! -f src/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
+   if test "$answer" != "y"; then
       exit 1
    else
       autoheader
@@ -470,7 +492,9 @@ dnl Checks for programs needed to build.
 dnl =================================================================
 
 dnl Keep AC_PROG_CC from setting its own defaults:
-CFLAGS=" "
+if test "X$CFLAGS" = "X"; then
+   CFLAGS = " "
+fi
 
 AC_PROG_CC
 AC_PROG_CPP
@@ -496,35 +520,43 @@ AC_ARG_WITH(debug,
                     if test $ac_cv_prog_cc_g = yes; then
                       if test "$GCC" = yes; then
                         if test "$GDB"; then
-                          CFLAGS="-ggdb"
+                          CFLAGS="$CFLAGS -ggdb"
                         else
-                          CFLAGS="-g"
+                          CFLAGS="$CFLAGS -g"
                         fi
                         CFLAGS="$CFLAGS -Wshadow  -Wconversion"
                       else
-                        CFLAGS="-g"
+                        CFLAGS="$CFLAGS -g"
                       fi
                    fi
                 fi
         ],
         [
-            if test "X$CFLAGS" = "X"; then # if CFLAGS are unset
+            if test "X$CFLAGS" = "X "; then # if CFLAGS were unset (see above)
               if test "$GCC" = yes; then
                 CFLAGS="-O2"
-              else
-                CFLAGS=
               fi
             fi
         ]
 )
 
+dnl =================================================================
+dnl Check for user and group validity
+dnl =================================================================
+
+$ID privoxy >/dev/null 2>/dev/null
+if test $? -ne 0 ; then
+ AC_MSG_WARN(There is no user 'privoxy' on this system)
+fi
+AC_MSG_CHECKING([for user])
 AC_ARG_WITH(user,
         [  --with-user=privoxy          Set user under which privoxy will run],
         [
                 if test "x$withval" != "xyes"; then
                   if test $ID = no ; then
-                    AC_MSG_ERROR(There is no 'id' program on this system)
+                    AC_MSG_WARN(There is no 'id' program on this system)
                   else
+                    AC_MSG_RESULT($with_user)
                     $ID $with_user 2>/dev/null >/dev/null
                     if test $? -eq 0 ; then
                       USER=$with_user;
@@ -538,32 +570,29 @@ AC_ARG_WITH(user,
         ],
         [
           if test $ID = no ; then
-            AC_MSG_ERROR(There is no 'id' programm on this system)
+            AC_MSG_WARN(There is no 'id' program on this system)
           else
-            $ID privoxy >/dev/null
-            if test $? -eq 0 ; then
-              USER=privoxy;
-            else
-              AC_MSG_WARN(There is no user 'privoxy' on this system)
-              USER=$with_user
-            fi
+            AC_MSG_RESULT(none specified)
+            USER=$with_user
           fi
         ]
 )
 AC_SUBST(USER)
 
+AC_MSG_CHECKING([for group])
 AC_ARG_WITH(group,
         [  --with-group=privoxy         Set group for privoxy],
-        [
+        [ 
                 if test "x$withval" != "xyes"; then
                   if test $BGROUPS = no ; then
                     AC_MSG_ERROR(There is no 'groups' program on this system)
                   else
+                    AC_MSG_RESULT($with_group)
                     $BGROUPS $USER >/dev/null
                     if test $? -eq 0 ; then
                     # FIXME: this fails if valid group, but not first group
                     # listed.
-                      if test "$with_group" != "`$BGROUPS $USER 2>/dev/null |$AWK '{print $3}'`" ; then
+                      if test "$with_group" != "`$BGROUPS $USER | sed 's/.*: //' 2>/dev/null |$AWK '{print $1}'`" ; then
                         AC_MSG_ERROR(The given value '$withval' does not match group entry)
                       else
                         GROUP=$with_group;
@@ -578,18 +607,10 @@ AC_ARG_WITH(group,
         ],
         [
           if test $BGROUPS = no ; then
-            AC_MSG_ERROR(There is no 'groups' programm on this system)
+            AC_MSG_WARN(There is no 'groups' program on this system)
           else
-            $BGROUPS $USER >/dev/null
-            if test $? -eq 0 ; then
-              if test "$with_group" != "`$BGROUPS $USER 2>/dev/null |$AWK '{print $3}'`" -a "$with_group" != "" ; then
-                AC_MSG_ERROR('$USER' isn't a member of '$with_group' group)
-              else
-                GROUP=$with_group;
-              fi
-            else
-              AC_MSG_ERROR(There is no group entry for user '$USER')
-            fi
+            AC_MSG_RESULT(none specified)
+            GROUP=$with_group;
           fi
         ]
 )
@@ -904,6 +925,24 @@ case "$host" in
 ;;  
 esac
 
+dnl =================================================================
+dnl Mac OSX specific
+dnl =================================================================
+
+case "$host" in
+*-apple-darwin*) SPECIAL_CFLAGS="-Dunix"
+;;
+esac
+
+dnl =================================================================
+dnl OpenBSD specific
+dnl =================================================================
+
+case "$host" in
+*-openbsd*) SPECIAL_CFLAGS="$SPECIAL_CFLAGS -Dunix"
+;;
+esac
+
 dnl =================================================================
 dnl AmigaOS specific
 dnl =================================================================
@@ -1043,6 +1082,20 @@ if test $enableval2 = yes; then
     [ Enables statistics function. ])
 fi
 
+AC_ARG_ENABLE(activity-console,
+[  --enable-activity-console    Gather and send extended statistics to the activity console],
+[enableval2=$enableval],
+[enableval2=no])
+if test $enableval2 = yes; then
+  ACTIVITY_ONLY=
+  AC_DEFINE(FEATURE_ACTIVITY_CONSOLE,1,
+    [ Enables sending statistics to the activity console. This is currently
+      experimental, and will require some porting work for a few more platforms. ])
+  else
+    ACTIVITY_ONLY=#
+fi
+AC_SUBST(ACTIVITY_ONLY)
+
 AC_ARG_ENABLE(ie-images,
 [  --enable-ie-images      Don't auto-detect whether a request from MS Internet
                            Explorer is for an image or HTML.],
@@ -1136,10 +1189,9 @@ AC_ARG_ENABLE(no-gifs,
 [enableval2=no])
 if test $enableval2 = yes; then
   AC_DEFINE(FEATURE_NO_GIFS,1,
-    [ Deine to 1 to use PNG instead of GIF for built-in images. ])
+    [ Define to 1 to use PNG instead of GIF for built-in images. ])
 fi
 
-
 dnl pcre/pcrs is needed for CGI anyway, so
 dnl the choice is only between static and
 dnl dynamic:
@@ -1225,7 +1277,9 @@ DKPREFIX=false
 for i in $DKPREFIXCOPY /usr/share/sgml/docbook/stylesheet/dsssl/modular \
         /usr/share/sgml/docbook/dsssl-stylesheets /usr/share/sgml/docbkdsl \
         /usr/share/sgml/docbook-dsssl; do
-        echo -n "checking for $i/html/docbook.dsl..."
+dnl  echo -n does not fly with /bin/sh.
+dnl      echo -n "checking for $i/html/docbook.dsl..."
+      AC_MSG_CHECKING([for $i])
         if test -f $i/html/docbook.dsl; then
                 echo "yes"
                 DKPREFIX=$i
@@ -1240,7 +1294,8 @@ JADECAT=""
 dnl where are the catalogs?
 for i in /usr/share/sgml/CATALOG.docbk30 \
          /usr/share/sgml/CATALOG.docbk31; do
-        echo -n "checking for $i..."
+dnl     echo -n "checking for $i..."
+      AC_MSG_CHECKING([for $i])
         if test -f $i; then
                 echo "yes"
                 JADECAT="$JADECAT -c $i"