[gazebo] Initial import

rmattes rmattes at fedoraproject.org
Thu Jul 17 02:23:38 UTC 2014


commit e416f9b93a357fe337725874d16b2528c59aaca7
Author: Rich Mattes <richmattes at gmail.com>
Date:   Wed Jul 16 21:52:37 2014 -0400

    Initial import

 .gitignore                    |    1 +
 gazebo-2.1.0-latex.patch      |   27 +++
 gazebo-2.2.2-connection.patch |   25 +++
 gazebo-3.0.0-fedora.patch     |  151 +++++++++++++++
 gazebo-3.0.0-rpath.patch      |   30 +++
 gazebo.desktop                |    9 +
 gazebo.spec                   |  403 +++++++++++++++++++++++++++++++++++++++++
 sources                       |    1 +
 8 files changed, 647 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..64047f9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/gazebo-3.0.0.tar.bz2
diff --git a/gazebo-2.1.0-latex.patch b/gazebo-2.1.0-latex.patch
new file mode 100644
index 0000000..710e2e3
--- /dev/null
+++ b/gazebo-2.1.0-latex.patch
@@ -0,0 +1,27 @@
+diff -up ./doc/CMakeLists.txt.latex ./doc/CMakeLists.txt
+--- ./doc/CMakeLists.txt.latex	2014-01-05 11:38:54.529572902 -0500
++++ ./doc/CMakeLists.txt	2014-01-05 11:51:00.207090947 -0500
+@@ -10,18 +10,20 @@ if (DOXYGEN_FOUND)
+   add_custom_target(doc
+ 
+     # Generate the API documentation
+-    ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/gazebo.dox
++    ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/gazebo.dox || /bin/true
+     WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+     COMMAND cp ${CMAKE_SOURCE_DIR}/doc/gazebo_logo.png
+             ${CMAKE_BINARY_DIR}/doxygen/html
+     COMMAND cp ${CMAKE_SOURCE_DIR}/doc/search.js
+             ${CMAKE_BINARY_DIR}/doxygen/html/search
+-    COMMAND make -C ${CMAKE_BINARY_DIR}/doxygen/latex
++    COMMAND sed -i "s|latex_count=5|latex_count=25|"  ${CMAKE_BINARY_DIR}/doxygen/latex/Makefile
++    COMMAND make -C ${CMAKE_BINARY_DIR}/doxygen/latex 
+     COMMAND mv ${CMAKE_BINARY_DIR}/doxygen/latex/refman.pdf
+             ${CMAKE_BINARY_DIR}/doxygen/latex/gazebo-${GAZEBO_VERSION_FULL}.pdf
+ 
+     # Generate the messages documentation
+-    COMMAND doxygen ${CMAKE_BINARY_DIR}/gazebo_messages.dox
++    COMMAND doxygen ${CMAKE_BINARY_DIR}/gazebo_messages.dox || /bin/true
++    COMMAND sed -i "s|latex_count=5|latex_count=25|" ${CMAKE_BINARY_DIR}/doxygen_msgs/latex/Makefile
+     COMMAND make -C ${CMAKE_BINARY_DIR}/doxygen_msgs/latex
+     COMMAND mv ${CMAKE_BINARY_DIR}/doxygen_msgs/latex/refman.pdf
+             ${CMAKE_BINARY_DIR}/doxygen_msgs/latex/gazebo-msgs-${GAZEBO_VERSION_FULL}.pdf
diff --git a/gazebo-2.2.2-connection.patch b/gazebo-2.2.2-connection.patch
new file mode 100644
index 0000000..2bd0d24
--- /dev/null
+++ b/gazebo-2.2.2-connection.patch
@@ -0,0 +1,25 @@
+--- ./gazebo/transport/Connection.cc.orig       2014-02-23 18:58:35.226997266 +0400
++++ ./gazebo/transport/Connection.cc    2014-02-23 19:02:49.123645564 +0400
+@@ -842,6 +842,8 @@ void Connection::OnConnect(const boost::
+     this->remoteURI = std::string("http://") + this->GetRemoteHostname()
+       + ":" + boost::lexical_cast<std::string>(this->GetRemotePort());
+
++    try
++    {
+     if (this->socket && this->socket->is_open())
+     {
+       this->remoteAddress =
+@@ -852,6 +854,12 @@ void Connection::OnConnect(const boost::
+       this->connectError = true;
+       gzerr << "Invalid socket connection\n";
+     }
++    }
++    catch (std::exception& e)
++    {
++      this->connectError = true;
++      gzerr << "Error handling socket connection: " << e.what() << "\n";
++    }
+
+     // Notify the condition that it may proceed.
+     this->connectCondition.notify_one();
+
diff --git a/gazebo-3.0.0-fedora.patch b/gazebo-3.0.0-fedora.patch
new file mode 100644
index 0000000..d43af8b
--- /dev/null
+++ b/gazebo-3.0.0-fedora.patch
@@ -0,0 +1,151 @@
+diff -up ./cmake/FindFreeimage.cmake.fedora ./cmake/FindFreeimage.cmake
+--- ./cmake/FindFreeimage.cmake.fedora	2014-04-12 07:21:02.000000000 -0400
++++ ./cmake/FindFreeimage.cmake	2014-06-09 18:16:43.557235237 -0400
+@@ -4,7 +4,7 @@ include (${gazebo_cmake_dir}/GazeboUtils
+ ########################################
+ # Find packages
+ if (PKG_CONFIG_FOUND)
+-  pkg_check_modules(freeimage freeimage>=${FREEIMAGE_VERSION})
++  pkg_check_modules(freeimage freeimage>=${MIN_FREEIMAGE_VERSION})
+   if (NOT freeimage_FOUND)
+     message (STATUS "  freeimage.pc not found, trying freeimage_include_dir and freeimage_library_dir flags.")
+   endif (NOT freeimage_FOUND)
+diff -up ./CMakeLists.txt.fedora ./CMakeLists.txt
+--- ./CMakeLists.txt.fedora	2014-04-12 07:21:02.000000000 -0400
++++ ./CMakeLists.txt	2014-06-09 18:17:18.598589513 -0400
+@@ -174,8 +174,9 @@ endif()
+ 
+ #####################################
+ # Handle CFlags
+-unset (CMAKE_C_FLAGS_ALL CACHE)
+-unset (CMAKE_CXX_FLAGS CACHE)
++# (Please don't)
++#unset (CMAKE_C_FLAGS_ALL CACHE)
++#unset (CMAKE_CXX_FLAGS CACHE)
+ 
+ # USE_HOST_CFLAGS (default TRUE)
+ # Will check building host machine for proper cflags 
+@@ -311,7 +312,6 @@ else (build_errors)
+     gazebo_rendering
+     gazebo_selection_buffer
+     gazebo_sensors
+-    gazebo_skyx
+     gazebo_transport
+     gazebo_util)
+     
+@@ -319,8 +319,8 @@ else (build_errors)
+     set(PKG_LIBRARIES ${PKG_LIBRARIES} gazebo_ccd)
+   endif()
+     
+-  if (INCLUDE_PLAYER)
+-    set(PKG_LIBRARIES ${PKG_LIBRARIES} gazebo_player)
++  if (NOT SKYX_FOUND)
++    set(PKG_LIBRARIES ${PKG_LIBRARIES} gazebo_skyx)
+   endif()
+ 
+   if (HAVE_BULLET)
+diff -up ./cmake/SearchForStuff.cmake.fedora ./cmake/SearchForStuff.cmake
+--- ./cmake/SearchForStuff.cmake.fedora	2014-04-12 07:21:02.000000000 -0400
++++ ./cmake/SearchForStuff.cmake	2014-06-09 18:16:43.558235276 -0400
+@@ -343,6 +343,13 @@ if (PKG_CONFIG_FOUND)
+   endif ()
+ 
+   ########################################
++  # Find SkyX
++  pkg_check_modules(SKYX SKYX)
++  if (NOT SKYX_FOUND)
++    BUILD_WARNING("SkyX not found, using private copy of SkyX")
++  endif()
++
++  ########################################
+   # Find Player
+   pkg_check_modules(PLAYER playercore>=3.0 playerc++ playerwkb)
+   if (NOT PLAYER_FOUND)
+diff -up ./gazebo/common/CMakeLists.txt.fedora ./gazebo/common/CMakeLists.txt
+--- ./gazebo/common/CMakeLists.txt.fedora	2014-04-12 07:21:03.000000000 -0400
++++ ./gazebo/common/CMakeLists.txt	2014-06-09 18:16:43.558235276 -0400
+@@ -124,6 +124,7 @@ set (gtest_sources
+ if (HAVE_FFMPEG)
+   set (gtest_sources ${gtest_sources}
+                      AudioDecoder_TEST.cc)
++  include_directories(${LIBAVFORMAT_PATH} ${LIBAVCODEC_PATH})
+ endif()
+ 
+ gz_build_tests(${gtest_sources})
+diff -up ./gazebo/rendering/Camera.cc.fedora ./gazebo/rendering/Camera.cc
+--- ./gazebo/rendering/Camera.cc.fedora	2014-04-12 07:21:03.000000000 -0400
++++ ./gazebo/rendering/Camera.cc	2014-06-09 18:16:43.558235276 -0400
+@@ -23,7 +23,7 @@
+ // Moved to top to avoid osx compilation errors
+ #include "gazebo/math/Rand.hh"
+ 
+-#include "gazebo/rendering/skyx/include/SkyX.h"
++#include "SkyX.h"
+ 
+ #include "gazebo/common/Assert.hh"
+ #include "gazebo/common/Events.hh"
+diff -up ./gazebo/rendering/CMakeLists.txt.fedora ./gazebo/rendering/CMakeLists.txt
+--- ./gazebo/rendering/CMakeLists.txt.fedora	2014-04-12 07:21:03.000000000 -0400
++++ ./gazebo/rendering/CMakeLists.txt	2014-06-09 18:16:43.558235276 -0400
+@@ -3,14 +3,21 @@ include (${gazebo_cmake_dir}/GazeboUtils
+ include_directories(SYSTEM
+   ${OGRE_INCLUDE_DIRS}
+   ${CEGUI_INCLUDE_DIRS}
+-  skyx
+-  skyx/include
+ )
+ 
++if (${SKYX_FOUND})
++  include_directories(SYSTEM ${SKYX_INCLUDE_DIRS})
++else ()
++  include_directories(SYSTEM skyx skyx/include)
++endif ()
++
+ if (${OGRE_VERSION} GREATER 1.7.4)
+   add_subdirectory(deferred_shading)
+ endif()
+-add_subdirectory(skyx)
++if (NOT SKYX_FOUND)
++  add_subdirectory(skyx)
++endif()
++
+ add_subdirectory(selection_buffer)
+ 
+ set (sources
+@@ -131,7 +138,6 @@ gz_add_library(gazebo_rendering ${source
+ target_link_libraries( gazebo_rendering
+   gazebo_common
+   gazebo_msgs
+-  gazebo_skyx
+   gazebo_selection_buffer
+   gazebo_transport
+   ${ogre_libraries}
+@@ -139,6 +145,16 @@ target_link_libraries( gazebo_rendering
+   ${CEGUI_LIBRARIES}
+ )
+ 
++if (SKYX_FOUND)
++  target_link_libraries(gazebo_rendering
++    ${SKYX_LIBRARIES}
++  )
++else (SKYX_FOUND)
++  target_link_libraries (gazebo_rendering
++    gazebo_skyx)
++endif()
++
++
+ if (NOT APPLE)
+   target_link_libraries(gazebo_rendering X11)
+ endif()
+diff -up ./gazebo/rendering/Scene.cc.fedora ./gazebo/rendering/Scene.cc
+--- ./gazebo/rendering/Scene.cc.fedora	2014-04-12 07:21:03.000000000 -0400
++++ ./gazebo/rendering/Scene.cc	2014-06-09 18:16:43.559235315 -0400
+@@ -16,7 +16,7 @@
+ */
+ #include <boost/lexical_cast.hpp>
+ 
+-#include "gazebo/rendering/skyx/include/SkyX.h"
++#include "SkyX.h"
+ #include "gazebo/rendering/ogre_gazebo.h"
+ 
+ #include "gazebo/msgs/msgs.hh"
diff --git a/gazebo-3.0.0-rpath.patch b/gazebo-3.0.0-rpath.patch
new file mode 100644
index 0000000..7ef9f2d
--- /dev/null
+++ b/gazebo-3.0.0-rpath.patch
@@ -0,0 +1,30 @@
+diff -up ./cmake/gazebo-config.cmake.in.rpath ./cmake/gazebo-config.cmake.in
+--- ./cmake/gazebo-config.cmake.in.rpath	2014-06-23 21:57:13.965133513 -0400
++++ ./cmake/gazebo-config.cmake.in	2014-06-23 21:57:28.221250531 -0400
+@@ -40,6 +40,4 @@ foreach(dep @PKG_DEPENDS@)
+   list(APPEND @PKG_NAME at _LIBRARIES ${${dep_lib}_LIBRARIES})
+ endforeach()
+ 
+-list(APPEND @PKG_NAME at _LDFLAGS -Wl,-rpath, at CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/gazebo- at GAZEBO_VERSION@/plugins)
+ list(APPEND @PKG_NAME at _LDFLAGS -L at CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@)
+-list(APPEND @PKG_NAME at _LDFLAGS -L at CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/gazebo- at GAZEBO_VERSION@/plugins)
+diff -up ./cmake/pkgconfig/gazebo.in.rpath ./cmake/pkgconfig/gazebo.in
+--- ./cmake/pkgconfig/gazebo.in.rpath	2014-04-12 07:21:02.000000000 -0400
++++ ./cmake/pkgconfig/gazebo.in	2014-06-23 21:55:40.884898491 -0400
+@@ -6,5 +6,5 @@ Name: gazebo
+ Description: Gazebo Libraries
+ Version: @GAZEBO_VERSION_FULL@
+ Requires:
+-Libs: -Wl,-rpath,${prefix}/@CMAKE_INSTALL_LIBDIR@/gazebo- at GAZEBO_VERSION@/plugins -L${libdir} -L${prefix}/@CMAKE_INSTALL_LIBDIR@/gazebo- at GAZEBO_VERSION@/plugins -L at SDF_LIBRARY_DIRS@ -lgazebo_transport -lgazebo_physics -lgazebo_sensors -lgazebo_rendering -lgazebo_gui -l at SDF_LIBRARIES@ -lgazebo_msgs -lgazebo_math -lgazebo_common -lgazebo
++Libs: -L${libdir} -lgazebo_transport -lgazebo_physics -lgazebo_sensors -lgazebo_rendering -lgazebo_gui -l at SDF_LIBRARIES@ -lgazebo_msgs -lgazebo_math -lgazebo_common -lgazebo
+ CFlags: -I${includedir}/gazebo- at GAZEBO_VERSION@ -I at SDF_INCLUDE_DIRS@
+diff -up ./cmake/pkgconfig/gazebo_ode.in.rpath ./cmake/pkgconfig/gazebo_ode.in
+--- ./cmake/pkgconfig/gazebo_ode.in.rpath	2014-04-12 07:21:02.000000000 -0400
++++ ./cmake/pkgconfig/gazebo_ode.in	2014-06-23 21:55:40.884898491 -0400
+@@ -6,5 +6,5 @@ Name: gazebo
+ Description: Gazebo Exported ODE Libraries
+ Version: @GAZEBO_VERSION_FULL@
+ Requires:
+-Libs: -Wl,-rpath,${prefix}/@CMAKE_INSTALL_LIBDIR@ -L${prefix}/@CMAKE_INSTALL_LIBDIR@ -lgazebo_ode
++Libs: -L${prefix}/@CMAKE_INSTALL_LIBDIR@ -lgazebo_ode
+ CFlags: -I${includedir}/gazebo- at GAZEBO_VERSION@
diff --git a/gazebo.desktop b/gazebo.desktop
new file mode 100644
index 0000000..f85bd3f
--- /dev/null
+++ b/gazebo.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Gazebo
+Comment=3D multi-robot simulator with dynamics
+Exec=/usr/bin/gazebo
+Icon=gazebo
+Terminal=false
+Type=Application
+Categories=Education;Science;Robotics;
+
diff --git a/gazebo.spec b/gazebo.spec
new file mode 100644
index 0000000..e48d797
--- /dev/null
+++ b/gazebo.spec
@@ -0,0 +1,403 @@
+%global abiversion 3.0
+
+Name:           gazebo
+Version:        3.0.0
+Release:        4%{?dist}
+Summary:        3D multi-robot simulator with dynamics
+
+License:        ASL 2.0 and BSD
+URL:            http://www.gazebosim.org
+Source0:        http://gazebosim.org/assets/distributions/%{name}-%{version}.tar.bz2
+Source1:        gazebo.desktop
+# This patch unbundles libccd, skyx, and provides the correct search
+# path to find ogre.  It also fixes a problem with avformat and avcodec
+# not being found when ffmpeg is, and fixes the freeimage pkg-config
+# version being used
+Patch0:         %{name}-3.0.0-fedora.patch
+# Patch to work around latex failing: catches error on first run of doxygen
+# and increases the number of times latex will be run until all cross references
+# are resolved.  Not submitted upstream.
+Patch1:         %{name}-2.1.0-latex.patch
+# Remove rpath in pkgconfig files
+# Not submitted upstream
+Patch2:         %{name}-3.0.0-rpath.patch
+# Fix an exception that differs in behaviour because of boost differences
+# Not submitted upstream
+Patch3:         %{name}-2.2.2-connection.patch
+
+BuildRequires:  PyOpenGL
+BuildRequires:  boost-devel
+BuildRequires:  cegui-devel
+BuildRequires:  cmake
+BuildRequires:  console-bridge-devel
+BuildRequires:  desktop-file-utils
+BuildRequires:  doxygen
+BuildRequires:  doxygen-latex
+BuildRequires:  freeimage-devel
+BuildRequires:  gdal-devel
+BuildRequires:  gperftools-devel
+BuildRequires:  graphviz
+BuildRequires:  gtest-devel
+BuildRequires:  gts-devel
+BuildRequires:  libccd-devel
+BuildRequires:  libcurl-devel
+BuildRequires:  libtar-devel
+BuildRequires:  libtool-ltdl-devel
+BuildRequires:  libXext-devel
+BuildRequires:  libxml2-devel
+BuildRequires:  ogre-devel
+BuildRequires:  openal-soft-devel
+BuildRequires:  protobuf-devel
+BuildRequires:  qt-devel
+BuildRequires:  rubygem-ronn
+BuildRequires:  sdformat-devel >= 2.0.0
+BuildRequires:  SkyX-devel
+BuildRequires:  tbb-devel
+BuildRequires:  tinyxml-devel
+BuildRequires:  urdfdom-headers-devel
+BuildRequires:  urdfdom-devel
+# tex was split up in f18
+%if 0%{?fedora}
+BuildRequires:  texlive-latex
+BuildRequires:  texlive-multirow
+BuildRequires:  texlive-sectsty
+BuildRequires:  texlive-tocloft
+BuildRequires:  texlive-xtab
+%endif
+
+Requires: %{name}-media = %{version}-%{release}
+
+%description
+Gazebo is a multi-robot simulator for outdoor environments. It is capable of 
+simulating a population of robots, sensors and objects in a three-dimensional 
+world. It generates both realistic sensor feedback and physically plausible 
+interactions between objects.  It includes an accurate simulation of rigid-body 
+physics.
+
+
+%package devel
+Summary:        Development files for %{name}
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+Requires:       %{name}-ode-devel%{?_isa} = %{version}-%{release}
+Requires:       cegui-devel
+Requires:       freeimage-devel
+Requires:       gdal-devel
+Requires:       protobuf-devel
+Requires:       sdformat-devel
+Requires:       tbb-devel
+
+%description devel
+The %{name}-devel package contains libraries and header files for
+developing applications that use %{name}.
+
+%package common
+Summary:       Common directories for %{name}
+BuildArch:     noarch
+
+%description common
+The %{name}-common package provides common directories for the %{name}
+subpackages.
+
+%package libs
+Summary:      Shared libraries and plugins for %{name}
+Requires:     %{name}-common
+
+%description libs
+The %{name}-libs package provides shared libraries and plugins required
+at runtime for %{name} and other clients linked against %{name}
+
+%package media
+Summary:       Media files for %{name}
+Requires:      %{name}-common = %{version}-%{release}
+Requires:      %{name} = %{version}-%{release}
+Requires:      SkyX
+BuildArch:     noarch
+
+%description media
+Assets and media files for %{name}
+
+%package ode
+Summary:       Gazebo fork of the Open Dynamics Engine
+
+%description ode
+Gazebo fork of the Open Dynamics Engine physics library
+
+%package ode-devel
+Summary:      Development headers and libraries for gazebo-ode
+Requires:     %{name}-ode%{?_isa} = %{version}-%{release}
+
+%description ode-devel
+The %{name}-ode-devel package contains libraries and header files for
+developing applications that use %{name}-ode.
+
+%package -n player-%{name}
+Summary:       Gazebo plugin driver for the Player robot server.
+Requires:      %{name}-common = %{version}-%{release}
+Requires:      %{name}-libs%{?_isa} = %{version}-%{release}
+BuildRequires: player-devel
+
+%description -n player-%{name}
+Plugin driver for the Player robot server.  Translates gazebo interfaces
+to be accessible through the Player server interfaces.
+
+%package doc
+Summary:       Development documentation for %{name}
+Requires:      %{name} = %{version}-%{release}
+BuildArch:     noarch
+
+%description doc
+Development documentation for %{name}
+
+%prep
+%setup -q
+%patch0 -p0 -b .fedora
+%patch1 -p0 -b .latex
+%patch2 -p0 -b .rpath
+%patch3 -p0 -b .connection
+# These are either unused, or replaced by system versions
+rm -rf deps/ann
+rm -rf deps/fcl
+rm -rf deps/parallel_quickstep
+rm -rf deps/libccd
+
+# cmake variable mismatch
+sed -i 's/HAVE_CCD/CCD_FOUND/' CMakeLists.txt deps/CMakeLists.txt
+
+# This will have to be removed eventually.
+#rm -rf deps/opende
+
+%build
+mkdir build
+pushd build
+%cmake  \
+ -DCMAKE_VERBOSE_MAKEFILE=ON \
+ -DLIB_INSTALL_DIR:STRING="%{_lib}" \
+ -DSSE2_FOUND=OFF -DSSE3_FOUND=OFF \
+ -DSSSE3_FOUND=OFF -DSSE4_1_FOUND=OFF \
+ -DSSE4_2_FOUND=OFF \
+ -Dogre_library_dirs=%{_libdir} \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DUSE_UPSTREAM_CFLAGS=OFF \
+ -DUSE_HOST_CFLAGS=OFF \
+ -DCMAKE_INSTALL_DATAROOTDIR=share \
+ ..
+
+make %{?_smp_mflags}
+make doc %{?_smp_mflags} || exit 0;
+mv doxygen_msgs/html{,_msgs}
+popd
+
+%install
+pushd build
+make install DESTDIR=%{buildroot}
+popd
+
+# Get rid of SkyX media files; symlink to the files that SkyX provides
+rm -fr %{buildroot}%{_datadir}/%{name}-%{abiversion}/media/skyx
+ln -s %{_datadir}/SKYX/Media/SkyX/ %{buildroot}%{_datadir}/%{name}-%{abiversion}/media/skyx
+
+# Get rid of bundled fonts
+rm -fr %{buildroot}%{_datadir}/%{name}-%{abiversion}/media/fonts/*.ttf
+
+# Install the example files in the datadir.
+cp -pr examples/ %{buildroot}%{_datadir}/%{name}-%{abiversion}
+
+# Install the icon.
+mkdir -p %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/
+# The icon needs to be square to display properly on some systems.
+# Edit the shape of the svg and change the viewport so it looks the same.
+sed 'N; s/width="\([0-9\.]*\)"\n\([ ]*\)height="\([0-9\.]*\)"/width="\3"\n\2height="\3"\n\2viewBox="0 0 \1 \3"/' \
+    gazebo/gui/images/gazebo.svg > %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
+
+# Install uncompressed manpages
+rm -f %{buildroot}/%{_mandir}/man1/*.gz
+install -p -m 0644 build/tools/*[a-z].1 %{buildroot}%{_mandir}/man1/
+install -p -m 0644 build/gazebo/*[a-z].1 %{buildroot}%{_mandir}/man1/
+install -p -m 0644 build/gazebo/gui/*[a-z].1 %{buildroot}%{_mandir}/man1/
+
+# Install the desktop file.
+desktop-file-install  \
+    --dir %{buildroot}%{_datadir}/applications \
+    %{SOURCE1}
+
+# Private plugin library: get rid of versioned symlinks,
+# move into private subdirectory of libdir
+mkdir -p %{buildroot}%{_libdir}/player
+rm -f %{buildroot}/%{_libdir}/libgazebo_player.so
+rm -f %{buildroot}/%{_libdir}/libgazebo_player.so.?
+mv %{buildroot}/%{_libdir}/libgazebo_player.so.%{version} %{buildroot}%{_libdir}/player/libgazebo_player.so
+
+%check
+# Tests run for informational purposes only
+pushd build
+
+# Ignore some tests that will never succeed in the Fedora build system
+cat << EOF > CTestCustom.cmake
+SET(CTEST_CUSTOM_TESTS_IGNORE
+    # OpenAL tests will fail if the builder doesn't have an audio device.
+    UNIT_OpenAL_TEST
+    check_UNIT_OpenAL_TEST
+    # Since the pkg-config and cmake config have absolute paths,
+    # these tests will fail as long as Gazebo is not actually
+    # installed on the system.
+    EXAMPLE_example_plugins
+    check_EXAMPLE_example_plugins
+    REGRESSION_config-cmake
+    check_REGRESSION_config-cmake
+    REGRESSION_config-pkgconfig
+    check_REGRESSION_config-pkgconfig
+    )
+EOF
+export GAZEBO_RESOURCE_PATH=%{buildroot}%{_datadir}/gazebo-%{abiversion}
+export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
+export PATH=$PATH:%{buildroot}%{_bindir}
+make test || cat Testing/Temporary/LastTest.log
+popd
+
+%post
+/sbin/ldconfig
+/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
+
+%postun
+/sbin/ldconfig
+if [ $1 -eq 0 ] ; then
+    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+    /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+fi
+
+%post ode -p /sbin/ldconfig
+
+%postun ode -p /sbin/ldconfig
+
+%posttrans
+/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+
+%files
+%doc AUTHORS COPYING LICENSE
+%{_bindir}/*
+%{_datadir}/%{name}-%{abiversion}/setup.sh
+%{_datadir}/%{name}/setup.sh
+%{_datadir}/applications/%{name}.desktop
+%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
+%{_mandir}/man1/*.1.*
+
+%files common
+%dir %{_datadir}/%{name}-%{abiversion}
+%dir %{_datadir}/%{name}-%{abiversion}/examples
+
+%files libs
+%exclude %{_libdir}/libgazebo_ode.so.*
+%{_libdir}/*.so.*
+%{_libdir}/%{name}-%{abiversion}
+%{_datadir}/%{name}-%{abiversion}/worlds
+
+%files -n player-%{name}
+%{_libdir}/player/libgazebo_player.so
+%{_datadir}/%{name}-%{abiversion}/examples/player
+
+%files media
+%{_datadir}/%{name}-%{abiversion}/media
+
+%files ode
+%doc deps/opende/LICENSE-BSD.TXT
+%{_libdir}/libgazebo_ode.so.*
+
+%files ode-devel
+%{_libdir}/libgazebo_ode.so
+%{_libdir}/pkgconfig/gazebo_ode.pc
+%dir %{_includedir}/%{name}-%{abiversion}/%{name}
+%dir %{_includedir}/%{name}-%{abiversion}
+%{_includedir}/%{name}-%{abiversion}/%{name}/ode
+
+%files doc
+%doc build/doxygen/latex/*.pdf
+%doc build/doxygen_msgs/latex/*.pdf
+%doc build/doxygen/html
+%doc build/doxygen_msgs/html_msgs
+
+%files devel
+%{_datadir}/%{name}-%{abiversion}/examples/plugins
+%{_datadir}/%{name}-%{abiversion}/examples/stand_alone
+%{_libdir}/*.so
+%exclude %{_includedir}/%{name}-%{abiversion}/%{name}/ode
+%{_includedir}/%{name}-%{abiversion}
+%{_libdir}/pkgconfig/gazebo.pc
+%{_libdir}/pkgconfig/gazebo_transport.pc
+%{_libdir}/cmake
+
+%changelog
+* Mon Jun 23 2014 Rich Mattes <richmattes at gmail.com> - 3.0.0-4
+- Create a gazebo-common subpackage to own directories in datadir
+- Have gazebo and gazebo-media depend on each other
+- Remove rpath and other brokenness from pkgconfig and cmake scripts
+
+* Mon Jun 09 2014 Rich Mattes <richmattes at gmail.com> - 3.0.0-3
+- Update to address review comments, including:
+- Remove libgazebo_player from link library list
+- Add patch to gazebo transport to fix boost
+- Add gdal-devel to -devel Requires
+- Export path and library path before running tests
+- Disable tests that don't have the proper build deps
+- Dump test logs on test failure
+
+* Wed May 21 2014 Rich Mattes <richmattes at gmail.com> - 3.0.0-2
+- Remove fonts from media package
+
+* Mon May 19 2014 Rich Mattes <richmattes at gmail.com> - 3.0.0-1
+- Update to release 3.0.0
+- Add ODE subpackage
+
+* Mon Mar 03 2014 Rich Mattes <richmattes at gmail.com> - 2.2.1-3
+- Fix issues with conflicting ownership of directories in datadir
+
+* Mon Feb 10 2014 Rich Mattes <richmattes at gmail.com> - 2.2.1-2
+- Remove libgazebo_player from link list
+
+* Mon Jan 20 2014 Rich Mattes <richmattes at gmail.com> - 2.2.1-1
+- Update to release 2.2.1
+- Install desktop and icon files using Scott Logan's patch
+- Fix gazebo-config.cmake so other CMake projects can build against Gazebo
+- Add missing runtime dependencies to the -devel file
+
+* Thu Jan 16 2014 Rich Mattes <richmattes at gmail.com> - 2.1.0-2
+- Add patch to fix qreal usage on ARM (upstream issue 1007)
+
+* Sun Jan 05 2014 Rich Mattes <richmattes at gmail.com> - 2.1.0-1
+- Update to release 2.1.0
+
+* Sun Oct 06 2013 Rich Mattes <richmattes at gmail.com> - 2.0.0-1
+- Update to release 2.0.0
+
+* Sat May 25 2013 Rich Mattes <richmattes at gmail.com> - 1.8.1-1
+- Update to release 1.8.1
+
+* Sat Apr 20 2013 Rich Mattes <richmattes at gmail.com> - 1.7.1-1
+- Update to release 1.7.1
+
+* Fri Apr 19 2013 Rich Mattes <richmattes at gmail.com> - 1.6.3-1
+- Update to release 1.6.3
+
+* Tue Mar 12 2013 Rich Mattes <richmattes at gmail.com> - 1.5.0-1
+- Update to release 1.5.0
+
+* Wed Jan 16 2013 Rich Mattes <richmattes at gmail.com> - 1.3.1-1
+- Update to release 1.3.1
+
+* Fri Nov 09 2012 Rich Mattes <richmattes at gmail.com> - 1.2.6-1
+- Update to release 1.2.6
+
+* Mon Oct 29 2012 Rich Mattes <richmattes at gmail.com> - 1.2.5-1
+- Update to release 1.2.5
+
+* Tue Oct 16 2012 Rich Mattes <richmattes at gmail.com> - 1.2.2-1
+- Update to release 1.2.2
+
+* Tue May 29 2012 Rich Mattes <richmattes at gmail.com> - 1.0.1-2
+- Clean up patches, incorperate build system fixes to patches
+- Add player subpackage
+
+* Fri May 25 2012 Rich Mattes <richmattes at gmail.com> - 1.0.1-1
+- Update to version 1.0.1
+
+* Thu Apr 26 2012 Rich Mattes <richmattes at gmail.com> - 1.0.0-1
+- Initial package
diff --git a/sources b/sources
index e69de29..7637e41 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+c90e962c91494bdb5283873fa15e6d82  gazebo-3.0.0.tar.bz2


More information about the scm-commits mailing list