]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Factored out m4 method to look for modules.
authorFrancesco Chemolli <kinkie@squid-cache.org>
Wed, 2 Dec 2009 13:50:58 +0000 (14:50 +0100)
committerFrancesco Chemolli <kinkie@squid-cache.org>
Wed, 2 Dec 2009 13:50:58 +0000 (14:50 +0100)
Added CC and CXX to state save/commit/rollback helper.
Removed redundant --enable-async-io configure argument

acinclude/squid-util.m4
configure.in

index 0b34c4209907dc3b6b4cae25181bb608888415b6..f73a8b146bab2629fb8d414daa970fa692039516 100644 (file)
@@ -37,6 +37,8 @@ $1_CFLAGS="${CFLAGS}"
 $1_CXXFLAGS="${CXXFLAGS}"
 $1_LDFLAGS="${LDFLAGS}"
 $1_LIBS="${LIBS}"
+$1_CC="${LIBS}"
+$1_CXX="${LIBS}"
 $1_squid_saved_vars="$2"
 for squid_util_var_tosave in $2
 do
@@ -53,6 +55,8 @@ unset $1_CFLAGS
 unset $1_$CXXFLAGS
 unset $1_LDFLAGS
 unset $1_LIBS
+unset $1_CC
+unset $1_CXX
 for squid_util_var_tosave in $$1_squid_saved_vars
 do
     unset ${squid_util_var_tosave2}
@@ -68,6 +72,8 @@ CFLAGS="${$1_CFLAGS}"
 CXXFLAGS="${$1_CXXFLAGS}"
 LDFLAGS="${$1_LDFLAGS}"
 LIBS="${$1_LIBS}"
+CC="${$1_CC}"
+CXX="${$1_CXX}"
 for squid_util_var_tosave in $$1_squid_saved_vars
 do
     squid_util_var_tosave2="$1_${squid_util_var_tosave}"
@@ -76,3 +82,15 @@ done
 SQUID_STATE_COMMIT($1)
 ])
 
+
+dnl look for modules in the base-directory supplied as argument.
+dnl fill-in the variable pointed-to by the second argument with the space-separated
+dnl list of modules 
+AC_DEFUN([SQUID_LOOK_FOR_MODULES],[
+for dir in $1/*; do
+  module="`basename $dir`"
+  if test -d "$dir" && test "$module" != CVS; then
+      $2="$$2 $module"
+  fi
+done
+])
index 2be89eff11a368947544cf0f35b52f9ed3a7beab..5aa741e355acc4025988be2b3ad6b97d6c2aae29 100644 (file)
@@ -453,84 +453,59 @@ AC_ARG_ENABLE(xmalloc-statistics,
   fi
 ])
 
-AC_ARG_ENABLE(async-io,
-  AS_HELP_STRING([--enable-async-io[=N_THREADS]],[Shorthand for "--with-aufs-threads=N_THREADS --with-pthreads
-                  --enable-storeio=ufs,aufs"]),
-[ case $enableval in
-  yes)
-       with_pthreads="yes"
-       STORE_MODULES="ufs aufs"
-    ;;
-  no)
-    ;;
-  *)
-       aufs_io_threads=$enableval
-       with_pthreads="yes"
-       STORE_MODULES="ufs aufs"
-    ;;
-  esac
-])
-
 AC_ARG_WITH(aufs-threads,
   AS_HELP_STRING([--with-aufs-threads=N_THREADS],[Tune the number of worker threads for the aufs object store.]),
 [ case $withval in
   [[0-9]]*)
-    aufs_io_threads=$withval
+    squid_opt_aufs_threads=$withval
     ;;
   *)
     AC_MSG_ERROR(--with-aufs-threads expects a numeric argument)
     ;;
   esac
 ])
-if test "$aufs_io_threads"; then
-    AC_MSG_NOTICE([With $aufs_io_threads aufs threads])
-    AC_DEFINE_UNQUOTED(AUFS_IO_THREADS,$aufs_io_threads,
+if test "$squid_opt_aufs_threads"; then
+    AC_MSG_NOTICE([With $squid_opt_aufs_threads aufs threads])
+    AC_DEFINE_UNQUOTED(AUFS_IO_THREADS,$squid_opt_aufs_threads,
     [Defines how many threads aufs uses for I/O])
 fi
 
-AC_ARG_WITH(dl,
-  AS_HELP_STRING([--with-dl],[Use dynamic linking]))
+AC_ARG_WITH(dl, AS_HELP_STRING([--with-dl],[Use dynamic linking]))
 if test "$with_dl" = "yes"; then
   AC_MSG_NOTICE([With dl])
 fi
 
+squid_disk_module_candidates=""
+squid_opt_enable_diskio=auto  #values: 0(no), 1(yes), "auto"(=yes+detect modules)
 AC_ARG_ENABLE(disk-io,
-  AS_HELP_STRING([--enable-disk-io="list of modules"],[Build support for the list of disk I/O modules.
-                  Set without a value or omitted, all available modules will be built.
-                  See src/DiskIO for a list of available modules, or
-                  Programmers Guide section on DiskIO
-                  for details on how to build your custom disk module]),
+  AS_HELP_STRING([--enable-disk-io="list of modules"],
+    [Build support for the list of disk I/O modules.
+     Set without a value or omitted, all available modules will be built.
+     See src/DiskIO for a list of available modules, or
+     Programmers Guide section on DiskIO
+     for details on how to build your custom disk module]),
 [ case $enableval in
   yes)
-       for dir in $srcdir/src/DiskIO/*; do
-           module="`basename $dir`"
-           if test -d "$dir" && test "$module" != CVS; then
-               AC_MSG_NOTICE([Autodetected $module DiskIO module])
-               MAYBE_DISK_MODULES="$MAYBE_DISK_MODULES $module"
-           fi
-       done
-       AC_DEFINE(USE_DISKIO,1,[DiskIO modules are expected to be available.])
+    #do nothing, "auto" is ok
        ;;
   no)
-       AC_DEFINE(USE_DISKIO,0,[DiskIO modules are expected to be available.])
+    squid_opt_enable_diskio=0
        ;;
   *)
-       MAYBE_DISK_MODULES=" `echo $enableval| sed -e 's/,/ /g;s/  */ /g'` "
-       AC_DEFINE(USE_DISKIO,1,[DiskIO modules are expected to be available.])
+    squid_opt_enable_diskio=1
+       squid_disk_module_candidates=" `echo $enableval| sed -e 's/,/ /g;s/  */ /g'` "
        ;;
   esac
-],
-[ if test -z "$MAYBE_DISK_MODULES"; then
-  AC_MSG_NOTICE([Enabling all available DiskIO modules (default)...])
-  for dir in $srcdir/src/DiskIO/*; do
-    module="`basename $dir`"
-    if test -d "$dir" && test "$module" != CVS; then
-       AC_MSG_NOTICE([Autodetected $module DiskIO module])
-       MAYBE_DISK_MODULES="$MAYBE_DISK_MODULES $module"
-    fi
-  done
-  AC_DEFINE(USE_DISKIO,1,[DiskIO modules are expected to be available.])
-fi ])
+])
+
+if test $squid_opt_enable_diskio = "auto"; then
+    squid_opt_enable_diskio=1
+    AC_MSG_CHECKING([for available DiskIO modules])
+    SQUID_LOOK_FOR_MODULES([$srcdir/src/DiskIO],[squid_disk_module_candidates])
+    AC_MSG_RESULT([$squid_disk_module_candidates])
+fi
+AC_DEFINE_UNQUOTED([USE_DISKIO],[$squid_opt_enable_diskio],
+    [DiskIO modules are expected to be available.])
 
 dnl Some autoconf.h defines we might enable later...
 AC_DEFINE(USE_DISKIO_AIO, 0, [Whether POSIX AIO support is needed. Automatic])
@@ -549,7 +524,7 @@ DISK_LIBS=
 DISK_OS_LIBS=
 DISK_MODULES=
 DISK_LINKOBJS=
-for module in $MAYBE_DISK_MODULES none; do
+for module in $squid_disk_module_candidates none; do
   if test "$module" = "none"; then
        continue
   fi