Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme
@ 2014-03-20 10:45 Davide Viti
  2014-03-20 10:45 ` [Buildroot] [PATCH v5 2/2] eigen: add an option to install unsupported modules Davide Viti
  2014-03-30 10:07 ` [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme Thomas Petazzoni
  0 siblings, 2 replies; 4+ messages in thread
From: Davide Viti @ 2014-03-20 10:45 UTC (permalink / raw)
  To: buildroot

eigen's build-system (cmake), by default, installs the header files
in /usr/include/eigen3

Signed-off-by: Davide Viti <d.viti@infosolution.it>
---
Switching from $(generic-package) to $(cmake-package) results in
known [1] build failures due to in-place compilation.
Not worth fixing on this package which just needs to copy include
files.

[1] http://article.gmane.org/gmane.comp.lib.uclibc.buildroot/43687/

 package/eigen/eigen.mk | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/package/eigen/eigen.mk b/package/eigen/eigen.mk
index 5abd464..9a5ce7d 100644
--- a/package/eigen/eigen.mk
+++ b/package/eigen/eigen.mk
@@ -12,12 +12,14 @@ EIGEN_LICENSE = MPL2, BSD-3c, LGPLv2.1
 EIGEN_LICENSE_FILES = COPYING.MPL2 COPYING.BSD COPYING.LGPL COPYING.README
 EIGEN_INSTALL_STAGING = YES
 EIGEN_INSTALL_TARGET = NO
+EIGEN_DEST_DIR = $(STAGING_DIR)/usr/include/eigen3
 
 # This package only consists of headers that need to be
 # copied over to the sysroot for compile time use
 define EIGEN_INSTALL_STAGING_CMDS
-	$(RM) -r $(STAGING_DIR)/usr/include/Eigen
-	cp -a $(@D)/Eigen $(STAGING_DIR)/usr/include/
+	$(RM) -r $(EIGEN_DEST_DIR)
+	mkdir -p $(EIGEN_DEST_DIR)
+	cp -a $(@D)/Eigen $(EIGEN_DEST_DIR)
 endef
 
 $(eval $(generic-package))
-- 
1.9.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v5 2/2] eigen: add an option to install unsupported modules
  2014-03-20 10:45 [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme Davide Viti
@ 2014-03-20 10:45 ` Davide Viti
  2014-03-30 10:09   ` Thomas Petazzoni
  2014-03-30 10:07 ` [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme Thomas Petazzoni
  1 sibling, 1 reply; 4+ messages in thread
From: Davide Viti @ 2014-03-20 10:45 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Davide Viti <d.viti@infosolution.it>
---
 Changes v4 -> v5:
   - fix indentation (spaces > tabs)

Note to self: use emacs Ctrl-q TAB to force tab insertion

 package/eigen/Config.in | 8 ++++++++
 package/eigen/eigen.mk  | 7 +++++++
 2 files changed, 15 insertions(+)

diff --git a/package/eigen/Config.in b/package/eigen/Config.in
index e94f9a3..03d65b1 100644
--- a/package/eigen/Config.in
+++ b/package/eigen/Config.in
@@ -13,5 +13,13 @@ config BR2_PACKAGE_EIGEN
 
 	  http://eigen.tuxfamily.org/
 
+if BR2_PACKAGE_EIGEN
+
+config BR2_PACKAGE_EIGEN_UNSUPPORTED_MODULES
+	bool "unsupported modules"
+	help
+	  Install eigen unsupported modules
+endif
+
 comment "eigen needs a toolchain w/ C++"
 	depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/eigen/eigen.mk b/package/eigen/eigen.mk
index 9a5ce7d..ac030a9 100644
--- a/package/eigen/eigen.mk
+++ b/package/eigen/eigen.mk
@@ -14,12 +14,19 @@ EIGEN_INSTALL_STAGING = YES
 EIGEN_INSTALL_TARGET = NO
 EIGEN_DEST_DIR = $(STAGING_DIR)/usr/include/eigen3
 
+ifeq ($(BR2_PACKAGE_EIGEN_UNSUPPORTED_MODULES),y)
+define EIGEN_INSTALL_UNSUPPORTED_MODULES_CMDS
+	cp -a $(@D)/unsupported $(EIGEN_DEST_DIR)
+endef
+endif
+
 # This package only consists of headers that need to be
 # copied over to the sysroot for compile time use
 define EIGEN_INSTALL_STAGING_CMDS
 	$(RM) -r $(EIGEN_DEST_DIR)
 	mkdir -p $(EIGEN_DEST_DIR)
 	cp -a $(@D)/Eigen $(EIGEN_DEST_DIR)
+	$(EIGEN_INSTALL_UNSUPPORTED_MODULES_CMDS)
 endef
 
 $(eval $(generic-package))
-- 
1.9.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme
  2014-03-20 10:45 [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme Davide Viti
  2014-03-20 10:45 ` [Buildroot] [PATCH v5 2/2] eigen: add an option to install unsupported modules Davide Viti
@ 2014-03-30 10:07 ` Thomas Petazzoni
  1 sibling, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2014-03-30 10:07 UTC (permalink / raw)
  To: buildroot

Dear Davide Viti,

On Thu, 20 Mar 2014 11:45:47 +0100, Davide Viti wrote:
> eigen's build-system (cmake), by default, installs the header files
> in /usr/include/eigen3
> 
> Signed-off-by: Davide Viti <d.viti@infosolution.it>

I've applied this one. Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Buildroot] [PATCH v5 2/2] eigen: add an option to install unsupported modules
  2014-03-20 10:45 ` [Buildroot] [PATCH v5 2/2] eigen: add an option to install unsupported modules Davide Viti
@ 2014-03-30 10:09   ` Thomas Petazzoni
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2014-03-30 10:09 UTC (permalink / raw)
  To: buildroot

Dear Davide Viti,

On Thu, 20 Mar 2014 11:45:48 +0100, Davide Viti wrote:
> Signed-off-by: Davide Viti <d.viti@infosolution.it>

However, I haven't applied this one. See below.


> +ifeq ($(BR2_PACKAGE_EIGEN_UNSUPPORTED_MODULES),y)
> +define EIGEN_INSTALL_UNSUPPORTED_MODULES_CMDS
> +	cp -a $(@D)/unsupported $(EIGEN_DEST_DIR)

I believe this should be:

	mkdir -p $(EIGEN_DEST_DIR)/unsupported
	cp -a $(@D)/unsupported/Eigen $(EIGEN_DEST_DIR)/unsupport

Otherwise, in /usr/include/eigen3/unsupported, I get a lot of tests
beyond just the Eigen header files: I get the documentation and the
tests, the README.txt, etc. I believe only the contents of the
unsupported/Eigen/ directory is needed.

thomas at skate:~/projets/buildroot/output/staging/usr/include/eigen3/unsupported (master)$ tree
.
??? bench
??? ??? bench_svd.cpp
??? CMakeLists.txt
??? doc
??? ??? CMakeLists.txt
??? ??? eigendoxy_layout.xml.in
??? ??? examples
??? ??? ??? BVH_Example.cpp
??? ??? ??? CMakeLists.txt
??? ??? ??? FFT.cpp
??? ??? ??? MatrixExponential.cpp
??? ??? ??? MatrixFunction.cpp
??? ??? ??? MatrixLogarithm.cpp
??? ??? ??? MatrixPower.cpp
??? ??? ??? MatrixPower_optimal.cpp
??? ??? ??? MatrixSine.cpp
??? ??? ??? MatrixSinh.cpp
??? ??? ??? MatrixSquareRoot.cpp
??? ??? ??? PolynomialSolver1.cpp
??? ??? ??? PolynomialUtils1.cpp
??? ??? Overview.dox
??? ??? snippets
???     ??? CMakeLists.txt
??? Eigen
??? ??? AdolcForward
??? ??? AlignedVector3
??? ??? ArpackSupport
??? ??? AutoDiff
??? ??? BVH
??? ??? CMakeLists.txt
??? ??? FFT
??? ??? IterativeSolvers
??? ??? KroneckerProduct
??? ??? LevenbergMarquardt
??? ??? MatrixFunctions
??? ??? MoreVectorization
??? ??? MPRealSupport
??? ??? NonLinearOptimization
??? ??? NumericalDiff
??? ??? OpenGLSupport
??? ??? Polynomials
??? ??? Skyline
??? ??? SparseExtra
??? ??? Splines
??? ??? src
??? ??? ??? AutoDiff
??? ??? ??? ??? AutoDiffJacobian.h
??? ??? ??? ??? AutoDiffScalar.h
??? ??? ??? ??? AutoDiffVector.h
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? BVH
??? ??? ??? ??? BVAlgorithms.h
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? KdBVH.h
??? ??? ??? CMakeLists.txt
??? ??? ??? Eigenvalues
??? ??? ??? ??? ArpackSelfAdjointEigenSolver.h
??? ??? ??? FFT
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? ei_fftw_impl.h
??? ??? ??? ??? ei_kissfft_impl.h
??? ??? ??? IterativeSolvers
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? ConstrainedConjGrad.h
??? ??? ??? ??? DGMRES.h
??? ??? ??? ??? GMRES.h
??? ??? ??? ??? IncompleteCholesky.h
??? ??? ??? ??? IncompleteLU.h
??? ??? ??? ??? IterationController.h
??? ??? ??? ??? MINRES.h
??? ??? ??? ??? Scaling.h
??? ??? ??? KroneckerProduct
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? KroneckerTensorProduct.h
??? ??? ??? LevenbergMarquardt
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? CopyrightMINPACK.txt
??? ??? ??? ??? LevenbergMarquardt.h
??? ??? ??? ??? LMcovar.h
??? ??? ??? ??? LMonestep.h
??? ??? ??? ??? LMpar.h
??? ??? ??? ??? LMqrsolv.h
??? ??? ??? MatrixFunctions
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? MatrixExponential.h
??? ??? ??? ??? MatrixFunctionAtomic.h
??? ??? ??? ??? MatrixFunction.h
??? ??? ??? ??? MatrixLogarithm.h
??? ??? ??? ??? MatrixPower.h
??? ??? ??? ??? MatrixSquareRoot.h
??? ??? ??? ??? StemFunction.h
??? ??? ??? MoreVectorization
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? MathFunctions.h
??? ??? ??? NonLinearOptimization
??? ??? ??? ??? chkder.h
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? covar.h
??? ??? ??? ??? dogleg.h
??? ??? ??? ??? fdjac1.h
??? ??? ??? ??? HybridNonLinearSolver.h
??? ??? ??? ??? LevenbergMarquardt.h
??? ??? ??? ??? lmpar.h
??? ??? ??? ??? qrsolv.h
??? ??? ??? ??? r1mpyq.h
??? ??? ??? ??? r1updt.h
??? ??? ??? ??? rwupdt.h
??? ??? ??? NumericalDiff
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? NumericalDiff.h
??? ??? ??? Polynomials
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? Companion.h
??? ??? ??? ??? PolynomialSolver.h
??? ??? ??? ??? PolynomialUtils.h
??? ??? ??? Skyline
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? SkylineInplaceLU.h
??? ??? ??? ??? SkylineMatrixBase.h
??? ??? ??? ??? SkylineMatrix.h
??? ??? ??? ??? SkylineProduct.h
??? ??? ??? ??? SkylineStorage.h
??? ??? ??? ??? SkylineUtil.h
??? ??? ??? SparseExtra
??? ??? ??? ??? BlockOfDynamicSparseMatrix.h
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? DynamicSparseMatrix.h
??? ??? ??? ??? MarketIO.h
??? ??? ??? ??? MatrixMarketIterator.h
??? ??? ??? ??? RandomSetter.h
??? ??? ??? Splines
??? ??? ??? ??? CMakeLists.txt
??? ??? ??? ??? SplineFitting.h
??? ??? ??? ??? SplineFwd.h
??? ??? ??? ??? Spline.h
??? ??? ??? SVD
??? ???     ??? BDCSVD.h
??? ???     ??? CMakeLists.txt
??? ???     ??? doneInBDCSVD.txt
??? ???     ??? JacobiSVD.h
??? ???     ??? SVDBase.h
??? ???     ??? TODOBdcsvd.txt
??? ??? SVD
??? README.txt
??? test
    ??? alignedvector3.cpp
    ??? autodiff.cpp
    ??? bdcsvd.cpp
    ??? BVH.cpp
    ??? CMakeLists.txt
    ??? dgmres.cpp
    ??? FFT.cpp
    ??? FFTW.cpp
    ??? forward_adolc.cpp
    ??? gmres.cpp
    ??? jacobisvd.cpp
    ??? kronecker_product.cpp
    ??? levenberg_marquardt.cpp
    ??? matrix_exponential.cpp
    ??? matrix_function.cpp
    ??? matrix_functions.h
    ??? matrix_power.cpp
    ??? matrix_square_root.cpp
    ??? minres.cpp
    ??? mpreal
    ??? ??? mpreal.h
    ??? mpreal_support.cpp
    ??? NonLinearOptimization.cpp
    ??? NumericalDiff.cpp
    ??? openglsupport.cpp
    ??? polynomialsolver.cpp
    ??? polynomialutils.cpp
    ??? sparse_extra.cpp
    ??? splines.cpp
    ??? svd_common.h

Care to look into this and resend a new version of the patch?

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-03-30 10:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-20 10:45 [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme Davide Viti
2014-03-20 10:45 ` [Buildroot] [PATCH v5 2/2] eigen: add an option to install unsupported modules Davide Viti
2014-03-30 10:09   ` Thomas Petazzoni
2014-03-30 10:07 ` [Buildroot] [PATCH v5 1/2] eigen: follow default installation scheme Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox