Revision: 7363
          http://playerstage.svn.sourceforge.net/playerstage/?rev=7363&view=rev
Author:   natepak
Date:     2009-03-07 08:08:24 +0000 (Sat, 07 Mar 2009)

Log Message:
-----------
Fixed some problems with the scons build

Modified Paths:
--------------
    code/gazebo/trunk/SConstruct
    code/gazebo/trunk/build.py
    code/gazebo/trunk/libgazebo/SConscript
    code/gazebo/trunk/libgazebo/Server.cc
    code/gazebo/trunk/player/SConscript
    code/gazebo/trunk/server/Entity.cc
    code/gazebo/trunk/server/SConscript
    code/gazebo/trunk/server/World.cc
    code/gazebo/trunk/server/audio_video/SConscript
    code/gazebo/trunk/server/controllers/SConscript
    code/gazebo/trunk/server/controllers/gripper/pioneer2/Pioneer2_Gripper.cc
    code/gazebo/trunk/server/gui/SConscript
    code/gazebo/trunk/server/physics/HeightmapGeom.cc
    code/gazebo/trunk/server/physics/SConscript
    code/gazebo/trunk/server/physics/ode/SConscript
    code/gazebo/trunk/server/rendering/SConscript
    code/gazebo/trunk/server/sensors/SConscript
    code/gazebo/trunk/server/sensors/Sensor.cc
    code/gazebo/trunk/server/sensors/Sensor.hh
    code/gazebo/trunk/server/sensors/camera/SConscript
    code/gazebo/trunk/server/sensors/contact/SConscript
    code/gazebo/trunk/server/sensors/imu/SConscript
    code/gazebo/trunk/server/sensors/ir/SConscript
    code/gazebo/trunk/server/sensors/ray/SConscript

Modified: code/gazebo/trunk/SConstruct
===================================================================
--- code/gazebo/trunk/SConstruct        2009-03-04 22:19:10 UTC (rev 7362)
+++ code/gazebo/trunk/SConstruct        2009-03-07 08:08:24 UTC (rev 7363)
@@ -5,65 +5,117 @@
 
 exec(open('build.py'))
 
+
 PKG_CONFIG_VERSION = '0.22'
 OGRE_VERSION = '>= 1.6.0'
 ODE_VERSION = '>= 0.10.1'
 
+#######
+# Create a release
+#######
 if 'release' in COMMAND_LINE_TARGETS:
   CreateRelease()
   exit()
 
-#
+#######
 # Setup the Options
-#
+#######
 opts = Options()
 opts.Add('prefix', 'The install path "prefix"', '/usr/local')
 opts.Add('destdir', 'The root directory to install into. Useful mainly for 
binary package building', '/')
 opts.Add('mode','Defines how Gazebo will be built, options available: 
optimized, profile, debug','debug')
 
-#
-# 3rd party packages
-#
-parseConfigs=['pkg-config --cflags --libs OGRE',
-              'xml2-config --cflags --libs', 
-             'ode-config --cflags --libs',
-              'fltk-config --cflags --libs --ldflags --use-gl --use-images',
-              'pkg-config --cflags --libs xft',
 
-              'pkg-config --cflags --libs libavformat',
-              'pkg-config --cflags --libs libavcodec',
-              'pkg-config --cflags --libs openal'
-              ]
+#######
+# List of all the required packages
+#######
+packages = { 
+  'OGRE' : {
+            'pkgcfg': 'pkg-config --cflags --libs OGRE', 
+            'check' : 'OGRE ' + OGRE_VERSION, 
+            'msg' : 'Error: Ogre3d and development files are required, but not\
+                     found. ',
+            'flags' : '',
+            'web' : 'http://www.ogre3d.org' 
+           },
 
-#
-# setup the build environment
-#
-env = Environment (
-  CC = 'g++',
+  'ODE'  : {
+            'pkgcfg' : 'pkg-config --cflags --libs ode', 
+            'check' : 'ode ' + ODE_VERSION,
+            'msg' : 'Error: ODE and development files are required, but not\
+                     found.',
+            'flags' : '',
+            'web' : 'http://www.ode.org'
+           },
 
-  CPPPATH = [
-   '#.', 
-   '#server',
-   '#server/models',
-   '#server/gui',
-   '#server/gui/fltk',
-   '#libgazebo', 
-   '#server/rendering',
-   '#server/sensors', 
-   '#server/sensors/camera',
-   '#server/sensors/ray',
-   '#server/sensors/contact',
-   '#server/sensors/imu',
-   '#server/sensors/ir',
-   '#server/physics',
-   '#server/physics/ode',
-   '#server/controllers',
-   '#server/controllers/position2d',
-   '#server/controllers/position2d/pioneer2dx',
-   '#server/controllers/irarray',
-   '#server/audio_video',
-   ],
+  'OpenAL' : {
+              'pkgcfg' : 'pkg-config --cflags --libs openal', 
+              'check' : 'openal',
+              'msg' : 'Warning: OpenAL not found. 3D audio will be disbled',
+              'flags' : ['-DHAVE_OPENAL'],
+              'web' : 'http://www.openal.org'
+             },
 
+  'XFT' : {
+           'pkgcfg' : 'pkg-config --cflags --libs xft',
+           'check' : 'xft',
+           'msg' : 'Error: ',
+           'flags' : '',
+           'web' : 'http://www.xft.org' 
+          },
+
+  'avformat' : {
+                'pkgcfg' : 'pkg-config --cflags --libs libavformat',
+                'check' : 'libavformat',
+                'msg' : 'Warning: FFMpeg pkg-config not found. MP3 decoding\
+                         is disabled',
+                'flags' : '',
+                'web' : 'http://ffmpeg.mplayerhq.hu/' 
+               },
+
+  'avcodec' : {
+               'pkgcfg' : 'pkg-config --cflags --libs libavcodec',
+               'check' : 'libavcodec',
+               'msg' : 'Warning: FFMpeg pkg-config not found. MP3 decoding is\
+                         disabled',
+               'flags' : '',
+               'web' : 'http://ffmpeg.mplayerhq.hu/' 
+              },
+
+  'XML2' : {
+            'pkgcfg' : 'xml2-config --cflags --libs',
+            'check' : '',
+            'msg' : 'Error: libxml2 and development files are required, but\
+                      not found.',
+            'flags' : '',
+            'web' : 'http://www.xmlsoft.org' 
+           },
+
+  'FLTK' : {
+            'pkgcfg' : 'fltk-config --cflags --libs --ldflags --use-gl\
+                         --use-images',
+            'check' : '',
+            'msg' : 'Error: libfltk & development files are required, but not\
+                     found.',
+            'flags' : '',
+            'web' : 'http://www.fltk.org' 
+           },
+  'Player' : {
+              'pkgcfg' : 'pkg-config --cflags --libs playerc++',
+              'check' : 'playerc++',
+              'msg' : 'Warning: Player not found, bindings will not be built.',
+              'flags' : ['-DHAVE_PLAYER'],
+              'web' :  'http://playerstage.sourceforge.net'
+           },
+} 
+
+#######
+# setup the build environment
+#######
+env = Environment (
+  CC = 'gcc',
+  CXX = 'g++',
+  CPPPATH = [ '#.' ],
   LIBPATH=Split('#libgazebo #server/audio_video'),
     
   #LIBS=Split('gazebo boost_python')
@@ -73,18 +125,44 @@
   TARFLAGS = '-c -z',
   TARSUFFIX = '.tar.gz',
 
-  options=opts
+  options = opts,
+
+  # Static object compile string
+  CXXCOMSTR = 'Compiling $TARGET',
+  CCCOMSTR = 'Compiling $TARGET',
+  LINKCOMSTR = 'Linking $TARGET',
+
+  # Shared object compile strings
+  SHCXXCOMSTR = 'Compiling $TARGET',
+  SHCCCOMSTR = 'Compiling $TARGET',
+  SHLINKCOMSTR = 'Linking $TARGET',
 )
 
 
+#######
+# DEFAULT list of subdirectories to build
+#######
+subdirs = ['libgazebo','server', 'player']
+
+
+#######
+# Generate help text
+#######
 Help(opts.GenerateHelpText(env))
 
+
+#######
+# Setup default install destination
+#######
 if env['destdir'] != '/':
   install_prefix = env['destdir'] + '/' + env['prefix']
 else:
   install_prefix = env['prefix']
 
 
+#######
+# Create the custom builder
+#######
 env['BUILDERS']['PkgConfig'] = Builder(action = createPkgConfig)
 pkgconfig = env.PkgConfig(target='libgazeboServer.pc', 
source=Value(install_prefix))
 env.Install(dir=install_prefix+'/lib/pkgconfig', source=pkgconfig)
@@ -92,10 +170,9 @@
 env['BUILDERS']['RCConfig'] = Builder(action = createGazeborc)
 rcconfig = env.RCConfig(target='gazeborc', source=Value(install_prefix))
 
-# DEFAULT list of subdirectories to build
-subdirs = ['libgazebo','server', 'player']
-
+#######
 # Set the compile mode
+#######
 if env['mode'] == 'debug':
   env['CCFLAGS'] += Split('-ggdb -g2 -Wall -Wno-deprecated -fPIC')
 elif env['mode'] == 'profile':
@@ -104,137 +181,54 @@
 elif env['mode'] == 'optimized':
   env['CCFLAGS'] += Split('-O3 -fPIC') 
 
+optimize_for_cpu(env)
 
-optimize_for_cpu(env);
+#######
+# Conifgure the system
+#######
+Config(env, packages)
 
-# Setup the configuration environment.
-conf = Configure(env, custom_tests = {'CheckODELib' : CheckODELib,
-                                      'CheckPkgConfig' : CheckPkgConfig,
-                                      'CheckPkg' : CheckPkg})
-# Check for pkg-config 
-if not conf.CheckPkgConfig(PKG_CONFIG_VERSION):
-  print '  Error: pkg-config version >= ' + PKG_CONFIG_VERSION + ' not found.'
-  Exit(1)
-
-# Check for the correct OGRE version
-if not conf.CheckPkg('OGRE ' + OGRE_VERSION):
-  print ' Error: OGRE version = ' + OGRE_VERSION + ' not found.'
-  Exit(1)
-
-# Check for the correct ODE version
-if not conf.CheckPkg('ode ' + ODE_VERSION):
-  print ' Error: ODE version = ' + ODE_VERSION + ' not found.'
-  Exit(1)
-
-#
-# Parse all the pacakge configurations
-#
-if not env.GetOption('clean'):
-  for cfg in parseConfigs:
-    print "Checking for ["+cfg+"]"
-    try:
-      env.ParseConfig(cfg)
-      print "  Success"
-    except OSError,e:
-      print "Unable to parse config ["+cfg+"]"
-      if cfg.find("OGRE") >= 0:
-        print "Ogre3d and development files are required, but not found."
-        print "  http://www.ogre3d.org/";
-        Exit(1)
-      elif cfg.find("ode") >= 0:
-        print "ODE and development files are required, but not found."
-        print "  http://www.ode.org";
-        Exit(1)
-      elif cfg.find("xml2") >= 0:
-        print "libxml2 and development files are required, but not found."
-        print "  http://www.xmlsoft.org";
-        Exit(1)
-      elif cfg.find("fltk") >= 0:
-        print "libfltk & development files are required, but not found."
-        print "  http://www.fltk.org";
-        Exit(1)
-      elif cfg.find("OpenAL") >= 0:
-        print "OpenAL not found. 3D audio is disabled"
-        print "http://www.ogre3d.org/phpBB2addons/viewtopic.php?t=3293";
-        Exit(1)
-      elif cfg.find("avcodec") >= 0 or cfg.find("avformat") >= 0:
-        print "FFMpeg not found. MP3 decoding is disabled"
-        print "  http://ffmpeg.mplayerhq.hu/";
-        Exit(1)
-
-# Check for trimesh support in ODE
-#if not conf.CheckODELib():
-#  print '  Error: ODE not compiled with trimesh support.'
-#  Exit(1)
-
-env = conf.Finish()
-
-
-
-simpleenv = Environment(CPPPATH="/usr/include/AL")
-simpleconf = Configure(simpleenv)
-
-# Test for libtool
-if not simpleconf.CheckLibWithHeader('ltdl','ltdl.h','CXX'):
-  print "  Warning: Failed to find ltdl, no plugin support will be included"
-  env["HAVE_LTDL"]=False
-else:
-  env["HAVE_LTDL"]=True
-  env.Append(CCFLAGS = " -DHAVE_LTDL")
-  env.Append(LIBS = "ltdl")
-
-# Test for openal
-if simpleconf.CheckLibWithHeader('openal', 'al.h', 'CXX'):
-  env["HAVE_OPENAL"] = True
-else:
-  env["HAVE_OPENAL"] = False
-
-simpleconf.Finish()
-
-
-# # Check for boost_python
-#if not conf.CheckLibWithHeader('boost_python', 'boost/python.hpp', 'C'):
-#  print 'Did not find libboost_python exiting'
-#  Exit(1)
-#else:
-#  conf.env.Append(LIBS="boost_python")
-
-
+#######
+# Export the environment
+#######
 #staticObjs = []
 sharedObjs = []
 headers = []
-
-#
-# Export the environment
-#
 Export('env install_prefix version sharedObjs headers subdirs')
 
-#
-# Process subdirectories
-#
+
+#######
+# Parse subdirectories
+#######
 for subdir in subdirs:
-  print subdir
+  print 'Parsing sub directory ' + subdir
   SConscript('%s/SConscript' % subdir)
 
-#
-# Create the gazebo executable
-#
-gazebo = env.Program('gazebo',sharedObjs)
+print ''
 
-Depends(gazebo, 'libgazebo/libgazebo.so')
-#
-# Create static and shared libraries for the server
-#
-#libgazeboServerStatic = env.StaticLibrary('gazeboServer', staticObjs)
-libgazeboServerShared = env.SharedLibrary('gazeboServer', sharedObjs)
 
-#
-# Install gazebo
-#
-env.Alias('install', install_prefix)
-env.Install(install_prefix+'/bin',gazebo)
-env.Install(install_prefix+'/share/gazebo','Media')
-env.Install(install_prefix+'/include/gazebo',headers)
-#env.Install(install_prefix+'/lib',libgazeboServerStatic )
-env.Install(install_prefix+'/lib',libgazeboServerShared )
-env.Install(install_prefix+'/share/gazebo','worlds')
+#######
+# Create the gazebo executable and libraries
+#######
+if not 'configure' in COMMAND_LINE_TARGETS:
+  #Progress('Evaluating $TARGET\n')
+
+  gazebo = env.Program('gazebo',sharedObjs)
+  Depends(gazebo, 'libgazebo/libgazebo.so')
+
+  #libgazeboServerStatic = env.StaticLibrary('gazeboServer', staticObjs)
+  libgazeboServerShared = env.SharedLibrary('gazeboServer', sharedObjs)
+
+  #
+  # Install gazebo
+  #
+  env.Alias('install', install_prefix)
+  env.Install(install_prefix+'/bin',gazebo)
+  env.Install(install_prefix+'/share/gazebo','Media')
+  env.Install(install_prefix+'/include/gazebo',headers)
+  #env.Install(install_prefix+'/lib',libgazeboServerStatic )
+  env.Install(install_prefix+'/lib',libgazeboServerShared )
+  env.Install(install_prefix+'/share/gazebo','worlds')
+else:
+  print 'Configure done'
+  Exit()

Modified: code/gazebo/trunk/build.py
===================================================================
--- code/gazebo/trunk/build.py  2009-03-04 22:19:10 UTC (rev 7362)
+++ code/gazebo/trunk/build.py  2009-03-07 08:08:24 UTC (rev 7363)
@@ -114,3 +114,96 @@
   env['CCFLAGS'] += Split (line_atr)
   print "detected CPU atributes: " +line_atr
 
+
+def Config(env, packages):
+  # Setup the configuration environment.
+  conf = Configure(env, custom_tests = {'CheckODELib' : CheckODELib,
+                                        'CheckPkgConfig' : CheckPkgConfig,
+                                        'CheckPkg' : CheckPkg})
+  
+  print '\n=== 3rd Party Dependency Checks === '
+  
+  # Check for pkg-config 
+  if not conf.CheckPkgConfig(PKG_CONFIG_VERSION):
+    print '  Error: pkg-config version >= ' + PKG_CONFIG_VERSION + ' not 
found.'
+    Exit(1)
+  
+  #
+  # Parse all the pacakge configurations
+  #
+  for key in packages:
+    pkgcfg = packages[key]['pkgcfg']
+    check = packages[key]['check']
+    msg = packages[key]['msg']
+    web = packages[key]['web']
+    flags = packages[key]['flags']
+    docfg = True
+    valid = True
+  
+    # Check for the package
+    if check and not conf.CheckPkg(check):
+      docfg = False
+      valid = False
+      print '  !!' + msg + key + ' not found.'
+      print '  See: ' + web
+      if msg.find('Error') > 0:
+        Exit(1)
+  
+    # Try parsing the pkg-config
+    if docfg:
+      try:
+        if not check:
+          print "Checking for "+key+"...",
+        env.ParseConfig(pkgcfg)
+        if not check:
+          print 'yes'
+      except OSError,e:
+        valid = False
+        if not check:
+          print 'no'
+        print "Unable to parse config ["+pkgcfg+"]"
+        print '  !!' + msg + key + ' not found.'
+        print '  See: ' + web
+        if msg.find('Error') > 0:
+          Exit(1)
+  
+    # If valid so far, apply any flags to the environment
+    if valid:
+      for flag in flags:
+        env.Append(CCFLAGS = " " + flag)
+  
+  # Check for trimesh support in ODE
+  #if not conf.CheckODELib():
+  #  print '  Error: ODE not compiled with trimesh support.'
+  #  Exit(1)
+  
+  env = conf.Finish()
+  
+  #simpleenv = Environment(CPPPATH="/usr/include/AL")
+  #simpleconf = Configure(simpleenv)
+  #
+  ## Test for libtool
+  #if not simpleconf.CheckLibWithHeader('ltdl','ltdl.h','CXX'):
+  #  print "  Warning: Failed to find ltdl, no plugin support will be included"
+  #  env["HAVE_LTDL"]=False
+  #else:
+  #  env["HAVE_LTDL"]=True
+  #  env.Append(CCFLAGS = " -DHAVE_LTDL")
+  #  env.Append(LIBS = "ltdl")
+ 
+  #if not simpleconf.CheckHeader('boost/signal.hpp',language='C++'):
+  #  print "Error: Boost signals not found. Please install."
+  #  Exit(0)
+  #
+  #simpleconf.Finish()
+  
+  # # Check for boost_python
+  #if not conf.CheckLibWithHeader('boost_python', 'boost/python.hpp', 'C'):
+  #  print 'Did not find libboost_python exiting'
+  #  Exit(1)
+  #else:
+  #  conf.env.Append(LIBS="boost_python")
+  
+  print '=== Done ===\n'
+
+

Modified: code/gazebo/trunk/libgazebo/SConscript
===================================================================
--- code/gazebo/trunk/libgazebo/SConscript      2009-03-04 22:19:10 UTC (rev 
7362)
+++ code/gazebo/trunk/libgazebo/SConscript      2009-03-07 08:08:24 UTC (rev 
7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('install_prefix version')
+Import('*')
 
+env.Append(CPPPATH = '#libgazebo')
+
 #
 # Create the pkg-config file
 #
@@ -23,6 +25,16 @@
 env = Environment (
   CC = 'g++',
   CCFLAGS = Split ('-pthread -pipe  -W -Wall -O2'),
+
+  CXXCOMSTR = 'Compiling $TARGET',
+  CCCOMSTR = 'Compiling $TARGET',
+
+  SHCXXCOMSTR = 'Compiling $TARGET',
+  SHCCCOMSTR = 'Compiling $TARGET',
+
+  SHLINKCOMSTR = 'Linking $TARGET',
+  LINKCOMSTR = 'Linking $TARGET',
+
 )
 
 env['BUILDERS']['PkgConfig'] = Builder(action = createPkgConfig)

Modified: code/gazebo/trunk/libgazebo/Server.cc
===================================================================
--- code/gazebo/trunk/libgazebo/Server.cc       2009-03-04 22:19:10 UTC (rev 
7362)
+++ code/gazebo/trunk/libgazebo/Server.cc       2009-03-07 08:08:24 UTC (rev 
7363)
@@ -106,7 +106,9 @@
     if(fp) 
     {
       int pid;
-      fscanf(fp, "%d", &pid);
+      if (fscanf(fp, "%d", &pid) != 0)
+        std::cerr << "Error\n";
+
       fclose(fp);
       std::cout << "found a pid file: pid=" << pid << "\n";
 
@@ -188,7 +190,8 @@
     << "] : [" << strerror(errno) << "]\n";
 
     snprintf(cmd, sizeof(cmd), "rm -rf %s", this->filename.c_str());
-    system(cmd);
+    if (system(cmd))
+      std::cerr << "System cmd invalid\n";
   }
 
   // Finalize semaphores

Modified: code/gazebo/trunk/player/SConscript
===================================================================
--- code/gazebo/trunk/player/SConscript 2009-03-04 22:19:10 UTC (rev 7362)
+++ code/gazebo/trunk/player/SConscript 2009-03-07 08:08:24 UTC (rev 7363)
@@ -1,8 +1,6 @@
 import os
-Import('env install_prefix sharedObjs subdirs')
+Import('*')
 
-parseConfigs = ['pkg-config --cflags --libs playerc++']
-
 sources = ['GazeboDriver.cc',
            'GazeboClient.cc',
            'GazeboInterface.cc',
@@ -23,34 +21,19 @@
 
 # Position3dInterface.cc PowerInterface.cc SonarInterface.ccGpsInterface.cc ')
 
-playerEnv = env.Clone()
-
-for cfg in parseConfigs:
-  print "Checking for ["+cfg+"]"
-  try:
-    playerEnv.ParseConfig(cfg)
-    print "  Success"
-  except OSError,e:
-    print "Unable to parse config ["+cfg+"]"
-    if cfg.find("player") >=0:
-      print 
"\n================================================================"
-      print "Player not found, bindings will not be built."
-      print "  To install player visit(http://playerstage.sourceforge.net)"
-      print "================================================================"
-      subdirs.remove('player')
-      Return
-      #time.sleep(3)
-
-if ('player' in subdirs):
+try:
+  env["CCFLAGS"].index('-DHAVE_PLAYER')
   
-#staticPlayerObjs = playerEnv.StaticObject(sources)
-  sharedPlayerObjs = playerEnv.SharedObject(sources)
-  
-#staticPlayerObjs.append(staticObjs);
+  #staticPlayerObjs = env.StaticObject(sources)
+  sharedPlayerObjs = env.SharedObject(sources)
+    
+  #staticPlayerObjs.append(staticObjs);
   sharedPlayerObjs.append(sharedObjs);
-  
-  sharedLib = playerEnv.SharedLibrary('gazeboplugin', sharedPlayerObjs)
-# staticLib = playerEnv.StaticLibrary('gazeboplugin', staticPlayerObjs)
-  
+    
+  sharedLib = env.SharedLibrary('gazeboplugin', sharedPlayerObjs)
+  # staticLib = env.StaticLibrary('gazeboplugin', staticPlayerObjs)
+    
   env.Install(install_prefix+'/lib', sharedLib)
-#env.Install(install_prefix+'/lib', staticLib)
+  #env.Install(install_prefix+'/lib', staticLib)
+except ValueError,e:
+  garbage = 1

Modified: code/gazebo/trunk/server/Entity.cc
===================================================================
--- code/gazebo/trunk/server/Entity.cc  2009-03-04 22:19:10 UTC (rev 7362)
+++ code/gazebo/trunk/server/Entity.cc  2009-03-07 08:08:24 UTC (rev 7363)
@@ -168,6 +168,8 @@
     if (body)
       body->SetEnabled(!s);
   }
+
+  return true;
 }
 
 
////////////////////////////////////////////////////////////////////////////////

Modified: code/gazebo/trunk/server/SConscript
===================================================================
--- code/gazebo/trunk/server/SConscript 2009-03-04 22:19:10 UTC (rev 7362)
+++ code/gazebo/trunk/server/SConscript 2009-03-07 08:08:24 UTC (rev 7363)
@@ -1,12 +1,18 @@
 #Import variables
-Import('env install_prefix sharedObjs headers')
+Import('*')
 
+env.Append(CPPPATH = '#server')
+
 dirs = Split('physics rendering sensors controllers gui')# bindings')
 
-if env["HAVE_OPENAL"] == True:
+try:
+  env["CCFLAGS"].index('-DHAVE_OPENAL')
   dirs.append("audio_video")
+except ValueError,e:
+  garbage = 1
 
 for subdir in dirs:
+  print 'Parsing sub directory ' + subdir
   SConscript('%s/SConscript' % subdir)
 
 sources = ['main.cc',

Modified: code/gazebo/trunk/server/World.cc
===================================================================
--- code/gazebo/trunk/server/World.cc   2009-03-04 22:19:10 UTC (rev 7362)
+++ code/gazebo/trunk/server/World.cc   2009-03-07 08:08:24 UTC (rev 7363)
@@ -38,7 +38,11 @@
 #include "Simulator.hh"
 #include "gazebo.h"
 #include "World.hh"
+
+#ifdef HAVE_OPENAL
 #include "OpenAL.hh"
+#endif
+
 #include "Geom.hh"
 
 using namespace gazebo;
@@ -124,9 +128,11 @@
     gzthrow(err);
   }
 
+#ifdef HAVE_OPENAL
   // Load OpenAL audio 
   if (rootNode->GetChild("openal","audio"))
     OpenAL::Instance()->Load( rootNode->GetChild("openal", "audio") );
+#endif
 
   this->physicsEngine = new ODEPhysics(); //TODO: use exceptions here
 
@@ -176,7 +182,9 @@
   this->physicsEngine->Init();
 
   // Initialize openal
+#ifdef HAVE_OPENAL
   OpenAL::Instance()->Init();
+#endif
 
   this->toAddModels.clear();
   this->toDeleteModels.clear();
@@ -262,7 +270,9 @@
   }
 
   // Close the openal server
+#ifdef HAVE_OPENAL
   OpenAL::Instance()->Fini();
+#endif
 
   return 0;
 }

Modified: code/gazebo/trunk/server/audio_video/SConscript
===================================================================
--- code/gazebo/trunk/server/audio_video/SConscript     2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/audio_video/SConscript     2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs headers install_prefix')
+Import('*')
 
+env.Append(CPPPATH = '#server/audio_video')
+
 sources = ['AudioDecoder.cc', 
            'OpenAL.cc'
            ]

Modified: code/gazebo/trunk/server/controllers/SConscript
===================================================================
--- code/gazebo/trunk/server/controllers/SConscript     2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/controllers/SConscript     2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,10 +1,15 @@
 #Import variable
-Import('env sharedObjs headers')
+Import('*')
 
+env.Append(CPPPATH = '#server/controllers')
+
 dirs = Split('position2d laser camera factory gripper actarray ptz opaque 
bumper imu irarray')
 
-if env["HAVE_OPENAL"] == True:
+try:
+  env["CCFLAGS"].index('-DHAVE_OPENAL')
   dirs.append("audio")
+except ValueError,e:
+  garbage = 1
 
 for subdir in dirs :
   SConscript('%s/SConscript' % subdir)

Modified: 
code/gazebo/trunk/server/controllers/gripper/pioneer2/Pioneer2_Gripper.cc
===================================================================
--- code/gazebo/trunk/server/controllers/gripper/pioneer2/Pioneer2_Gripper.cc   
2009-03-04 22:19:10 UTC (rev 7362)
+++ code/gazebo/trunk/server/controllers/gripper/pioneer2/Pioneer2_Gripper.cc   
2009-03-07 08:08:24 UTC (rev 7363)
@@ -69,7 +69,6 @@
 // Load the controller
 void Pioneer2_Gripper::LoadChild(XMLConfigNode *node)
 {
-  int i;
   XMLConfigNode *jNode;
   this->myIface = dynamic_cast<GripperIface*>(this->ifaces[0]);
 

Modified: code/gazebo/trunk/server/gui/SConscript
===================================================================
--- code/gazebo/trunk/server/gui/SConscript     2009-03-04 22:19:10 UTC (rev 
7362)
+++ code/gazebo/trunk/server/gui/SConscript     2009-03-07 08:08:24 UTC (rev 
7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs headers')
+Import('*')
 
+env.Append(CPPPATH = '#server/gui')
+
 sources = ['Gui.cc',
            'GLWindow.cc',
            'MainMenu.cc',

Modified: code/gazebo/trunk/server/physics/HeightmapGeom.cc
===================================================================
--- code/gazebo/trunk/server/physics/HeightmapGeom.cc   2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/physics/HeightmapGeom.cc   2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -229,7 +229,7 @@
   // Create a data stream for loading the terrain into Ogre
   char *mstr = new char[1024];//stream.str().size()];
   bzero (mstr, 1024);
-  sprintf(mstr, stream.str().c_str());
+  sprintf(mstr, (char*)(stream.str().c_str()));
   Ogre::DataStreamPtr dataStream(
     new Ogre::MemoryDataStream(mstr,strlen(mstr)) );
 

Modified: code/gazebo/trunk/server/physics/SConscript
===================================================================
--- code/gazebo/trunk/server/physics/SConscript 2009-03-04 22:19:10 UTC (rev 
7362)
+++ code/gazebo/trunk/server/physics/SConscript 2009-03-07 08:08:24 UTC (rev 
7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs headers')
+Import('*')
 
+env.Append(CPPPATH = '#server/physics')
+
 dirs = Split('ode')
 
 for subdir in dirs :

Modified: code/gazebo/trunk/server/physics/ode/SConscript
===================================================================
--- code/gazebo/trunk/server/physics/ode/SConscript     2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/physics/ode/SConscript     2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,7 +1,9 @@
 #Import variable
-Import('env sharedObjs')
+Import('*')
 
-sources = Split('ODEPhysics.cc')
+env.Append(CPPPATH = '#server/physics/ode')
 
+sources = ['ODEPhysics.cc']
+
 #staticObjs.append(env.StaticObject('ODEPhysics.cc'))
-sharedObjs.append(env.SharedObject('ODEPhysics.cc'))
+sharedObjs.append(env.SharedObject(sources))

Modified: code/gazebo/trunk/server/rendering/SConscript
===================================================================
--- code/gazebo/trunk/server/rendering/SConscript       2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/rendering/SConscript       2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs headers')
+Import('*')
 
+env.Append(CPPPATH = '#server/rendering')
+
 sources = [
            'MovableText.cc',
            'OgreCreator.cc',

Modified: code/gazebo/trunk/server/sensors/SConscript
===================================================================
--- code/gazebo/trunk/server/sensors/SConscript 2009-03-04 22:19:10 UTC (rev 
7362)
+++ code/gazebo/trunk/server/sensors/SConscript 2009-03-07 08:08:24 UTC (rev 
7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs headers')
+Import('*')
 
+env.Append(CPPPATH = '#server/sensors')
+
 dirs = Split('camera ray contact imu ir')
 
 for subdir in dirs :

Modified: code/gazebo/trunk/server/sensors/Sensor.cc
===================================================================
--- code/gazebo/trunk/server/sensors/Sensor.cc  2009-03-04 22:19:10 UTC (rev 
7362)
+++ code/gazebo/trunk/server/sensors/Sensor.cc  2009-03-07 08:08:24 UTC (rev 
7363)
@@ -190,7 +190,7 @@
 
 
////////////////////////////////////////////////////////////////////////////////
 /// Get the current pose
-const Pose3d &Sensor::GetPose() const
+const Pose3d Sensor::GetPose() const
 {
   return this->body->GetPose();
 }

Modified: code/gazebo/trunk/server/sensors/Sensor.hh
===================================================================
--- code/gazebo/trunk/server/sensors/Sensor.hh  2009-03-04 22:19:10 UTC (rev 
7362)
+++ code/gazebo/trunk/server/sensors/Sensor.hh  2009-03-07 08:08:24 UTC (rev 
7363)
@@ -70,7 +70,7 @@
     public: void Fini();
 
     /// \brief Get the current pose
-    public: const Pose3d &GetPose() const;
+    public: const Pose3d GetPose() const;
  
     /// \brief Set whether the sensor is active or not
     public: void SetActive(bool value);

Modified: code/gazebo/trunk/server/sensors/camera/SConscript
===================================================================
--- code/gazebo/trunk/server/sensors/camera/SConscript  2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/sensors/camera/SConscript  2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs')
+Import('*')
 
+env.Append(CPPPATH = '#server/sensors/camera')
+
 sources = [
            'MonoCameraSensor.cc',
            'StereoCameraSensor.cc'

Modified: code/gazebo/trunk/server/sensors/contact/SConscript
===================================================================
--- code/gazebo/trunk/server/sensors/contact/SConscript 2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/sensors/contact/SConscript 2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs')
+Import('*')
 
+env.Append(CPPPATH = '#server/sensors/contact')
+
 sources = Split('ContactSensor.cc')
 
 sharedObjs.append(env.SharedObject(sources))

Modified: code/gazebo/trunk/server/sensors/imu/SConscript
===================================================================
--- code/gazebo/trunk/server/sensors/imu/SConscript     2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/sensors/imu/SConscript     2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,6 +1,8 @@
 #Import variable
 Import('env sharedObjs')
 
+env.Append(CPPPATH = '#server/sensors/imu')
+
 sources = Split('ImuSensor.cc')
 
 sharedObjs.append(env.SharedObject(sources))

Modified: code/gazebo/trunk/server/sensors/ir/SConscript
===================================================================
--- code/gazebo/trunk/server/sensors/ir/SConscript      2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/sensors/ir/SConscript      2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,6 +1,8 @@
 #Import variable
-Import('env sharedObjs')
+Import('*')
 
+env.Append(CPPPATH = '#server/sensors/ir')
+
 sources = Split('IRSensor.cc')
 
 #staticObjs.append(env.StaticObject(sources))

Modified: code/gazebo/trunk/server/sensors/ray/SConscript
===================================================================
--- code/gazebo/trunk/server/sensors/ray/SConscript     2009-03-04 22:19:10 UTC 
(rev 7362)
+++ code/gazebo/trunk/server/sensors/ray/SConscript     2009-03-07 08:08:24 UTC 
(rev 7363)
@@ -1,6 +1,7 @@
-#Import variable
-Import('env sharedObjs')
+Import('*')
 
+env.Append(CPPPATH = '#server/sensors/ray')
+
 sources = Split('RaySensor.cc')
 
 #staticObjs.append(env.StaticObject(sources))


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit

Reply via email to