diff options
| author | Amar Tumballi <amarts@redhat.com> | 2019-08-01 15:44:15 +0530 | 
|---|---|---|
| committer | Amar Tumballi <amar@kadalu.io> | 2020-02-06 05:26:31 +0000 | 
| commit | f121b156cca43148595229e07a9c5a5a4561627c (patch) | |
| tree | 0cdf87342a427a0022d1b7c7aafd0ed078373689 | |
| parent | 4e9fc11b0659957e76565f6557ad1079c51d6832 (diff) | |
configure: add an option to build with tcmalloc library
With this patch, one can now use '--enable-tcmalloc' while running
configure, and they can see that their glusterfs is linked with
libtcmalloc.
[atumball@local build]$ ldd /usr/local/sbin/glusterfs | grep tcmalloc
	libtcmalloc.so.4 => /lib64/libtcmalloc.so.4 (0x00007feec0b87000)
Once we establish a standard performance number with and without this option,
we will see how to make it default.
Updates: #237
Change-Id: I3377f57bfe4e17f101a212e1914a6d3c1687d528
Signed-off-by: Amar Tumballi <amarts@redhat.com>
| -rw-r--r-- | configure.ac | 14 | 
1 files changed, 14 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index d9af961edf1..0d236f6c359 100644 --- a/configure.ac +++ b/configure.ac @@ -305,6 +305,19 @@ else          BUILD_TSAN=no  fi +# Initialize CFLAGS before usage +BUILD_TCMALLOC=no +AC_ARG_ENABLE([tcmalloc], +              AC_HELP_STRING([--enable-tcmalloc], +                             [Enable linking with tcmalloc library.])) +if test "x$enable_tcmalloc" = "xyes"; then +    BUILD_TCMALLOC=yes +    GF_CFLAGS="${GF_CFLAGS} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free" +    AC_CHECK_LIB([tcmalloc], [malloc], [], +                 [AC_MSG_ERROR([when --enable-tcmalloc is used, tcmalloc library needs to be present])]) +    GF_LDFLAGS="-ltcmalloc ${GF_LDFLAGS}" +fi +  dnl When possible, prefer libtirpc over glibc rpc.  dnl @@ -1585,6 +1598,7 @@ echo "IPV6 default         : $with_ipv6_default"  echo "Use TIRPC            : $with_libtirpc"  echo "With Python          : ${PYTHON_VERSION}"  echo "Cloudsync            : $BUILD_CLOUDSYNC" +echo "Link with TCMALLOC   : $BUILD_TCMALLOC"  echo  if test "x$BUILD_ASAN" = "xyes"; then  | 
