summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2010-08-10 18:24:28 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2010-08-10 18:24:28 +0000
commit72ae85b0a370a3c033dfeada00bde8ad8f2168ff (patch)
tree2bc2eb31fd86340ae7a78c5901d1111051ec116f /sci-libs
parentMarking samba-3.0.37-r1 ppc64 for bug 323785 (diff)
downloadhistorical-72ae85b0a370a3c033dfeada00bde8ad8f2168ff.tar.gz
historical-72ae85b0a370a3c033dfeada00bde8ad8f2168ff.tar.bz2
historical-72ae85b0a370a3c033dfeada00bde8ad8f2168ff.zip
Added patch for FastICA, thanks Gert Wollny (bug #327527). Added static-libs flag, switch to EAPI3, added missing pkgconfig dependency, simplified ebuild, removed the strip restricting (leaving out to user), and added longdescription.
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/itpp/ChangeLog12
-rw-r--r--sci-libs/itpp/Manifest16
-rw-r--r--sci-libs/itpp/files/itpp-4.0.7-fastica-fix-endless-loop.patch93
-rw-r--r--sci-libs/itpp/itpp-4.0.7-r1.ebuild56
-rw-r--r--sci-libs/itpp/metadata.xml18
5 files changed, 187 insertions, 8 deletions
diff --git a/sci-libs/itpp/ChangeLog b/sci-libs/itpp/ChangeLog
index 1d805bcda2ec..358c623aafeb 100644
--- a/sci-libs/itpp/ChangeLog
+++ b/sci-libs/itpp/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for sci-libs/itpp
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/itpp/ChangeLog,v 1.94 2010/03/14 09:56:12 hwoarang Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/itpp/ChangeLog,v 1.95 2010/08/10 18:24:27 bicatali Exp $
+
+*itpp-4.0.7-r1 (10 Aug 2010)
+
+ 10 Aug 2010; SĂ©bastien Fabbro <bicatali@gentoo.org>
+ +itpp-4.0.7-r1.ebuild, +files/itpp-4.0.7-fastica-fix-endless-loop.patch,
+ metadata.xml:
+ Added patch for FastICA, thanks Gert Wollny (bug #327527). Added
+ static-libs flag, switch to EAPI3, added missing pkgconfig dependency,
+ simplified ebuild, removed the strip restricting (leaving out to user),
+ and added longdescription.
14 Mar 2010; Markos Chandras <hwoarang@gentoo.org> itpp-4.0.6.ebuild:
Stable on amd64 wrt bug #300279
diff --git a/sci-libs/itpp/Manifest b/sci-libs/itpp/Manifest
index 5c60c6f8d810..96ce39e8dc53 100644
--- a/sci-libs/itpp/Manifest
+++ b/sci-libs/itpp/Manifest
@@ -1,9 +1,21 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX itpp-4.0.6-gcc44.patch 2068 RMD160 62cf59be94f18f0bfe5c433540d5c2784bc8a8a0 SHA1 350c2ed54cb9d8c5f6188e703646e912e39fcb8c SHA256 ac0696b9b33a040fa4d8e670475fd8d922b6b99ece6a362ffdbad40363d65bd1
+AUX itpp-4.0.7-fastica-fix-endless-loop.patch 4009 RMD160 60c4456ca1db737669f0b6a91de9a567103af95a SHA1 8bb848e41effa3fe49ac27e1ddacb6bbfd13d16c SHA256 f433a5c762a1461065f51b1d99537f7c782bbc9190480ac509593bb23bbf4696
DIST itpp-4.0.5.tar.bz2 969529 RMD160 b91ae7e11d6f6c130cce60a379f7b70893bbf5b7 SHA1 34e8d6d46f5bae0d56016bf6b19d50fca9922c6b SHA256 527f1389258d65eca0092d06f53407eb66d539dfaad4be729757376600babfd8
DIST itpp-4.0.6.tar.bz2 976917 RMD160 25ea74e9ab718c5f689145c45a0cd2712c5e94f0 SHA1 e31c51d0469f9b485b9ef4ef4f1d33a41fdde40a SHA256 a0d5fb03149c361b98556b4736980a4eae4de14a550153f343c60fd29ac5ef94
DIST itpp-4.0.7.tar.bz2 970989 RMD160 c760e6fd0b112f23ad04ec943b83f2e7271bf8c8 SHA1 e3904dee9cf149b7e259c7ce063ab9d29f805740 SHA256 2c33b31d6c2ddbf1f0bb12a86bd9a202962df58397304706eb60ed0a3114c24d
EBUILD itpp-4.0.5.ebuild 2244 RMD160 83581eb02b0c37889b0b8ebca44da74372ffaae9 SHA1 4c66144d102aba350af3b5c5191ab9adec313c9c SHA256 0d47bc9d2ac53dfe4a7ca5cfadb255f6096726b50277df19ec8c8b7ae504c042
EBUILD itpp-4.0.6.ebuild 2323 RMD160 f6a418d7f03ebf8589f4b8511f58f12572bd0777 SHA1 373360af8a8ec5e4a18bb67504991df6fe2a2615 SHA256 94ae2d0ed2f88c27138778e9a6e7141867b6517d1de4abc9a3cfff1662be048c
+EBUILD itpp-4.0.7-r1.ebuild 1780 RMD160 4d47a4499d970d08a3328c22d61851cbd9221151 SHA1 f7a2d6b5e04b812523b091c92b994b7a8e8e8122 SHA256 a80a6f0bdf81ee3444d4242e6f78f8a4ad8bc67b224bda8c38ba6b37e833eddd
EBUILD itpp-4.0.7.ebuild 2251 RMD160 a5c2b7e635538d76051a179592522b95e6300deb SHA1 cce2db8528d768eb656c600c4df5bbeb2ad17900 SHA256 cd29497797ec2729648bac620cf34c4933e17286e254e578846f3cafbed29d5f
-MISC ChangeLog 13858 RMD160 f3e03ffa8ca9382d36a08e6224d484708a04d0ca SHA1 5e80ba7cf2d8ede0292e2a3d6c667c9600c890f5 SHA256 1f43d0c28b1d6531a9fd521efe6437dc73a1861b2c231f250d2bbc4d2d3acece
-MISC metadata.xml 254 RMD160 991c43f74018cbcaaa60b41290c912a8b61091c8 SHA1 83928b80dc644941d59b64e04e0964b1c1fa3005 SHA256 80784c7acbd54102b4d3fc01c3fb2ae5862732093798671596c67a8350c25454
+MISC ChangeLog 14278 RMD160 4760e64f9dc343eb91496f0955f60f626f4dcacd SHA1 a7cd1ea37f89a2e247bc4ab81ee341c592af9e41 SHA256 06db4de451a5d57df3d595393aff6780464e428ef12e1da0e69540c29cdada30
+MISC metadata.xml 690 RMD160 fb5690f308bff348b8a145ebd0dd800abc5b3521 SHA1 062064276ad6c1da2ba456b9c5a9db543835db7f SHA256 7e6949a4d1b5987cdb47501dca071bd14b179d55bedfc21418c01a677131cd1d
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.16 (GNU/Linux)
+
+iEUEARECAAYFAkxhpNwACgkQ1ycZbhPLE2CfdwCYikPOdg1BJuriscK+13g1Y7xk
+lQCePW4Q/r5EzHzLKVMG4B+nuLd+Xg4=
+=sOGg
+-----END PGP SIGNATURE-----
diff --git a/sci-libs/itpp/files/itpp-4.0.7-fastica-fix-endless-loop.patch b/sci-libs/itpp/files/itpp-4.0.7-fastica-fix-endless-loop.patch
new file mode 100644
index 000000000000..8d232a421d64
--- /dev/null
+++ b/sci-libs/itpp/files/itpp-4.0.7-fastica-fix-endless-loop.patch
@@ -0,0 +1,93 @@
+diff -ru libitpp-4.0.7/itpp/signal/fastica.cpp libitpp-4.0.7.patched/itpp/signal/fastica.cpp
+--- libitpp-4.0.7/itpp/signal/fastica.cpp 2009-12-27 01:38:47.000000000 +0100
++++ libitpp-4.0.7.patched/itpp/signal/fastica.cpp 2010-07-08 16:32:04.000000000 +0200
+@@ -90,7 +90,7 @@
+ static mat mpower(const mat A, const double y);
+ static ivec getSamples(const int max, const double percentage);
+ static vec sumcol(const mat A);
+-static void fpica(const mat X, const mat whiteningMatrix, const mat dewhiteningMatrix, const int approach, const int numOfIC, const int g, const int finetune, const double a1, const double a2, double myy, const int stabilization, const double epsilon, const int maxNumIterations, const int maxFinetune, const int initState, mat guess, double sampleSize, mat & A, mat & W);
++static bool fpica(const mat X, const mat whiteningMatrix, const mat dewhiteningMatrix, const int approach, const int numOfIC, const int g, const int finetune, const double a1, const double a2, double myy, const int stabilization, const double epsilon, const int maxNumIterations, const int maxFinetune, const int initState, mat guess, double sampleSize, mat & A, mat & W);
+ /*! @} */
+
+ namespace itpp
+@@ -124,7 +124,7 @@
+ }
+
+ // Call main function
+-void Fast_ICA::separate(void)
++bool Fast_ICA::separate(void)
+ {
+
+ int Dim = numOfIC;
+@@ -159,13 +159,14 @@
+
+ }
+
++ bool result = true;
+ if (PCAonly == false) {
+
+ Dim = whitesig.rows();
+
+ if (numOfIC > Dim) numOfIC = Dim;
+
+- fpica(whitesig, whiteningMatrix, dewhiteningMatrix, approach, numOfIC, g, finetune, a1, a2, mu, stabilization, epsilon, maxNumIterations, maxFineTune, initState, guess, sampleSize, A, W);
++ result = fpica(whitesig, whiteningMatrix, dewhiteningMatrix, approach, numOfIC, g, finetune, a1, a2, mu, stabilization, epsilon, maxNumIterations, maxFineTune, initState, guess, sampleSize, A, W);
+
+ icasig = W * mixedSig;
+
+@@ -174,6 +175,7 @@
+ else { // PCA only : returns E as IcaSig
+ icasig = VecPr;
+ }
++ return result;
+ }
+
+ void Fast_ICA::set_approach(int in_approach) { approach = in_approach; if (approach == FICA_APPROACH_DEFL) finetune = true; }
+@@ -437,7 +439,7 @@
+
+ }
+
+-static void fpica(const mat X, const mat whiteningMatrix, const mat dewhiteningMatrix, const int approach, const int numOfIC, const int g, const int finetune, const double a1, const double a2, double myy, const int stabilization, const double epsilon, const int maxNumIterations, const int maxFinetune, const int initState, mat guess, double sampleSize, mat & A, mat & W)
++static bool fpica(const mat X, const mat whiteningMatrix, const mat dewhiteningMatrix, const int approach, const int numOfIC, const int g, const int finetune, const double a1, const double a2, double myy, const int stabilization, const double epsilon, const int maxNumIterations, const int maxFinetune, const int initState, mat guess, double sampleSize, mat & A, mat & W)
+ {
+
+ int vectorSize = X.rows();
+@@ -511,7 +513,7 @@
+ A = dewhiteningMatrix * B;
+ W = transpose(B) * whiteningMatrix;
+
+- return;
++ return false;
+ }
+
+ B = B * mpower(transpose(B) * B , -0.5);
+@@ -769,7 +771,7 @@
+
+ } // IF round
+
+- break;
++ return false;
+
+ } // IF numFailures > failureLimit
+
+@@ -990,5 +992,5 @@
+ } // While round <= numOfIC
+
+ } // ELSE Deflation
+-
++ return true;
+ } // FPICA
+diff -ru libitpp-4.0.7/itpp/signal/fastica.h libitpp-4.0.7.patched/itpp/signal/fastica.h
+--- libitpp-4.0.7/itpp/signal/fastica.h 2009-12-27 01:38:47.000000000 +0100
++++ libitpp-4.0.7.patched/itpp/signal/fastica.h 2010-07-08 16:24:37.000000000 +0200
+@@ -134,8 +134,9 @@
+ \brief Explicit launch of main FastICA function
+
+ Explicit launch of the Fast_ICA algorithm.
++ \returns true if algorithm converged and false otherwise
+ */
+- void separate(void);
++ bool separate(void);
+
+ /*!
+ \brief Set approach : FICA_APPROACH_DEFL or FICA_APPROACH_SYMM (default)
diff --git a/sci-libs/itpp/itpp-4.0.7-r1.ebuild b/sci-libs/itpp/itpp-4.0.7-r1.ebuild
new file mode 100644
index 000000000000..522a2e34334d
--- /dev/null
+++ b/sci-libs/itpp/itpp-4.0.7-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/itpp/itpp-4.0.7-r1.ebuild,v 1.1 2010/08/10 18:24:27 bicatali Exp $
+
+EAPI=3
+inherit flag-o-matic
+
+DESCRIPTION="C++ library of mathematical, signal processing and communication classes and functions"
+LICENSE="GPL-2"
+HOMEPAGE="http://itpp.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="blas debug doc fftw lapack minimal static-libs"
+
+RDEPEND="!minimal? ( fftw? ( >=sci-libs/fftw-3 ) )
+ blas? ( virtual/blas lapack? ( virtual/lapack ) )"
+DEPEND="${RDEPEND}
+ blas? ( dev-util/pkgconfig )
+ lapack? ( dev-util/pkgconfig )
+ doc? ( app-doc/doxygen virtual/latex-base )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-fastica-fix-endless-loop.patch
+}
+
+src_configure() {
+ # turn off performance critical debug code
+ use debug || append-flags -DNDEBUG
+ local blasconf="no"
+ use blas && blasconf="$(pkg-config --libs blas)"
+ local lapackconf="no"
+ use lapack && lapackconf="$(pkg-config --libs blas lapack)"
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --enable-shared \
+ $(use_enable doc html-doc) \
+ $(use_enable debug) \
+ $(use_enable !minimal comm) \
+ $(use_enable !minimal fixed) \
+ $(use_enable !minimal optim) \
+ $(use_enable !minimal protocol) \
+ $(use_enable !minimal signal) \
+ $(use_enable !minimal srccode) \
+ $(use_enable static-libs static) \
+ $(use_with fftw fft) \
+ --with-blas="${blasconf}" \
+ --with-lapack="${lapackconf}"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+ dodoc AUTHORS ChangeLog ChangeLog-2007 ChangeLog-2006 \
+ ChangeLog-2005 INSTALL NEWS NEWS-3.10 NEWS-3.99 README TODO
+}
diff --git a/sci-libs/itpp/metadata.xml b/sci-libs/itpp/metadata.xml
index a3ced4f52edf..ef6afa8cce47 100644
--- a/sci-libs/itpp/metadata.xml
+++ b/sci-libs/itpp/metadata.xml
@@ -1,9 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>markusle@gentoo.org</email>
- <name>Markus Dittrich</name>
- </maintainer>
- <herd>sci</herd>
+<maintainer>
+ <email>markusle@gentoo.org</email>
+ <name>Markus Dittrich</name>
+</maintainer>
+<herd>sci</herd>
+<longdescription lang='en'>
+ IT++ is a C++ library of mathematical, signal processing and
+ communication classes and functions. Its main use is in simulation
+ of communication systems and for performing research in the area of
+ communications. The kernel of the library consists of generic vector
+ and matrix classes, and a set of accompanying routines. Such a
+ kernel makes IT++ similar to MATLAB or GNU Octave .
+</longdescription>
</pkgmetadata>