diff options
author | Sebastien Fabbro <bicatali@gentoo.org> | 2012-10-26 18:27:13 +0000 |
---|---|---|
committer | Sebastien Fabbro <bicatali@gentoo.org> | 2012-10-26 18:27:13 +0000 |
commit | 40322b949e84c04a69ffd687ef0272939234d4b1 (patch) | |
tree | 957f186698e118d10702a1cb98ab42754eeb8769 /sci-mathematics/octave | |
parent | add proxy maintainer Olivier Laurantin (diff) | |
download | historical-40322b949e84c04a69ffd687ef0272939234d4b1.tar.gz historical-40322b949e84c04a69ffd687ef0272939234d4b1.tar.bz2 historical-40322b949e84c04a69ffd687ef0272939234d4b1.zip |
Version bump
Package-Manager: portage-2.2.01.21165-prefix/cvs/Linux x86_64
Diffstat (limited to 'sci-mathematics/octave')
-rw-r--r-- | sci-mathematics/octave/ChangeLog | 9 | ||||
-rw-r--r-- | sci-mathematics/octave/Manifest | 23 | ||||
-rw-r--r-- | sci-mathematics/octave/files/octave-3.4.3-pkgbuilddir.patch | 3 | ||||
-rw-r--r-- | sci-mathematics/octave/files/octave-3.6.3-rcond.patch | 210 | ||||
-rw-r--r-- | sci-mathematics/octave/octave-3.6.3.ebuild | 122 |
5 files changed, 351 insertions, 16 deletions
diff --git a/sci-mathematics/octave/ChangeLog b/sci-mathematics/octave/ChangeLog index 1cc4beb25435..c0f41bceeb08 100644 --- a/sci-mathematics/octave/ChangeLog +++ b/sci-mathematics/octave/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sci-mathematics/octave # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.129 2012/10/25 06:20:56 naota Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.130 2012/10/26 18:27:13 bicatali Exp $ + +*octave-3.6.3 (26 Oct 2012) + + 26 Oct 2012; SĂ©bastien Fabbro <bicatali@gentoo.org> + files/octave-3.4.3-pkgbuilddir.patch, +octave-3.6.3.ebuild, + +files/octave-3.6.3-rcond.patch: + Version bump 25 Oct 2012; <naota@gentoo.org> octave-3.6.2-r1.ebuild: Add ~x86-fbsd. #303915 diff --git a/sci-mathematics/octave/Manifest b/sci-mathematics/octave/Manifest index 298bc4d148cc..d936b52bd82c 100644 --- a/sci-mathematics/octave/Manifest +++ b/sci-mathematics/octave/Manifest @@ -3,31 +3,24 @@ Hash: SHA256 AUX octave-3.4.3-gets.patch 3343 SHA256 6527b960fbc86a622ba8633c6a73f629efc763557693e3cfa0ba505d73f0ec5a SHA512 4ef75b39461dfdbb342473b42104a5386bc49174bd132a0b54bf8b726d47f65982c2e8a07f001e4e7af5dd4631c1d5d5d1d4c1f9b06485313f77a312afe34dad WHIRLPOOL 02e6efbe9218603fb7907a3acc14a61b7b61e00019c491c2ef7450f560dabf5965c1a005aa93d756510e3cf94a17707f496df7005f8a1a9f444751e7b6b4d806 AUX octave-3.4.3-help.patch 579 SHA256 786d6a265d9efa5c606ad84b8d957cf6d0143dae1667d5848ac323e2746d7c77 SHA512 322f8513f71a2769510d759865f1476a3263f11f81885c2e6da75fbb157f87e9fe4c0a0e23032521b082fc70cc0d4b86e52855b6e19d077de266da59d295299a WHIRLPOOL e5ad17c2337c307bbb06f76b71448fd383bbfd5538f3f4d79a5cf2ee0ed80d522b5d933cf523e31560f2d6765e5ebf53b8a1eca9932f53f279f87c42eaf85cc8 -AUX octave-3.4.3-pkgbuilddir.patch 1396 SHA256 9861eeb31f576058798e21442be34a3e467c906f75c08843fcd6e14af8892e0a SHA512 f2c98d12cda18df8d6bd02e2e12a9af25c8b7c129922506054d4f5fb1e8d21de912fc4eed79deae7027904a5696335f001d1989ad87cb4a62f3b1f4fff453daf WHIRLPOOL cec593c6ff649b019bb5931706cef7fb9112cb7adf747050e34cc4e973f88f9e924697e79dc203148e1c2f95ac2a8cfb3ffd03baa37c218f4dc6f75dadb87f74 +AUX octave-3.4.3-pkgbuilddir.patch 1532 SHA256 5f771b92de6994e267d5f8b1abe7733cb75e9c0cb936728fc31fac3369b78093 SHA512 a6612c26d20c82181e7e1530a4d0cf342ee9f127711c37e44b7a48bfb90eb5d8347cbf424edb951c24ad81645d492814e772aea6bdb027f4eac12fbb4c4bd26f WHIRLPOOL 9863475237b1d8ed2a381ed5ea87f4831b53425f824b489adf83c4db256f608a40fc44f5c111139789a43c3dfa2df6266ab6ac856f12e324392230d580cbd4f2 AUX octave-3.4.3-texi.patch 375 SHA256 91fb6bfb0825e8159fa38c1f2113a1fc831c3156f0674f49145e6f0f83ff43e7 SHA512 d6d917f421c5c51dd02d01599d312d03d3f1dbec029862fcab5268527f95d8ffe18db86dbc56827b6a8741fb08856ab66a68e6fa965a90397d3a22a14e87b5b8 WHIRLPOOL 0ef4ccd18689190240064cc8fac7df52b7ffb3993b5a8ffb8591e922b935387864723d4cb58d6e0f9be72c1912cca7e49322c5f6098912868c7ae2f6b2ae826b +AUX octave-3.6.3-rcond.patch 6632 SHA256 7149a7f49915ec72d39222c0247a63cce41e1305ad718114a375c2736911e055 SHA512 62c3bd854cd8cefede58b6d7feaf94fc78544f89ba9f2d7323cc58abdcbb7001e3bb5862a33d5387f270054e7a6a3385befaff48daa523506ff43099b590526c WHIRLPOOL 2d1ac8e82f695423d5268368ab383f0824d099d27c0d20c9f6e9198ed4f048ce7318d5364ca34546893dbde7b89931b1dbbedc6d24ccc60bb06a7692f6d3cf99 DIST octave-3.4.3.tar.bz2 15085117 SHA256 94d119cc93a38465e9c00dd36b9cc063abbda7ae8cb39407cf88a2bddc9dc148 DIST octave-3.6.1.tar.bz2 15387369 SHA256 f8073ee7570d8ff78864868027ef1e08409a78e0798d8800fac67e7e714eadf6 DIST octave-3.6.2.tar.bz2 15418829 SHA256 0bb69b93d0bee872308a7944f1ebbe948f55cd4ae55beab38f05950e1b45c4ae SHA512 445a1f9b764c874aea738d698490f30331b1a304605ef2926bff8ee64969101af23f90acf7b6ef68f1ea0f70b38e68447173c01bb6ae509493b757360a9bd6e5 WHIRLPOOL 83b037038e07298e01da261675a5c7164d82a082ac2e7b5fddec586c48c5e3685695101168b7c01d797d6092ed801b056c9f4c71296c2b78f6f845060de7bae3 +DIST octave-3.6.3.tar.bz2 15602522 SHA256 e37d09550f1cb406745619a5602aa3e8a97d2fe056b5c770db9984e2fc162886 SHA512 27caf2061e32e3a50478441f7795953fbfa4d876277fa91f657d61811389c1ca96a1b956852c1957724dbc0f8a187189a537b4254f9b3b6ac8d3a4f897435de4 WHIRLPOOL a2433d957e7a97f9627f4a472f9c3ce59ba09ca1aac3d58db30e0e10bcfd3da1e123174943a7c4fb3594b843eed8d3b0c7ff33301a05a11561e4611a9295a4f3 EBUILD octave-3.4.3-r1.ebuild 2750 SHA256 36ba35598396f0048d38fdf96d7f432b7f0a4ae23d65d820b3d962bc65cbef15 SHA512 dd5385292e992c6420fb125e3ab649b4f40cc50f48c711ec8bf513f4c302610dfbbdb4fff6136bc750617143ec33f55bf320a398a0f1e37b90b66be93daa8891 WHIRLPOOL 43b55d6e6933872bced5ee24a64b43413fbb0ff1878c5829f75d7b9f1764700df2549863b167b95a6e1947b5eec5928c27d5d3f553a627da79b75feb6d0c8d40 EBUILD octave-3.6.1.ebuild 2798 SHA256 500b20b0975a4df55d23cdde601acf61bce6f6112b9ba30298f54a5a98bbc589 SHA512 0962dec8f1bc281439b102b2fa8f6522d51394dedd44b5211657bf18de138f0fa829ba4588f0d2384ca52a323084817078e7e409f521dc9ffd8a34633718cd52 WHIRLPOOL fb066b0fb968535e910f06b15a2a5e7cf35bdbc09d2365507001c0bfc30644b207d120943dabbdcb1ad510aeb22a8644e881bd539888acf8781c178731fe913b EBUILD octave-3.6.2-r1.ebuild 3240 SHA256 429f46cc20338860acf2fcca42de856c69db0afe98fe654885348527da6c5ffb SHA512 01437702eb68662181da343f2d898f3c5f9952b83a31051124427d7d74da4af3347f963bc80c3ef5821d9738aa0263bad4946fa0005a4dca2ea3e9d6773f7b3c WHIRLPOOL 04f1dab12249b671e63c4e78cfad443082b30402daa71d2b78134a43860df163ae9a79d50239775b0f7c6fe6ac136b1a70e8e316d869017d9decc5e726fbf858 EBUILD octave-3.6.2.ebuild 2806 SHA256 6f1be74bb44af1a02b0031b1549a75bdd89c62ceff71fae6dcef889d835f4604 SHA512 d3b95ffb342d811b0e9e23f92f5bd72b356d7569f604446d45ec9f3c67e6000d87119291dce81189c4acd44f2fb0c433d31a79ea4e7e17aca5bcd0c355f9f288 WHIRLPOOL e0c745e894f86d27873ef45f8df55c49b95e6007dd5b3562e7868393a6bcb1dfe1d549f70bfa6a91f59ffd59661461220c8f00437143b9e9d99401de78d516e2 -MISC ChangeLog 31302 SHA256 360635722394c0089ff3f02a229658fde8a826683df3ed55b2ef6140626b355b SHA512 f5acdb302b413dac72c099f9bdda842eaa029c4d4bf9a65f73240f1f569ca33063833280f241b2fdf9f51f7f416ecd2834c56bd0f69e6abead413aee94dd9107 WHIRLPOOL 1dce22ca27e83245555562da4d21cd640e0a45ede8a2e4b171de8406e0302463a9f2b29f54ffa03c29ba3d725a8668008394b5ad88ddf34a38767abebbaa1738 +EBUILD octave-3.6.3.ebuild 3207 SHA256 30f0da21da24e26ecb957b4dd74b1d0b55e72bbd1852377d4fe0e4bd5b09f3f1 SHA512 c63381f7b2da4d1f8eca363bb953a99be4250cc4af25b47ea188f9f81f1d918a0a36ab5c7ce5909706df9bf786fbddaaf65ad3a98a547c9927f901935c10015d WHIRLPOOL 4d6888c550f31825639717824ab4f5fa2af9936f2550768211a5da3eb67b78accc22550c1047ee0d6289b503da68169759c9cb79ce1ca4686992c068712054bf +MISC ChangeLog 31502 SHA256 078b9075b5a8370c96cc8f0dde02df23662418405f8c7348d6676541e7374d23 SHA512 e74d8d3299090a38fec909e16ac931f5387b5174686ed75630dad9820c95becdf0000a72ac8a913e1decd233dbf8a6d2139cb5f0ee463d0460add67716b80a68 WHIRLPOOL 118f292ba15313e7b913fe3a749ad1c595dd0e32ad9372f48cdd79f894a5827b9daede1a8403f87266c121d4036a116e4f79c61748203055460c651d0e8ad513 MISC metadata.xml 928 SHA256 6314fe7f4dfc713b292c7ff071c186873989e3d8b08d0637e20f7c52bb4dc4ef SHA512 d17cff883a7f83762e7f5d325b273820aa26d37cf4e2c167a4ad124330a182735f0e9bdd26be7493a8f78187adf007b89ddb73abba26b0fa0ff8e873d2abf53d WHIRLPOOL b3803f8afcb8ddeb38a25b2709e7a8aba95b588e445205afff1e971d1387e0f226079336b6d8794a6877526d59a893d4d95b82a947aac2b73fc567cab4fd47db -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) -iQIcBAEBCAAGBQJQiNpRAAoJEDYO1FT4VRUUTrsP/2oiHsI2dl/7CGy2c9GRFs5R -WRXBJtqVIUN/bNEi70Gi+I0k9pqeV43/j58QT6dsxZ0B3yX+QZ6ENON78AITahs6 -8fjyY7rnO/KM50AOx/giZ9HicUuHaogJNue7K3zfWAkGHpxOmIYja631C/XmpLcE -dQALWFo3ccBAf4ZdMks1LJec2gcOK+14wKugQEzbtEJJpw9zqmvTcdyeTLV3P0dh -m8VHH2kLDZ5xqyzfB3CNTD8MvH8bifCCbj01hBrz3kb+PjuUhoWAlipgg8B+uiV0 -UFKhKx+YTZqJc5Xd8t+eaTnJl0CCemnUWJqPsE798H0nX5EJB+gj53npLtGFSgDH -YddCEBgLdrWDa5XW6fzfQM1LqaYmHQU7kJLcDio3xtG1tKUetIaEs7e8TXr8IrkJ -AAdNitqESg5CpWZXiIJ87uriJ2BI9h7YDj0XcPE/QtapDOBxxcjNHKfTFYNCpRLt -2ghMDfal2xRrxaCIRJlQACTZRoRjm35mPl0SQ54Eq4cqeDV/jy0wBQd2O7l8cPI2 -qYy3NN0UVcA2bgyTQANbaTpTDQ1JRN9D3gOQEnVESp2kVj5BTh05VDJ8UJia0Vth -CuAWNAe1P94iTdbodAz0Eiv/kw899SctTpZIatjEPGzc+6JiBuAopyyDJvJMV7Gl -P7TJ1Tfi/djepbTQaKUj -=jEpV +iEYEAREIAAYFAlCK1g4ACgkQ1ycZbhPLE2D0MgCaAmxqeWkXviY50eS0agm01y8M +tKcAoISwNCQkKOAXwNdZTu49x3IQcf8+ +=tkRi -----END PGP SIGNATURE----- diff --git a/sci-mathematics/octave/files/octave-3.4.3-pkgbuilddir.patch b/sci-mathematics/octave/files/octave-3.4.3-pkgbuilddir.patch index 895fa4932a12..5340c9a19b92 100644 --- a/sci-mathematics/octave/files/octave-3.4.3-pkgbuilddir.patch +++ b/sci-mathematics/octave/files/octave-3.4.3-pkgbuilddir.patch @@ -1,3 +1,6 @@ +Description: Allow installation of already extracted packages with pkg.m +Forwarded: not-needed +Author: Thomas Weber <tweber@debian.org> --- scripts/pkg/pkg.m.orig 2011-02-08 03:00:51.000000000 -0700 +++ scripts/pkg/pkg.m 2011-03-18 09:31:24.670165643 -0600 @@ -644,7 +644,14 @@ diff --git a/sci-mathematics/octave/files/octave-3.6.3-rcond.patch b/sci-mathematics/octave/files/octave-3.6.3-rcond.patch new file mode 100644 index 000000000000..45dcecc07f00 --- /dev/null +++ b/sci-mathematics/octave/files/octave-3.6.3-rcond.patch @@ -0,0 +1,210 @@ +Description: Fix rcond function + Use new copy of data for full factorization if positive definite cholesky + factorization fails. +Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/197774b411ec +Bug: http://savannah.gnu.org/bugs/?37336 +Applied-Upstream: version, 3.6.4 +Last-Update: 2012-09-14 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +diff --git a/liboctave/CMatrix.cc b/liboctave/CMatrix.cc +--- a/liboctave/CMatrix.cc ++++ b/liboctave/CMatrix.cc +@@ -1786,13 +1786,15 @@ + else if (typ == MatrixType::Full || typ == MatrixType::Hermitian) + { + double anorm = -1.0; +- ComplexMatrix atmp = *this; +- Complex *tmp_data = atmp.fortran_vec (); + + if (typ == MatrixType::Hermitian) + { + octave_idx_type info = 0; + char job = 'L'; ++ ++ ComplexMatrix atmp = *this; ++ Complex *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum(). + row(static_cast<octave_idx_type>(0)).max(); + +@@ -1829,6 +1831,9 @@ + { + octave_idx_type info = 0; + ++ ComplexMatrix atmp = *this; ++ Complex *tmp_data = atmp.fortran_vec (); ++ + Array<octave_idx_type> ipvt (dim_vector (nr, 1)); + octave_idx_type *pipvt = ipvt.fortran_vec (); + +@@ -2098,8 +2103,10 @@ + { + info = 0; + char job = 'L'; ++ + ComplexMatrix atmp = *this; + Complex *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum().row(static_cast<octave_idx_type>(0)).max(); + + F77_XFCN (zpotrf, ZPOTRF, (F77_CONST_CHAR_ARG2 (&job, 1), nr, +diff --git a/liboctave/dMatrix.cc b/liboctave/dMatrix.cc +--- a/liboctave/dMatrix.cc ++++ b/liboctave/dMatrix.cc +@@ -1454,13 +1454,15 @@ + else if (typ == MatrixType::Full || typ == MatrixType::Hermitian) + { + double anorm = -1.0; +- Matrix atmp = *this; +- double *tmp_data = atmp.fortran_vec (); + + if (typ == MatrixType::Hermitian) + { + octave_idx_type info = 0; + char job = 'L'; ++ ++ Matrix atmp = *this; ++ double *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum(). + row(static_cast<octave_idx_type>(0)).max(); + +@@ -1495,6 +1497,9 @@ + { + octave_idx_type info = 0; + ++ Matrix atmp = *this; ++ double *tmp_data = atmp.fortran_vec (); ++ + Array<octave_idx_type> ipvt (dim_vector (nr, 1)); + octave_idx_type *pipvt = ipvt.fortran_vec (); + +@@ -1760,8 +1765,10 @@ + { + info = 0; + char job = 'L'; ++ + Matrix atmp = *this; + double *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum().row(static_cast<octave_idx_type>(0)).max(); + + F77_XFCN (dpotrf, DPOTRF, (F77_CONST_CHAR_ARG2 (&job, 1), nr, +@@ -1838,6 +1845,7 @@ + + Matrix atmp = *this; + double *tmp_data = atmp.fortran_vec (); ++ + if(anorm < 0.) + anorm = atmp.abs().sum().row(static_cast<octave_idx_type>(0)).max(); + +diff --git a/liboctave/fCMatrix.cc b/liboctave/fCMatrix.cc +--- a/liboctave/fCMatrix.cc ++++ b/liboctave/fCMatrix.cc +@@ -1782,13 +1782,15 @@ + else if (typ == MatrixType::Full || typ == MatrixType::Hermitian) + { + float anorm = -1.0; +- FloatComplexMatrix atmp = *this; +- FloatComplex *tmp_data = atmp.fortran_vec (); + + if (typ == MatrixType::Hermitian) + { + octave_idx_type info = 0; + char job = 'L'; ++ ++ FloatComplexMatrix atmp = *this; ++ FloatComplex *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum(). + row(static_cast<octave_idx_type>(0)).max(); + +@@ -1825,6 +1827,9 @@ + { + octave_idx_type info = 0; + ++ FloatComplexMatrix atmp = *this; ++ FloatComplex *tmp_data = atmp.fortran_vec (); ++ + Array<octave_idx_type> ipvt (dim_vector (nr, 1)); + octave_idx_type *pipvt = ipvt.fortran_vec (); + +@@ -2094,8 +2099,10 @@ + { + info = 0; + char job = 'L'; ++ + FloatComplexMatrix atmp = *this; + FloatComplex *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum().row(static_cast<octave_idx_type>(0)).max(); + + F77_XFCN (cpotrf, CPOTRF, (F77_CONST_CHAR_ARG2 (&job, 1), nr, +diff --git a/liboctave/fMatrix.cc b/liboctave/fMatrix.cc +--- a/liboctave/fMatrix.cc ++++ b/liboctave/fMatrix.cc +@@ -1454,13 +1454,15 @@ + else if (typ == MatrixType::Full || typ == MatrixType::Hermitian) + { + float anorm = -1.0; +- FloatMatrix atmp = *this; +- float *tmp_data = atmp.fortran_vec (); + + if (typ == MatrixType::Hermitian) + { + octave_idx_type info = 0; + char job = 'L'; ++ ++ FloatMatrix atmp = *this; ++ float *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum(). + row(static_cast<octave_idx_type>(0)).max(); + +@@ -1495,6 +1497,9 @@ + { + octave_idx_type info = 0; + ++ FloatMatrix atmp = *this; ++ float *tmp_data = atmp.fortran_vec (); ++ + Array<octave_idx_type> ipvt (dim_vector (nr, 1)); + octave_idx_type *pipvt = ipvt.fortran_vec (); + +@@ -1760,8 +1765,10 @@ + { + info = 0; + char job = 'L'; ++ + FloatMatrix atmp = *this; + float *tmp_data = atmp.fortran_vec (); ++ + anorm = atmp.abs().sum().row(static_cast<octave_idx_type>(0)).max(); + + F77_XFCN (spotrf, SPOTRF, (F77_CONST_CHAR_ARG2 (&job, 1), nr, +@@ -1838,6 +1845,7 @@ + + FloatMatrix atmp = *this; + float *tmp_data = atmp.fortran_vec (); ++ + if(anorm < 0.) + anorm = atmp.abs().sum().row(static_cast<octave_idx_type>(0)).max(); + +diff --git a/src/DLD-FUNCTIONS/rcond.cc b/src/DLD-FUNCTIONS/rcond.cc +--- a/src/DLD-FUNCTIONS/rcond.cc ++++ b/src/DLD-FUNCTIONS/rcond.cc +@@ -93,4 +93,12 @@ + %!assert( rcond ([1 1; 2 1]), 1/9) + %!assert( rcond (magic (4)), 0, eps) + ++%!shared x, sx ++%! x = [-5.25, -2.25; -2.25, 1] * eps () + ones (2) / 2; ++%! sx = [-5.25, -2.25; -2.25, 1] * eps ("single") + ones (2) / 2; ++%!assert (rcond (x) < eps ()); ++%!assert (rcond (sx) < eps ('single')); ++%!assert (rcond (x*i) < eps ()); ++%!assert (rcond (sx*i) < eps ('single')); ++ + */ + diff --git a/sci-mathematics/octave/octave-3.6.3.ebuild b/sci-mathematics/octave/octave-3.6.3.ebuild new file mode 100644 index 000000000000..cee10e1f77a5 --- /dev/null +++ b/sci-mathematics/octave/octave-3.6.3.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.6.3.ebuild,v 1.1 2012/10/26 18:27:13 bicatali Exp $ + +EAPI=4 + +AUTOTOOLS_AUTORECONF=1 +AUTOTOOLS_IN_SOURCE_BUILD=1 + +inherit autotools-utils toolchain-funcs fortran-2 + +DESCRIPTION="High-level interactive language for numerical computations" +LICENSE="GPL-3" +HOMEPAGE="http://www.octave.org/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.bz2" + +SLOT="0" +IUSE="curl doc fftw +glpk gnuplot hdf5 +imagemagick opengl +qhull +qrupdate + readline +sparse static-libs X zlib" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-fbsd ~x86-linux" + +RDEPEND="dev-libs/libpcre + app-text/ghostscript-gpl + sys-libs/ncurses + virtual/lapack + curl? ( net-misc/curl ) + fftw? ( sci-libs/fftw:3.0 ) + glpk? ( sci-mathematics/glpk ) + gnuplot? ( sci-visualization/gnuplot ) + hdf5? ( sci-libs/hdf5 ) + imagemagick? ( || ( + media-gfx/graphicsmagick[cxx] + media-gfx/imagemagick[cxx] ) ) + opengl? ( + media-libs/freetype:2 + media-libs/fontconfig + >=x11-libs/fltk-1.3:1[opengl] ) + qhull? ( media-libs/qhull ) + qrupdate? ( sci-libs/qrupdate ) + readline? ( sys-libs/readline ) + sparse? ( + sci-libs/arpack + sci-libs/camd + sci-libs/ccolamd + sci-libs/cholmod + sci-libs/colamd + sci-libs/cxsparse + sci-libs/umfpack ) + X? ( x11-libs/libX11 ) + zlib? ( sys-libs/zlib )" + +DEPEND="${RDEPEND} + doc? ( + virtual/latex-base + dev-texlive/texlive-genericrecommended + sys-apps/texinfo ) + dev-util/gperf + virtual/pkgconfig" + +PATCHES=( "${FILESDIR}"/${PN}-3.4.3-{pkgbuilddir,help,texi}.patch ) + +src_prepare() { + # nasty prefix hack for fltk:1 linking + if use prefix && use opengl; then + sed -i \ + -e "s:ldflags\`:ldflags\` -Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/fltk-1:" \ + configure.ac + fi + autotools-utils_src_prepare +} + +src_configure() { + # occasional fail on install, force regeneration (bug #401189) + rm doc/interpreter/contributors.texi || die + + local myconf="--without-magick" + if use imagemagick; then + if has_version media-gfx/graphicsmagick[cxx]; then + myconf="--with-magick=GraphicsMagick" + else + myconf="--with-magick=ImageMagick" + fi + fi + + # unfortunate dependency on mpi from hdf5 (bug #302621) + use hdf5 && has_version sci-libs/hdf5[mpi] && \ + export CXX=mpicxx CC=mpicc FC=mpif77 F77=mpif77 + + local myeconfargs+=( + --localstatedir="${EPREFIX}/var/state/octave" + --with-blas="$(pkg-config --libs blas)" + --with-lapack="$(pkg-config --libs lapack)" + $(use_enable doc docs) + $(use_enable readline) + $(use_with curl) + $(use_with fftw fftw3) + $(use_with fftw fftw3f) + $(use_with glpk) + $(use_with hdf5) + $(use_with opengl) + $(use_with qhull) + $(use_with qrupdate) + $(use_with sparse arpack) + $(use_with sparse umfpack) + $(use_with sparse colamd) + $(use_with sparse ccolamd) + $(use_with sparse cholmod) + $(use_with sparse cxsparse) + $(use_with X x) + $(use_with zlib z) + ${myconf} + ) + autotools-utils_src_configure +} + +src_install() { + autotools-utils_src_install + use doc && dodoc $(find doc -name \*.pdf) + [[ -e test/fntests.log ]] && dodoc test/fntests.log + echo "LDPATH=${EPREFIX}/usr/$(get_libdir)/${P}" > 99octave + doenvd 99octave +} |