libeigen: initial contribution required by opencv

As opencv depends on libeigen, libeigen is added to the meta-oe
layer. This commit is derived from the work [1] by Kartik Mohta.

[1] https://github.com/kartikmohta/meta-km/tree/master/recipes-extended/eigen

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
Lukas Bulwahn 2013-10-01 07:44:12 +00:00 committed by Martin Jansa
parent b3bcdd59e2
commit 424e3c1b93
2 changed files with 100 additions and 0 deletions

View File

@ -0,0 +1,75 @@
libeigen: don't try building tests
While configuring, if the tests are enabled, it checks some machine-specific
settings which we don't want to do while cross-compiling.
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
--- a/CMakeLists.txt~ 2013-07-29 16:59:48.403504947 -0400
+++ b/CMakeLists.txt 2013-07-29 17:00:19.868020948 -0400
@@ -346,25 +346,25 @@
add_subdirectory(doc EXCLUDE_FROM_ALL)
-include(EigenConfigureTesting)
+#include(EigenConfigureTesting)
# fixme, not sure this line is still needed:
-enable_testing() # must be called from the root CMakeLists, see man page
+#enable_testing() # must be called from the root CMakeLists, see man page
-if(EIGEN_LEAVE_TEST_IN_ALL_TARGET)
- add_subdirectory(test) # can't do EXCLUDE_FROM_ALL here, breaks CTest
-else()
- add_subdirectory(test EXCLUDE_FROM_ALL)
-endif()
+#if(EIGEN_LEAVE_TEST_IN_ALL_TARGET)
+# add_subdirectory(test) # can't do EXCLUDE_FROM_ALL here, breaks CTest
+#else()
+# add_subdirectory(test EXCLUDE_FROM_ALL)
+#endif()
-if(EIGEN_LEAVE_TEST_IN_ALL_TARGET)
- add_subdirectory(blas)
- add_subdirectory(lapack)
-else()
- add_subdirectory(blas EXCLUDE_FROM_ALL)
- add_subdirectory(lapack EXCLUDE_FROM_ALL)
-endif()
+#if(EIGEN_LEAVE_TEST_IN_ALL_TARGET)
+# add_subdirectory(blas)
+# add_subdirectory(lapack)
+#else()
+# add_subdirectory(blas EXCLUDE_FROM_ALL)
+# add_subdirectory(lapack EXCLUDE_FROM_ALL)
+#endif()
add_subdirectory(unsupported)
@@ -384,7 +384,7 @@
configure_file(scripts/cdashtesting.cmake.in cdashtesting.cmake @ONLY)
-ei_testing_print_summary()
+#ei_testing_print_summary()
message(STATUS "")
message(STATUS "Configured Eigen ${EIGEN_VERSION_NUMBER}")
--- a/unsupported/CMakeLists.txt~ 2013-07-29 16:59:54.091598607 -0400
+++ b/unsupported/CMakeLists.txt 2013-07-29 17:00:27.052139300 -0400
@@ -1,7 +1,7 @@
add_subdirectory(Eigen)
add_subdirectory(doc EXCLUDE_FROM_ALL)
-if(EIGEN_LEAVE_TEST_IN_ALL_TARGET)
- add_subdirectory(test) # can't do EXCLUDE_FROM_ALL here, breaks CTest
-else()
- add_subdirectory(test EXCLUDE_FROM_ALL)
-endif()
+#if(EIGEN_LEAVE_TEST_IN_ALL_TARGET)
+# add_subdirectory(test) # can't do EXCLUDE_FROM_ALL here, breaks CTest
+#else()
+# add_subdirectory(test EXCLUDE_FROM_ALL)
+#endif()

View File

@ -0,0 +1,25 @@
DESCRIPTION = "Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms."
AUTHOR = "Benoît Jacob and Gaël Guennebaud and others"
HOMEPAGE = "http://eigen.tuxfamily.org/"
LICENSE = "MPL-2.0"
LIC_FILES_CHKSUM = "file://COPYING.MPL2;md5=815ca599c9df247a0c7f619bab123dad"
SRC_URI = "http://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 \
file://eigen-disable-tests.patch"
SRC_URI[md5sum] = "894381be5be65bb7099c6fd91d61b357"
SRC_URI[sha256sum] = "011f78960d939227f9276173d0c4cc0053bb9e0a7356539a9a6c7c89d984fab6"
S = "${WORKDIR}/eigen-eigen-ffa86ffb5570"
inherit cmake
OECMAKE_SOURCEPATH = ".."
OECMAKE_BUILDPATH = "build"
EXTRA_OECMAKE += "-Dpkg_config_libdir=${libdir}"
FILES_${PN} = "${includedir} ${libdir}"
# ${PN} is empty so we need to tweak -dev and -dbg package dependencies
RDEPENDS_${PN}-dev = ""
RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"