The following patch removes all dependencies to libapr when
--enable-static-build is used in preparation for removing libapr (version
0.9.7) from srclib.

This allows for cleaner packaging by using the system provided libapr if
available or one provided at compile time with --with-libapr that can be
linked either statically or dynamically and will allow for the removal
of all libapr0 compatibility code.

This patch needs to be applied on top of the previous one to remove libconfuse
and has been tested to build correctly with and without --enable-static-build
in linux and cygwin.

Beware that cygwin won't be able to generate working binaries for ganglia
because of DSO linking problems in cygwin as reported in :

  
http://www.mail-archive.com/[email protected]/msg03375.html

Signed-off-by: Carlo Marcelo Arenas Belon <[EMAIL PROTECTED]>
---
 trunk/monitor-core/README.WIN                      |   18 +------
 trunk/monitor-core/configure.in                    |   54 ++++++++-----------
 trunk/monitor-core/gmetad/Makefile.am              |    7 +--
 trunk/monitor-core/gmetric/Makefile.am             |    6 +-
 trunk/monitor-core/gmond/Makefile.am               |    8 ++--
 trunk/monitor-core/gmond/modules/cpu/Makefile.am   |    5 +-
 trunk/monitor-core/gmond/modules/disk/Makefile.am  |    4 +-
 .../monitor-core/gmond/modules/example/Makefile.am |    5 +-
 .../monitor-core/gmond/modules/memory/Makefile.am  |    5 +--
 .../monitor-core/gmond/modules/network/Makefile.am |    5 +--
 .../monitor-core/gmond/modules/python/Makefile.am  |    5 +-
 .../monitor-core/gmond/modules/status/Makefile.am  |    5 +-
 .../monitor-core/gmond/modules/system/Makefile.am  |    4 +-
 trunk/monitor-core/lib/Makefile.am                 |    7 +--
 trunk/monitor-core/srclib/Makefile.am              |    7 +--
 15 files changed, 51 insertions(+), 94 deletions(-)

diff --git a/trunk/monitor-core/README.WIN b/trunk/monitor-core/README.WIN
index 242e6a8..0dabf27 100644
--- a/trunk/monitor-core/README.WIN
+++ b/trunk/monitor-core/README.WIN
@@ -10,7 +10,7 @@ instructions as in the UNIX platforms with some work arounds.
 Prerequisites
 ------------- 
 
-Latest version of Cygwin with the following packages: autoconf, automake, 
+Latest version of Cygwin with the following packages: apr1, autoconf, 
automake, 
 bison, expat, diffutils, flex, gcc, libtool, make, sharutils, sunrpc and
 svn to checkout the source code.
 
@@ -36,20 +36,6 @@ Go to libmetrics directory and type the following commands
 
 The steps above generates the configure file for libmetrics.
 
-Download the APR project from http://apr.apache.org/download.cgi. Build 
-the project with the following commands.
-
-  ./configure
-  make
-  make install - this command installs APR in the /usr/local directory.
-
-There is a older version of APR project in the srclib directory. Building 
-APR from the srclib would not work. 
-
-copy all the .h files from /usr/lib/apr/include/apr-1 to /usr/local/include
-cp /usr/local/apr/lib/libapr-1.a /usr/local/lib/
-cp /usr/local/apr/lib/libapr-1.la /usr/local/lib/
-
 Download libconfuse, build it and install the libconfuse library.
 ./configure
 make
@@ -57,7 +43,7 @@ make install
 
 Go to the ganglia directory, and run the following command to build Ganglia
 
-./configure --with-libapr=/usr/local/apr --with-libconfuse=/usr/local
+./configure --with-libconfuse=/usr/local
 
 When the make command is executed, this command will fail at the rpcgen 
 tool not able to generate the src files. This is because the rpcgen tool 
diff --git a/trunk/monitor-core/configure.in b/trunk/monitor-core/configure.in
index 0f6304c..f0086e2 100644
--- a/trunk/monitor-core/configure.in
+++ b/trunk/monitor-core/configure.in
@@ -140,11 +140,6 @@ cd libmetrics && ./configure 
--cache-file=$ganglia_popdir/config.cache
 cd $ganglia_popdir
 
 if test x"$enable_static_build" = xyes ; then
-
-  echo $ac_n "${nl}Configuring apr ...${nl}"
-  cd srclib/apr && ./configure --cache-file=$ganglia_popdir/config.cache 
--prefix=$prefix
-  cd $ganglia_popdir
-
   modpathstart="#"
 fi
 
@@ -277,36 +272,33 @@ dnl   AC_CHECK_LIB(python{PyVERSION}, set_python_path, 
[echo "The ganglia python
    fi
 fi
 
-AM_CONDITIONAL(USE_DYNAMIC_APR, test x$libapr = xyes)
-
 if test x"$enable_static_build" = xno ; then
+  modpathstart=""
+fi
 
-  echo
-  echo Checking for apr
-  if test x"$libaprpath" != x && test x"$libaprpath" != xyes ; then
-    CFLAGS="$CFLAGS -I$libaprpath/include"
-    LDFLAGS="$LDFLAGS -L$libaprpath/lib"
-    echo "Added -I$libaprpath/include to CFLAGS"
-    echo "Added -I$libaprpath/lib to LDLAGS"
-  else
-    AC_PATH_PROG(APR_CONFIG, apr-1-config)
-    if test -z "$APR_CONFIG"; then
-      AC_MSG_ERROR(apr-1-config binary not found in path)
-    fi
-    APR_INCLUDES=`$APR_CONFIG --includes`
-    AC_SUBST(APR_INCLUDES)
-  fi
-
-  AC_CHECK_LIB(apr-1, apr_socket_send,,,[`$APR_CONFIG --link-ld --libs`])
-  if test $ac_cv_lib_apr_1_apr_socket_send = yes; then
-    echo "The ganglia utilities use the Apache Portable Runtime functions 
(http://www.apache.org/)"
-    echo "Found a suitable libapr1 library"
-  else
-    echo "libapr not found"
-    exit;
+echo
+echo Checking for apr
+if test x"$libaprpath" != x && test x"$libaprpath" != xyes ; then
+  CFLAGS="$CFLAGS -I$libaprpath/include"
+  LDFLAGS="$LDFLAGS -L$libaprpath/lib"
+  echo "Added -I$libaprpath/include to CFLAGS"
+  echo "Added -I$libaprpath/lib to LDLAGS"
+else
+  AC_PATH_PROG(APR_CONFIG, apr-1-config)
+  if test -z "$APR_CONFIG"; then
+    AC_MSG_ERROR(apr-1-config binary not found in path)
   fi
+  APR_INCLUDES=`$APR_CONFIG --includes`
+  AC_SUBST(APR_INCLUDES)
+fi
 
-  modpathstart=""
+AC_CHECK_LIB(apr-1, apr_socket_send,,,[`$APR_CONFIG --link-ld --libs`])
+if test $ac_cv_lib_apr_1_apr_socket_send = yes; then
+  echo "The ganglia utilities use the Apache Portable Runtime functions 
(http://www.apache.org/)"
+  echo "Found a suitable libapr1 library"
+else
+  echo "libapr not found"
+  exit;
 fi
 
 echo
diff --git a/trunk/monitor-core/gmetad/Makefile.am 
b/trunk/monitor-core/gmetad/Makefile.am
index addeb2c..9a29768 100644
--- a/trunk/monitor-core/gmetad/Makefile.am
+++ b/trunk/monitor-core/gmetad/Makefile.am
@@ -1,10 +1,9 @@
+GCFLAGS = 
+GLDADD = 
+
 if STATIC_BUILD
-GCFLAGS = -I$(top_builddir)/srclib/apr/include/
-GLDADD = $(top_builddir)/srclib/apr/libapr-0.la
 GLDFLAGS = -static
 else
-GCFLAGS = 
-GLDADD = 
 GLDFLAGS = 
 endif
 
diff --git a/trunk/monitor-core/gmetric/Makefile.am 
b/trunk/monitor-core/gmetric/Makefile.am
index 2d09965..51e4922 100644
--- a/trunk/monitor-core/gmetric/Makefile.am
+++ b/trunk/monitor-core/gmetric/Makefile.am
@@ -1,10 +1,10 @@
+GLDADD = 
+
 if STATIC_BUILD
-GCFLAGS = -I$(top_builddir)/srclib/apr/include/
-GLDADD = $(top_builddir)/srclib/apr/libapr-0.la
+GCFLAGS =
 GLDFLAGS = -static
 else
 GCFLAGS = -D_LARGEFILE64_SOURCE
-GLDADD = 
 GLDFLAGS = 
 endif
 
diff --git a/trunk/monitor-core/gmond/Makefile.am 
b/trunk/monitor-core/gmond/Makefile.am
index 1def98d..767bcde 100644
--- a/trunk/monitor-core/gmond/Makefile.am
+++ b/trunk/monitor-core/gmond/Makefile.am
@@ -2,9 +2,9 @@ SUBDIRS = gstat modules python_modules
 
 EXTRA_DIST = gmond.aix.init gmond.init gmond.init.SuSE gmond.conf.5 
gmond.conf.html conf.pod
 if STATIC_BUILD
-GCFLAGS = -I$(top_builddir)/srclib/apr/include/
-GLDADD = $(top_builddir)/srclib/apr/libapr-0.la \
-       modules/disk/mod_disk.lo modules/cpu/mod_cpu.lo modules/cpu/mod_load.lo 
\
+GCFLAGS =
+GLDADD = modules/disk/mod_disk.lo\
+       modules/cpu/mod_cpu.lo modules/cpu/mod_load.lo \
        modules/memory/mod_mem.lo modules/network/mod_net.lo \
        modules/system/mod_proc.lo modules/system/mod_sys.lo
 GLDFLAGS = -static -export-dynamic
@@ -16,8 +16,8 @@ else
 GCFLAGS = -D_LARGEFILE64_SOURCE
 GLDADD = 
 GLDFLAGS = -export-dynamic
-INCLUDES = @APR_INCLUDES@
 endif
+INCLUDES = @APR_INCLUDES@
 
 AM_CFLAGS = -I$(top_builddir)/lib -I$(top_builddir)/libmetrics/ $(GCFLAGS) 
 
diff --git a/trunk/monitor-core/gmond/modules/cpu/Makefile.am 
b/trunk/monitor-core/gmond/modules/cpu/Makefile.am
index 71a4076..15f389e 100755
--- a/trunk/monitor-core/gmond/modules/cpu/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/cpu/Makefile.am
@@ -1,7 +1,6 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/
 noinst_LTLIBRARIES    = libmodcpu.la
 libmodcpu_la_SOURCES = mod_cpu.c mod_load.c 
 else
@@ -20,6 +19,6 @@ modload_la_LIBADD = $(top_builddir)/libmetrics/libmetrics.la
 
 EXTRA_DIST = ../conf.d/multicpu.conf
 
-INCLUDES = @APR_INCLUDES@
-
 endif
+
+INCLUDES = @APR_INCLUDES@
diff --git a/trunk/monitor-core/gmond/modules/disk/Makefile.am 
b/trunk/monitor-core/gmond/modules/disk/Makefile.am
index 7b1631c..49e86ab 100755
--- a/trunk/monitor-core/gmond/modules/disk/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/disk/Makefile.am
@@ -1,7 +1,6 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/
 noinst_LTLIBRARIES    = libmoddisk.la
 libmoddisk_la_SOURCES = mod_disk.c 
 else
@@ -9,7 +8,6 @@ pkglib_LTLIBRARIES    = moddisk.la
 moddisk_la_SOURCES = mod_disk.c 
 moddisk_la_LDFLAGS = -module 
 moddisk_la_LIBADD = $(top_builddir)/libmetrics/libmetrics.la
+endif
 
 INCLUDES = @APR_INCLUDES@
-
-endif
diff --git a/trunk/monitor-core/gmond/modules/example/Makefile.am 
b/trunk/monitor-core/gmond/modules/example/Makefile.am
index 92b8d49..03c7f39 100755
--- a/trunk/monitor-core/gmond/modules/example/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/example/Makefile.am
@@ -1,7 +1,6 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/
 noinst_LTLIBRARIES    = libmodexample.la
 libmodexample_la_SOURCES = mod_example.c 
 else
@@ -11,10 +10,10 @@ modexample_la_LDFLAGS = -module
 
 EXTRA_DIST = ../conf.d/example.conf
 
-INCLUDES = @APR_INCLUDES@
-
 endif
 
+INCLUDES = @APR_INCLUDES@
+
 install:
        echo
        echo "Examples should be installed manually"
diff --git a/trunk/monitor-core/gmond/modules/memory/Makefile.am 
b/trunk/monitor-core/gmond/modules/memory/Makefile.am
index e765d9d..1462f41 100755
--- a/trunk/monitor-core/gmond/modules/memory/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/memory/Makefile.am
@@ -1,16 +1,13 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/
 noinst_LTLIBRARIES    = libmodmem.la
 libmodmem_la_SOURCES = mod_mem.c 
 else
 pkglib_LTLIBRARIES    = modmem.la
-
 modmem_la_SOURCES = mod_mem.c 
 modmem_la_LDFLAGS = -module 
 modmem_la_LIBADD = $(top_builddir)/libmetrics/libmetrics.la
+endif
 
 INCLUDES = @APR_INCLUDES@
-
-endif
diff --git a/trunk/monitor-core/gmond/modules/network/Makefile.am 
b/trunk/monitor-core/gmond/modules/network/Makefile.am
index 998ffff..bd31052 100755
--- a/trunk/monitor-core/gmond/modules/network/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/network/Makefile.am
@@ -1,16 +1,13 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/
 noinst_LTLIBRARIES    = libmodnet.la
 libmodnet_la_SOURCES = mod_net.c
 else
 pkglib_LTLIBRARIES    = modnet.la
-
 modnet_la_SOURCES = mod_net.c 
 modnet_la_LDFLAGS = -module 
 modnet_la_LIBADD = $(top_builddir)/libmetrics/libmetrics.la
+endif
 
 INCLUDES = @APR_INCLUDES@
-
-endif
diff --git a/trunk/monitor-core/gmond/modules/python/Makefile.am 
b/trunk/monitor-core/gmond/modules/python/Makefile.am
index 27cbc1a..02b7f73 100644
--- a/trunk/monitor-core/gmond/modules/python/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/python/Makefile.am
@@ -1,7 +1,6 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/ @PYTHON_INCLUDES@
 noinst_LTLIBRARIES    = libmodpython.la
 libmodpython_la_SOURCES = mod_python.c 
 else
@@ -11,6 +10,6 @@ modpython_la_LDFLAGS = -module [EMAIL PROTECTED]@
 
 EXTRA_DIST = ../conf.d/modpython.conf
 
-INCLUDES = @APR_INCLUDES@ @PYTHON_INCLUDES@
-
 endif 
+
+INCLUDES = @APR_INCLUDES@ @PYTHON_INCLUDES@
diff --git a/trunk/monitor-core/gmond/modules/status/Makefile.am 
b/trunk/monitor-core/gmond/modules/status/Makefile.am
index 9bc3fe5..0302abc 100755
--- a/trunk/monitor-core/gmond/modules/status/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/status/Makefile.am
@@ -1,7 +1,6 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/
 noinst_LTLIBRARIES   = libmodstatus.la
 libmodstatus_la_SOURCES = mod_gstatus.c 
 else
@@ -11,6 +10,6 @@ modgstatus_la_LDFLAGS = -module
 
 EXTRA_DIST = ../conf.d/modgstatus.conf
 
-INCLUDES = @APR_INCLUDES@
-
 endif
+
+INCLUDES = @APR_INCLUDES@
diff --git a/trunk/monitor-core/gmond/modules/system/Makefile.am 
b/trunk/monitor-core/gmond/modules/system/Makefile.am
index 453aa90..9c377af 100755
--- a/trunk/monitor-core/gmond/modules/system/Makefile.am
+++ b/trunk/monitor-core/gmond/modules/system/Makefile.am
@@ -1,7 +1,6 @@
 AM_CFLAGS  = -D_LARGEFILE64_SOURCE -I$(top_builddir)/gmond 
-I$(top_builddir)/libmetrics -I$(top_builddir)/lib 
 
 if STATIC_BUILD
-AM_CFLAGS += -I$(top_builddir)/srclib/apr/include/
 noinst_LTLIBRARIES   = libmodsys.la
 libmodsys_la_SOURCES = mod_proc.c mod_sys.c 
 else
@@ -14,7 +13,6 @@ modproc_la_LIBADD = $(top_builddir)/libmetrics/libmetrics.la
 modsys_la_SOURCES = mod_sys.c 
 modsys_la_LDFLAGS = -module 
 modsys_la_LIBADD = $(top_builddir)/libmetrics/libmetrics.la
+endif
 
 INCLUDES = @APR_INCLUDES@
-
-endif
diff --git a/trunk/monitor-core/lib/Makefile.am 
b/trunk/monitor-core/lib/Makefile.am
index a00d5b3..9678782 100644
--- a/trunk/monitor-core/lib/Makefile.am
+++ b/trunk/monitor-core/lib/Makefile.am
@@ -1,16 +1,15 @@
 #SUFFIXES=.x
 #.c.x: rpcgen $<
 
-if STATIC_BUILD
-GCFLAGS = -I$(top_builddir)/srclib/apr/include/ 
-I$(top_builddir)/srclib/apr/include/arch/unix/
 GLDADD =
+if STATIC_BUILD
+GCFLAGS =
 GLDFLAGS = -static
 else
 GCFLAGS = -D_LARGEFILE64_SOURCE
-GLDADD = 
 GLDFLAGS =
-INCLUDES = @APR_INCLUDES@
 endif
+INCLUDES = @APR_INCLUDES@
 
 AM_CFLAGS = -I.. -I. -I$(top_builddir)/libmetrics/ $(GCFLAGS)  
 
diff --git a/trunk/monitor-core/srclib/Makefile.am 
b/trunk/monitor-core/srclib/Makefile.am
index 37d4f7d..d18006d 100644
--- a/trunk/monitor-core/srclib/Makefile.am
+++ b/trunk/monitor-core/srclib/Makefile.am
@@ -1,9 +1,4 @@
-
-if STATIC_BUILD
-SUBDIRS = apr
-else
-SUBDIRS = 
-endif
+SUBDIRS =
 
 test:
        echo
-- 
1.5.3.7


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Ganglia-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ganglia-developers

Reply via email to