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