gnu: scotch: Update to 6.0.5a.
authorEric Bavier <bavier@cray.com>
Fri, 2 Mar 2018 20:05:34 +0000 (14:05 -0600)
committerEric Bavier <bavier@member.fsf.org>
Fri, 27 Apr 2018 01:54:18 +0000 (20:54 -0500)
* gnu/packages/patches/pt-scotch-build-parallelism.patch: Delete files.
* gnu/packages/patches/scotch-build-parallelism.patch,
gnu/packages/patches/scotch-graph-diam-64.patch,
gnu/packages/patches/scotch-graph-induce-type-64.patch: New files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/maths.scm (scotch): Update to 6.0.5a.
[source](patches): Adjust accordingly.

gnu/local.mk
gnu/packages/maths.scm
gnu/packages/patches/pt-scotch-build-parallelism.patch [deleted file]
gnu/packages/patches/scotch-build-parallelism.patch [new file with mode: 0644]
gnu/packages/patches/scotch-graph-diam-64.patch [new file with mode: 0644]
gnu/packages/patches/scotch-graph-induce-type-64.patch [new file with mode: 0644]

index 3ce87ee..cbf2c6f 100644 (file)
@@ -1014,7 +1014,6 @@ dist_patch_DATA =                                         \
   %D%/packages/patches/psm-arch.patch                          \
   %D%/packages/patches/psm-ldflags.patch                       \
   %D%/packages/patches/psm-repro.patch                         \
-  %D%/packages/patches/pt-scotch-build-parallelism.patch       \
   %D%/packages/patches/pulseaudio-fix-mult-test.patch          \
   %D%/packages/patches/pulseaudio-longer-test-timeout.patch    \
   %D%/packages/patches/pycairo-wscript.patch                   \
@@ -1086,6 +1085,9 @@ dist_patch_DATA =                                         \
   %D%/packages/patches/rxvt-unicode-escape-sequences.patch     \
   %D%/packages/patches/scheme48-tests.patch                    \
   %D%/packages/patches/scotch-test-threading.patch             \
+  %D%/packages/patches/scotch-build-parallelism.patch          \
+  %D%/packages/patches/scotch-graph-diam-64.patch              \
+  %D%/packages/patches/scotch-graph-induce-type-64.patch       \
   %D%/packages/patches/sdl-libx11-1.6.patch                    \
   %D%/packages/patches/seq24-rename-mutex.patch                        \
   %D%/packages/patches/shadow-CVE-2018-7169.patch              \
index 353aa41..aa382cd 100644 (file)
@@ -2199,16 +2199,18 @@ implemented in ANSI C, and MPI for communications.")
 (define-public scotch
   (package
     (name "scotch")
-    (version "6.0.4")
+    (version "6.0.5a")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "https://gforge.inria.fr/frs/download.php/"
                           "latestfile/298/scotch_" version ".tar.gz"))
       (sha256
-       (base32 "1ir088mvrqggyqdkx9qfynmiaffqbyih5qfl5mga2nrlm1qlsgzm"))
+       (base32 "0vsmgjz8qv80di3ljmc7hbdsizxxxwy2b9rgd2fl1mdc6dgbj8av"))
       (patches (search-patches "scotch-test-threading.patch"
-                               "pt-scotch-build-parallelism.patch"))))
+                               "scotch-build-parallelism.patch"
+                               "scotch-graph-induce-type-64.patch"
+                               "scotch-graph-diam-64.patch"))))
     (build-system gnu-build-system)
     (inputs
      `(("zlib" ,zlib)
diff --git a/gnu/packages/patches/pt-scotch-build-parallelism.patch b/gnu/packages/patches/pt-scotch-build-parallelism.patch
deleted file mode 100644 (file)
index 2ac5f27..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Building with -j may cause the esmumps_main target to fail with a "no rule for
-dependency libptesmumps.a" error.  Fix the dependency name.
-
---- scotch_6.0.4/src/esmumps/Makefile  2012-12-01 08:29:29.000000000 -0600
-+++ scotch_6.0.4/src/esmumps/Makefile  2015-06-15 17:29:23.279605734 -0500
-@@ -160,6 +160,6 @@
-                                       order.h                                 \
-                                       symbol.h                                \
-                                       esmumps.h                               \
--                                      lib$(ESMUMPSLIB)$(LIB)                  \
-+                                      libesmumps$(LIB)                        \
-                                       $(libdir)/lib$(SCOTCHLIB)$(LIB)         \
-                                       $(libdir)/lib$(SCOTCHLIB)errexit$(LIB)
diff --git a/gnu/packages/patches/scotch-build-parallelism.patch b/gnu/packages/patches/scotch-build-parallelism.patch
new file mode 100644 (file)
index 0000000..a669f1d
--- /dev/null
@@ -0,0 +1,39 @@
+Fixes make with -j, otherwise scotch.h may not be generated by the time make
+tries to compile library_graph_diam.o et al.
+
+Reported upstream at
+https://gforge.inria.fr/tracker/index.php?func=detail&aid=21651&group_id=248&atid=1081
+
+diff --git a/src/libscotch/Makefile b/src/libscotch/Makefile
+index 9898894..b0ee14c 100644
+--- a/src/libscotch/Makefile
++++ b/src/libscotch/Makefile
+@@ -2229,6 +2229,28 @@ library_graph_color_f$(OBJ)     :       library_graph_color_f.c                 \
+                                       common.h                                \
+                                       scotch.h
++library_graph_diam$(OBJ)      :       library_graph_diam.c                    \
++                                      module.h                                \
++                                      common.h                                \
++                                      graph.h                                 \
++                                      scotch.h
++
++library_graph_diam_f$(OBJ)    :       library_graph_diam.c                    \
++                                      module.h                                \
++                                      common.h                                \
++                                      scotch.h
++
++library_graph_induce$(OBJ)    :       library_graph_diam.c                    \
++                                      module.h                                \
++                                      common.h                                \
++                                      graph.h                                 \
++                                      scotch.h
++
++library_graph_induce_f$(OBJ)  :       library_graph_diam.c                    \
++                                      module.h                                \
++                                      common.h                                \
++                                      scotch.h
++
+ library_graph_io_chac$(OBJ)   :       library_graph_io_chac.c                 \
+                                       module.h                                \
+                                       common.h                                \
diff --git a/gnu/packages/patches/scotch-graph-diam-64.patch b/gnu/packages/patches/scotch-graph-diam-64.patch
new file mode 100644 (file)
index 0000000..2ae31e3
--- /dev/null
@@ -0,0 +1,27 @@
+Fixes test_scotch_graph_diam test with -DINTSIZE64.
+
+Reported upstream at
+https://gforge.inria.fr/tracker/index.php?func=detail&aid=21650&group_id=248&atid=1081
+
+--- scotch-6.0.5a/src/libscotch/library.h
++++ scotch-6.0.5a/src/libscotch/library.h
+@@ -187,6 +187,7 @@ SCOTCH_Num                  SCOTCH_graphBase    (SCOTCH_Graph * const, const SCO
+ int                         SCOTCH_graphCheck   (const SCOTCH_Graph * const);
+ void                        SCOTCH_graphSize    (const SCOTCH_Graph * const, SCOTCH_Num * const, SCOTCH_Num * const);
+ void                        SCOTCH_graphData    (const SCOTCH_Graph * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num ** const, SCOTCH_Num ** const, SCOTCH_Num ** const, SCOTCH_Num ** const, SCOTCH_Num * const, SCOTCH_Num ** const, SCOTCH_Num ** const);
++SCOTCH_Num                  SCOTCH_graphDiamPV  (SCOTCH_Graph * const);
+ void                        SCOTCH_graphStat    (const SCOTCH_Graph * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, double * const, double * const, SCOTCH_Num * const, SCOTCH_Num * const, double * const, double * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, double * const, double * const);
+ int                         SCOTCH_graphCoarsen (const SCOTCH_Graph * const, const SCOTCH_Num, const double, const SCOTCH_Num, SCOTCH_Graph * const, SCOTCH_Num * const);
+ int                         SCOTCH_graphCoarsenMatch (const SCOTCH_Graph * const, SCOTCH_Num * const, const double, const SCOTCH_Num, SCOTCH_Num * const);
+--- scotch-6.0.5a/src/libscotch/library_graph_diam.c
++++ scotch-6.0.5a/src/libscotch/library_graph_diam.c
+@@ -72,8 +72,7 @@
+ SCOTCH_Num
+ SCOTCH_graphDiamPV (
+-SCOTCH_Graph * const        grafptr,
+-const SCOTCH_Num            baseval)
++SCOTCH_Graph * const        grafptr)
+ {
+   return ((SCOTCH_Num) graphDiamPV ((Graph * const) grafptr));
+ }
diff --git a/gnu/packages/patches/scotch-graph-induce-type-64.patch b/gnu/packages/patches/scotch-graph-induce-type-64.patch
new file mode 100644 (file)
index 0000000..d2eee52
--- /dev/null
@@ -0,0 +1,19 @@
+Fixes return type of SCOTCH_graphInduceList and SCOTCH_graphInducePart
+so that the definition matches with -DINTSIZE64.
+
+Reported upstream at
+https://gforge.inria.fr/tracker/index.php?func=detail&aid=21608&group_id=248&atid=1081
+
+--- scotch_6.0.5a/src/libscotch/library.h.orig 2018-02-11 10:52:38.000000000 -0600
++++ scotch_6.0.5a/src/libscotch/library.h      2018-02-23 16:56:41.000000000 -0600
+@@ -199,8 +199,8 @@
+ int                         SCOTCH_graphGeomSaveChac (const SCOTCH_Graph * const, const SCOTCH_Geom * const, FILE * const, FILE * const, const char * const);
+ int                         SCOTCH_graphGeomSaveMmkt (const SCOTCH_Graph * const, const SCOTCH_Geom * const, FILE * const, FILE * const, const char * const);
+ int                         SCOTCH_graphGeomSaveScot (const SCOTCH_Graph * const, const SCOTCH_Geom * const, FILE * const, FILE * const, const char * const);
+-int                         SCOTCH_graphInduceList (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_Num * const, SCOTCH_Graph * const);
+-int                         SCOTCH_graphInducePart (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_GraphPart2 * const, const SCOTCH_GraphPart2, SCOTCH_Graph * const);
++SCOTCH_Num                  SCOTCH_graphInduceList (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_Num * const, SCOTCH_Graph * const);
++SCOTCH_Num                  SCOTCH_graphInducePart (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_GraphPart2 * const, const SCOTCH_GraphPart2, SCOTCH_Graph * const);
+ int                         SCOTCH_graphMapInit (const SCOTCH_Graph * const, SCOTCH_Mapping * const, const SCOTCH_Arch * const, SCOTCH_Num * const);
+ void                        SCOTCH_graphMapExit (const SCOTCH_Graph * const, SCOTCH_Mapping * const);