apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sander Striker" <stri...@apache.org>
Subject RE: [PATCH] Add --with-efence option.
Date Fri, 14 Dec 2001 11:20:47 GMT
> From: Justin Erenkrantz [mailto:jerenkrantz@ebuilt.com]
> Sent: 14 December 2001 11:34

> I was using Electric Fence when I was debugging the pool code.
> It helped a bit, so it might be good to have it as a configure 
> option (--with-efence[=DIR]).

+1 :)
 
> However, I'm wondering if we could have a GPL v. BSD disrepency
> here since efence is under GPL and we're still BSD.  So, I won't 
> commit unless someone says it is okay.

AFAI understand, we are not distributing efence so we are clear.
We are also not shipping binaries with efence linked in, so that's
no issue either.  But IANAL, someone else might have a better clue
than me.

Sander

> Note that this requires the addition of the 
> apr_platform_runtime_link_flag variable so that we can properly
> do the LDFLAGS on certain OSes (Solaris).  Linux has -rpath, but
> I'm not 100% sure we need it.  Also, the latest GNU binutils says
> that its ld accepts -R as well - can anyone confirm this on 
> older Linux boxen?  (It seems that setting it to -Wl,-rpath screws
> up the APR_ADDTO macro.)  -- justin
> 
> Index: CHANGES
> ===================================================================
> RCS file: /home/cvs/apr/CHANGES,v
> retrieving revision 1.197
> diff -u -r1.197 CHANGES
> --- CHANGES	2001/12/14 10:06:19	1.197
> +++ CHANGES	2001/12/14 10:24:16
> @@ -1,5 +1,8 @@
>  Changes with APR b1  
>  
> +  *) Add --with-efence to allow usage of Electric Fence.
> +     [Justin Erenkrantz]
> +
>    *) Put new pools code in place which allows applications to
>       switch off locking on pools operations in case a pool is
>       guaranteed to never being used in more than one thread
> Index: configure.in
> ===================================================================
> RCS file: /home/cvs/apr/configure.in,v
> retrieving revision 1.390
> diff -u -r1.390 configure.in
> --- configure.in	2001/12/14 02:45:15	1.390
> +++ configure.in	2001/12/14 10:24:17
> @@ -131,12 +131,15 @@
>  fi
>  
>  dnl On AIX, libraries need to be specified on the link of lib_target
> +lib_target_libs=""
>  case $host in
>      *aix*)
>          lib_target_libs="\$(EXTRA_LIBS)";
>          ;;
> +    *-solaris2*)
> +        apr_platform_runtime_link_flag="-R"
> +        ;;
>      *)
> -        lib_target_libs=""
>          ;;
>  esac
>  
> @@ -184,6 +187,23 @@
>      fi
>    fi
>  )dnl
> +
> +dnl Electric Fence malloc checker.
> +dnl --with-efence specifies the path to Electric Fence
> +AC_ARG_WITH(efence, 
> +  [  --with-efence[[=DIR]]       path to Electric Fence installation], 
> +  [ apr_efence_dir="$withval"
> +    if test "$apr_efence_dir" != "yes"; then
> +      APR_ADDTO(LDFLAGS,[-L$apr_efence_dir/lib])
> +      if test "x$apr_platform_runtime_link_flag" != "x"; then
> +          APR_ADDTO(LDFLAGS, 
> +                    [$apr_platform_runtime_link_flag$apr_efence_dir/lib])
> +      fi
> +    fi
> +    AC_CHECK_LIB(efence, malloc, 
> +                 [ APR_ADDTO(LIBS,-lefence) ],
> +                 [ AC_MSG_ERROR(Electric Fence requested but not detected) ])
> +  ])
>  
>  if test "$host" = "i586-pc-beos"; then
>    AC_ARG_ENABLE(malloc-debug,[  --enable-malloc-debug   Switch on malloc_debug for BeOS],
> 
> 

Mime
View raw message