summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/scotch/nonthreaded-6.0.4.patch11
-rw-r--r--var/spack/repos/builtin/packages/scotch/package.py13
2 files changed, 22 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/scotch/nonthreaded-6.0.4.patch b/var/spack/repos/builtin/packages/scotch/nonthreaded-6.0.4.patch
new file mode 100644
index 0000000000..89d17e253e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/scotch/nonthreaded-6.0.4.patch
@@ -0,0 +1,11 @@
+--- scotch_6.0.4.orig/src/libscotch/common.h 2015-03-01 10:14:02.000000000 +0100
++++ scotch_6.0.4/src/libscotch/common.h 2017-03-27 13:07:18.644221999 +0200
+@@ -306,6 +306,8 @@
+ ThreadLaunchStartFunc stafptr; /*+ Pointer to start routine +*/
+ ThreadLaunchJoinFunc joifptr; /*+ Pointer to join routine +*/
+ ThreadBarrier barrdat; /*+ Barrier data structure +*/
++#else
++ int thrdnbr; /* dummy for non-threaded */
+ #endif /* ((defined COMMON_PTHREAD) || (defined SCOTCH_PTHREAD)) */
+ } ThreadGroupHeader;
+
diff --git a/var/spack/repos/builtin/packages/scotch/package.py b/var/spack/repos/builtin/packages/scotch/package.py
index f164037efa..b878349485 100644
--- a/var/spack/repos/builtin/packages/scotch/package.py
+++ b/var/spack/repos/builtin/packages/scotch/package.py
@@ -31,7 +31,7 @@ class Scotch(Package):
partitioning, graph clustering, and sparse matrix ordering."""
homepage = "http://www.labri.fr/perso/pelegrin/scotch/"
- url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_6.0.3.tar.gz"
+ url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_6.0.3.tar.gz" # noqa: E501
base_url = "http://gforge.inria.fr/frs/download.php/latestfile/298"
list_url = "http://gforge.inria.fr/frs/?group_id=248"
@@ -50,12 +50,17 @@ class Scotch(Package):
description='Build a shared version of the library')
variant('metis', default=True,
description='Build metis and parmetis wrapper libraries')
+ variant('int64', default=False,
+ description='Use int64_t for SCOTCH_Num typedef')
depends_on('flex@:2.6.1', type='build')
depends_on('bison', type='build')
depends_on('mpi', when='+mpi')
depends_on('zlib', when='+compression')
+ # Version-specific patches
+ patch('nonthreaded-6.0.4.patch', when='@6.0.4')
+
# NOTE: In cross-compiling environment parallel build
# produces weird linker errors.
parallel = False
@@ -87,9 +92,13 @@ class Scotch(Package):
'-DCOMMON_RANDOM_FIXED_SEED',
'-DSCOTCH_DETERMINISTIC',
'-DSCOTCH_RENAME',
- '-DIDXSIZE64'
+ '-DIDXSIZE64', # SCOTCH_Idx typedef: indices for addressing
]
+ # SCOTCH_Num typedef: size of integers in arguments
+ if '+int64' in self.spec:
+ cflags.append('-DINTSIZE64')
+
if self.spec.satisfies('platform=darwin'):
cflags.extend([
'-Drestrict=__restrict'