Package: release.debian.org Severity: normal Tags: buster User: release.debian....@packages.debian.org Usertags: pu
[ Reason ] orocos-kdl ships KDLConfig.cmake providing a cmake variable with the location of the header files. For Debian this is /usr/include, but it's written as ${CMAKE_CURRENT_LIST_DIR}/../../../include. This breaks with gcc > 5 and cmake < 3.16 if the path is added as -isystem to the compiler. This is the case for the ROS packages using orocos-kdl, as discussed in https://github.com/ros/rosdistro/issues/26526. [ Impact ] If this is not approve the downstream users would need to add a workaround to make use of the development package. [ Tests ] There is an autopkgtest in place, making sure that the headers are still found. Also this was tested manually. [ Risks ] I think the change is trivial and I don't see a risk. [ Checklist ] [X] *all* changes are documented in the d/changelog [X] I reviewed all changes and I approve them [X] attach debdiff against the package in (old)stable [X] the issue is verified as fixed in unstable [ Changes ] As /usr/include is a default include path, the patch simply removes the extra path. -- System Information: Debian Release: bullseye/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 5.8.0-1-amd64 (SMP w/8 CPU threads) Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled
diff --git a/debian/changelog b/debian/changelog index 9dc72bf..91e8724 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +orocos-kdl (1.4.0-7+deb10u2) buster; urgency=medium + + * Add patch for include path + KDLConfig.cmake exports ${CMAKE_CURRENT_LIST_DIR}/../../../include as an + include path, which resolves to /usr/include. This breaks with gcc > 5 and + cmake < 3.16 as discussed in + https://github.com/ros/rosdistro/issues/26526. + As /usr/include is a default include path, the patch simply removes the + extra path. + + -- Jochen Sprickerhof <jspri...@debian.org> Fri, 11 Sep 2020 18:15:58 +0200 + orocos-kdl (1.4.0-7+deb10u1) buster; urgency=medium * Add patch for python3 std string conversion (Closes: #956254) diff --git a/debian/patches/0007-Don-t-export-usr-include-as-include-path.patch b/debian/patches/0007-Don-t-export-usr-include-as-include-path.patch new file mode 100644 index 0000000..017e061 --- /dev/null +++ b/debian/patches/0007-Don-t-export-usr-include-as-include-path.patch @@ -0,0 +1,24 @@ +From: Jochen Sprickerhof <g...@jochen.sprickerhof.de> +Date: Fri, 11 Sep 2020 09:06:41 +0200 +Subject: Don't export /usr/include as include path + +It's not needed and breaks cmake < 3.16. + +cf. https://github.com/ros/rosdistro/issues/26526 +--- + orocos_kdl/KDLConfig.cmake.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/orocos_kdl/KDLConfig.cmake.in b/orocos_kdl/KDLConfig.cmake.in +index a099c19..3a9b738 100644 +--- a/orocos_kdl/KDLConfig.cmake.in ++++ b/orocos_kdl/KDLConfig.cmake.in +@@ -5,7 +5,7 @@ + # orocos_kdl_PKGCONFIG_DIR - directory containing the .pc pkgconfig files + + # Compute paths +-set(orocos_kdl_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/../../../include;@Boost_INCLUDE_DIRS@;@Eigen_INCLUDE_DIR@") ++set(orocos_kdl_INCLUDE_DIRS "@Boost_INCLUDE_DIRS@;@Eigen_INCLUDE_DIR@") + + set(orocos_kdl_LIBRARIES orocos-kdl) + diff --git a/debian/patches/series b/debian/patches/series index da119f6..2c77779 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -2,3 +2,4 @@ 0002-Support-in-tree-compilation.patch 0003-Don-t-install-OrocosKDLTargets.patch 0005-Fixed-python3-std-string-conversion-issue.patch +0007-Don-t-export-usr-include-as-include-path.patch