Gentoo Archives: gentoo-commits

From: "Sebastien Fabbro (bicatali)" <bicatali@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sci-libs/metis/files: metis-5.0_pre2-autotools.patch metis-4.0.1-autotools.patch
Date: Thu, 27 Mar 2008 19:05:36
Message-Id: E1JexOt-00054K-Tw@stork.gentoo.org
1 bicatali 08/03/27 19:04:35
2
3 Modified: metis-5.0_pre2-autotools.patch
4 metis-4.0.1-autotools.patch
5 Log:
6 Added pkg-config files in patch, removed slot, added blocking for parmetis. See bug #49953. Removed incompatible versions.
7 (Portage version: 2.1.4.4)
8
9 Revision Changes Path
10 1.2 sci-libs/metis/files/metis-5.0_pre2-autotools.patch
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/metis/files/metis-5.0_pre2-autotools.patch?rev=1.2&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/metis/files/metis-5.0_pre2-autotools.patch?rev=1.2&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/metis/files/metis-5.0_pre2-autotools.patch?r1=1.1&r2=1.2
15
16 Index: metis-5.0_pre2-autotools.patch
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sci-libs/metis/files/metis-5.0_pre2-autotools.patch,v
19 retrieving revision 1.1
20 retrieving revision 1.2
21 diff -u -r1.1 -r1.2
22 --- metis-5.0_pre2-autotools.patch 5 Feb 2008 17:55:30 -0000 1.1
23 +++ metis-5.0_pre2-autotools.patch 27 Mar 2008 19:04:35 -0000 1.2
24 @@ -1,12 +1,13 @@
25 --- configure.ac 1970-01-01 01:00:00.000000000 +0100
26 -+++ configure.ac 2007-09-24 15:12:11.917289395 +0100
27 -@@ -0,0 +1,54 @@
28 ++++ configure.ac 2008-03-25 11:07:24.560995022 +0000
29 +@@ -0,0 +1,53 @@
30 ++# -*- Autoconf -*-
31 ++AC_PREREQ(2.59)
32 +AC_INIT([metis], [5.0pre2], [metis@××××××.edu], [metis])
33 +AM_INIT_AUTOMAKE([foreign])
34 +
35 +AC_PROG_MAKE_SET
36 +AC_PROG_LIBTOOL
37 -+
38 +AC_CHECK_LIB(m, [sqrt, pow, log])
39 +
40 +AC_ARG_ENABLE(openmp,
41 @@ -15,20 +16,18 @@
42 + [enable_openmp=$enableval],
43 + [enable_openmp="yes"])
44 +AC_MSG_RESULT($enable_openmp)
45 -+
46 +if test x$enable_openmp = xyes; then
47 + AC_CHECK_HEADERS(omp.h)
48 + OMP_CPPFLAGS=-D__OPENMP__
49 + if test x$CC = xicc; then
50 + OMP_CFLAGS="-openmp -openmp-report2"
51 -+ OMP_LDFLAGS=-openmp
52 ++ OMP_LIBS=-openmp
53 + else
54 + OMP_CFLAGS=-fopenmp
55 -+ OMP_LDFLAGS=-lgomp
56 ++ OMP_LIBS=-lgomp
57 + fi
58 +fi
59 +
60 -+# very basic pcre check
61 +AC_ARG_ENABLE(pcre,
62 + [AC_HELP_STRING([--enable-pcre],
63 + [Enable PCRE regex support])],
64 @@ -43,26 +42,68 @@
65 + AC_CHECK_HEADERS(pcre.h)
66 + PCRE="yes"
67 + PCRE_CPPFLAGS=-D__WITHPCRE__
68 -+ PCRE_LDFLAGS=-lpcre
69 ++ PCRE_LIBS=-lpcre
70 + fi
71 +fi
72 +
73 -+AC_CONFIG_FILES( \
74 -+ Makefile \
75 -+ GKlib/trunk/Makefile \
76 -+ libmetis/Makefile \
77 -+ programs/Makefile \
78 -+ test/Makefile
79 -+)
80 ++AC_CONFIG_FILES([
81 ++ Makefile
82 ++ metis.pc
83 ++ GKlib/trunk/Makefile
84 ++ libmetis/Makefile
85 ++ programs/Makefile
86 ++ test/Makefile])
87 +AC_OUTPUT
88 ---- Makefile.am 1970-01-01 01:00:00.000000000 +0100
89 -+++ Makefile.am 2007-09-24 15:12:11.921289623 +0100
90 -@@ -0,0 +1,3 @@
91 -+SUBDIRS = GKlib/trunk libmetis programs test
92 -+EXTRA_DIST = CHANGES.v4 CHANGES.v5
93 -+include_HEADERS = include/metis.h
94 ---- GKlib/trunk/Makefile.am 1970-01-01 01:00:00.000000000 +0100
95 -+++ GKlib/trunk/Makefile.am 2007-09-24 15:12:11.949291219 +0100
96 +--- metis.pc.in 1970-01-01 01:00:00.000000000 +0100
97 ++++ metis.pc.in 2008-03-25 11:07:04.387845420 +0000
98 +@@ -0,0 +1,10 @@
99 ++prefix=@prefix@
100 ++exec_prefix=@exec_prefix@
101 ++libdir=@libdir@
102 ++includedir=@includedir@
103 ++
104 ++Name: METIS
105 ++Description: Software for partioning unstructured graphes and meshes
106 ++Version: @VERSION@
107 ++Libs: -L${libdir} -lmetis
108 ++Cflags: -I${includedir}
109 +--- ./test/Makefile.am 1970-01-01 01:00:00.000000000 +0100
110 ++++ ./test/Makefile.am 2008-03-25 11:07:04.387845420 +0000
111 +@@ -0,0 +1,10 @@
112 ++AM_CPPFLAGS = \
113 ++ -I$(top_srcdir)/include \
114 ++ -I$(top_srcdir)/libmetis \
115 ++ -I$(top_srcdir)/programs \
116 ++ -I$(top_srcdir)/GKlib/trunk \
117 ++ -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64
118 ++
119 ++check_PROGRAMS = mtest
120 ++mtest_SOURCES = mtest.c $(top_srcdir)/programs/io.c
121 ++mtest_LDADD = $(top_builddir)/libmetis/libmetis.la
122 +--- ./programs/Makefile.am 1970-01-01 01:00:00.000000000 +0100
123 ++++ ./programs/Makefile.am 2008-03-25 11:07:04.387845420 +0000
124 +@@ -0,0 +1,19 @@
125 ++AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/GKlib/trunk -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64
126 ++bin_PROGRAMS = cmetis graphchk kfmetis kmetis mesh2dual mesh2nodal metis \
127 ++ oemetis onmetis partdmesh partnmesh pmetis
128 ++
129 ++# Differing from upstream, a lot of these get smbfactor.c as we need
130 ++# ComputeFillIn2, which is referenced in proto.h <- metisbin.h
131 ++LDADD = $(top_builddir)/libmetis/libmetis.la
132 ++cmetis_SOURCES = cmetis.c io.c cmdline_cmetis.c
133 ++graphchk_SOURCES = graphchk.c io.c
134 ++kfmetis_SOURCES = kfmetis.c io.c cmdline_kfmetis.c
135 ++kmetis_SOURCES = kmetis.c io.c
136 ++mesh2dual_SOURCES = mesh2dual.c io.c
137 ++mesh2nodal_SOURCES = mesh2nodal.c io.c
138 ++metis_SOURCES = metis.c io.c
139 ++oemetis_SOURCES = oemetis.c io.c
140 ++onmetis_SOURCES = onmetis.c io.c
141 ++partdmesh_SOURCES = partdmesh.c io.c
142 ++partnmesh_SOURCES = partnmesh.c io.c
143 ++pmetis_SOURCES = pmetis.c io.c cmdline_pmetis.c
144 +--- ./GKlib/trunk/Makefile.am 1970-01-01 01:00:00.000000000 +0100
145 ++++ ./GKlib/trunk/Makefile.am 2008-03-25 11:07:04.387845420 +0000
146 @@ -0,0 +1,26 @@
147 +AM_CPPFLAGS = -DLINUX -D_FILE_OFFSET_BITS=6 $(PCRE_CPPFLAGS) $(OMP_CPPFLAGS)
148 +AM_CFLAGS = -std=c99 $(OMP_CFLAGS)
149 @@ -90,398 +131,14 @@
150 + tokenizer.c \
151 + util.c
152 +libgklib_la_LIBADD = $(OMP_LDFLAGS) $(PCRE_LDFLAGS)
153 ---- libmetis/smbfactor.c 1970-01-01 01:00:00.000000000 +0100
154 -+++ libmetis/smbfactor.c 2007-09-24 15:12:11.949291219 +0100
155 -@@ -0,0 +1,385 @@
156 -+/*
157 -+ * Copyright 1997, Regents of the University of Minnesota
158 -+ *
159 -+ * smbfactor.c
160 -+ *
161 -+ * This file performs the symbolic factorization of a matrix
162 -+ *
163 -+ * Started 8/1/97
164 -+ * George
165 -+ *
166 -+ * $Id: metis-5.0_pre2-autotools.patch,v 1.1 2008/02/05 17:55:30 bicatali Exp $
167 -+ *
168 -+ */
169 -+
170 -+#include <metislib.h>
171 -+
172 -+
173 -+/*************************************************************************
174 -+* This function sets up data structures for fill-in computations
175 -+**************************************************************************/
176 -+void ComputeFillIn(GraphType *graph, idxtype *iperm)
177 -+{
178 -+ idxtype i, j, k, nvtxs, maxlnz, maxsub;
179 -+ idxtype *xadj, *adjncy;
180 -+ idxtype *perm, *xlnz, *xnzsub, *nzsub;
181 -+ double opc;
182 -+
183 -+/*
184 -+ mprintf("\nSymbolic factorization... --------------------------------------------\n");
185 -+*/
186 -+
187 -+ nvtxs = graph->nvtxs;
188 -+ xadj = graph->xadj;
189 -+ adjncy = graph->adjncy;
190 -+
191 -+ maxsub = 4*xadj[nvtxs];
192 -+
193 -+ /* Relabel the vertices so that it starts from 1 */
194 -+ k = xadj[nvtxs];
195 -+ for (i=0; i<k; i++)
196 -+ adjncy[i]++;
197 -+ for (i=0; i<nvtxs+1; i++)
198 -+ xadj[i]++;
199 -+
200 -+ /* Allocate the required memory */
201 -+ perm = idxmalloc(nvtxs+1, "ComputeFillIn: perm");
202 -+ xlnz = idxmalloc(nvtxs+1, "ComputeFillIn: xlnz");
203 -+ xnzsub = idxmalloc(nvtxs+1, "ComputeFillIn: xnzsub");
204 -+ nzsub = idxmalloc(maxsub, "ComputeFillIn: nzsub");
205 -+
206 -+ /* Construct perm from iperm and change the numbering of iperm */
207 -+ for (i=0; i<nvtxs; i++)
208 -+ perm[iperm[i]] = i;
209 -+ for (i=0; i<nvtxs; i++) {
210 -+ iperm[i]++;
211 -+ perm[i]++;
212 -+ }
213 -+
214 -+ /*
215 -+ * Call sparspak routine.
216 -+ */
217 -+ if (smbfct(nvtxs, xadj, adjncy, perm, iperm, xlnz, &maxlnz, xnzsub, nzsub, &maxsub)) {
218 -+ gk_free((void **)&nzsub, LTERM);
219 -+
220 -+ maxsub = 4*maxsub;
221 -+ nzsub = idxmalloc(maxsub, "ComputeFillIn: nzsub");
222 -+ if (smbfct(nvtxs, xadj, adjncy, perm, iperm, xlnz, &maxlnz, xnzsub, nzsub, &maxsub))
223 -+ errexit("MAXSUB is too small!");
224 -+ }
225 -+
226 -+ opc = 0;
227 -+ for (i=0; i<nvtxs; i++)
228 -+ xlnz[i]--;
229 -+ for (i=0; i<nvtxs; i++)
230 -+ opc += (xlnz[i+1]-xlnz[i])*(xlnz[i+1]-xlnz[i]) - (xlnz[i+1]-xlnz[i]);
231 -+
232 -+ mprintf(" Nonzeros: %D, \tOperation Count: %6.4le\n", maxlnz, opc);
233 -+
234 -+
235 -+ gk_free((void **)&perm, &xlnz, &xnzsub, &nzsub, LTERM);
236 -+
237 -+
238 -+ /* Relabel the vertices so that it starts from 0 */
239 -+ for (i=0; i<nvtxs; i++)
240 -+ iperm[i]--;
241 -+ for (i=0; i<nvtxs+1; i++)
242 -+ xadj[i]--;
243 -+ k = xadj[nvtxs];
244 -+ for (i=0; i<k; i++)
245 -+ adjncy[i]--;
246 -+
247 -+}
248 -+
249 -+
250 -+
251 -+/*************************************************************************
252 -+* This function sets up data structures for fill-in computations
253 -+**************************************************************************/
254 -+idxtype ComputeFillIn2(GraphType *graph, idxtype *iperm)
255 -+{
256 -+ idxtype i, j, k, nvtxs, maxlnz, maxsub;
257 -+ idxtype *xadj, *adjncy;
258 -+ idxtype *perm, *xlnz, *xnzsub, *nzsub;
259 -+ double opc;
260 -+
261 -+ nvtxs = graph->nvtxs;
262 -+ xadj = graph->xadj;
263 -+ adjncy = graph->adjncy;
264 -+
265 -+ maxsub = 4*xadj[nvtxs];
266 -+
267 -+ /* Relabel the vertices so that it starts from 1 */
268 -+ k = xadj[nvtxs];
269 -+ for (i=0; i<k; i++)
270 -+ adjncy[i]++;
271 -+ for (i=0; i<nvtxs+1; i++)
272 -+ xadj[i]++;
273 -+
274 -+ /* Allocate the required memory */
275 -+ perm = idxmalloc(nvtxs+1, "ComputeFillIn: perm");
276 -+ xlnz = idxmalloc(nvtxs+1, "ComputeFillIn: xlnz");
277 -+ xnzsub = idxmalloc(nvtxs+1, "ComputeFillIn: xnzsub");
278 -+ nzsub = idxmalloc(maxsub, "ComputeFillIn: nzsub");
279 -+
280 -+ /* Construct perm from iperm and change the numbering of iperm */
281 -+ for (i=0; i<nvtxs; i++)
282 -+ perm[iperm[i]] = i;
283 -+ for (i=0; i<nvtxs; i++) {
284 -+ iperm[i]++;
285 -+ perm[i]++;
286 -+ }
287 -+
288 -+ /*
289 -+ * Call sparspak routine.
290 -+ */
291 -+ if (smbfct(nvtxs, xadj, adjncy, perm, iperm, xlnz, &maxlnz, xnzsub, nzsub, &maxsub)) {
292 -+ gk_free((void **)&nzsub, LTERM);
293 -+
294 -+ maxsub = 4*maxsub;
295 -+ nzsub = idxmalloc(maxsub, "ComputeFillIn: nzsub");
296 -+ if (smbfct(nvtxs, xadj, adjncy, perm, iperm, xlnz, &maxlnz, xnzsub, nzsub, &maxsub))
297 -+ errexit("MAXSUB is too small!");
298 -+ }
299 -+
300 -+ opc = 0;
301 -+ for (i=0; i<nvtxs; i++)
302 -+ xlnz[i]--;
303 -+ for (i=0; i<nvtxs; i++)
304 -+ opc += (xlnz[i+1]-xlnz[i])*(xlnz[i+1]-xlnz[i]) - (xlnz[i+1]-xlnz[i]);
305 -+
306 -+
307 -+ gk_free((void **)&perm, &xlnz, &xnzsub, &nzsub, LTERM);
308 -+
309 -+
310 -+ /* Relabel the vertices so that it starts from 0 */
311 -+ for (i=0; i<nvtxs; i++)
312 -+ iperm[i]--;
313 -+ for (i=0; i<nvtxs+1; i++)
314 -+ xadj[i]--;
315 -+ k = xadj[nvtxs];
316 -+ for (i=0; i<k; i++)
317 -+ adjncy[i]--;
318 -+
319 -+ return maxlnz;
320 -+
321 -+}
322 -+
323 -+
324 -+/*****************************************************************
325 -+********** SMBFCT ..... SYMBOLIC FACTORIZATION *********
326 -+******************************************************************
327 -+* PURPOSE - THIS ROUTINE PERFORMS SYMBOLIC FACTORIZATION
328 -+* ON A PERMUTED LINEAR SYSTEM AND IT ALSO SETS UP THE
329 -+* COMPRESSED DATA STRUCTURE FOR THE SYSTEM.
330 -+*
331 -+* INPUT PARAMETERS -
332 -+* NEQNS - NUMBER OF EQUATIONS.
333 -+* (XADJ, ADJNCY) - THE ADJACENCY STRUCTURE.
334 -+* (PERM, INVP) - THE PERMUTATION VECTOR AND ITS INVERSE.
335 -+*
336 -+* UPDATED PARAMETERS -
337 -+* MAXSUB - SIZE OF THE SUBSCRIPT ARRAY NZSUB. ON RETURN,
338 -+* IT CONTAINS THE NUMBER OF SUBSCRIPTS USED
339 -+*
340 -+* OUTPUT PARAMETERS -
341 -+* XLNZ - INDEX INTO THE NONZERO STORAGE VECTOR LNZ.
342 -+* (XNZSUB, NZSUB) - THE COMPRESSED SUBSCRIPT VECTORS.
343 -+* MAXLNZ - THE NUMBER OF NONZEROS FOUND.
344 -+*
345 -+*******************************************************************/
346 -+idxtype smbfct(idxtype neqns, idxtype *xadj, idxtype *adjncy, idxtype *perm, idxtype *invp,
347 -+ idxtype *xlnz, idxtype *maxlnz, idxtype *xnzsub, idxtype *nzsub, idxtype *maxsub)
348 -+{
349 -+ /* Local variables */
350 -+ idxtype node, rchm, mrgk, lmax, i, j, k, m, nabor, nzbeg, nzend;
351 -+ idxtype kxsub, jstop, jstrt, mrkflg, inz, knz, flag;
352 -+ idxtype *mrglnk, *marker, *rchlnk;
353 -+
354 -+ rchlnk = idxmalloc(neqns+1, "smbfct: rchlnk");
355 -+ marker = idxsmalloc(neqns+1, 0, "smbfct: marker");
356 -+ mrglnk = idxsmalloc(neqns+1, 0, "smbfct: mgrlnk");
357 -+
358 -+ /* Parameter adjustments */
359 -+ --marker;
360 -+ --mrglnk;
361 -+ --rchlnk;
362 -+ --nzsub;
363 -+ --xnzsub;
364 -+ --xlnz;
365 -+ --invp;
366 -+ --perm;
367 -+ --adjncy;
368 -+ --xadj;
369 -+
370 -+ /* Function Body */
371 -+ flag = 0;
372 -+ nzbeg = 1;
373 -+ nzend = 0;
374 -+ xlnz[1] = 1;
375 -+
376 -+ /* FOR EACH COLUMN KNZ COUNTS THE NUMBER OF NONZEROS IN COLUMN K ACCUMULATED IN RCHLNK. */
377 -+ for (k = 1; k <= neqns; ++k) {
378 -+ knz = 0;
379 -+ mrgk = mrglnk[k];
380 -+ mrkflg = 0;
381 -+ marker[k] = k;
382 -+ if (mrgk != 0)
383 -+ marker[k] = marker[mrgk];
384 -+ xnzsub[k] = nzend;
385 -+ node = perm[k];
386 -+
387 -+ if (xadj[node] >= xadj[node+1]) {
388 -+ xlnz[k+1] = xlnz[k];
389 -+ continue;
390 -+ }
391 -+
392 -+ /* USE RCHLNK TO LINK THROUGH THE STRUCTURE OF A(*,K) BELOW DIAGONAL */
393 -+ rchlnk[k] = neqns+1;
394 -+ for (j=xadj[node]; j<xadj[node+1]; j++) {
395 -+ nabor = invp[adjncy[j]];
396 -+ if (nabor <= k)
397 -+ continue;
398 -+ rchm = k;
399 -+
400 -+ do {
401 -+ m = rchm;
402 -+ rchm = rchlnk[m];
403 -+ } while (rchm <= nabor);
404 -+
405 -+ knz++;
406 -+ rchlnk[m] = nabor;
407 -+ rchlnk[nabor] = rchm;
408 -+ if (marker[nabor] != marker[k])
409 -+ mrkflg = 1;
410 -+ }
411 -+
412 -+ /* TEST FOR MASS SYMBOLIC ELIMINATION */
413 -+ lmax = 0;
414 -+ if (mrkflg != 0 || mrgk == 0 || mrglnk[mrgk] != 0)
415 -+ goto L350;
416 -+ xnzsub[k] = xnzsub[mrgk] + 1;
417 -+ knz = xlnz[mrgk + 1] - (xlnz[mrgk] + 1);
418 -+ goto L1400;
419 -+
420 -+
421 -+ /* LINK THROUGH EACH COLUMN I THAT AFFECTS L(*,K) */
422 -+L350:
423 -+ i = k;
424 -+ while ((i = mrglnk[i]) != 0) {
425 -+ inz = xlnz[i+1] - (xlnz[i]+1);
426 -+ jstrt = xnzsub[i] + 1;
427 -+ jstop = xnzsub[i] + inz;
428 -+
429 -+ if (inz > lmax) {
430 -+ lmax = inz;
431 -+ xnzsub[k] = jstrt;
432 -+ }
433 -+
434 -+ /* MERGE STRUCTURE OF L(*,I) IN NZSUB INTO RCHLNK. */
435 -+ rchm = k;
436 -+ for (j = jstrt; j <= jstop; ++j) {
437 -+ nabor = nzsub[j];
438 -+ do {
439 -+ m = rchm;
440 -+ rchm = rchlnk[m];
441 -+ } while (rchm < nabor);
442 -+
443 -+ if (rchm != nabor) {
444 -+ knz++;
445 -+ rchlnk[m] = nabor;
446 -+ rchlnk[nabor] = rchm;
447 -+ rchm = nabor;
448 -+ }
449 -+ }
450 -+ }
451 -+
452 -+ /* CHECK IF SUBSCRIPTS DUPLICATE THOSE OF ANOTHER COLUMN */
453 -+ if (knz == lmax)
454 -+ goto L1400;
455 -+
456 -+ /* OR IF TAIL OF K-1ST COLUMN MATCHES HEAD OF KTH */
457 -+ if (nzbeg > nzend)
458 -+ goto L1200;
459 -+
460 -+ i = rchlnk[k];
461 -+ for (jstrt = nzbeg; jstrt <= nzend; ++jstrt) {
462 -+ if (nzsub[jstrt] < i)
463 -+ continue;
464 -+
465 -+ if (nzsub[jstrt] == i)
466 -+ goto L1000;
467 -+ else
468 -+ goto L1200;
469 -+ }
470 -+ goto L1200;
471 -+
472 -+L1000:
473 -+ xnzsub[k] = jstrt;
474 -+ for (j = jstrt; j <= nzend; ++j) {
475 -+ if (nzsub[j] != i)
476 -+ goto L1200;
477 -+
478 -+ i = rchlnk[i];
479 -+ if (i > neqns)
480 -+ goto L1400;
481 -+ }
482 -+ nzend = jstrt - 1;
483 -+
484 -+ /* COPY THE STRUCTURE OF L(*,K) FROM RCHLNK TO THE DATA STRUCTURE (XNZSUB, NZSUB) */
485 -+L1200:
486 -+ nzbeg = nzend + 1;
487 -+ nzend += knz;
488 -+
489 -+ if (nzend > *maxsub) {
490 -+ flag = 1; /* Out of memory */
491 -+ break;
492 -+ }
493 -+
494 -+ i = k;
495 -+ for (j=nzbeg; j<=nzend; ++j) {
496 -+ i = rchlnk[i];
497 -+ nzsub[j] = i;
498 -+ marker[i] = k;
499 -+ }
500 -+ xnzsub[k] = nzbeg;
501 -+ marker[k] = k;
502 -+
503 -+ /*
504 -+ * UPDATE THE VECTOR MRGLNK. NOTE COLUMN L(*,K) JUST FOUND
505 -+ * IS REQUIRED TO DETERMINE COLUMN L(*,J), WHERE
506 -+ * L(J,K) IS THE FIRST NONZERO IN L(*,K) BELOW DIAGONAL.
507 -+ */
508 -+L1400:
509 -+ if (knz > 1) {
510 -+ kxsub = xnzsub[k];
511 -+ i = nzsub[kxsub];
512 -+ mrglnk[k] = mrglnk[i];
513 -+ mrglnk[i] = k;
514 -+ }
515 -+
516 -+ xlnz[k + 1] = xlnz[k] + knz;
517 -+ }
518 -+
519 -+ if (flag == 0) {
520 -+ *maxlnz = xlnz[neqns] - 1;
521 -+ *maxsub = xnzsub[neqns];
522 -+ xnzsub[neqns + 1] = xnzsub[neqns];
523 -+ }
524 -+
525 -+ marker++;
526 -+ mrglnk++;
527 -+ rchlnk++;
528 -+ nzsub++;
529 -+ xnzsub++;
530 -+ xlnz++;
531 -+ invp++;
532 -+ perm++;
533 -+ adjncy++;
534 -+ xadj++;
535 -+ gk_free((void **)&rchlnk, &mrglnk, &marker, LTERM);
536 -+
537 -+ return flag;
538 -+
539 -+}
540 +--- ./libmetis/Makefile.am 1970-01-01 01:00:00.000000000 +0100
541 ++++ ./libmetis/Makefile.am 2008-03-25 11:07:04.387845420 +0000
542 +@@ -0,0 +1,20 @@
543 ++AM_CPPFLAGS = \
544 ++ -I$(top_srcdir)/include \
545 ++ -I$(top_srcdir)/GKlib/trunk \
546 ++ -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64
547 +
548 ---- libmetis/Makefile.am 1970-01-01 01:00:00.000000000 +0100
549 -+++ libmetis/Makefile.am 2007-09-24 15:12:11.933290307 +0100
550 -@@ -0,0 +1,16 @@
551 -+AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/GKlib/trunk -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64
552 +lib_LTLIBRARIES = libmetis.la
553 +libmetis_la_SOURCES= \
554 + balance.c bucketsort.c ccgraph.c checkgraph.c cmetis.c \
555 @@ -495,40 +152,11 @@
556 + pmetis.c pqueue.c refine.c rkmetis.c separator.c sfm.c \
557 + srefine.c stat.c streamio.c subdomains.c timing.c util.c \
558 + smbfactor.c
559 -+
560 +libmetis_la_LIBADD = $(top_builddir)/GKlib/trunk/libgklib.la
561 ---- programs/Makefile.am 1970-01-01 01:00:00.000000000 +0100
562 -+++ programs/Makefile.am 2007-09-24 15:12:11.933290307 +0100
563 -@@ -0,0 +1,19 @@
564 -+AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/GKlib/trunk -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64
565 -+bin_PROGRAMS = cmetis graphchk kfmetis kmetis mesh2dual mesh2nodal metis \
566 -+ oemetis onmetis partdmesh partnmesh pmetis
567 -+
568 -+# Differing from upstream, a lot of these get smbfactor.c as we need
569 -+# ComputeFillIn2, which is referenced in proto.h <- metisbin.h
570 -+LDADD = $(top_builddir)/libmetis/libmetis.la
571 -+cmetis_SOURCES = cmetis.c io.c cmdline_cmetis.c
572 -+graphchk_SOURCES = graphchk.c io.c
573 -+kfmetis_SOURCES = kfmetis.c io.c cmdline_kfmetis.c
574 -+kmetis_SOURCES = kmetis.c io.c
575 -+mesh2dual_SOURCES = mesh2dual.c io.c
576 -+mesh2nodal_SOURCES = mesh2nodal.c io.c
577 -+metis_SOURCES = metis.c io.c
578 -+oemetis_SOURCES = oemetis.c io.c
579 -+onmetis_SOURCES = onmetis.c io.c
580 -+partdmesh_SOURCES = partdmesh.c io.c
581 -+partnmesh_SOURCES = partnmesh.c io.c
582 -+pmetis_SOURCES = pmetis.c io.c cmdline_pmetis.c
583 ---- test/Makefile.am 1970-01-01 01:00:00.000000000 +0100
584 -+++ test/Makefile.am 2007-09-24 15:45:23.683980202 +0100
585 -@@ -0,0 +1,10 @@
586 -+AM_CPPFLAGS = \
587 -+ -I$(top_srcdir)/include \
588 -+ -I$(top_srcdir)/libmetis \
589 -+ -I$(top_srcdir)/programs \
590 -+ -I$(top_srcdir)/GKlib/trunk \
591 -+ -DLINUX -DUNIX -D_FILE_OFFSET_BITS=64
592 -+
593 -+check_PROGRAMS = mtest
594 -+mtest_SOURCES = mtest.c $(top_srcdir)/programs/io.c
595 -+mtest_LDADD = $(top_builddir)/libmetis/libmetis.la
596 ++libmetis_la_LDFLAGS = -no-undefined -version-info 5:0:0
597 +--- ./Makefile.am 1970-01-01 01:00:00.000000000 +0100
598 ++++ ./Makefile.am 2008-03-25 11:07:04.387845420 +0000
599 +@@ -0,0 +1,3 @@
600 ++SUBDIRS = GKlib/trunk libmetis programs test
601 ++EXTRA_DIST = CHANGES.v4 CHANGES.v5
602 ++include_HEADERS = include/metis.h
603
604
605
606 1.2 sci-libs/metis/files/metis-4.0.1-autotools.patch
607
608 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/metis/files/metis-4.0.1-autotools.patch?rev=1.2&view=markup
609 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/metis/files/metis-4.0.1-autotools.patch?rev=1.2&content-type=text/plain
610 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/metis/files/metis-4.0.1-autotools.patch?r1=1.1&r2=1.2
611
612 Index: metis-4.0.1-autotools.patch
613 ===================================================================
614 RCS file: /var/cvsroot/gentoo-x86/sci-libs/metis/files/metis-4.0.1-autotools.patch,v
615 retrieving revision 1.1
616 retrieving revision 1.2
617 diff -u -r1.1 -r1.2
618 --- metis-4.0.1-autotools.patch 5 Feb 2008 17:55:30 -0000 1.1
619 +++ metis-4.0.1-autotools.patch 27 Mar 2008 19:04:35 -0000 1.2
620 @@ -1,18 +1,44 @@
621 --- configure.ac 1970-01-01 01:00:00.000000000 +0100
622 -+++ configure.ac 2008-01-30 21:47:22.597386731 +0000
623 -@@ -0,0 +1,9 @@
624 ++++ configure.ac 2008-03-25 10:05:57.090715324 +0000
625 +@@ -0,0 +1,14 @@
626 +# -*- Autoconf -*-
627 +AC_PREREQ(2.59)
628 -+AC_INIT(metis,4.0.1,karypis@××××××.edu)
629 ++AC_INIT(metis, 4.0.1, karypis@××××××.edu)
630 +AM_INIT_AUTOMAKE([foreign])
631 +AC_PROG_INSTALL
632 +AC_PROG_LIBTOOL
633 +AC_CHECK_LIB(m, sqrt)
634 -+AC_CONFIG_FILES([Makefile Lib/Makefile Programs/Makefile Test/Makefile])
635 ++AC_CONFIG_FILES([
636 ++ Makefile
637 ++ metis.pc
638 ++ Lib/Makefile
639 ++ Programs/Makefile\
640 ++ Test/Makefile])
641 +AC_OUTPUT
642 ---- ./Lib/Makefile.am 1970-01-01 01:00:00.000000000 +0100
643 -+++ ./Lib/Makefile.am 2008-01-31 15:03:42.814421420 +0000
644 -@@ -0,0 +1,16 @@
645 +--- metis.pc.in 1970-01-01 01:00:00.000000000 +0100
646 ++++ metis.pc.in 2008-02-15 14:45:09.378997263 +0000
647 +@@ -0,0 +1,10 @@
648 ++prefix=@prefix@
649 ++exec_prefix=@exec_prefix@
650 ++libdir=@libdir@
651 ++includedir=@includedir@
652 ++
653 ++Name: METIS
654 ++Description: Software for partioning unstructured graphes and meshes
655 ++Version: @VERSION@
656 ++Libs: -L${libdir} -lmetis
657 ++Cflags: -I${includedir}
658 +--- Makefile.am 1970-01-01 01:00:00.000000000 +0100
659 ++++ Makefile.am 2008-02-15 14:46:16.578826763 +0000
660 +@@ -0,0 +1,5 @@
661 ++SUBDIRS = Lib Programs Test
662 ++EXTRA_DIST = CHANGES VERSION metis.pc.in
663 ++
664 ++pkgconfigdir = $(libdir)/pkgconfig
665 ++pkgconfig_DATA = metis.pc
666 +--- Lib/Makefile.am 1970-01-01 01:00:00.000000000 +0100
667 ++++ Lib/Makefile.am 2008-03-25 10:06:10.719491984 +0000
668 +@@ -0,0 +1,15 @@
669 +include_HEADERS = defs.h macros.h metis.h proto.h rename.h struct.h
670 +pkgincludedir = $(includedir)/metis
671 +lib_LTLIBRARIES = libmetis.la
672 @@ -27,10 +53,9 @@
673 + mrefine.c mutil.c mfm.c mkmetis.c mkwayrefine.c mkwayfmh.c \
674 + mrefine2.c minitpart2.c mbalance2.c mfm2.c \
675 + kvmetis.c kwayvolrefine.c kwayvolfm.c subdomains.c
676 -+libmetis_la_LIBADD = -lm
677 -+libmetis_la_LDFLAGS = -no-undefined -version-info 4:0:0
678 ---- ./Programs/Makefile.am 1970-01-01 01:00:00.000000000 +0100
679 -+++ ./Programs/Makefile.am 2008-01-31 12:00:14.981124649 +0000
680 ++libmetis_la_LDFLAGS = -no-undefined -version-info 4:0:0
681 +--- Programs/Makefile.am 1970-01-01 01:00:00.000000000 +0100
682 ++++ Programs/Makefile.am 2008-01-31 12:00:14.981124649 +0000
683 @@ -0,0 +1,15 @@
684 +AM_CPPFLAGS = -I$(top_srcdir)/Lib
685 +LDADD = $(top_builddir)/Lib/libmetis.la -lm
686 @@ -47,8 +72,8 @@
687 +partdmesh_SOURCES = partdmesh.c io.c
688 +partnmesh_SOURCES = partnmesh.c io.c
689 +graphchk_SOURCES = graphchk.c io.c
690 ---- ./Test/Makefile.am 1970-01-01 01:00:00.000000000 +0100
691 -+++ ./Test/Makefile.am 2008-01-31 12:37:59.532517099 +0000
692 +--- Test/Makefile.am 1970-01-01 01:00:00.000000000 +0100
693 ++++ Test/Makefile.am 2008-01-31 12:37:59.532517099 +0000
694 @@ -0,0 +1,7 @@
695 +AM_CPPFLAGS = -I$(top_srcdir)/Lib
696 +LDADD = $(top_builddir)/Lib/libmetis.la -lm
697 @@ -57,10 +82,3 @@
698 +
699 +check-local: $(check_PROGRAMS)
700 + - ./mtest ../Graphs/4elt.graph
701 ---- ./Makefile.am 1970-01-01 01:00:00.000000000 +0100
702 -+++ ./Makefile.am 2008-01-30 21:15:58.990578962 +0000
703 -@@ -0,0 +1,4 @@
704 -+SUBDIRS = Lib Programs Test
705 -+EXTRA_DIST = CHANGES
706 -+
707 -+
708
709
710
711 --
712 gentoo-commits@l.g.o mailing list