Skip to content

Indigo :: 3rd Party Debs

Daniel Stonier edited this page Jan 14, 2015 · 9 revisions

Overview

These instructions are for building from a fork where I can make minor changes. The alternative is to inject a package.xml in via the release repo.

Links & Resources

  • [http://wiki.ros.org/bloom/Tutorials/ReleaseThirdParty](ROS Wiki - Release Third Party)
  • [http://www.ros.org/reps/rep-0136.html](REP 136 - Releasing 3rd Party)

Forking

Fork the original project and create an indigo branch where we will make the changes.

Modifications

Package.xml

Needs a build type, build depend on cmake, run depend on catkin and any rosdeps you require, e.g.

<package>
  <name>ceres-solver</name>
  <version>0.10.0</version>
  <description>
   Ceres Solver - A non-linear least squares minimizer
  </description>
  <url type="repository">https://github.com/stonier/ceres-solver</url>
  <url type="bugtracker">http://code.google.com/p/ceres-solver/issues/list</url>
  <maintainer email="[email protected]">Daniel Stonier</maintainer>
  <license>New BSD</license>

  <buildtool_depend>cmake</buildtool_depend>

  <build_depend>libgflags-dev</build_depend>
  <build_depend>libgoogle-glog-dev</build_depend>
  <build_depend>liblapack-dev</build_depend>
  <build_depend>libblas-dev</build_depend>
  <build_depend>tbb</build_depend>
  <build_depend>suitesparse</build_depend>

  <run_depend>catkin</run_depend>
  <run_depend>libgflags-dev</run_depend>
  <run_depend>libgoogle-glog-dev</run_depend>
  <run_depend>liblapack-dev</run_depend>
  <run_depend>libblas-dev</run_depend>
  <run_depend>tbb</run_depend>
  <run_depend>suitesparse</run_depend>

  <export>
    <build_type>cmake</build_type>
  </export>

</package>

CMakeLists.txt

install(FILES package.xml DESTINATION share/ceres-solver)

Tag

Finally, push a tag with the version you specified in the package.xml

Bloom

Custom CMake Instructions

If you can't just do a cmake ... In the release repo:

> git checkout debian/indigo/ceres_solver

In this branch there should be a debian folder containing the template files, among them: rules.em. Edit this file to fit your needs and then commit the changes:

> git add debian/rules.em
> git commit -m "Customized debian rules file"
# They recommend to do this, but complains about no patch branch: git-bloom-patch export
> git-bloom-release indigo