From 0648bf555cccb637283d71f8f7ca258169156dda Mon Sep 17 00:00:00 2001 From: Markus Dittrich Date: Tue, 14 Mar 2006 21:27:17 +0000 Subject: [PATCH] Added patch to fix compile failure using gcc-4.1.This fixes bug #126157. Package-Manager: portage-2.1_pre6-r1 --- sci-mathematics/octave/ChangeLog | 8 +- sci-mathematics/octave/Manifest | 15 ++- .../files/octave-2.1.72-gcc4.1-gentoo.patch | 120 ++++++++++++++++++ sci-mathematics/octave/octave-2.1.72.ebuild | 10 +- 4 files changed, 145 insertions(+), 8 deletions(-) create mode 100644 sci-mathematics/octave/files/octave-2.1.72-gcc4.1-gentoo.patch diff --git a/sci-mathematics/octave/ChangeLog b/sci-mathematics/octave/ChangeLog index fd9f7916c691..b87217905846 100644 --- a/sci-mathematics/octave/ChangeLog +++ b/sci-mathematics/octave/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sci-mathematics/octave # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.25 2006/01/31 03:47:04 markusle Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.26 2006/03/14 21:27:17 markusle Exp $ + + 14 Mar 2006; Markus Dittrich + +files/octave-2.1.72-gcc4.1-gentoo.patch, octave-2.1.72.ebuild: + Added patch to fix compile failure using gcc-4.1. Thanks to + Patrizio Bassi for providing a patch. + This fixes bug #126157. *octave-2.1.72 (31 Jan 2006) diff --git a/sci-mathematics/octave/Manifest b/sci-mathematics/octave/Manifest index e96c9fed68e3..99b6594a1a77 100644 --- a/sci-mathematics/octave/Manifest +++ b/sci-mathematics/octave/Manifest @@ -1,6 +1,6 @@ -MD5 02319d80d089c95e3465292751337f59 ChangeLog 10585 -RMD160 a91def1f7209bf96a7c3c5c06a6ad855a9bbbc7d ChangeLog 10585 -SHA256 45d5868b6d291c1adc1c49332d175c07ba7a6c226300f5c66bae72dc36d5bd0d ChangeLog 10585 +MD5 6d40a628d76cb26d5e6e30391a184ce8 ChangeLog 10857 +RMD160 d22b396a47884120a6dc684c808008f700ca2993 ChangeLog 10857 +SHA256 73481886bc57891bd570761daf58d0d758ef919061a7ddfcf5e37757a2439666 ChangeLog 10857 MD5 32c6cee1f5b42b8b20369c3722fb4db2 files/digest-octave-2.1.57-r1 67 RMD160 916a2f42d5341278918ad119310351332d00caca files/digest-octave-2.1.57-r1 67 SHA256 e69e84efdec60419fb9510efac6e9e7465540403f27cb9c9d5627952a093ead1 files/digest-octave-2.1.57-r1 67 @@ -13,6 +13,9 @@ SHA256 56933d0bafd46aaea2f08da908ad1984f76251c1313bff1f2b74ca821d2c9732 files/di MD5 daab39a464305b9fd4d9778e805141c6 files/digest-octave-2.1.72 247 RMD160 ef960677ee9c6c79fc74ffefd9129f1774b0e3a3 files/digest-octave-2.1.72 247 SHA256 1425b913fbce0977e177954ec78e232e9ec995eed733768a1d3696576e51083c files/digest-octave-2.1.72 247 +MD5 b515afd69ed0e0889ca5f2cea053e471 files/octave-2.1.72-gcc4.1-gentoo.patch 4224 +RMD160 d179b48f2e47e0e9b2312b3b21cc625ecaeb2e9a files/octave-2.1.72-gcc4.1-gentoo.patch 4224 +SHA256 24f0ccb8c2aa4004bd251f0095b8a83417f320326ba99a0bba46f8b178722a66 files/octave-2.1.72-gcc4.1-gentoo.patch 4224 MD5 8c623e53daafa025137077c6b65815bd metadata.xml 156 RMD160 dc078172bfebcb25d69bdf8731714f9cce9d3e36 metadata.xml 156 SHA256 5d22100902db7507a5b5493dd4a66cdb08025faf80a2c0b75e6392315c47f900 metadata.xml 156 @@ -25,6 +28,6 @@ SHA256 964f362da0b5789129b19d148bee97d0a35259bae7575b715a6bf60a75f18a50 octave-2 MD5 8f6f761449c011cbabbc42c942d72e9a octave-2.1.71-r2.ebuild 3780 RMD160 ccf870317428f79c095d0a7100524a45cbb2e477 octave-2.1.71-r2.ebuild 3780 SHA256 8e31e81299c14db4c74a962564eb18a63ae4a38f380cfa1bbfe3f1977dc94fe5 octave-2.1.71-r2.ebuild 3780 -MD5 ccfc716f2ab0411158536cb6f01db262 octave-2.1.72.ebuild 3780 -RMD160 3f4dce0ea11a2d8b50686ff09b5633275c19753a octave-2.1.72.ebuild 3780 -SHA256 95c36b5bf9bf5e3d35a38a01148e7f36cbc8e52adbe66c6299cdcb5458cf361f octave-2.1.72.ebuild 3780 +MD5 74694abad73a62cdfa643297c05286bc octave-2.1.72.ebuild 3880 +RMD160 9f9f8c2212a378a95b2846eb6b3d68f09dd9f57d octave-2.1.72.ebuild 3880 +SHA256 c5fd79e121e61080f6ef396b8f0257296da3dd4ffbb6b0b30d71647a3e019da3 octave-2.1.72.ebuild 3880 diff --git a/sci-mathematics/octave/files/octave-2.1.72-gcc4.1-gentoo.patch b/sci-mathematics/octave/files/octave-2.1.72-gcc4.1-gentoo.patch new file mode 100644 index 000000000000..92620414d089 --- /dev/null +++ b/sci-mathematics/octave/files/octave-2.1.72-gcc4.1-gentoo.patch @@ -0,0 +1,120 @@ +diff -Naur octave-2.1.72/liboctave/CMatrix.h octave-2.1.72-new/liboctave/CMatrix.h +--- octave-2.1.72/liboctave/CMatrix.h 2005-11-11 13:47:27.000000000 -0600 ++++ octave-2.1.72-new/liboctave/CMatrix.h 2006-03-14 11:26:53.000000000 -0600 +@@ -204,17 +204,6 @@ + + ComplexMatrix expm (void) const; + +- // column vector by row vector -> matrix operations +- +- friend ComplexMatrix operator * (const ColumnVector& a, +- const ComplexRowVector& b); +- +- friend ComplexMatrix operator * (const ComplexColumnVector& a, +- const RowVector& b); +- +- friend ComplexMatrix operator * (const ComplexColumnVector& a, +- const ComplexRowVector& b); +- + // matrix by diagonal matrix -> matrix operations + + ComplexMatrix& operator += (const DiagMatrix& a); +@@ -290,6 +279,17 @@ + ComplexMatrix Sylvester (const ComplexMatrix&, const ComplexMatrix&, + const ComplexMatrix&); + ++// column vector by row vector -> matrix operations ++ ++ComplexMatrix operator * (const ColumnVector& a, ++ const ComplexRowVector& b); ++ ++ComplexMatrix operator * (const ComplexColumnVector& a, ++ const RowVector& b); ++ ++ComplexMatrix operator * (const ComplexColumnVector& a, ++ const ComplexRowVector& b); ++ + extern ComplexMatrix operator * (const Matrix&, const ComplexMatrix&); + extern ComplexMatrix operator * (const ComplexMatrix&, const Matrix&); + extern ComplexMatrix operator * (const ComplexMatrix&, const ComplexMatrix&); +diff -Naur octave-2.1.72/liboctave/dColVector.h octave-2.1.72-new/liboctave/dColVector.h +--- octave-2.1.72/liboctave/dColVector.h 2005-11-11 13:47:32.000000000 -0600 ++++ octave-2.1.72-new/liboctave/dColVector.h 2006-03-14 11:12:19.000000000 -0600 +@@ -103,6 +103,13 @@ + ColumnVector (double *d, int l) : MArray (d, l) { } + }; + ++// Publish externally used friend functions. ++ ++extern ColumnVector real (const ComplexColumnVector& a); ++extern ColumnVector imag (const ComplexColumnVector& a); ++ ++ ++ + MARRAY_FORWARD_DEFS (MArray, ColumnVector, double) + + #endif +diff -Naur octave-2.1.72/liboctave/dMatrix.h octave-2.1.72-new/liboctave/dMatrix.h +--- octave-2.1.72/liboctave/dMatrix.h 2005-11-11 13:47:32.000000000 -0600 ++++ octave-2.1.72-new/liboctave/dMatrix.h 2006-03-14 11:14:00.000000000 -0600 +@@ -181,10 +181,6 @@ + + boolMatrix operator ! (void) const; + +- // column vector by row vector -> matrix operations +- +- friend Matrix operator * (const ColumnVector& a, const RowVector& b); +- + // other operations + + Matrix map (d_d_Mapper f) const; +@@ -235,6 +231,15 @@ + Matrix (double *d, int r, int c) : MArray2 (d, r, c) { } + }; + ++// Publish externally used friend functions. ++ ++extern Matrix real (const ComplexMatrix& a); ++extern Matrix imag (const ComplexMatrix& a); ++ ++// column vector by row vector -> matrix operations ++ ++extern Matrix operator * (const ColumnVector& a, const RowVector& b); ++ + extern Matrix Givens (double, double); + + extern Matrix Sylvester (const Matrix&, const Matrix&, const Matrix&); +diff -Naur octave-2.1.72/liboctave/dNDArray.h octave-2.1.72-new/liboctave/dNDArray.h +--- octave-2.1.72/liboctave/dNDArray.h 2005-11-11 13:47:32.000000000 -0600 ++++ octave-2.1.72-new/liboctave/dNDArray.h 2006-03-14 11:15:13.000000000 -0600 +@@ -131,6 +131,11 @@ + NDArray (double *d, const dim_vector& dv) : MArrayN (d, dv) { } + }; + ++// Publish externally used friend functions. ++ ++extern NDArray real (const ComplexNDArray& a); ++extern NDArray imag (const ComplexNDArray& a); ++ + extern NDArray min (double d, const NDArray& m); + extern NDArray min (const NDArray& m, double d); + extern NDArray min (const NDArray& a, const NDArray& b); +diff -Naur octave-2.1.72/src/ov.h octave-2.1.72-new/src/ov.h +--- octave-2.1.72/src/ov.h 2005-11-11 13:48:31.000000000 -0600 ++++ octave-2.1.72-new/src/ov.h 2006-03-14 11:16:03.000000000 -0600 +@@ -814,6 +814,15 @@ + octave_value *nil_rep (void) const; + }; + ++// Publish externally used friend functions. ++ ++extern octave_value ++do_unary_op (octave_value::unary_op op, const octave_value& a); ++ ++extern octave_value ++do_binary_op (octave_value::binary_op op, ++ const octave_value& a, const octave_value& b); ++ + #define OV_UNOP_FN(name) \ + inline octave_value \ + name (const octave_value& a) \ diff --git a/sci-mathematics/octave/octave-2.1.72.ebuild b/sci-mathematics/octave/octave-2.1.72.ebuild index 39a30bcb0dfb..1eef2f7a29fc 100644 --- a/sci-mathematics/octave/octave-2.1.72.ebuild +++ b/sci-mathematics/octave/octave-2.1.72.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-2.1.72.ebuild,v 1.1 2006/01/31 03:47:04 markusle Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-2.1.72.ebuild,v 1.2 2006/03/14 21:27:17 markusle Exp $ inherit flag-o-matic fortran @@ -31,6 +31,14 @@ DEPEND="virtual/libc # http://developer.intel.com/software/products/mkl/mkl52/index.htm for # more information +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}"/octave-2.1.72-gcc4.1-gentoo.patch +} + + src_compile() { filter-flags -ffast-math -- 2.26.2