[ros] 01/01: Add patch for ld -l:/path/lib
Jochen Sprickerhof
jspricke-guest at moszumanska.debian.org
Fri Aug 28 12:33:32 UTC 2015
This is an automated email from the git hooks/post-receive script.
jspricke-guest pushed a commit to branch master
in repository ros.
commit 5611ccc5676fc9efa3ce8b0fab56fd14eb7a3db8
Author: Jochen Sprickerhof <git at jochen.sprickerhof.de>
Date: Fri Aug 28 14:30:40 2015 +0200
Add patch for ld -l:/path/lib
taken from https://github.com/ros/catkin/issues/694
---
...kin-694-by-modifying-rosbuild-to-strip-le.patch | 39 ++++++++++++++++++++++
debian/patches/series | 1 +
2 files changed, 40 insertions(+)
diff --git a/debian/patches/0004-Fix-ros-catkin-694-by-modifying-rosbuild-to-strip-le.patch b/debian/patches/0004-Fix-ros-catkin-694-by-modifying-rosbuild-to-strip-le.patch
new file mode 100644
index 0000000..2371b41
--- /dev/null
+++ b/debian/patches/0004-Fix-ros-catkin-694-by-modifying-rosbuild-to-strip-le.patch
@@ -0,0 +1,39 @@
+From: Brian Gerkey <gerkey at osrfoundation.org>
+Date: Mon, 13 Jul 2015 18:46:58 -0700
+Subject: Fix ros/catkin#694 by modifying rosbuild to strip leading -l: from
+ libraries.
+
+---
+ core/rosbuild/core/rosbuild/public.cmake | 19 +++++++++++++++++++
+ 1 file changed, 19 insertions(+)
+
+diff --git a/core/rosbuild/core/rosbuild/public.cmake b/core/rosbuild/core/rosbuild/public.cmake
+index 1ea805a..6d56183 100644
+--- a/core/rosbuild/core/rosbuild/public.cmake
++++ b/core/rosbuild/core/rosbuild/public.cmake
+@@ -258,6 +258,25 @@ macro(rosbuild_init)
+ list(REVERSE ${_prefix}_LIBRARIES)
+ endif()
+
++ # Strip the leading ':' from any library that was given to us as
++ # ':/path/to/lib'. Those kinds of libraries generally come from
++ # catkin-generated .pc files that are parsed by rospack via pkg-config.
++ # Newer versions of ld (and gold) don't accept the '-l:/path/to/lib'
++ # syntax. They've long accepted the '/path/to/lib' syntax, so it
++ # should be safe to just strip the ':' here. We could remove it at
++ # the source, from the .pc file, but the lib argument needs to start
++ # with '-l' to ensure proper ordering of libs in the return from
++ # pkg-config.
++ # https://github.com/ros/catkin/issues/694
++ if(${_prefix}_LIBRARIES)
++ set(_${_prefix}_LIBRARIES ${${_prefix}_LIBRARIES})
++ set(${_prefix}_LIBRARIES "")
++ foreach(_lib ${_${_prefix}_LIBRARIES})
++ string(REGEX REPLACE "^:/" "/" _lib_nocolon ${_lib})
++ list(APPEND ${_prefix}_LIBRARIES ${_lib_nocolon})
++ endforeach(_lib)
++ endif()
++
+ # Also throw in the libs that we want to link everything against (only
+ # use case for this so far is -lgcov when building with code coverage
+ # support).
diff --git a/debian/patches/series b/debian/patches/series
index 6da9fa5..1d9f7f2 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
0001-Add-CMakeLists.txt.patch
0002-Add-Debian-specific-SOVERSION.patch
0003-Fix-env-roscreatepkg.patch
+0004-Fix-ros-catkin-694-by-modifying-rosbuild-to-strip-le.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/ros/ros.git
More information about the debian-science-commits
mailing list