On Tue, Dec 18, 2012 at 8:18 AM, Armin Hornung <span dir="ltr"><<a href="mailto:HornungA@informatik.uni-freiburg.de" target="_blank">HornungA@informatik.uni-freiburg.de</a>></span> wrote:<br><div class="gmail_quote">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi William,<div class="im"><br>
<br>
On 2012-12-17 19:50, William Woodall wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Bloom allows you to have multiple packages in a single repository. After running bloom each package will be isolated to a branch and tagged.<br>
</blockquote></div>
Great, that's exactly what I was looking for. Indeed, these are like separate packages in one repo. They will be versioned and tagged together, so the version numbers match.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
For example, if you have a git repo with octomap and octovis in sub folders, each containing a catkin package.xml, then bloom will create a release/octomap and release/octovis branch and corresponding version tags.<br>
</blockquote></div>
Will this also work when releasing non-catkin packages? As I just learned there should not be a package.xml as both packages are native CMake libraries, and package.xml should be added only in the release repo ...</blockquote>

<div><br></div><div>If you are ok with having a package.xml in your upstream (there is no harm in this), that will make releasing with bloom much easier (and then you can add any other catkin specific things in the release repository as a patch if you like).</div>

<div><br></div><div>I am currently looking into a method for better handling building plain cmake packages (pcl, opencv, flann, and octomap), which should make building it from source with other dependent ROS packages easier.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
In short, if you keep octomap and octovis at the same version you can keep them in the same repository, otherwise I would recommend splitting them up.  There is little to no overhead to having another repository on github, and having someone checkout (or download a zip of) two repositories instead of one on Windows is not such a burden for them in my opinion, but it is up to you.<br>


</blockquote></div>
It's not only a matter of Windows but general source releases (without ROS). If you download two versions you have to configure the lookup path for octomap-config.cmake and ensure that it points to the right version so that they. When you download our top-level project, the top-level CMakeLists will take care of that and you just have to run "cmake .. && make" in the build directory to build all together.<br>

</blockquote><div><br></div><div>Sounds like a job for catkin =p.</div><div><br></div><div>Maybe one day when catkin is more ubiquitous you could consider using it as your default buildsystem.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<br>
Best,<br>
Armin<div class="HOEnZb"><div class="h5"><br>
<br>
-- <br>
Armin Hornung<br>
Humanoid Robots Lab, Albert-Ludwigs-Universität Freiburg<br>
Contact: <a href="http://www.informatik.uni-freiburg.de/~hornunga" target="_blank">http://www.informatik.uni-<u></u>freiburg.de/~hornunga</a><br>
<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>William Woodall<div>Willow Garage - Software Engineer</div><div><a href="mailto:wwoodall@willowgarage.com" target="_blank">wwoodall@willowgarage.com</a></div>

<br>