From b80e091f46ca7559b4b81922d9af33fb8fe1d4d5 Mon Sep 17 00:00:00 2001
From: Todd Gamblin <tgamblin@llnl.gov>
Date: Fri, 13 Mar 2015 00:03:33 -0700
Subject: [PATCH] metis package.

---
 var/spack/packages/metis/package.py | 32 +++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)
 create mode 100644 var/spack/packages/metis/package.py

diff --git a/var/spack/packages/metis/package.py b/var/spack/packages/metis/package.py
new file mode 100644
index 0000000000..fa13d52127
--- /dev/null
+++ b/var/spack/packages/metis/package.py
@@ -0,0 +1,32 @@
+from spack import *
+
+class Metis(Package):
+    """METIS is a set of serial programs for partitioning graphs,
+       partitioning finite element meshes, and producing fill reducing
+       orderings for sparse matrices. The algorithms implemented in
+       METIS are based on the multilevel recursive-bisection,
+       multilevel k-way, and multi-constraint partitioning schemes
+       developed in our lab."""
+
+    homepage = "http://glaros.dtc.umn.edu/gkhome/metis/metis/overview"
+    url      = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz"
+
+    version('5.1.0', '5465e67079419a69e0116de24fce58fe')
+
+    # FIXME: Add dependencies if this package requires them.
+    # depends_on("foo")
+
+    def patch(self):
+        filter_file(r'#define IDXTYPEWIDTH 32', '#define IDXTYPEWIDTH 64', 'include/metis.h',
+                    string=True)
+
+
+    def install(self, spec, prefix):
+        with working_dir('spack-build', create=True):
+            cmake('..',
+                  '-DGKLIB_PATH=../GKlib',
+                  '-DBUILD_SHARED_LIBS=TRUE',
+                  *std_cmake_args)
+            make()
+            make("install")
+
-- 
GitLab