dnl Process this file with autoconf to produce a configure script.
dnl
-dnl $Id: configure.in,v 1.77 2002/09/06 13:23:03 oes Exp $
+dnl $Id: configure.in,v 1.88 2003/03/23 02:15:51 hal9 Exp $
dnl
dnl Written by and Copyright (C) 2001, 2002 the SourceForge
dnl Privoxy team. http://www.privoxy.org/
dnl Temple Place - Suite 330, Boston, MA 02111-1307, USA.
dnl
dnl $Log: configure.in,v $
+dnl Revision 1.88 2003/03/23 02:15:51 hal9
+dnl Apply Docbook/FreeBSD patch from a.go at tiscali.nl. Thanks!
+dnl
+dnl Revision 1.87 2002/12/28 04:10:22 david__schmidt
+dnl Initial drop of dashboard instrumentation - enabled with
+dnl --enable-activity-console
+dnl
+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
+dnl Revision 1.78 2002/09/06 23:18:08 hal9
+dnl Migrate PCRE_H_IN_SUBDIR from 3.0 branch for pcre/pcre.h on RH, etc.
+dnl
dnl Revision 1.77 2002/09/06 13:23:03 oes
dnl Removed non-functional test for gcc support for -pthread
dnl
dnl AutoConf Initialization
dnl =================================================================
-AC_REVISION($Revision: 1.77 $)
+AC_REVISION($Revision: 1.88 $)
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
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
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
+AC_PROG_AWK
AC_CHECK_PROG(GDB,gdb,yes,no)
+AC_PATH_PROG(BGROUPS,groups,no,/bin:/usr/bin:/usr/local/bin)
+AC_PATH_PROG(ID,id,no,/bin:/usr/bin:/usr/local/bin)
+AC_SUBST(ID)
+AC_SUBST(BGROUPS)
dnl =================================================================
dnl debug, gcc and gdb support
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 run],
+ [ --with-user=privoxy Set user under which privoxy will run],
[
if test "x$withval" != "xyes"; then
- USER=$with_user;
+ if test $ID = no ; then
+ 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;
+ else
+ AC_MSG_ERROR(There is no user '$with_user' on this system)
+ fi
+ fi
else
AC_MSG_ERROR(We need a user if you give me this parameter)
fi
],
[
- USER=privoxy;
+ if test $ID = no ; then
+ AC_MSG_WARN(There is no 'id' program on this system)
+ else
+ 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
- GROUP=$with_group;
+ 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 | 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;
+ fi
+ else
+ AC_MSG_ERROR(There is no group entry for user '$USER')
+ fi
+ fi
+ else
AC_MSG_ERROR(We need a group if you give me this parameter)
fi
],
[
- GROUP=privoxy;
+ if test $BGROUPS = no ; then
+ AC_MSG_WARN(There is no 'groups' program on this system)
+ else
+ AC_MSG_RESULT(none specified)
+ GROUP=$with_group;
+ fi
]
)
AC_SUBST(GROUP)
dnl =================================================================
case "$host" in
-*-apple-darwin*) SPECIAL_CFLAGS="-Dunix"
+*-apple-darwin*) SPECIAL_CFLAGS="-Dunix -DOSX_DARWIN"
;;
esac
+dnl =================================================================
+dnl OpenBSD specific
+dnl =================================================================
+
+case "$host" in
+*-openbsd*) SPECIAL_CFLAGS="$SPECIAL_CFLAGS -Dunix"
+;;
+esac
+
dnl =================================================================
dnl AmigaOS specific
dnl =================================================================
[ 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.],
[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:
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..."
+ /usr/share/sgml/docbook-dsssl /usr/local/share/sgml/docbook/dsssl/modular; do
+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
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..."
+ /usr/share/sgml/CATALOG.docbk31 \
+ /usr/local/share/sgml/docbook/3.0/docbook.cat \
+ /usr/local/share/sgml/docbook/3.1/docbook.cat \
+ ; do
+dnl echo -n "checking for $i..."
+ AC_MSG_CHECKING([for $i])
if test -f $i; then
echo "yes"
JADECAT="$JADECAT -c $i"
AC_OUTPUT(GNUmakefile doc/source/ldp.dsl doc/source/GNUmakefile)
-dnl hb:
-echo $prefix
-echo $exec_prefix
-echo $bindir
-echo $sbindir
-echo $sysconfdir
-echo $datadir
-echo $mandir
-echo $localstatedir
-echo host: $host