summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/packages/leveldb/package.py29
-rw-r--r--var/spack/packages/lmdb/package.py39
-rw-r--r--var/spack/packages/snappy/package.py15
3 files changed, 83 insertions, 0 deletions
diff --git a/var/spack/packages/leveldb/package.py b/var/spack/packages/leveldb/package.py
new file mode 100644
index 0000000000..da68a9cbcb
--- /dev/null
+++ b/var/spack/packages/leveldb/package.py
@@ -0,0 +1,29 @@
+import os
+import glob
+from spack import *
+
+class Leveldb(Package):
+ """LevelDB is a fast key-value storage library written at Google
+ that provides an ordered mapping from string keys to string values."""
+
+ homepage = "https://github.com/google/leveldb"
+ url = "https://github.com/google/leveldb/archive/v1.18.tar.gz"
+
+ version('1.18', '73770de34a2a5ab34498d2e05b2b7fa0')
+
+ depends_on("snappy")
+
+ def install(self, spec, prefix):
+ make()
+
+ mkdirp(prefix.include)
+ mkdirp(prefix.lib)
+
+ cp = which('cp')
+
+ # cp --preserve=links libleveldb.* prefix/lib
+ args = glob.glob('libleveldb.*')
+ args.append(prefix + '/lib')
+ cp('--preserve=links', *args)
+
+ cp('-r', 'include/leveldb', prefix + '/include')
diff --git a/var/spack/packages/lmdb/package.py b/var/spack/packages/lmdb/package.py
new file mode 100644
index 0000000000..875b8100c5
--- /dev/null
+++ b/var/spack/packages/lmdb/package.py
@@ -0,0 +1,39 @@
+import os
+from spack import *
+
+class Lmdb(Package):
+ """Read-only mirror of official repo on openldap.org. Issues and
+ pull requests here are ignored. Use OpenLDAP ITS for issues.
+ http://www.openldap.org/software/repo.html"""
+
+
+ homepage = "http://www.openldap.org/software/repo.html"
+ url = "https://github.com/LMDB/lmdb/archive/LMDB_0.9.16.tar.gz"
+
+ version('0.9.16', '0de89730b8f3f5711c2b3a4ba517b648')
+
+ def install(self, spec, prefix):
+ os.chdir('libraries/liblmdb')
+
+ make()
+
+ mkdirp(prefix.bin)
+ mkdirp(prefix + '/man/man1')
+ mkdirp(prefix.lib)
+ mkdirp(prefix.include)
+
+ bins = ['mdb_stat', 'mdb_copy', 'mdb_dump', 'mdb_load']
+ for f in bins:
+ install(f, prefix.bin)
+
+ mans = ['mdb_stat.1', 'mdb_copy.1', 'mdb_dump.1', 'mdb_load.1']
+ for f in mans:
+ install(f, prefix + '/man/man1')
+
+ libs = ['liblmdb.a', 'liblmdb.so']
+ for f in libs:
+ install(f, prefix.lib)
+
+ includes = ['lmdb.h']
+ for f in includes:
+ install(f, prefix.include)
diff --git a/var/spack/packages/snappy/package.py b/var/spack/packages/snappy/package.py
new file mode 100644
index 0000000000..c8f9ceef7d
--- /dev/null
+++ b/var/spack/packages/snappy/package.py
@@ -0,0 +1,15 @@
+import os
+from spack import *
+
+class Snappy(Package):
+ """A fast compressor/decompressor: https://code.google.com/p/snappy"""
+
+ homepage = "https://code.google.com/p/snappy"
+ url = "https://github.com/google/snappy/releases/download/1.1.3/snappy-1.1.3.tar.gz"
+
+ version('1.1.3', '7358c82f133dc77798e4c2062a749b73')
+
+ def install(self, spec, prefix):
+ configure("--prefix=" + prefix)
+ make()
+ make("install")