diff --git a/recipes-extended/assimp/assimp/0001-Use-Assimp-namespace-to-fix-build-for-big-endian-arc.patch b/recipes-extended/assimp/assimp/0001-Use-Assimp-namespace-to-fix-build-for-big-endian-arc.patch new file mode 100644 index 0000000..e0e2a50 --- /dev/null +++ b/recipes-extended/assimp/assimp/0001-Use-Assimp-namespace-to-fix-build-for-big-endian-arc.patch @@ -0,0 +1,33 @@ +From c2c12c1db5c8d7610ad46b1970aabf4afde0eef4 Mon Sep 17 00:00:00 2001 +From: Daniel Knezevic +Date: Thu, 18 Aug 2016 10:51:20 +0200 +Subject: [PATCH] Use Assimp namespace to fix build for big-endian + architectures + +Upstream-Status: Backport [https://github.com/assimp/assimp/commit/c2c12c1db5c8d7610ad46b1970aabf4afde0eef4] + +This patch has been generated with: + `git format-patch -1 c2c12c1db5c8d7610ad46b1970aabf4afde0eef4` +in the assimp repository. + +Signed-off-by: Lukas Bulwahn +--- + code/glTFAsset.inl | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/code/glTFAsset.inl b/code/glTFAsset.inl +index d52c825..470246c 100644 +--- a/code/glTFAsset.inl ++++ b/code/glTFAsset.inl +@@ -40,6 +40,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + #include "StringUtils.h" + ++using namespace Assimp; ++ + namespace glTF { + + namespace { +-- +1.9.1 + diff --git a/recipes-extended/assimp/assimp_3.1.1.bb b/recipes-extended/assimp/assimp_3.1.1.bb deleted file mode 100644 index 8c01603..0000000 --- a/recipes-extended/assimp/assimp_3.1.1.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "Open Asset Import Library" -SECTION = "devel" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://LICENSE;md5=bc4231a2268da8fc55525ad119638a87" - -DEPENDS = "boost" - -SRC_URI = "https://downloads.sourceforge.net/project/${PN}/${PN}-3.1/${PN}-${PV}_no_test_models.zip" -SRC_URI[md5sum] = "ccd4788204509da58a3a53c7aeda7a8b" -SRC_URI[sha256sum] = "da9827876f10a8b447270368753392cfd502e70a2e9d1361554e5dfcb1fede9e" - -S = "${WORKDIR}/${PN}-${PV}" - -inherit cmake - -FILES_${PN}-dev += "${libdir}/cmake/assimp-3.1/*.cmake" diff --git a/recipes-extended/assimp/assimp_3.3.1.bb b/recipes-extended/assimp/assimp_3.3.1.bb new file mode 100644 index 0000000..7741422 --- /dev/null +++ b/recipes-extended/assimp/assimp_3.3.1.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "Open Asset Import Library" +SECTION = "devel" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=4cd8c0aedc7a0623476669377d7eeda8" + +DEPENDS = "boost" + +SRC_URI = "https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz;downloadfilename=${PN}-${PV}.tar.gz" +SRC_URI[md5sum] = "fc57b024e80ebb13301bd0983826cad3" +SRC_URI[sha256sum] = "d385c3f90876241343f09e45f4e5033a6a05861b971c63d1f6d512371ffdc7bf" + +SRC_URI += "file://0001-Use-Assimp-namespace-to-fix-build-for-big-endian-arc.patch" + +S = "${WORKDIR}/${PN}-${PV}" + +inherit cmake + +FILES_${PN}-dev += "${libdir}/cmake/assimp-3.3/*.cmake" diff --git a/recipes-ros/mavros/mavros/0001-CMake-explicitly-link-the-atomic-library-797.patch b/recipes-ros/mavros/mavros/0001-CMake-explicitly-link-the-atomic-library-797.patch new file mode 100644 index 0000000..780ad41 --- /dev/null +++ b/recipes-ros/mavros/mavros/0001-CMake-explicitly-link-the-atomic-library-797.patch @@ -0,0 +1,56 @@ +From 658347978fc97675dbdff480f4557eb772e915dc Mon Sep 17 00:00:00 2001 +From: Lukas Bulwahn +Date: Mon, 4 Sep 2017 16:17:12 +0100 +Subject: [PATCH] CMake: explicitly link the atomic library (#797) + +For arm & mips architecture, the linker must explicitly be asked to +link the atomic library (with `-latomic`). + +Otherwise, the linking fails with: + +``` +| devel/lib/libmavros.so: undefined reference to `__atomic_load_8' +| devel/lib/libmavros.so: undefined reference to `__atomic_store_8' +| collect2: error: ld returned 1 exit status +``` + +Linking `atomic` unconditionally as library is strictly needed only +for arm & mips, but it seems not to imply any further differences +with other architectures. Hence, this commit simply adds `atomic` +unconditionally for a uniform handling of all machine architectures. + +This is an alternative solution to the proposed solution in #790. + +The issue was discovered cross-compiling mavros in meta-ros, the +OpenEmbedded layer for ROS. Some further pointers are available at: + + https://github.com/bmwcarit/meta-ros/issues/525 + +Signed-off-by: Lukas Bulwahn + +Upstream-Status: Accepted [https://github.com/mavlink/mavros/commit/658347978fc97675dbdff480f4557eb772e915dc] + +This patch has been generated with: + `git format-patch -1 658347978fc97675dbdff480f4557eb772e915dc` +in the mavros repository. + +Signed-off-by: Lukas Bulwahn +--- + mavros/CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/mavros/CMakeLists.txt b/mavros/CMakeLists.txt +index a4ac3cb..5233e96 100644 +--- a/mavros/CMakeLists.txt ++++ b/mavros/CMakeLists.txt +@@ -102,6 +102,7 @@ add_library(mavros + src/lib/rosconsole_bridge.cpp + ) + target_link_libraries(mavros ++ atomic + ${catkin_LIBRARIES} + ${Boost_LIBRARIES} + ${GeographicLib_LIBRARIES} +-- +1.9.1 + diff --git a/recipes-ros/mavros/mavros_0.18.7.bb b/recipes-ros/mavros/mavros_0.18.7.bb index e941aaa..870c681 100644 --- a/recipes-ros/mavros/mavros_0.18.7.bb +++ b/recipes-ros/mavros/mavros_0.18.7.bb @@ -48,4 +48,5 @@ require mavros.inc ROS_PKG_SUBDIR = "mavros" -SRC_URI += "file://0001-always-find-Eigen-with-cmake_modules-mechanism.patch;striplevel=2" +SRC_URI += "file://0001-always-find-Eigen-with-cmake_modules-mechanism.patch;striplevel=2 \ + file://0001-CMake-explicitly-link-the-atomic-library-797.patch;striplevel=2"