diff --git a/gnu/local.mk b/gnu/local.mk index 3ce87ee444..cbf2c6f1b4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -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 \ diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 353aa41167..aa382cda6b 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2199,16 +2199,18 @@ (define-public superlu-dist (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 index 2ac5f27f52..0000000000 --- a/gnu/packages/patches/pt-scotch-build-parallelism.patch +++ /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 index 0000000000..a669f1dbeb --- /dev/null +++ b/gnu/packages/patches/scotch-build-parallelism.patch @@ -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 index 0000000000..2ae31e3c3b --- /dev/null +++ b/gnu/packages/patches/scotch-graph-diam-64.patch @@ -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 index 0000000000..d2eee52a7b --- /dev/null +++ b/gnu/packages/patches/scotch-graph-induce-type-64.patch @@ -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);