Author: dreiss
Date: Fri Sep 19 17:14:01 2008
New Revision: 697294

URL: http://svn.apache.org/viewvc?rev=697294&view=rev
Log:
contrib/fb303: Some changes to the build for the Scribe release

Added:
    incubator/thrift/trunk/contrib/fb303/aclocal/
    incubator/thrift/trunk/contrib/fb303/aclocal/ax_boost_base.m4
    incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/
    incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/__init__.py
    incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py  
 (contents, props changed)
      - copied, changed from r692185, 
incubator/thrift/trunk/contrib/fb303/scripts/fb303_simple_mgmt.py
Removed:
    incubator/thrift/trunk/contrib/fb303/scripts/
Modified:
    incubator/thrift/trunk/contrib/fb303/README
    incubator/thrift/trunk/contrib/fb303/aclocal.m4
    incubator/thrift/trunk/contrib/fb303/bootstrap.sh
    incubator/thrift/trunk/contrib/fb303/configure.ac
    incubator/thrift/trunk/contrib/fb303/cpp/Makefile.am
    incubator/thrift/trunk/contrib/fb303/py/setup.py

Modified: incubator/thrift/trunk/contrib/fb303/README
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/README?rev=697294&r1=697293&r2=697294&view=diff
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/README (original)
+++ incubator/thrift/trunk/contrib/fb303/README Fri Sep 19 17:14:01 2008
@@ -29,5 +29,9 @@
 Yes. fb303 is distributed under the Thrift Software License. See the
 LICENSE file for more details.
 
+* Installation *
+fb303 is configured/built/installed similar to Thrift.  See the README
+in the Thrift root directory for more information.
+
 * Who wrote this README? *
 [EMAIL PROTECTED]

Modified: incubator/thrift/trunk/contrib/fb303/aclocal.m4
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/aclocal.m4?rev=697294&r1=697293&r2=697294&view=diff
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/aclocal.m4 (original)
+++ incubator/thrift/trunk/contrib/fb303/aclocal.m4 Fri Sep 19 17:14:01 2008
@@ -848,4 +848,5 @@
 AC_SUBST([am__untar])
 ]) # _AM_PROG_TAR
 
+m4_include([aclocal/ax_boost_base.m4])
 m4_include([acinclude.m4])

Added: incubator/thrift/trunk/contrib/fb303/aclocal/ax_boost_base.m4
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/aclocal/ax_boost_base.m4?rev=697294&view=auto
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/aclocal/ax_boost_base.m4 (added)
+++ incubator/thrift/trunk/contrib/fb303/aclocal/ax_boost_base.m4 Fri Sep 19 
17:14:01 2008
@@ -0,0 +1,198 @@
+##### http://autoconf-archive.cryp.to/ax_boost_base.html
+#
+# SYNOPSIS
+#
+#   AX_BOOST_BASE([MINIMUM-VERSION])
+#
+# DESCRIPTION
+#
+#   Test for the Boost C++ libraries of a particular version (or newer)
+#
+#   If no path to the installed boost library is given the macro
+#   searchs under /usr, /usr/local, /opt and /opt/local and evaluates
+#   the $BOOST_ROOT environment variable. Further documentation is
+#   available at <http://randspringer.de/boost/index.html>.
+#
+#   This macro calls:
+#
+#     AC_SUBST(BOOST_CPPFLAGS) / AC_SUBST(BOOST_LDFLAGS)
+#
+#   And sets:
+#
+#     HAVE_BOOST
+#
+# LAST MODIFICATION
+#
+#   2007-07-28
+#
+# COPYLEFT
+#
+#   Copyright (c) 2007 Thomas Porschberg <[EMAIL PROTECTED]>
+#
+#   Copying and distribution of this file, with or without
+#   modification, are permitted in any medium without royalty provided
+#   the copyright notice and this notice are preserved.
+
+AC_DEFUN([AX_BOOST_BASE],
+[
+AC_ARG_WITH([boost],
+       AS_HELP_STRING([--with-boost@<:@=DIR@:>@], [use boost (default is yes) 
- it is possible to specify the root directory for boost (optional)]),
+       [
+    if test "$withval" = "no"; then
+               want_boost="no"
+    elif test "$withval" = "yes"; then
+        want_boost="yes"
+        ac_boost_path=""
+    else
+           want_boost="yes"
+        ac_boost_path="$withval"
+       fi
+    ],
+    [want_boost="yes"])
+
+if test "x$want_boost" = "xyes"; then
+       boost_lib_version_req=ifelse([$1], ,1.20.0,$1)
+       boost_lib_version_req_shorten=`expr $boost_lib_version_req : 
'\([[0-9]]*\.[[0-9]]*\)'`
+       boost_lib_version_req_major=`expr $boost_lib_version_req : 
'\([[0-9]]*\)'`
+       boost_lib_version_req_minor=`expr $boost_lib_version_req : 
'[[0-9]]*\.\([[0-9]]*\)'`
+       boost_lib_version_req_sub_minor=`expr $boost_lib_version_req : 
'[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'`
+       if test "x$boost_lib_version_req_sub_minor" = "x" ; then
+               boost_lib_version_req_sub_minor="0"
+       fi
+       WANT_BOOST_VERSION=`expr $boost_lib_version_req_major \* 100000 \+  
$boost_lib_version_req_minor \* 100 \+ $boost_lib_version_req_sub_minor`
+       AC_MSG_CHECKING(for boostlib >= $boost_lib_version_req)
+       succeeded=no
+
+       dnl first we check the system location for boost libraries
+       dnl this location ist chosen if boost libraries are installed with the 
--layout=system option
+       dnl or if you install boost with RPM
+       if test "$ac_boost_path" != ""; then
+               BOOST_LDFLAGS="-L$ac_boost_path/lib"
+               BOOST_CPPFLAGS="-I$ac_boost_path/include"
+       else
+               for ac_boost_path_tmp in /usr /usr/local /opt /opt/local ; do
+                       if test -d "$ac_boost_path_tmp/include/boost" && test 
-r "$ac_boost_path_tmp/include/boost"; then
+                               BOOST_LDFLAGS="-L$ac_boost_path_tmp/lib"
+                               BOOST_CPPFLAGS="-I$ac_boost_path_tmp/include"
+                               break;
+                       fi
+               done
+       fi
+
+       CPPFLAGS_SAVED="$CPPFLAGS"
+       CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+       export CPPFLAGS
+
+       LDFLAGS_SAVED="$LDFLAGS"
+       LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
+       export LDFLAGS
+
+       AC_LANG_PUSH(C++)
+       AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+       @%:@include <boost/version.hpp>
+       ]], [[
+       #if BOOST_VERSION >= $WANT_BOOST_VERSION
+       // Everything is okay
+       #else
+       #  error Boost version is too old
+       #endif
+       ]])],[
+        AC_MSG_RESULT(yes)
+       succeeded=yes
+       found_system=yes
+               ],[
+               ])
+       AC_LANG_POP([C++])
+
+
+
+       dnl if we found no boost with system layout we search for boost 
libraries
+       dnl built and installed without the --layout=system option or for a 
staged(not installed) version
+       if test "x$succeeded" != "xyes"; then
+               _version=0
+               if test "$ac_boost_path" != ""; then
+                               BOOST_LDFLAGS="-L$ac_boost_path/lib"
+                       if test -d "$ac_boost_path" && test -r 
"$ac_boost_path"; then
+                               for i in `ls -d $ac_boost_path/include/boost-* 
2>/dev/null`; do
+                                       _version_tmp=`echo $i | sed 
"s#$ac_boost_path##" | sed 's/\/include\/boost-//' | sed 's/_/./'`
+                                       V_CHECK=`expr $_version_tmp \> 
$_version`
+                                       if test "$V_CHECK" = "1" ; then
+                                               _version=$_version_tmp
+                                       fi
+                                       VERSION_UNDERSCORE=`echo $_version | 
sed 's/\./_/'`
+                                       
BOOST_CPPFLAGS="-I$ac_boost_path/include/boost-$VERSION_UNDERSCORE"
+                               done
+                       fi
+               else
+                       for ac_boost_path in /usr /usr/local /opt /opt/local ; 
do
+                               if test -d "$ac_boost_path" && test -r 
"$ac_boost_path"; then
+                                       for i in `ls -d 
$ac_boost_path/include/boost-* 2>/dev/null`; do
+                                               _version_tmp=`echo $i | sed 
"s#$ac_boost_path##" | sed 's/\/include\/boost-//' | sed 's/_/./'`
+                                               V_CHECK=`expr $_version_tmp \> 
$_version`
+                                               if test "$V_CHECK" = "1" ; then
+                                                       _version=$_version_tmp
+                                                       best_path=$ac_boost_path
+                                               fi
+                                       done
+                               fi
+                       done
+
+                       VERSION_UNDERSCORE=`echo $_version | sed 's/\./_/'`
+                       
BOOST_CPPFLAGS="-I$best_path/include/boost-$VERSION_UNDERSCORE"
+                       BOOST_LDFLAGS="-L$best_path/lib"
+
+                       if test "x$BOOST_ROOT" != "x"; then
+                               if test -d "$BOOST_ROOT" && test -r 
"$BOOST_ROOT" && test -d "$BOOST_ROOT/stage/lib" && test -r 
"$BOOST_ROOT/stage/lib"; then
+                                       version_dir=`expr //$BOOST_ROOT : 
'.*/\(.*\)'`
+                                       stage_version=`echo $version_dir | sed 
's/boost_//' | sed 's/_/./g'`
+                                       stage_version_shorten=`expr 
$stage_version : '\([[0-9]]*\.[[0-9]]*\)'`
+                                       V_CHECK=`expr $stage_version_shorten 
\>\= $_version`
+                                       if test "$V_CHECK" = "1" ; then
+                                               AC_MSG_NOTICE(We will use a 
staged boost library from $BOOST_ROOT)
+                                               BOOST_CPPFLAGS="-I$BOOST_ROOT"
+                                               
BOOST_LDFLAGS="-L$BOOST_ROOT/stage/lib"
+                                       fi
+                               fi
+                       fi
+               fi
+
+               CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
+               export CPPFLAGS
+               LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
+               export LDFLAGS
+
+               AC_LANG_PUSH(C++)
+               AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+               @%:@include <boost/version.hpp>
+               ]], [[
+               #if BOOST_VERSION >= $WANT_BOOST_VERSION
+               // Everything is okay
+               #else
+               #  error Boost version is too old
+               #endif
+               ]])],[
+               AC_MSG_RESULT(yes)
+               succeeded=yes
+               found_system=yes
+                       ],[
+               ])
+               AC_LANG_POP([C++])
+       fi
+
+       if test "$succeeded" != "yes" ; then
+               if test "$_version" = "0" ; then
+                       AC_MSG_ERROR([[We could not detect the boost libraries 
(version $boost_lib_version_req_shorten or higher). If you have a staged boost 
library (still not installed) please specify \$BOOST_ROOT in your environment 
and do not give a PATH to --with-boost option.  If you are sure you have boost 
installed, then check your version number looking in <boost/version.hpp>. See 
http://randspringer.de/boost for more documentation.]])
+               else
+                       AC_MSG_NOTICE([Your boost libraries seems to old 
(version $_version).])
+               fi
+       else
+               AC_SUBST(BOOST_CPPFLAGS)
+               AC_SUBST(BOOST_LDFLAGS)
+               AC_DEFINE(HAVE_BOOST,,[define if the Boost library is 
available])
+       fi
+
+        CPPFLAGS="$CPPFLAGS_SAVED"
+               LDFLAGS="$LDFLAGS_SAVED"
+fi
+
+])

Modified: incubator/thrift/trunk/contrib/fb303/bootstrap.sh
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/bootstrap.sh?rev=697294&r1=697293&r2=697294&view=diff
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/bootstrap.sh (original)
+++ incubator/thrift/trunk/contrib/fb303/bootstrap.sh Fri Sep 19 17:14:01 2008
@@ -2,7 +2,7 @@
 
 
 # To be safe include -I flag
-aclocal
+aclocal -I ./aclocal
 automake -a
 autoconf
 ./configure --config-cache $*

Modified: incubator/thrift/trunk/contrib/fb303/configure.ac
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/configure.ac?rev=697294&r1=697293&r2=697294&view=diff
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/configure.ac (original)
+++ incubator/thrift/trunk/contrib/fb303/configure.ac Fri Sep 19 17:14:01 2008
@@ -26,6 +26,11 @@
 # To change the current default you must change bootstrap.sh.
 FB_WITH_EXTERNAL_PATH([`pwd`])
 
+AC_ARG_VAR([PY_PREFIX], [Prefix for installing Python modules.
+                         (Normal --prefix is ignored for Python because
+                         Python has different conventions.)
+                         Default = "/usr"])
+AS_IF([test "x$PY_PREFIX" = x], [PY_PREFIX="/usr"])
 
 ##########################################################################
 # User Configurable
@@ -46,7 +51,9 @@
 
 # Example: sets $(thrift_home) variable with default path set to /usr/local.
 FB_WITH_PATH([thrift_home], [thriftpath], [/usr/local])
-FB_WITH_PATH([boost_home], [boostpath], [/usr/local/boost])
+
+# Require boost 1.33.1 or later
+AX_BOOST_BASE([1.33.1])
 
 # Generates Makefile from Makefile.am. Modify when new subdirs are added.
 # Change Makefile.am also to add subdirectly.

Modified: incubator/thrift/trunk/contrib/fb303/cpp/Makefile.am
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/cpp/Makefile.am?rev=697294&r1=697293&r2=697294&view=diff
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/cpp/Makefile.am (original)
+++ incubator/thrift/trunk/contrib/fb303/cpp/Makefile.am Fri Sep 19 17:14:01 
2008
@@ -5,7 +5,6 @@
 
 # User specified path variables set in configure.ac.
 # thrift_home
-# boost_home
 #
 THRIFT = $(thrift_home)/bin/thrift
 
@@ -20,7 +19,8 @@
 
 AM_CPPFLAGS = -I..
 AM_CPPFLAGS += -Igen-cpp
-AM_CPPFLAGS += -I$(thrift_home)/include/thrift 
-I$(boost_home)/include/boost-1_33_1
+AM_CPPFLAGS += -I$(thrift_home)/include/thrift 
+AM_CPPFLAGS += $(BOOST_CPPFLAGS)
 AM_CPPFLAGS += $(FB_CPPFLAGS) $(DEBUG_CPPFLAGS)
 
 # GENERATE BUILD RULES

Added: incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/__init__.py
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/__init__.py?rev=697294&view=auto
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/__init__.py (added)
+++ incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/__init__.py Fri Sep 
19 17:14:01 2008
@@ -0,0 +1 @@
+__all__ = ['fb303_simple_mgmt']

Copied: 
incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py 
(from r692185, 
incubator/thrift/trunk/contrib/fb303/scripts/fb303_simple_mgmt.py)
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py?p2=incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py&p1=incubator/thrift/trunk/contrib/fb303/scripts/fb303_simple_mgmt.py&r1=692185&r2=697294&rev=697294&view=diff
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/scripts/fb303_simple_mgmt.py (original)
+++ incubator/thrift/trunk/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py 
Fri Sep 19 17:14:01 2008
@@ -151,17 +151,21 @@
         return "WARNING"
 
 
-def main(port, command):
-    status = service_ctrl(options.command, options.port)
-    sys.exit(status)
+def main():
 
+    # parse command line options
+    parser = OptionParser()
+    commands=["stop","counters","status","reload","version","name","alive"]
+
+    parser.add_option("-c", "--command", dest="command", help="execute this 
API",
+                      choices=commands, default="status")
+    parser.add_option("-p","--port",dest="port",help="the service's port",
+                      default=9082)
 
-# parse command line options
-parser = OptionParser()
-parser.add_option("-c", "--command", dest="command", help="execute this API", 
choices=["stop","counters","status","reload","version","name","alive"],
-                  default="status")
-parser.add_option("-p","--port",dest="port",help="the service's port", 
default=9082)
+    (options, args) = parser.parse_args()
+    status = service_ctrl(options.command, options.port)
+    sys.exit(status)
 
-(options, args) = parser.parse_args()
 
-main(options.port, options.command)
+if __name__ == '__main__':
+    main()

Modified: incubator/thrift/trunk/contrib/fb303/py/setup.py
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/contrib/fb303/py/setup.py?rev=697294&r1=697293&r2=697294&view=diff
==============================================================================
--- incubator/thrift/trunk/contrib/fb303/py/setup.py (original)
+++ incubator/thrift/trunk/contrib/fb303/py/setup.py Fri Sep 19 17:14:01 2008
@@ -2,6 +2,7 @@
 
 setup(name='fb303',
       version='1.0',
-      packages=['fb303'],
+      packages=['fb303', 'fb303_scripts'],
       )
 
+


Reply via email to