From 34f09c84a4ce856f1167a1ad79cf52734cf4d8c8 Mon Sep 17 00:00:00 2001
From: Niklas Yann Wettengel <niyawe@uni-koblenz.de>
Date: Thu, 3 Dec 2015 21:50:38 +0100
Subject: [PATCH] Rebase from 'debian/indigo/homer_map_manager'

---
 CHANGELOG.rst              |  5 +++
 CMakeLists.txt             |  4 ++
 debian/changelog           | 82 --------------------------------------
 debian/changelog.em        |  7 ++++
 debian/compat              |  1 -
 debian/compat.em           |  1 +
 debian/control             | 12 ------
 debian/control.em          | 14 +++++++
 debian/gbp.conf            |  3 --
 debian/gbp.conf.em         |  3 ++
 debian/{rules => rules.em} | 20 +++++-----
 package.xml                |  2 +-
 src/MapIO/map_loader.cpp   |  9 ++++-
 13 files changed, 52 insertions(+), 111 deletions(-)
 delete mode 100644 debian/changelog
 create mode 100644 debian/changelog.em
 delete mode 100644 debian/compat
 create mode 100644 debian/compat.em
 delete mode 100644 debian/control
 create mode 100644 debian/control.em
 delete mode 100644 debian/gbp.conf
 create mode 100644 debian/gbp.conf.em
 rename debian/{rules => rules.em} (76%)

diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 6c54e90a..5141faa2 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -2,6 +2,11 @@
 Changelog for package homer_map_manager
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
+1.0.12 (2015-12-03)
+-------------------
+* fixed yaml-cpp saucy error
+* Contributors: Niklas Yann Wettengel
+
 1.0.11 (2015-12-02)
 -------------------
 * added std_srvs dependency
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6b3b07b1..668c92e6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,6 +5,10 @@ find_package(catkin REQUIRED COMPONENTS roscpp roslib tf homer_mapnav_msgs homer
 
 find_package( Eigen REQUIRED )
 
+if(NOT ${YAML_CPP_VERSION} VERSION_LESS "0.5")
+	add_definitions(-DHAVE_NEW_YAMLCPP)
+endif()
+
 catkin_package(
 	CATKIN_DEPENDS
 		roscpp
diff --git a/debian/changelog b/debian/changelog
deleted file mode 100644
index b3ad6dba..00000000
--- a/debian/changelog
+++ /dev/null
@@ -1,82 +0,0 @@
-ros-indigo-homer-map-manager (1.0.11-0saucy) saucy; urgency=high
-
-  * added std_srvs dependency
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Tue, 01 Dec 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.10-0saucy) saucy; urgency=high
-
-  * added yaml-cpp dependency
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Tue, 01 Dec 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.9-0saucy) saucy; urgency=high
-
-  * added sdl-image dependency
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Mon, 30 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.8-0saucy) saucy; urgency=high
-
-  * added sdl dependency
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Sun, 29 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.7-0saucy) saucy; urgency=high
-
-  * updated changelog
-  * updated catkin_depends
-  * Contributors: Niklas Yann Wettengel
-  * updated catkin_depends
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Fri, 27 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.6-0saucy) saucy; urgency=high
-
-  * removed env HOMER_DIR from CMakeLists.txt
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Thu, 26 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.5-0saucy) saucy; urgency=high
-
-
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Mon, 23 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.4-0saucy) saucy; urgency=high
-
-  * changed build dependency from libeigen3-dev to eigen
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Thu, 19 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.3-0saucy) saucy; urgency=high
-
-  * added libeigen3-dev build dependency
-  * Contributors: Niklas Yann Wettengel
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Thu, 19 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.2-0saucy) saucy; urgency=high
-
-  * added Maintainers
-  * added cmake_modules build dependency
-  * added raphael as maintainer
-  * Contributors: Niklas Yann Wettengel, Raphael Memmesheimer
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Thu, 19 Nov 2015 23:00:00 -0000
-
-ros-indigo-homer-map-manager (1.0.1-0saucy) saucy; urgency=high
-
-  * init
-  * Contributors: Raphael Memmesheimer
-
- -- Viktor Seib <vseib@uni-koblenz.de>  Mon, 07 Sep 2015 22:00:00 -0000
-
-
diff --git a/debian/changelog.em b/debian/changelog.em
new file mode 100644
index 00000000..f2886163
--- /dev/null
+++ b/debian/changelog.em
@@ -0,0 +1,7 @@
+@[for change_version, change_date, changelog, main_name, main_email in changelogs]@(Package) (@(change_version)-@(DebianInc)@(Distribution)) @(Distribution); urgency=high
+
+@(changelog)
+
+ -- @(main_name) <@(main_email)>  @(change_date)
+
+@[end for]
diff --git a/debian/compat b/debian/compat
deleted file mode 100644
index f11c82a4..00000000
--- a/debian/compat
+++ /dev/null
@@ -1 +0,0 @@
-9
\ No newline at end of file
diff --git a/debian/compat.em b/debian/compat.em
new file mode 100644
index 00000000..b7f8528b
--- /dev/null
+++ b/debian/compat.em
@@ -0,0 +1 @@
+@(debhelper_version)
\ No newline at end of file
diff --git a/debian/control b/debian/control
deleted file mode 100644
index 220fab3f..00000000
--- a/debian/control
+++ /dev/null
@@ -1,12 +0,0 @@
-Source: ros-indigo-homer-map-manager
-Section: misc
-Priority: extra
-Maintainer: Viktor Seib <vseib@uni-koblenz.de>
-Build-Depends: debhelper (>= 9.0.0), libeigen3-dev, libsdl-image1.2-dev, libsdl1.2-dev, libyaml-cpp-dev, ros-indigo-catkin, ros-indigo-cmake-modules, ros-indigo-homer-mapnav-msgs, ros-indigo-homer-nav-libs, ros-indigo-roscpp, ros-indigo-roslib, ros-indigo-std-srvs, ros-indigo-tf
-Homepage: 
-Standards-Version: 3.9.2
-
-Package: ros-indigo-homer-map-manager
-Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, libeigen3-dev, libsdl-image1.2-dev, libsdl1.2-dev, libyaml-cpp-dev, ros-indigo-homer-mapnav-msgs, ros-indigo-homer-nav-libs, ros-indigo-roscpp, ros-indigo-roslib, ros-indigo-std-srvs, ros-indigo-tf
-Description: map_manager
diff --git a/debian/control.em b/debian/control.em
new file mode 100644
index 00000000..175af208
--- /dev/null
+++ b/debian/control.em
@@ -0,0 +1,14 @@
+Source: @(Package)
+Section: misc
+Priority: extra
+Maintainer: @(Maintainer)
+Build-Depends: debhelper (>= @(debhelper_version).0.0), @(', '.join(BuildDepends))
+@[if Conflicts]Conflicts: @(', '.join(Conflicts))@\n@[end if]@
+@[if Replaces]Replaces: @(', '.join(Replaces))@\n@[end if]@
+Homepage: @(Homepage)
+Standards-Version: 3.9.2
+
+Package: @(Package)
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, @(', '.join(Depends))
+Description: @(Description)
diff --git a/debian/gbp.conf b/debian/gbp.conf
deleted file mode 100644
index d73a581c..00000000
--- a/debian/gbp.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-[git-buildpackage]
-upstream-tag=release/indigo/homer_map_manager/1.0.11-0
-upstream-tree=tag
diff --git a/debian/gbp.conf.em b/debian/gbp.conf.em
new file mode 100644
index 00000000..ad24a164
--- /dev/null
+++ b/debian/gbp.conf.em
@@ -0,0 +1,3 @@
+[git-buildpackage]
+upstream-tag=@(release_tag)
+upstream-tree=tag
diff --git a/debian/rules b/debian/rules.em
similarity index 76%
rename from debian/rules
rename to debian/rules.em
index f599e209..991c991b 100755
--- a/debian/rules
+++ b/debian/rules.em
@@ -14,29 +14,29 @@ export DH_OPTIONS=-v --buildsystem=cmake
 #  https://code.ros.org/trac/ros/ticket/2977
 #  https://code.ros.org/trac/ros/ticket/3842
 export LDFLAGS=
-export PKG_CONFIG_PATH=/opt/ros/indigo/lib/pkgconfig
+export PKG_CONFIG_PATH=@(InstallationPrefix)/lib/pkgconfig
 # Explicitly enable -DNDEBUG, see:
 # 	https://github.com/ros-infrastructure/bloom/issues/327
 export DEB_CXXFLAGS_MAINT_APPEND=-DNDEBUG
 
 %:
-	dh  $@
+	dh  $@@
 
 override_dh_auto_configure:
 	# In case we're installing to a non-standard location, look for a setup.sh
 	# in the install tree that was dropped by catkin, and source it.  It will
 	# set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH.
-	if [ -f "/opt/ros/indigo/setup.sh" ]; then . "/opt/ros/indigo/setup.sh"; fi && \
+	if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \
 	dh_auto_configure -- \
 		-DCATKIN_BUILD_BINARY_PACKAGE="1" \
-		-DCMAKE_INSTALL_PREFIX="/opt/ros/indigo" \
-		-DCMAKE_PREFIX_PATH="/opt/ros/indigo"
+		-DCMAKE_INSTALL_PREFIX="@(InstallationPrefix)" \
+		-DCMAKE_PREFIX_PATH="@(InstallationPrefix)"
 
 override_dh_auto_build:
 	# In case we're installing to a non-standard location, look for a setup.sh
 	# in the install tree that was dropped by catkin, and source it.  It will
 	# set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH.
-	if [ -f "/opt/ros/indigo/setup.sh" ]; then . "/opt/ros/indigo/setup.sh"; fi && \
+	if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \
 	dh_auto_build
 
 override_dh_auto_test:
@@ -44,19 +44,19 @@ override_dh_auto_test:
 	# in the install tree that was dropped by catkin, and source it.  It will
 	# set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH.
 	echo -- Running tests. Even if one of them fails the build is not canceled.
-	if [ -f "/opt/ros/indigo/setup.sh" ]; then . "/opt/ros/indigo/setup.sh"; fi && \
+	if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \
 	dh_auto_test || true
 
 override_dh_shlibdeps:
 	# In case we're installing to a non-standard location, look for a setup.sh
 	# in the install tree that was dropped by catkin, and source it.  It will
 	# set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH.
-	if [ -f "/opt/ros/indigo/setup.sh" ]; then . "/opt/ros/indigo/setup.sh"; fi && \
-	dh_shlibdeps -l$(CURDIR)/debian/ros-indigo-homer-map-manager//opt/ros/indigo/lib/
+	if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \
+	dh_shlibdeps -l$(CURDIR)/debian/@(Package)/@(InstallationPrefix)/lib/
 
 override_dh_auto_install:
 	# In case we're installing to a non-standard location, look for a setup.sh
 	# in the install tree that was dropped by catkin, and source it.  It will
 	# set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH.
-	if [ -f "/opt/ros/indigo/setup.sh" ]; then . "/opt/ros/indigo/setup.sh"; fi && \
+	if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \
 	dh_auto_install
diff --git a/package.xml b/package.xml
index cde8463f..46de5359 100644
--- a/package.xml
+++ b/package.xml
@@ -1,6 +1,6 @@
 <package>
   <name>homer_map_manager</name>
-  <version>1.0.11</version>
+  <version>1.0.12</version>
   <description>
      map_manager
   </description>
diff --git a/src/MapIO/map_loader.cpp b/src/MapIO/map_loader.cpp
index 87919e2e..853882da 100644
--- a/src/MapIO/map_loader.cpp
+++ b/src/MapIO/map_loader.cpp
@@ -61,7 +61,7 @@ MapServer::MapServer(const std::string fname)
 		ROS_ERROR("Map_server could not open %s.", fname.c_str());
 		exit(-1);
 	}
-
+#ifdef HAVE_NEW_YAMLCPP
 	YAML::Node doc = YAML::LoadFile(fname);
 
 	try { 
@@ -165,7 +165,12 @@ MapServer::MapServer(const std::string fname)
 			poiList.push_back(poi);
 		}
 	}
-
+#else
+#warning "yaml-cpp version < 0.5.0 does not work"
+	// For Ubuntu Saucy to work, this would require a yaml-cpp
+	// 0.3.0 compatible implementation.  Since we don't use Saucy,
+	// we just let it fail.
+#endif
 	ROS_INFO("Loading SLAM map from image \"%s\"", slammapfname.c_str());
 	map_server::loadMapFromFile(&m_SLAMMap,slammapfname.c_str(),res,negate,occ_th,free_th, origin);
 	m_SLAMMap.info.map_load_time = ros::Time::now();
-- 
GitLab