Revision: 7621
          http://playerstage.svn.sourceforge.net/playerstage/?rev=7621&view=rev
Author:   natepak
Date:     2009-05-05 02:29:25 +0000 (Tue, 05 May 2009)

Log Message:
-----------
Added more functionality to cmake

Modified Paths:
--------------
    code/gazebo/trunk/CMakeLists.txt
    code/gazebo/trunk/cmake/GazeboUtils.cmake
    code/gazebo/trunk/cmake/SearchForStuff.cmake
    code/gazebo/trunk/server/CMakeLists.txt

Modified: code/gazebo/trunk/CMakeLists.txt
===================================================================
--- code/gazebo/trunk/CMakeLists.txt    2009-05-05 02:25:57 UTC (rev 7620)
+++ code/gazebo/trunk/CMakeLists.txt    2009-05-05 02:29:25 UTC (rev 7621)
@@ -1,4 +1,3 @@
-
 CMAKE_MINIMUM_REQUIRED( VERSION 2.6 FATAL_ERROR )
 
 IF(COMMAND CMAKE_POLICY)
@@ -17,15 +16,31 @@
 SET (gazeboserver_link_dirs_desc "List of server link directories" 
      CACHE INTERNAL "Link dirs description" FORCE)
 SET (gazeboserver_link_libs_desc "List of server link libraries" 
-     CACHE INTERNAL "Link libs" FORCE)
+     CACHE INTERNAL "Link libs description" FORCE)
+SET (gazeboserver_cflags_desc "List of server cflags" 
+     CACHE INTERNAL "Server cflags description" FORCE)
 
 SET (OGRE_VERSION 1.6.0 CACHE INTERNAL "Ogre Version Requirement")
 SET (ODE_VERSION 0.10.1 CACHE INTERNAL "ODE Version Requirement")
 
-SET (gazebo_cmake_dir ${PROJECT_SOURCE_DIR}/cmake CACHE PATH "Location of 
CMake scripts")
-SET (gazebo_cflags "-ggdb -g2 -Wall -fPIC" CACHE INTERNAL "Gazebo CFlags")
+SET (gazebo_cmake_dir ${PROJECT_SOURCE_DIR}/cmake CACHE PATH 
+     "Location of CMake scripts")
 
+MESSAGE (STATUS "====== Finding 3rd Party Packages ======")
+INCLUDE (${gazebo_cmake_dir}/SearchForStuff.cmake)
+MESSAGE (STATUS "----------------------------------------")
+
+
+
 ADD_SUBDIRECTORY(libgazebo)
 ADD_SUBDIRECTORY(server)
-#ADD_SUBDIRECTORY(player)
 
+IF (INCLUDE_PLAYER)
+  ADD_SUBDIRECTORY(player)
+ENDIF (INCLUDE_PLAYER)
+
+IF (INCLUDE_WEBGAZEBO)
+  Add_SUBDIRECTORY(webgazebo)
+ENDIF (INCLUDE_WEBGAZEBO)
+
+

Modified: code/gazebo/trunk/cmake/GazeboUtils.cmake
===================================================================
--- code/gazebo/trunk/cmake/GazeboUtils.cmake   2009-05-05 02:25:57 UTC (rev 
7620)
+++ code/gazebo/trunk/cmake/GazeboUtils.cmake   2009-05-05 02:29:25 UTC (rev 
7621)
@@ -21,6 +21,15 @@
 ENDMACRO (APPEND_TO_SERVER_SOURCES)
 
 ###############################################################################
+# Macro to turn a list into a string (why doesn't CMake have this built-in?)
+MACRO (LIST_TO_STRING _string _list)
+    SET (${_string})
+    FOREACH (_item ${_list})
+        SET (${_string} "${${_string}} ${_item}")
+    ENDFOREACH (_item)
+ENDMACRO (LIST_TO_STRING)
+
+###############################################################################
 # Reset lists
 MACRO (GAZEBOSERVER_RESET_LISTS)
   SET (gazeboserver_sources "" CACHE INTERNAL 
@@ -31,4 +40,6 @@
        ${gazeboserver_link_dirs_desc} FORCE)
   SET (gazeboserver_link_libs "" CACHE INTERNAL 
        ${gazeboserver_link_libs_desc} FORCE)
+  SET (gazeboserver_cflags "" CACHE INTERNAL 
+       ${gazeboserver_cflags_desc} FORCE)
 ENDMACRO (GAZEBOSERVER_RESET_LISTS)

Modified: code/gazebo/trunk/cmake/SearchForStuff.cmake
===================================================================
--- code/gazebo/trunk/cmake/SearchForStuff.cmake        2009-05-05 02:25:57 UTC 
(rev 7620)
+++ code/gazebo/trunk/cmake/SearchForStuff.cmake        2009-05-05 02:29:25 UTC 
(rev 7621)
@@ -5,6 +5,7 @@
 INCLUDE (FindPkgConfig)
 
 SET (INCLUDE_AV ON CACHE BOOL "Include audio/video functionality" FORCE)
+SET (INCLUDE_WEBGAZEBO ON CACHE BOOL "Build webgazebo" FORCE)
 SET (OGRE_LIBRARY_PATH "/usr/local/lib" CACHE INTERNAL "Ogre library path")
 
 ########################################
@@ -16,48 +17,72 @@
   ELSE (NOT OGRE_FOUND)
  
     SET (OGRE_LIBRARY_PATH ${OGRE_LIBRARY_DIRS} CACHE INTERNAL "Ogre library 
path")
-    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs "Include dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs 
+                          ${gazeboserver_include_dirs_desc} 
                           ${OGRE_INCLUDE_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs "Link dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs 
+                          ${gazeboserver_link_dirs_desc} 
                           ${OGRE_LIBRARY_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${OGRE_LINK_LIBS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${OGRE_LIBRARIES})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${OGRE_LINK_LIBS})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${OGRE_LIBRARIES})
   ENDIF (NOT OGRE_FOUND)
 
   pkg_check_modules(ODE ode>=${ODE_VERSION})
   IF (NOT ODE_FOUND)
     MESSAGE (SEND_ERROR "\nError: ODE and development files not found. See the 
following website: http://www.ode.org";)
   ELSE (NOT ODE_FOUND)
-    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs "Include dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs 
+                          ${gazeboserver_include_dirs_desc} 
                           ${ODE_INCLUDE_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs "Link dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs 
+                          ${gazeboserver_link_dirs_desc} 
                           ${ODE_LIBRARY_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${ODE_LINK_LIBS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${ODE_LIBRARIES})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${ODE_LINK_LIBS})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${ODE_LIBRARIES})
   ENDIF (NOT ODE_FOUND)
 
   pkg_check_modules(XML libxml-2.0)
   IF (NOT XML_FOUND)
     MESSAGE (SEND_ERROR "\nError: libxml2 and development files not found. See 
the following website: http://www.xmlsoft.org";)
   ELSE (NOT XML_FOUND)
-    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs "Include dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs 
+                          ${gazeboserver_include_dirs_desc} 
                           ${XML_INCLUDE_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs "Link dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs 
+                          ${gazeboserver_link_dirs_desc} 
                           ${XML_LIBRARY_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${XML_LINK_LIBS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${XML_LIBRARIES})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${XML_LINK_LIBS})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${XML_LIBRARIES})
   ENDIF (NOT XML_FOUND)
 
   pkg_check_modules(XFT xft)
   IF (NOT XFT_FOUND)
     MESSAGE (SEND_ERROR "\nError: XFT and development files not found. See the 
following website: http://www.fontconfig.org";)
   ELSE (NOT XFT_FOUND)
-    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs "Include dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs 
+                          ${gazeboserver_include_dirs_desc} 
                           ${XFT_INCLUDE_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs "Link dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs 
+                          ${gazeboserver_link_dirs_desc} 
                           ${XFT_LIBRARY_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${XFT_LINK_LIBS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${XFT_LIBRARIES})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${XFT_LINK_LIBS})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${XFT_LIBRARIES})
   ENDIF (NOT XFT_FOUND)
 
   pkg_check_modules(OAL openal)
@@ -65,12 +90,20 @@
     SET (INCLUDE_AV OFF CACHE BOOL "Include audio/video functionality" FORCE)
     MESSAGE (STATUS "Warning: Openal and development files not found. Audio 
capabilities will be disabled. See the following website: 
http://connect.creativelabs.com/openal/default.aspx";)
   ELSE (NOT OAL_FOUND)
-    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs "Include dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_cflags 
+                          ${gazeboserver_cflags_desc} "-DHAVE_OPENAL" )
+    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs 
+                          ${gazeboserver_include_dirs_desc} 
                           ${OAL_INCLUDE_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs "Link dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs 
+                          ${gazeboserver_link_dirs_desc} 
                           ${OAL_LIBRARY_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${OAL_LINK_LIBS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${OAL_LIBRARIES})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${OAL_LINK_LIBS})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${OAL_LIBRARIES})
   ENDIF (NOT OAL_FOUND)
 
   pkg_check_modules(AVF libavformat)
@@ -78,12 +111,18 @@
     SET (INCLUDE_AV OFF CACHE BOOL "Include audio/video functionality" FORCE)
     MESSAGE (STATUS "Warning: libavformat and development files not found. 
Audio capabilities will be disabled.")
   ELSE (NOT AVF_FOUND)
-    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs "Include dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs 
+                          ${gazeboserver_include_dirs_desc} 
                           ${AVF_INCLUDE_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs "Link dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs 
+                          ${gazeboserver_link_dirs_desc} 
                           ${AVF_LIBRARY_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${AVF_LINK_LIBS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${AVF_LIBRARIES})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${AVF_LINK_LIBS})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${AVF_LIBRARIES})
   ENDIF (NOT AVF_FOUND)
 
   pkg_check_modules(AVC libavcodec)
@@ -91,14 +130,42 @@
     SET (INCLUDE_AV OFF CACHE BOOL "Include audio/video functionality" FORCE)
     MESSAGE (STATUS "Warning: libavcodec and development files not found. 
Audio capabilities will be disabled.")
   ELSE (NOT AVC_FOUND)
-    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs "Include dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_include_dirs 
+                          ${gazeboserver_include_dirs_desc} 
                           ${AVC_INCLUDE_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs "Link dirs" 
+    APPEND_TO_CACHED_LIST(gazeboserver_link_dirs 
+                          ${gazeboserver_link_dirs_desc} 
                           ${AVC_LIBRARY_DIRS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${AVC_LINK_LIBS})
-    APPEND_TO_CACHED_LIST(gazeboserver_link_libs "Link libs" ${AVC_LIBRARIES})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${AVC_LINK_LIBS})
+    APPEND_TO_CACHED_LIST(gazeboserver_link_libs 
+                          ${gazeboserver_link_libs_desc} 
+                          ${AVC_LIBRARIES})
   ENDIF (NOT AVC_FOUND)
 
+  pkg_check_modules(PLAYER playerc++)
+  IF (NOT PLAYER_FOUND)
+    SET (INCLUDE_PLAYER OFF CACHE BOOL "Build gazebo plugin for player" FORCE)
+    MESSAGE (STATUS "Warning: Player not found. The gazebo plugin for player 
will not be built. See the following website: 
http://playerstage.sourceforge.net";)
+  ELSE (NOT PLAYER_FOUND)
+    SET (INCLUDE_PLAYER ON CACHE BOOL "Build gazebo plugin for player" FORCE)
+    SET (PLAYER_INCLUDE_DIRS ${PLAYER_INCLUDE_DIRS} CACHE INTERNAL
+         "Player include directory")
+    SET (PLAYER_LINK_DIRS ${PLAYER_LINK_DIRS} CACHE INTERNAL
+         "Player link directory")
+    SET (PLAYER_LINK_LIBS ${PLAYER_LIBRARIES} CACHE INTERNAL
+         "Player libraries")
+  ENDIF (NOT PLAYER_FOUND)
+
+  pkg_check_modules(WEBSIM websim)
+  IF (NOT WEBSIM_FOUND)
+    SET (INCLUDE_WEBGAZEBO OFF CACHE BOOL "Build webgazebo" FORCE)
+    MESSAGE (STATUS "Warning: Websim not found. Webgazebo will not be built")
+  ELSE (NOT WEBSIM_FOUND)
+  ENDIF (NOT WEBSIM_FOUND)
+
+
 ELSE (PKG_CONFIG_FOUND)
   MESSAGE (FATAL_ERROR "\nError: pkg-config not found")
   SET (BUILD_GAZEBO OFF CACHE BOOL "Build Gazebo" FORCE)
@@ -127,5 +194,47 @@
   )
   
   FIND_PATH(LIBAVFORMAT_PATH avformat.h ${libavformat_search_path})
+  IF (NOT LIBAVFORMAT_PATH)
+    MESSAGE (STATUS "Looking for avformat.h - not found")
+    MESSAGE (STATUS "  Warning: audio/video will not be built")
+  ELSE (NOT LIBAVFORMAT_PATH)
+    MESSAGE (STATUS "Looking for avformat.h - found")
+  ENDIF (NOT LIBAVFORMAT_PATH)
+
   FIND_PATH(LIBAVCODEC_PATH avcodec.h ${libavcodec_search_path})
+  IF (NOT LIBAVCODEC_PATH)
+    MESSAGE (STATUS "Looking for avcodec.h - not found")
+    MESSAGE (STATUS "  Warning: audio/video will not be built")
+  ELSE (NOT LIBAVCODEC_PATH)
+    MESSAGE (STATUS "Looking for avcodec.h - found")
+  ENDIF (NOT LIBAVCODEC_PATH)
+
 ENDIF (INCLUDE_AV)
+
+
+########################################
+# Find libevent
+SET (libevent_search_path /usr/include /usr/local/include)
+FIND_PATH(LIBEVENT_PATH event.h ${libevent_search_path})
+IF (NOT LIBEVENT_PATH)
+  MESSAGE (STATUS "Looking for event.h - not found")
+  MESSAGE (STATUS "  Warning: webgazebo will not be built")
+  SET (INCLUDE_WEBGAZEBO OFF CACHE BOOL "Found libevent" FORCE)
+ELSE (NOT LIBEVENT_PATH)
+  MESSAGE (STATUS "Looking for event.h - found")
+ENDIF (NOT LIBEVENT_PATH)
+
+########################################
+# Find yaml
+SET (libyaml_search_path /usr/include /usr/local/include)
+FIND_PATH(LIBYAML_PATH yaml.h ${libyaml_search_path})
+IF (NOT LIBYAML_PATH)
+  MESSAGE (STATUS "Looking for yaml.h - not found")
+  MESSAGE (STATUS "  Warning: webgazebo will not be built")
+  SET (INCLUDE_WEBGAZEBO OFF CACHE BOOL "Found libevent" FORCE)
+ELSE (NOT LIBYAML_PATH)
+  MESSAGE (STATUS "Looking for yaml.h - found")
+ENDIF (NOT LIBYAML_PATH)
+
+## TODO: Finish webgazebo....needs list for directories and libs. Add in glib
+

Modified: code/gazebo/trunk/server/CMakeLists.txt
===================================================================
--- code/gazebo/trunk/server/CMakeLists.txt     2009-05-05 02:25:57 UTC (rev 
7620)
+++ code/gazebo/trunk/server/CMakeLists.txt     2009-05-05 02:29:25 UTC (rev 
7621)
@@ -1,5 +1,4 @@
 INCLUDE (${gazebo_cmake_dir}/GazeboUtils.cmake)
-INCLUDE (${gazebo_cmake_dir}/SearchForStuff.cmake)
 
 ########################################
 # Include all the search paths for headers
@@ -90,7 +89,10 @@
 
 ADD_EXECUTABLE(gazebo ${gazeboserver_sources} main.cc)
 
-SET_SOURCE_FILES_PROPERTIES(${gazeboserver_sources} PROPERTIES COMPILE_FLAGS 
${gazebo_cflags})
+APPEND_TO_CACHED_LIST(gazeboserver_cflags ${gazeboserver_cflags_desc} 
"-fPIC;-WAll")
+LIST_TO_STRING(GAZEBO_CFLAGS "${gazeboserver_cflags}")
+
+SET_SOURCE_FILES_PROPERTIES(${gazeboserver_sources} PROPERTIES COMPILE_FLAGS 
${GAZEBO_CFLAGS})
 TARGET_LINK_LIBRARIES( gazebo ${gazeboserver_link_libs} ${FLTK_LIBRARIES} 
${Boost_LIBRARIES} gazeboshm)
 
 INSTALL (TARGETS gazebo DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)


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

------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image 
processing features enabled. http://p.sf.net/sfu/kodak-com
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit

Reply via email to