commit:     ff32a770a509011f0f527f2972e7f4825d3f6281
Author:     Grégory Salvan <apieum <AT> gmail <DOT> com>
AuthorDate: Sat Feb 20 21:18:33 2016 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Mon Feb 22 08:36:31 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=ff32a770

added fedora metis patch

 .../netgen/files/netgen-5.x-fedora-metis.patch     | 93 ++++++++++++++++++++++
 sci-mathematics/netgen/netgen-5.3.1.ebuild         |  2 +
 2 files changed, 95 insertions(+)

diff --git a/sci-mathematics/netgen/files/netgen-5.x-fedora-metis.patch 
b/sci-mathematics/netgen/files/netgen-5.x-fedora-metis.patch
new file mode 100644
index 0000000..68b3396
--- /dev/null
+++ b/sci-mathematics/netgen/files/netgen-5.x-fedora-metis.patch
@@ -0,0 +1,93 @@
+--- ./netgen-5.3.1/libsrc/meshing/parallelmesh.cpp     2016-02-20 
21:55:59.227450843 +0100
++++ ./netgen/libsrc/meshing/parallelmesh.cpp   2016-02-20 21:46:32.331435233 
+0100
+@@ -14,7 +14,7 @@
+ 
+ #if METIS_VER_MAJOR >= 5
+ #define METIS5
+-    typedef idx_t idxtype;   
++    typedef metis::idx_t idxtype;
+ #else
+ #define METIS4
+     typedef idxtype idx_t;  
+@@ -794,10 +794,10 @@
+     eptr.Append (eind.Size());
+     Array<idx_t> epart(ne), npart(nn);
+ 
+-    int nparts = ntasks-1;
+-    int edgecut;
++    metis::idx_t nparts = ntasks-1;
++    metis::idx_t edgecut;
+ 
+-    int ncommon = 3;
++    metis::idx_t ncommon = 3;
+     METIS_PartMeshDual (&ne, &nn, &eptr[0], &eind[0], NULL, NULL, &ncommon, 
&nparts,
+                       NULL, NULL,
+                       &edgecut, &epart[0], &npart[0]);
+@@ -1029,11 +1029,11 @@
+     eptr.Append (eind.Size());
+     Array<idx_t> epart(ne), npart(nn);
+ 
+-    int nparts = ntasks-1;
+-    int edgecut;
++    metis::idx_t nparts = ntasks-1;
++    metis::idx_t edgecut;
+ 
+ 
+-    int ncommon = 3;
++    metis::idx_t ncommon = 3;
+     METIS_PartMeshDual (&ne, &nn, &eptr[0], &eind[0], &nwgt[0], NULL, 
&ncommon, &nparts,
+                       NULL, NULL,
+                       &edgecut, &epart[0], &npart[0]);
+@@ -1266,7 +1266,7 @@
+ 
+     for ( int vert = 0; vert < nn; vert++ )
+       {
+-      FlatArray<int> array ( cnt[vert], &adjacency[ xadj[vert] ] );
++      FlatArray<metis::idx_t> array ( cnt[vert], &adjacency[ xadj[vert] ] );
+       BubbleSort(array);
+       }
+ 
+@@ -1377,7 +1377,7 @@
+ 
+     for ( int el = 0; el < ne; el++ )
+       {
+-      FlatArray<int> array ( cnt[el], &adjacency[ xadj[el] ] );
++      FlatArray<metis::idx_t> array ( cnt[el], &adjacency[ xadj[el] ] );
+       BubbleSort(array);
+       }
+ 
+@@ -1428,8 +1428,8 @@
+   void Mesh :: PartDualHybridMesh2D ( ) 
+   {
+ #ifdef METIS
+-    int ne = GetNSE();
+-    int nv = GetNV();
++    metis::idx_t ne = GetNSE();
++    metis::idx_t nv = GetNV();
+ 
+     Array<idxtype> xadj(ne+1);
+     Array<idxtype> adjacency(ne*4);
+@@ -1484,18 +1484,18 @@
+ 
+     idxtype *v_weights = NULL, *e_weights = NULL;
+ 
+-    int weightflag = 0;
+-    int numflag = 0;
+-    int nparts = ntasks - 1;
++    metis::idx_t weightflag = 0;
++    metis::idx_t numflag = 0;
++    metis::idx_t nparts = ntasks - 1;
+ 
+-    int edgecut;
++    metis::idx_t edgecut;
+     Array<idxtype> part(ne);
+ 
+     for ( int el = 0; el < ne; el++ )
+       BubbleSort (adjacency.Range (xadj[el], xadj[el+1]));
+ 
+ #ifdef METIS4 
+-    int options[5];
++    metis::idx_t options[5];
+     options[0] = 0;
+     METIS_PartGraphKway ( &ne, &xadj[0], &adjacency[0], v_weights, e_weights, 
&weightflag, 
+                         &numflag, &nparts, options, &edgecut, &part[0] );

diff --git a/sci-mathematics/netgen/netgen-5.3.1.ebuild 
b/sci-mathematics/netgen/netgen-5.3.1.ebuild
index 9a1f35c..cf09c82 100644
--- a/sci-mathematics/netgen/netgen-5.3.1.ebuild
+++ b/sci-mathematics/netgen/netgen-5.3.1.ebuild
@@ -36,6 +36,8 @@ src_prepare() {
        # Adapted from 
http://sourceforge.net/projects/netgen-mesher/forums/forum/905307/topic/5422824
        epatch "${FILESDIR}/${PN}-5.x-missing-define.patch"
        epatch "${FILESDIR}/${PN}-5.x-metis-numflag.patch"
+       # Taken from 
http://pkgs.fedoraproject.org/cgit/rpms/netgen-mesher.git/tree/netgen-5.3.0_metis.patch
+       epatch "${FILESDIR}/${PN}-5.x-fedora-metis.patch"
        epatch "${FILESDIR}/${PN}-5.x-occ-stl-api-change.patch"
        if use mpi; then
                export CC=mpicc

Reply via email to